@servicetitan/startup 33.1.0 → 34.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/commands/build.d.ts +48 -22
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +72 -52
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/bundle-package.d.ts +54 -10
- package/dist/cli/commands/bundle-package.d.ts.map +1 -1
- package/dist/cli/commands/bundle-package.js +40 -0
- package/dist/cli/commands/bundle-package.js.map +1 -1
- package/dist/cli/commands/clean.d.ts +4 -0
- package/dist/cli/commands/clean.d.ts.map +1 -1
- package/dist/cli/commands/clean.js +50 -16
- package/dist/cli/commands/clean.js.map +1 -1
- package/dist/cli/commands/convert-eslint-config.d.ts +1 -1
- package/dist/cli/commands/convert-eslint-config.d.ts.map +1 -1
- package/dist/cli/commands/convert-eslint-config.js +2 -15
- package/dist/cli/commands/convert-eslint-config.js.map +1 -1
- package/dist/cli/commands/eslint.d.ts +29 -7
- package/dist/cli/commands/eslint.d.ts.map +1 -1
- package/dist/cli/commands/eslint.js +18 -6
- package/dist/cli/commands/eslint.js.map +1 -1
- package/dist/cli/commands/get-command.d.ts.map +1 -1
- package/dist/cli/commands/get-command.js +6 -0
- package/dist/cli/commands/get-command.js.map +1 -1
- package/dist/cli/commands/index.d.ts +2 -2
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +2 -2
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts +10 -6
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +8 -6
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/install.d.ts +27 -15
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +18 -16
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/kendo-ui-license.d.ts +1 -0
- package/dist/cli/commands/kendo-ui-license.d.ts.map +1 -1
- package/dist/cli/commands/kendo-ui-license.js +1 -0
- package/dist/cli/commands/kendo-ui-license.js.map +1 -1
- package/dist/cli/commands/lint.d.ts +51 -17
- package/dist/cli/commands/lint.d.ts.map +1 -1
- package/dist/cli/commands/lint.js +36 -26
- package/dist/cli/commands/lint.js.map +1 -1
- package/dist/cli/commands/mfe-check.d.ts +52 -0
- package/dist/cli/commands/mfe-check.d.ts.map +1 -0
- package/dist/cli/commands/mfe-check.js +145 -0
- package/dist/cli/commands/mfe-check.js.map +1 -0
- package/dist/cli/commands/mfe-generate-metadata.d.ts +20 -0
- package/dist/cli/commands/mfe-generate-metadata.d.ts.map +1 -0
- package/dist/cli/commands/mfe-generate-metadata.js +93 -0
- package/dist/cli/commands/mfe-generate-metadata.js.map +1 -0
- package/dist/cli/commands/mfe-list.d.ts +52 -15
- package/dist/cli/commands/mfe-list.d.ts.map +1 -1
- package/dist/cli/commands/mfe-list.js +42 -29
- package/dist/cli/commands/mfe-list.js.map +1 -1
- package/dist/cli/commands/mfe-package-clean.d.ts +34 -15
- package/dist/cli/commands/mfe-package-clean.d.ts.map +1 -1
- package/dist/cli/commands/mfe-package-clean.js +43 -34
- package/dist/cli/commands/mfe-package-clean.js.map +1 -1
- package/dist/cli/commands/mfe-package-publish.d.ts +60 -22
- package/dist/cli/commands/mfe-package-publish.d.ts.map +1 -1
- package/dist/cli/commands/mfe-package-publish.js +137 -78
- package/dist/cli/commands/mfe-package-publish.js.map +1 -1
- package/dist/cli/commands/mfe-package-rollback.d.ts +40 -0
- package/dist/cli/commands/mfe-package-rollback.d.ts.map +1 -0
- package/dist/cli/commands/mfe-package-rollback.js +119 -0
- package/dist/cli/commands/mfe-package-rollback.js.map +1 -0
- package/dist/cli/commands/mfe-publish.d.ts +36 -11
- package/dist/cli/commands/mfe-publish.d.ts.map +1 -1
- package/dist/cli/commands/mfe-publish.js +72 -22
- package/dist/cli/commands/mfe-publish.js.map +1 -1
- package/dist/cli/commands/prepare-package.d.ts +14 -5
- package/dist/cli/commands/prepare-package.d.ts.map +1 -1
- package/dist/cli/commands/prepare-package.js +20 -0
- package/dist/cli/commands/prepare-package.js.map +1 -1
- package/dist/cli/commands/review/review.d.ts +17 -8
- package/dist/cli/commands/review/review.d.ts.map +1 -1
- package/dist/cli/commands/review/review.js +16 -21
- package/dist/cli/commands/review/review.js.map +1 -1
- package/dist/cli/commands/review/rules/index.d.ts.map +1 -1
- package/dist/cli/commands/review/rules/index.js +3 -1
- package/dist/cli/commands/review/rules/index.js.map +1 -1
- package/dist/cli/commands/review/rules/no-deprecated-content-base.js.map +1 -1
- package/dist/cli/commands/review/rules/prefer-open-ended-peer-dependencies.js.map +1 -1
- package/dist/cli/commands/review/rules/require-compatible-launch-darkly-sdk.js +4 -4
- package/dist/cli/commands/review/rules/require-compatible-launch-darkly-sdk.js.map +1 -1
- package/dist/cli/commands/review/rules/require-one-collection-version.js +1 -2
- package/dist/cli/commands/review/rules/require-one-collection-version.js.map +1 -1
- package/dist/cli/commands/review/rules/require-one-uikit-version.d.ts.map +1 -1
- package/dist/cli/commands/review/rules/require-one-uikit-version.js +1 -0
- package/dist/cli/commands/review/rules/require-one-uikit-version.js.map +1 -1
- package/dist/cli/commands/review/rules/require-project-version-in-root-node-modules.d.ts.map +1 -1
- package/dist/cli/commands/review/rules/require-project-version-in-root-node-modules.js +8 -8
- package/dist/cli/commands/review/rules/require-project-version-in-root-node-modules.js.map +1 -1
- package/dist/cli/commands/review/rules/require-tsconfig-references.d.ts +24 -0
- package/dist/cli/commands/review/rules/require-tsconfig-references.d.ts.map +1 -0
- package/dist/cli/commands/review/rules/require-tsconfig-references.js +146 -0
- package/dist/cli/commands/review/rules/require-tsconfig-references.js.map +1 -0
- package/dist/cli/commands/review/utils/collate-dependencies.js +1 -3
- package/dist/cli/commands/review/utils/collate-dependencies.js.map +1 -1
- package/dist/cli/commands/review/utils/compare-version.js +2 -2
- package/dist/cli/commands/review/utils/compare-version.js.map +1 -1
- package/dist/cli/commands/review/utils/set-version.js +1 -1
- package/dist/cli/commands/review/utils/set-version.js.map +1 -1
- package/dist/cli/commands/run-task.d.ts +29 -7
- package/dist/cli/commands/run-task.d.ts.map +1 -1
- package/dist/cli/commands/run-task.js +21 -8
- package/dist/cli/commands/run-task.js.map +1 -1
- package/dist/cli/commands/run-task.test.js +14 -2
- package/dist/cli/commands/run-task.test.js.map +1 -1
- package/dist/cli/commands/start.d.ts +38 -18
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +65 -45
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/stylelint.d.ts +29 -7
- package/dist/cli/commands/stylelint.d.ts.map +1 -1
- package/dist/cli/commands/stylelint.js +18 -6
- package/dist/cli/commands/stylelint.js.map +1 -1
- package/dist/cli/commands/test/runners/vitest.js +1 -1
- package/dist/cli/commands/test/runners/vitest.js.map +1 -1
- package/dist/cli/commands/test/tests.d.ts +25 -5
- package/dist/cli/commands/test/tests.d.ts.map +1 -1
- package/dist/cli/commands/test/tests.js +22 -14
- package/dist/cli/commands/test/tests.js.map +1 -1
- package/dist/cli/commands/types.d.ts +51 -10
- package/dist/cli/commands/types.d.ts.map +1 -1
- package/dist/cli/commands/types.js +1 -0
- package/dist/cli/commands/types.js.map +1 -1
- package/dist/cli/commands/upload-sourcemaps.d.ts +26 -6
- package/dist/cli/commands/upload-sourcemaps.d.ts.map +1 -1
- package/dist/cli/commands/upload-sourcemaps.js +27 -4
- package/dist/cli/commands/upload-sourcemaps.js.map +1 -1
- package/dist/cli/commands/utils.d.ts +4 -0
- package/dist/cli/commands/utils.d.ts.map +1 -0
- package/dist/cli/commands/utils.js +28 -0
- package/dist/cli/commands/utils.js.map +1 -0
- package/dist/cli/index.js +8 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/tasks/cli-task.d.ts.map +1 -1
- package/dist/cli/tasks/cli-task.js +1 -1
- package/dist/cli/tasks/cli-task.js.map +1 -1
- package/dist/cli/tasks/swc-compile-package.d.ts +1 -2
- package/dist/cli/tasks/swc-compile-package.d.ts.map +1 -1
- package/dist/cli/tasks/swc-compile-package.js.map +1 -1
- package/dist/cli/tasks/tsc-compile-package.d.ts +1 -2
- package/dist/cli/tasks/tsc-compile-package.d.ts.map +1 -1
- package/dist/cli/tasks/tsc-compile-package.js.map +1 -1
- package/dist/cli/tasks/tsc-compile.d.ts +1 -2
- package/dist/cli/tasks/tsc-compile.d.ts.map +1 -1
- package/dist/cli/tasks/tsc-compile.js.map +1 -1
- package/dist/cli/utils/bundle.d.ts.map +1 -1
- package/dist/cli/utils/bundle.js +2 -2
- package/dist/cli/utils/bundle.js.map +1 -1
- package/dist/cli/utils/check-startup-location.d.ts +4 -0
- package/dist/cli/utils/check-startup-location.d.ts.map +1 -0
- package/dist/cli/utils/check-startup-location.js +27 -0
- package/dist/cli/utils/check-startup-location.js.map +1 -0
- package/dist/cli/utils/cli-npm.d.ts +6 -0
- package/dist/cli/utils/cli-npm.d.ts.map +1 -1
- package/dist/cli/utils/cli-npm.js +25 -3
- package/dist/cli/utils/cli-npm.js.map +1 -1
- package/dist/cli/utils/compile-less.js +1 -1
- package/dist/cli/utils/compile-less.js.map +1 -1
- package/dist/cli/utils/constants.d.ts +2 -0
- package/dist/cli/utils/constants.d.ts.map +1 -0
- package/dist/cli/utils/constants.js +13 -0
- package/dist/cli/utils/constants.js.map +1 -0
- package/dist/cli/utils/copy-files.d.ts.map +1 -1
- package/dist/cli/utils/copy-files.js.map +1 -1
- package/dist/cli/utils/eslint.d.ts +1 -2
- package/dist/cli/utils/eslint.d.ts.map +1 -1
- package/dist/cli/utils/eslint.js.map +1 -1
- package/dist/cli/utils/index.d.ts +2 -0
- package/dist/cli/utils/index.d.ts.map +1 -1
- package/dist/cli/utils/index.js +2 -0
- package/dist/cli/utils/index.js.map +1 -1
- package/dist/cli/utils/is-module-installed.js +1 -1
- package/dist/cli/utils/is-module-installed.js.map +1 -1
- package/dist/cli/utils/lerna-exec.d.ts.map +1 -1
- package/dist/cli/utils/lerna-exec.js +1 -3
- package/dist/cli/utils/lerna-exec.js.map +1 -1
- package/dist/cli/utils/process-tree.js.map +1 -1
- package/dist/cli/utils/set-node-options.js +2 -4
- package/dist/cli/utils/set-node-options.js.map +1 -1
- package/dist/cli/utils/stylelint.d.ts +1 -2
- package/dist/cli/utils/stylelint.d.ts.map +1 -1
- package/dist/cli/utils/stylelint.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/jest/resolver.js +2 -2
- package/dist/jest/resolver.js.map +1 -1
- package/dist/jest/svg-transformer.d.ts.map +1 -1
- package/dist/jest/svg-transformer.js.map +1 -1
- package/dist/utils/find-packages.js +1 -1
- package/dist/utils/find-packages.js.map +1 -1
- package/dist/utils/format-relative-date.js +1 -1
- package/dist/utils/format-relative-date.js.map +1 -1
- package/dist/utils/get-configuration.d.ts +3 -0
- package/dist/utils/get-configuration.d.ts.map +1 -1
- package/dist/utils/get-configuration.js +14 -11
- package/dist/utils/get-configuration.js.map +1 -1
- package/dist/utils/get-destination-folders.d.ts.map +1 -1
- package/dist/utils/get-destination-folders.js.map +1 -1
- package/dist/utils/get-folders.d.ts.map +1 -1
- package/dist/utils/get-folders.js.map +1 -1
- package/dist/utils/get-jest-config.js +1 -1
- package/dist/utils/get-jest-config.js.map +1 -1
- package/dist/utils/get-package-data.js +1 -1
- package/dist/utils/get-package-data.js.map +1 -1
- package/dist/utils/get-packages.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/load-shared-dependencies.js.map +1 -1
- package/dist/utils/prettify.d.ts +13 -0
- package/dist/utils/prettify.d.ts.map +1 -0
- package/dist/utils/prettify.js +48 -0
- package/dist/utils/prettify.js.map +1 -0
- package/dist/utils/read-json.js +1 -1
- package/dist/utils/read-json.js.map +1 -1
- package/dist/utils/transform-svg.js +2 -2
- package/dist/utils/transform-svg.js.map +1 -1
- package/dist/webpack/configs/cache-config.js +1 -1
- package/dist/webpack/configs/cache-config.js.map +1 -1
- package/dist/webpack/configs/optimization-config.js +3 -4
- package/dist/webpack/configs/optimization-config.js.map +1 -1
- package/dist/webpack/configs/output-config.js +1 -1
- package/dist/webpack/configs/output-config.js.map +1 -1
- package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/assets-manifest-plugin.js +5 -5
- package/dist/webpack/configs/plugins/assets-manifest-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.js +1 -1
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js +6 -9
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/html-tags-plugin.js +1 -1
- package/dist/webpack/configs/plugins/html-tags-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/ignore-plugin/check-resource.js +1 -1
- package/dist/webpack/configs/plugins/ignore-plugin/check-resource.js.map +1 -1
- package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/moment-locales-plugin.js +1 -1
- package/dist/webpack/configs/plugins/moment-locales-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/watch-run-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/watch-run-plugin.js.map +1 -1
- package/dist/webpack/configs/types.d.ts +1 -0
- package/dist/webpack/configs/types.d.ts.map +1 -1
- package/dist/webpack/configs/utils/build-metadata.d.ts +10 -0
- package/dist/webpack/configs/utils/build-metadata.d.ts.map +1 -0
- package/dist/webpack/configs/utils/build-metadata.js +50 -0
- package/dist/webpack/configs/utils/build-metadata.js.map +1 -0
- package/dist/webpack/configs/utils/generate-metadata.d.ts.map +1 -1
- package/dist/webpack/configs/utils/generate-metadata.js +5 -24
- package/dist/webpack/configs/utils/generate-metadata.js.map +1 -1
- package/dist/webpack/configs/utils/get-exposed-dependencies.d.ts +3 -0
- package/dist/webpack/configs/utils/get-exposed-dependencies.d.ts.map +1 -0
- package/dist/webpack/configs/utils/get-exposed-dependencies.js +21 -0
- package/dist/webpack/configs/utils/get-exposed-dependencies.js.map +1 -0
- package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.js +1 -1
- package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.js.map +1 -1
- package/dist/webpack/configs/utils/index.d.ts +1 -0
- package/dist/webpack/configs/utils/index.d.ts.map +1 -1
- package/dist/webpack/configs/utils/index.js +1 -0
- package/dist/webpack/configs/utils/index.js.map +1 -1
- package/dist/webpack/create-webpack-config.js +10 -4
- package/dist/webpack/create-webpack-config.js.map +1 -1
- package/dist/webpack/loaders/expose-loader/index.d.ts.map +1 -1
- package/dist/webpack/loaders/expose-loader/index.js.map +1 -1
- package/dist/webpack/loaders/expose-loader/runtime/get-global-this.js +1 -1
- package/dist/webpack/loaders/expose-loader/runtime/get-global-this.js.map +1 -1
- package/dist/webpack/loaders/expose-loader/utils/get-new-user-request.js +2 -2
- package/dist/webpack/loaders/expose-loader/utils/get-new-user-request.js.map +1 -1
- package/dist/webpack/utils/stringify-config.js +2 -2
- package/dist/webpack/utils/stringify-config.js.map +1 -1
- package/dist/webpack/utils/testing/get-compiler.d.ts.map +1 -1
- package/dist/webpack/utils/testing/get-compiler.js +1 -1
- package/dist/webpack/utils/testing/get-compiler.js.map +1 -1
- package/dist/webpack/utils/testing/get-errors.d.ts.map +1 -1
- package/dist/webpack/utils/testing/get-errors.js.map +1 -1
- package/dist/webpack/utils/testing/get-warnings.d.ts.map +1 -1
- package/dist/webpack/utils/testing/get-warnings.js.map +1 -1
- package/dist/webpack/utils/testing/read-asset.d.ts.map +1 -1
- package/dist/webpack/utils/testing/read-asset.js +1 -1
- package/dist/webpack/utils/testing/read-asset.js.map +1 -1
- package/dist/webpack/utils/testing/read-assets.d.ts.map +1 -1
- package/dist/webpack/utils/testing/read-assets.js.map +1 -1
- package/package.json +35 -41
- package/src/cli/commands/__tests__/build.test.ts +32 -9
- package/src/cli/commands/__tests__/bundle-package.test.ts +2 -1
- package/src/cli/commands/__tests__/clean.test.ts +99 -8
- package/src/cli/commands/__tests__/convert-eslint-config.test.ts +14 -9
- package/src/cli/commands/__tests__/eslint.test.ts +1 -1
- package/src/cli/commands/__tests__/get-command.test.ts +3 -1
- package/src/cli/commands/__tests__/init.test.ts +14 -1
- package/src/cli/commands/__tests__/install.test.ts +6 -2
- package/src/cli/commands/__tests__/kendo-ui-license.test.ts +7 -2
- package/src/cli/commands/__tests__/lint.test.ts +4 -2
- package/src/cli/commands/__tests__/mfe-check.test.ts +346 -0
- package/src/cli/commands/__tests__/mfe-generate-metadata.test.ts +160 -0
- package/src/cli/commands/__tests__/mfe-list.test.ts +8 -1
- package/src/cli/commands/__tests__/mfe-package-clean.test.ts +0 -1
- package/src/cli/commands/__tests__/mfe-package-publish.test.ts +322 -93
- package/src/cli/commands/__tests__/mfe-package-rollback.test.ts +196 -0
- package/src/cli/commands/__tests__/mfe-publish.test.ts +65 -5
- package/src/cli/commands/__tests__/prepare-package.test.ts +3 -0
- package/src/cli/commands/__tests__/start.test.ts +30 -7
- package/src/cli/commands/__tests__/stylelint.test.ts +1 -1
- package/src/cli/commands/__tests__/styles-check.test.ts +1 -2
- package/src/cli/commands/__tests__/upload-sourcemaps.test.ts +3 -6
- package/src/cli/commands/build.ts +35 -26
- package/src/cli/commands/bundle-package.ts +11 -10
- package/src/cli/commands/clean.ts +51 -5
- package/src/cli/commands/convert-eslint-config.ts +3 -12
- package/src/cli/commands/eslint.ts +9 -11
- package/src/cli/commands/get-command.ts +6 -1
- package/src/cli/commands/index.ts +2 -2
- package/src/cli/commands/init.ts +7 -9
- package/src/cli/commands/install.ts +11 -13
- package/src/cli/commands/kendo-ui-license.ts +1 -1
- package/src/cli/commands/lint.ts +12 -18
- package/src/cli/commands/mfe-check.ts +166 -0
- package/src/cli/commands/mfe-generate-metadata.ts +69 -0
- package/src/cli/commands/mfe-list.ts +28 -30
- package/src/cli/commands/mfe-package-clean.ts +29 -34
- package/src/cli/commands/mfe-package-publish.ts +153 -87
- package/src/cli/commands/mfe-package-rollback.ts +100 -0
- package/src/cli/commands/mfe-publish.ts +80 -27
- package/src/cli/commands/prepare-package.ts +6 -5
- package/src/cli/commands/review/__tests__/review.test.ts +18 -19
- package/src/cli/commands/review/review.ts +11 -20
- package/src/cli/commands/review/rules/__tests__/no-deprecated-content-base.test.ts +1 -1
- package/src/cli/commands/review/rules/__tests__/no-deprecated-startup-install.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/no-direct-peer-dependencies.test.ts +1 -1
- package/src/cli/commands/review/rules/__tests__/no-typescript-entry-point.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-all-react-dependencies.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-compatible-launch-darkly-sdk.test.ts +2 -2
- package/src/cli/commands/review/rules/__tests__/require-explicit-side-effects.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-npmrc.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-one-anvil-uikit-contrib-version.test.ts +1 -2
- package/src/cli/commands/review/rules/__tests__/require-one-collection-version.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-one-package-version.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-one-react-version.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-one-uikit-version.test.ts +1 -1
- package/src/cli/commands/review/rules/__tests__/require-project-version-in-root-node-modules.test.ts +2 -3
- package/src/cli/commands/review/rules/__tests__/require-servicetitan-scope.test.ts +0 -1
- package/src/cli/commands/review/rules/__tests__/require-tsconfig-references.test.ts +315 -0
- package/src/cli/commands/review/rules/index.ts +2 -0
- package/src/cli/commands/review/rules/require-compatible-launch-darkly-sdk.ts +1 -1
- package/src/cli/commands/review/rules/require-one-uikit-version.ts +1 -0
- package/src/cli/commands/review/rules/require-project-version-in-root-node-modules.ts +3 -3
- package/src/cli/commands/review/rules/require-tsconfig-references.ts +157 -0
- package/src/cli/commands/review/utils/__tests__/set-version.test.ts +0 -1
- package/src/cli/commands/run-task.test.ts +15 -3
- package/src/cli/commands/run-task.ts +12 -14
- package/src/cli/commands/start.ts +75 -59
- package/src/cli/commands/stylelint.ts +9 -11
- package/src/cli/commands/test/runners/__tests__/jest.test.ts +1 -2
- package/src/cli/commands/test/runners/vitest.ts +1 -1
- package/src/cli/commands/test/tests.ts +13 -15
- package/src/cli/commands/types.ts +53 -7
- package/src/cli/commands/upload-sourcemaps.ts +14 -12
- package/src/cli/commands/utils.ts +6 -0
- package/src/cli/index.ts +11 -7
- package/src/cli/tasks/__tests__/cli-task.test.ts +1 -1
- package/src/cli/tasks/__tests__/swc-compile-package.test.ts +3 -1
- package/src/cli/tasks/__tests__/tsc-compile-package.test.ts +2 -0
- package/src/cli/tasks/__tests__/tsc-compile.test.ts +3 -13
- package/src/cli/tasks/cli-task.ts +1 -1
- package/src/cli/tasks/swc-compile-package.ts +1 -3
- package/src/cli/tasks/tsc-compile-package.ts +1 -2
- package/src/cli/tasks/tsc-compile.ts +1 -2
- package/src/cli/utils/__tests__/bundle.test.ts +1 -2
- package/src/cli/utils/__tests__/check-args.test.ts +1 -1
- package/src/cli/utils/__tests__/check-startup-location.test.ts +88 -0
- package/src/cli/utils/__tests__/cli-git.test.ts +1 -2
- package/src/cli/utils/__tests__/cli-npm.test.ts +51 -2
- package/src/cli/utils/__tests__/cli-os.test.ts +1 -2
- package/src/cli/utils/__tests__/compile.test.ts +1 -1
- package/src/cli/utils/__tests__/copy-files.test.ts +0 -1
- package/src/cli/utils/__tests__/eslint.test.ts +1 -1
- package/src/cli/utils/__tests__/lerna-exec.test.ts +1 -2
- package/src/cli/utils/__tests__/maybe-create-git-folder.test.ts +0 -1
- package/src/cli/utils/__tests__/set-node-options.test.ts +0 -1
- package/src/cli/utils/__tests__/stylelint.test.ts +1 -1
- package/src/cli/utils/bundle.ts +1 -3
- package/src/cli/utils/check-startup-location.ts +21 -0
- package/src/cli/utils/cli-npm.ts +22 -0
- package/src/cli/utils/compile-less.ts +1 -1
- package/src/cli/utils/constants.ts +1 -0
- package/src/cli/utils/copy-files.ts +0 -1
- package/src/cli/utils/eslint.ts +1 -3
- package/src/cli/utils/index.ts +2 -0
- package/src/cli/utils/lerna-exec.ts +0 -1
- package/src/cli/utils/stylelint.ts +1 -2
- package/src/index.ts +1 -1
- package/src/jest/svg-transformer.ts +0 -1
- package/src/utils/__tests__/get-branch-configs.test.ts +0 -1
- package/src/utils/__tests__/get-configuration.test.ts +0 -1
- package/src/utils/__tests__/get-destination-folders.test.ts +1 -2
- package/src/utils/__tests__/get-folders.test.ts +0 -1
- package/src/utils/__tests__/get-jest-config.test.ts +1 -2
- package/src/utils/__tests__/get-package-data.test.ts +1 -2
- package/src/utils/__tests__/get-packages.test.ts +1 -1
- package/src/utils/__tests__/get-startup-version.test.ts +0 -1
- package/src/utils/__tests__/get-tsconfig.test.ts +0 -1
- package/src/utils/__tests__/load-shared-dependencies.test.ts +1 -1
- package/src/utils/__tests__/log.test.ts +1 -1
- package/src/utils/__tests__/prettify.test.ts +80 -0
- package/src/utils/__tests__/read-json.test.ts +0 -1
- package/src/utils/find-packages.ts +1 -1
- package/src/utils/get-configuration.ts +8 -7
- package/src/utils/get-destination-folders.ts +0 -1
- package/src/utils/get-folders.ts +0 -1
- package/src/utils/get-jest-config.ts +1 -1
- package/src/utils/index.ts +1 -0
- package/src/utils/prettify.ts +36 -0
- package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +6 -2
- package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +7 -4
- package/src/webpack/__tests__/create-webpack-config.test.ts +8 -4
- package/src/webpack/configs/cache-config.ts +1 -1
- package/src/webpack/configs/plugins/assets-manifest-plugin.ts +1 -1
- package/src/webpack/configs/plugins/bundle-analyser-plugin.ts +2 -2
- package/src/webpack/configs/plugins/define-exposed-dependencies-plugin.ts +6 -15
- package/src/webpack/configs/plugins/ignore-plugin/__tests__/get-package-json.test.ts +1 -1
- package/src/webpack/configs/plugins/ignore-plugin/__tests__/is-optional-peer-dependency.test.ts +1 -1
- package/src/webpack/configs/plugins/ignore-plugin/ignore-plugin.ts +0 -1
- package/src/webpack/configs/plugins/watch-run-plugin.ts +0 -1
- package/src/webpack/configs/types.ts +1 -0
- package/src/webpack/configs/utils/__tests__/build-metadata.test.ts +71 -0
- package/src/webpack/configs/utils/__tests__/generate-metadata.test.ts +42 -46
- package/src/webpack/configs/utils/__tests__/get-exposed-dependencies.test.ts +39 -0
- package/src/webpack/configs/utils/__tests__/get-web-components-version.test.ts +0 -1
- package/src/webpack/configs/utils/build-metadata.ts +40 -0
- package/src/webpack/configs/utils/generate-metadata.ts +7 -21
- package/src/webpack/configs/utils/get-exposed-dependencies.ts +17 -0
- package/src/webpack/configs/utils/index.ts +1 -0
- package/src/webpack/create-webpack-config.ts +3 -3
- package/src/webpack/loaders/expose-loader/__tests__/index.test.ts +0 -2
- package/src/webpack/loaders/expose-loader/index.ts +0 -1
- package/src/webpack/utils/testing/get-compiler.ts +1 -3
- package/src/webpack/utils/testing/get-errors.ts +0 -1
- package/src/webpack/utils/testing/get-warnings.ts +0 -1
- package/src/webpack/utils/testing/read-asset.ts +1 -2
- package/src/webpack/utils/testing/read-assets.ts +0 -1
|
@@ -1,25 +1,45 @@
|
|
|
1
1
|
import { Config } from '@jest/types';
|
|
2
2
|
import { Command } from '../types';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
declare const options: {
|
|
4
|
+
_: {
|
|
5
|
+
description: string;
|
|
6
|
+
array: true;
|
|
7
|
+
string: true;
|
|
8
|
+
};
|
|
9
|
+
runner: {
|
|
10
|
+
choices: readonly ["jest", "vitest"];
|
|
11
|
+
description: string;
|
|
12
|
+
defaultDescription: string;
|
|
13
|
+
};
|
|
14
|
+
runnerArgs: {
|
|
15
|
+
array: true;
|
|
16
|
+
string: true;
|
|
17
|
+
hidden: true;
|
|
18
|
+
};
|
|
6
19
|
};
|
|
7
20
|
/**
|
|
8
21
|
* This class is named "Tests" instead of "Test" because the corresponding
|
|
9
22
|
* "test.ts" would be interpreted as a test file.
|
|
10
23
|
*/
|
|
11
|
-
export declare class Tests extends Command<
|
|
24
|
+
export declare class Tests extends Command<typeof options, Config.Argv> {
|
|
12
25
|
static readonly description = "Run tests";
|
|
13
26
|
static readonly greedy = true;
|
|
14
27
|
static readonly options: {
|
|
15
28
|
_: {
|
|
16
29
|
description: string;
|
|
30
|
+
array: true;
|
|
31
|
+
string: true;
|
|
17
32
|
};
|
|
18
33
|
runner: {
|
|
19
|
-
choices:
|
|
34
|
+
choices: readonly ["jest", "vitest"];
|
|
20
35
|
description: string;
|
|
21
36
|
defaultDescription: string;
|
|
22
37
|
};
|
|
38
|
+
runnerArgs: {
|
|
39
|
+
array: true;
|
|
40
|
+
string: true;
|
|
41
|
+
hidden: true;
|
|
42
|
+
};
|
|
23
43
|
};
|
|
24
44
|
execute(): Promise<void>;
|
|
25
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/test/tests.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/test/tests.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,OAAO,EAAkB,MAAM,UAAU,CAAC;AAGnD,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;CAQa,CAAC;AAE3B;;;GAGG;AACH,qBAAa,KAAM,SAAQ,OAAO,CAAC,OAAO,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC;IAC3D,MAAM,CAAC,QAAQ,CAAC,WAAW,eAAe;IAC1C,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ;IAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO;;;;;;;;;;;;;;;;MAAW;IAG5B,OAAO;CAehB"}
|
|
@@ -33,10 +33,30 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
33
33
|
function _ts_metadata(k, v) {
|
|
34
34
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
35
35
|
}
|
|
36
|
+
const options = {
|
|
37
|
+
_: {
|
|
38
|
+
description: '[runnerArgs...]',
|
|
39
|
+
array: true,
|
|
40
|
+
string: true
|
|
41
|
+
},
|
|
42
|
+
runner: {
|
|
43
|
+
choices: [
|
|
44
|
+
'jest',
|
|
45
|
+
'vitest'
|
|
46
|
+
],
|
|
47
|
+
description: 'Test runner',
|
|
48
|
+
defaultDescription: 'jest'
|
|
49
|
+
},
|
|
50
|
+
runnerArgs: {
|
|
51
|
+
array: true,
|
|
52
|
+
string: true,
|
|
53
|
+
hidden: true
|
|
54
|
+
}
|
|
55
|
+
};
|
|
36
56
|
class Tests extends _types.Command {
|
|
37
57
|
async execute() {
|
|
38
58
|
var _getConfiguration_testRunner;
|
|
39
|
-
const { _, runner = (_getConfiguration_testRunner = (0, _utils.getConfiguration)().testRunner) !== null && _getConfiguration_testRunner !== void 0 ? _getConfiguration_testRunner : 'jest', runnerArgs = [], ...restOptions } = this.args;
|
|
59
|
+
const { _ = [], runner = (_getConfiguration_testRunner = (0, _utils.getConfiguration)().testRunner) !== null && _getConfiguration_testRunner !== void 0 ? _getConfiguration_testRunner : 'jest', runnerArgs = [], ...restOptions } = this.args;
|
|
40
60
|
if (runner === 'jest') {
|
|
41
61
|
await new _runners.Jest({
|
|
42
62
|
_: [
|
|
@@ -54,19 +74,7 @@ class Tests extends _types.Command {
|
|
|
54
74
|
}
|
|
55
75
|
_define_property(Tests, "description", 'Run tests');
|
|
56
76
|
_define_property(Tests, "greedy", true);
|
|
57
|
-
_define_property(Tests, "options",
|
|
58
|
-
_: {
|
|
59
|
-
description: '[runnerArgs...]'
|
|
60
|
-
},
|
|
61
|
-
runner: {
|
|
62
|
-
choices: [
|
|
63
|
-
'jest',
|
|
64
|
-
'vitest'
|
|
65
|
-
],
|
|
66
|
-
description: 'Test runner',
|
|
67
|
-
defaultDescription: 'jest'
|
|
68
|
-
}
|
|
69
|
-
});
|
|
77
|
+
_define_property(Tests, "options", options);
|
|
70
78
|
_ts_decorate([
|
|
71
79
|
_utils.logErrors,
|
|
72
80
|
_ts_metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/cli/commands/test/tests.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport { Config } from '@jest/types';\nimport { getConfiguration, logErrors } from '../../../utils';\nimport { Command } from '../types';\nimport { Jest, Vitest } from './runners';\n\
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/commands/test/tests.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport { Config } from '@jest/types';\nimport { getConfiguration, logErrors } from '../../../utils';\nimport { Command, CommandOptions } from '../types';\nimport { Jest, Vitest } from './runners';\n\nconst options = {\n _: { description: '[runnerArgs...]', array: true, string: true },\n runner: {\n choices: ['jest', 'vitest'] as const,\n description: 'Test runner',\n defaultDescription: 'jest',\n },\n runnerArgs: { array: true, string: true, hidden: true },\n} satisfies CommandOptions;\n\n/**\n * This class is named \"Tests\" instead of \"Test\" because the corresponding\n * \"test.ts\" would be interpreted as a test file.\n */\nexport class Tests extends Command<typeof options, Config.Argv> {\n static readonly description = 'Run tests';\n static readonly greedy = true;\n static readonly options = options;\n\n @logErrors\n async execute() {\n const {\n _ = [],\n runner = getConfiguration().testRunner ?? 'jest',\n runnerArgs = [],\n ...restOptions\n } = this.args;\n if (runner === 'jest') {\n await new Jest({ _: [..._, ...runnerArgs], ...restOptions }).run();\n } else if (runner === 'vitest') {\n await new Vitest().run();\n } else {\n throw new Error(`unrecognized runner \"${runner}\"`);\n }\n }\n}\n"],"names":["Tests","options","_","description","array","string","runner","choices","defaultDescription","runnerArgs","hidden","Command","execute","getConfiguration","testRunner","restOptions","args","Jest","run","Vitest","Error","greedy"],"mappings":"AAAA,uDAAuD;;;;+BAoB1CA;;;eAAAA;;;uBAlB+B;uBACJ;yBACX;;;;;;;;;;;;;;;;;;;;;;;AAE7B,MAAMC,UAAU;IACZC,GAAG;QAAEC,aAAa;QAAmBC,OAAO;QAAMC,QAAQ;IAAK;IAC/DC,QAAQ;QACJC,SAAS;YAAC;YAAQ;SAAS;QAC3BJ,aAAa;QACbK,oBAAoB;IACxB;IACAC,YAAY;QAAEL,OAAO;QAAMC,QAAQ;QAAMK,QAAQ;IAAK;AAC1D;AAMO,MAAMV,cAAcW,cAAO;IAK9B,MACMC,UAAU;YAGCC;QAFb,MAAM,EACFX,IAAI,EAAE,EACNI,UAASO,+BAAAA,IAAAA,uBAAgB,IAAGC,UAAU,cAA7BD,0CAAAA,+BAAiC,MAAM,EAChDJ,aAAa,EAAE,EACf,GAAGM,aACN,GAAG,IAAI,CAACC,IAAI;QACb,IAAIV,WAAW,QAAQ;YACnB,MAAM,IAAIW,aAAI,CAAC;gBAAEf,GAAG;uBAAIA;uBAAMO;iBAAW;gBAAE,GAAGM,WAAW;YAAC,GAAGG,GAAG;QACpE,OAAO,IAAIZ,WAAW,UAAU;YAC5B,MAAM,IAAIa,eAAM,GAAGD,GAAG;QAC1B,OAAO;YACH,MAAM,IAAIE,MAAM,CAAC,qBAAqB,EAAEd,OAAO,CAAC,CAAC;QACrD;IACJ;AACJ;AApBI,iBADSN,OACOG,eAAc;AAC9B,iBAFSH,OAEOqB,UAAS;AACzB,iBAHSrB,OAGOC,WAAUA"}
|
|
@@ -1,16 +1,57 @@
|
|
|
1
|
-
import type { Options } from 'yargs';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import type { InferredOptionTypes, Options } from 'yargs';
|
|
2
|
+
export type CommandOptions = Record<string, Options>;
|
|
3
|
+
/**
|
|
4
|
+
* Expands a type by resolving any type aliases and intersections into a single object type.
|
|
5
|
+
*
|
|
6
|
+
* This is useful for flattening complex type compositions so their properties are materialized,
|
|
7
|
+
* especially when working with mapped types and conditional types.
|
|
8
|
+
*
|
|
9
|
+
* @template T - The type to expand.
|
|
10
|
+
* @example
|
|
11
|
+
* type Input = { a: string } & { b: number };
|
|
12
|
+
* type Output = Expand<Input>; // { a: string; b: number }
|
|
13
|
+
*/
|
|
14
|
+
type Expand<T> = T extends infer O ? {
|
|
15
|
+
[K in keyof O]: O[K];
|
|
16
|
+
} : never;
|
|
17
|
+
/**
|
|
18
|
+
* Transforms a type so that properties whose value type includes `undefined`
|
|
19
|
+
* become optional (`?:`), while properties that cannot be `undefined` remain required.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* type Input = { a: string; b: string | undefined; c?: number };
|
|
23
|
+
* type Output = UndefinedToOptional<Input>;
|
|
24
|
+
* // Results in: { a: string; b?: string | undefined; c?: number }
|
|
25
|
+
*/
|
|
26
|
+
type UndefinedToOptional<T> = {
|
|
27
|
+
[K in keyof T as undefined extends T[K] ? never : K]: T[K];
|
|
28
|
+
} & {
|
|
29
|
+
[K in keyof T as undefined extends T[K] ? K : never]?: T[K];
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Infers the command args type from a yargs options definition object.
|
|
33
|
+
* Makes properties optional unless demandOption is set to true.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* const options = {
|
|
37
|
+
* watch: { boolean: true, description: '...' },
|
|
38
|
+
* outputPath: { string: true, description: '...' },
|
|
39
|
+
* config: { string: true, demandOption: true, description: '...' },
|
|
40
|
+
* } satisfies CommandOptions;
|
|
41
|
+
*
|
|
42
|
+
* type Args = InferArgs<typeof options>;
|
|
43
|
+
* // Results in: { watch?: boolean; outputPath?: string; config: string; }
|
|
44
|
+
*/
|
|
45
|
+
export type InferArgs<T extends CommandOptions, U = unknown> = Expand<UndefinedToOptional<InferredOptionTypes<T>>> & U;
|
|
46
|
+
export declare abstract class Command<T extends CommandOptions = CommandOptions, U = unknown> {
|
|
47
|
+
protected readonly args: InferArgs<T, U>;
|
|
48
|
+
static readonly allowRunFromGlobal?: boolean;
|
|
7
49
|
static readonly description?: string;
|
|
8
50
|
static readonly greedy?: boolean;
|
|
9
|
-
static readonly options?:
|
|
10
|
-
|
|
11
|
-
};
|
|
12
|
-
constructor(args: T);
|
|
51
|
+
static readonly options?: CommandOptions;
|
|
52
|
+
constructor(args: InferArgs<T, U>);
|
|
13
53
|
abstract execute(): Promise<void>;
|
|
14
54
|
}
|
|
15
55
|
export type Newable<T> = new (...args: any[]) => T;
|
|
56
|
+
export {};
|
|
16
57
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAE1D,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAErD;;;;;;;;;;GAUG;AACH,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAC;AAEtE;;;;;;;;GAQG;AACH,KAAK,mBAAmB,CAAC,CAAC,IAAI;KACzB,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC7D,GAAG;KACC,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAC9D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,cAAc,EAAE,CAAC,GAAG,OAAO,IAAI,MAAM,CACjE,mBAAmB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAC9C,GACG,CAAC,CAAC;AAEN,8BAAsB,OAAO,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,CAAC,GAAG,OAAO;IAMpE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IALpD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7C,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;gBAEV,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IAEpD,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CACpC;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cli/commands/types.ts"],"sourcesContent":["import type { Options } from 'yargs';\n\nexport
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/commands/types.ts"],"sourcesContent":["import type { InferredOptionTypes, Options } from 'yargs';\n\nexport type CommandOptions = Record<string, Options>;\n\n/**\n * Expands a type by resolving any type aliases and intersections into a single object type.\n *\n * This is useful for flattening complex type compositions so their properties are materialized,\n * especially when working with mapped types and conditional types.\n *\n * @template T - The type to expand.\n * @example\n * type Input = { a: string } & { b: number };\n * type Output = Expand<Input>; // { a: string; b: number }\n */\ntype Expand<T> = T extends infer O ? { [K in keyof O]: O[K] } : never;\n\n/**\n * Transforms a type so that properties whose value type includes `undefined`\n * become optional (`?:`), while properties that cannot be `undefined` remain required.\n *\n * @example\n * type Input = { a: string; b: string | undefined; c?: number };\n * type Output = UndefinedToOptional<Input>;\n * // Results in: { a: string; b?: string | undefined; c?: number }\n */\ntype UndefinedToOptional<T> = {\n [K in keyof T as undefined extends T[K] ? never : K]: T[K];\n} & {\n [K in keyof T as undefined extends T[K] ? K : never]?: T[K];\n};\n\n/**\n * Infers the command args type from a yargs options definition object.\n * Makes properties optional unless demandOption is set to true.\n *\n * @example\n * const options = {\n * watch: { boolean: true, description: '...' },\n * outputPath: { string: true, description: '...' },\n * config: { string: true, demandOption: true, description: '...' },\n * } satisfies CommandOptions;\n *\n * type Args = InferArgs<typeof options>;\n * // Results in: { watch?: boolean; outputPath?: string; config: string; }\n */\nexport type InferArgs<T extends CommandOptions, U = unknown> = Expand<\n UndefinedToOptional<InferredOptionTypes<T>>\n> &\n U;\n\nexport abstract class Command<T extends CommandOptions = CommandOptions, U = unknown> {\n static readonly allowRunFromGlobal?: boolean;\n static readonly description?: string;\n static readonly greedy?: boolean;\n static readonly options?: CommandOptions;\n\n constructor(protected readonly args: InferArgs<T, U>) {}\n\n abstract execute(): Promise<void>;\n}\n\nexport type Newable<T> = new (...args: any[]) => T;\n"],"names":["Command","args","allowRunFromGlobal","description","greedy","options"],"mappings":";;;;+BAmDsBA;;;eAAAA;;;;;;;;;;;;;;;;AAAf,MAAeA;IAMlB,YAAY,AAAmBC,IAAqB,CAAE;;aAAvBA,OAAAA;IAAwB;AAG3D;AARI,iBADkBD,SACFE,sBAAhB,KAAA;AACA,iBAFkBF,SAEFG,eAAhB,KAAA;AACA,iBAHkBH,SAGFI,UAAhB,KAAA;AACA,iBAJkBJ,SAIFK,WAAhB,KAAA"}
|
|
@@ -1,10 +1,30 @@
|
|
|
1
|
-
import { Command
|
|
2
|
-
|
|
3
|
-
dry
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { Command } from './types';
|
|
2
|
+
declare const options: {
|
|
3
|
+
dry: {
|
|
4
|
+
boolean: true;
|
|
5
|
+
description: string;
|
|
6
|
+
};
|
|
7
|
+
releaseVersion: {
|
|
8
|
+
string: true;
|
|
9
|
+
demandOption: true;
|
|
10
|
+
requiresArg: true;
|
|
11
|
+
description: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export declare class UploadSourcemaps extends Command<typeof options> {
|
|
7
15
|
#private;
|
|
16
|
+
static readonly options: {
|
|
17
|
+
dry: {
|
|
18
|
+
boolean: true;
|
|
19
|
+
description: string;
|
|
20
|
+
};
|
|
21
|
+
releaseVersion: {
|
|
22
|
+
string: true;
|
|
23
|
+
demandOption: true;
|
|
24
|
+
requiresArg: true;
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
8
28
|
execute(): Promise<void>;
|
|
9
29
|
private checkArgs;
|
|
10
30
|
private checkLocation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-sourcemaps.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"upload-sourcemaps.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAkB,MAAM,SAAS,CAAC;AAElD,QAAA,MAAM,OAAO;;;;;;;;;;;CAQa,CAAC;AAM3B,qBAAa,gBAAiB,SAAQ,OAAO,CAAC,OAAO,OAAO,CAAC;;IACzD,MAAM,CAAC,QAAQ,CAAC,OAAO;;;;;;;;;;;MAAW;IAM5B,OAAO;IAWb,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,GAAG;CAId"}
|
|
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "UploadSourcemaps", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _install = require("@servicetitan/install");
|
|
12
|
-
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
13
12
|
const _child_process = require("child_process");
|
|
13
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
14
14
|
const _utils = require("../../utils");
|
|
15
15
|
const _utils1 = require("../utils");
|
|
16
16
|
const _types = require("./types");
|
|
@@ -54,6 +54,19 @@ function _class_private_field_set(receiver, privateMap, value) {
|
|
|
54
54
|
_class_apply_descriptor_set(receiver, descriptor, value);
|
|
55
55
|
return value;
|
|
56
56
|
}
|
|
57
|
+
function _define_property(obj, key, value) {
|
|
58
|
+
if (key in obj) {
|
|
59
|
+
Object.defineProperty(obj, key, {
|
|
60
|
+
value: value,
|
|
61
|
+
enumerable: true,
|
|
62
|
+
configurable: true,
|
|
63
|
+
writable: true
|
|
64
|
+
});
|
|
65
|
+
} else {
|
|
66
|
+
obj[key] = value;
|
|
67
|
+
}
|
|
68
|
+
return obj;
|
|
69
|
+
}
|
|
57
70
|
function _interop_require_default(obj) {
|
|
58
71
|
return obj && obj.__esModule ? obj : {
|
|
59
72
|
default: obj
|
|
@@ -68,6 +81,18 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
68
81
|
function _ts_metadata(k, v) {
|
|
69
82
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
70
83
|
}
|
|
84
|
+
const options = {
|
|
85
|
+
dry: {
|
|
86
|
+
boolean: true,
|
|
87
|
+
description: 'Dry run mode'
|
|
88
|
+
},
|
|
89
|
+
releaseVersion: {
|
|
90
|
+
string: true,
|
|
91
|
+
demandOption: true,
|
|
92
|
+
requiresArg: true,
|
|
93
|
+
description: 'Release version'
|
|
94
|
+
}
|
|
95
|
+
};
|
|
71
96
|
var _outDir = /*#__PURE__*/ new WeakMap(), _packageJson = /*#__PURE__*/ new WeakMap();
|
|
72
97
|
class UploadSourcemaps extends _types.Command {
|
|
73
98
|
async execute() {
|
|
@@ -88,9 +113,6 @@ class UploadSourcemaps extends _types.Command {
|
|
|
88
113
|
_utils.log.warning(`${message}; skipping sourcemaps`);
|
|
89
114
|
return false;
|
|
90
115
|
}
|
|
91
|
-
if (!this.args.releaseVersion) {
|
|
92
|
-
throw new Error('--release-version is required');
|
|
93
|
-
}
|
|
94
116
|
return true;
|
|
95
117
|
}
|
|
96
118
|
checkLocation() {
|
|
@@ -155,6 +177,7 @@ class UploadSourcemaps extends _types.Command {
|
|
|
155
177
|
});
|
|
156
178
|
}
|
|
157
179
|
}
|
|
180
|
+
_define_property(UploadSourcemaps, "options", options);
|
|
158
181
|
_ts_decorate([
|
|
159
182
|
_utils.logErrors,
|
|
160
183
|
_ts_metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"sourcesContent":["import { isCI } from '@servicetitan/install';\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"sourcesContent":["import { isCI } from '@servicetitan/install';\nimport { execSync } from 'child_process';\nimport path from 'path';\nimport { getTsConfig, isWebComponent, log, logErrors, readJson } from '../../utils';\nimport { TSConfig } from '../utils';\nimport { Command, CommandOptions } from './types';\n\nconst options = {\n dry: { boolean: true, description: 'Dry run mode' },\n releaseVersion: {\n string: true,\n demandOption: true,\n requiresArg: true,\n description: 'Release version',\n },\n} satisfies CommandOptions;\n\ninterface PackageJson {\n name: string;\n}\n\nexport class UploadSourcemaps extends Command<typeof options> {\n static readonly options = options;\n #outDir?: string;\n #packageJson?: PackageJson;\n\n @logErrors\n // eslint-disable-next-line @typescript-eslint/require-await\n async execute() {\n this.checkLocation();\n if (!this.checkArgs()) {\n return;\n }\n\n const bundleDir = this.getBundleDir();\n const options = this.getOptions().join(' ');\n this.run(`npx --yes @datadog/datadog-ci@3 sourcemaps upload ${bundleDir} ${options}`);\n }\n\n private checkArgs() {\n if (!process.env.DATADOG_API_KEY) {\n const message = 'DATADOG_API_KEY environment variable is not set';\n if (!isCI()) {\n throw new Error(message);\n }\n log.warning(`${message}; skipping sourcemaps`);\n return false;\n }\n\n return true;\n }\n\n private checkLocation() {\n if (!isWebComponent()) {\n throw new Error(`this command must be run inside a web-component directory`);\n }\n }\n\n private getBundleDir() {\n return path.relative('.', path.join(this.getOutDir(), 'bundle'));\n }\n\n private getMinifiedPrefixPath() {\n const { name } = this.getPackageJson();\n const baseUrl = `https://unpkg.servicetitan.com/${name}@${this.args.releaseVersion}`;\n return `${baseUrl}/${this.getBundleDir().replace(/\\\\/g, '/')}`;\n }\n\n private getOptions() {\n const { dry, releaseVersion } = this.args;\n const service = this.getPackageJson().name.replace(/^[^/]+\\//, '');\n return [\n ...[dry && `--dry-run`],\n `--service=${service}`,\n `--release-version=${releaseVersion}`,\n `--minified-path-prefix=${this.getMinifiedPrefixPath()}`,\n `--project-path=${this.getProjectPath()}`,\n ].filter(item => !!item) as string[];\n }\n\n private getOutDir() {\n if (!this.#outDir) {\n const outDir = new TSConfig(getTsConfig()).getValue<string>('compilerOptions.outDir');\n if (!outDir) {\n throw new Error('compilerOptions.outDir is not configured');\n }\n\n this.#outDir = outDir;\n }\n return this.#outDir;\n }\n\n private getPackageJson() {\n if (!this.#packageJson) {\n this.#packageJson = readJson<PackageJson>('package.json');\n }\n return this.#packageJson;\n }\n\n private getProjectPath() {\n const name = readJson(path.join(this.getOutDir(), 'metadata.json')).name;\n return `${name}/`;\n }\n\n private run(command: string) {\n log.info(`Running: ${command}`);\n return execSync(command, { stdio: 'inherit' });\n }\n}\n"],"names":["UploadSourcemaps","options","dry","boolean","description","releaseVersion","string","demandOption","requiresArg","Command","execute","checkLocation","checkArgs","bundleDir","getBundleDir","getOptions","join","run","process","env","DATADOG_API_KEY","message","isCI","Error","log","warning","isWebComponent","path","relative","getOutDir","getMinifiedPrefixPath","name","getPackageJson","baseUrl","args","replace","service","getProjectPath","filter","item","outDir","TSConfig","getTsConfig","getValue","readJson","command","info","execSync","stdio"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,uCAAuC,CAAC;AACzE,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AAEjD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get DEFAULT_MFE_REGISTRY () {
|
|
13
|
+
return DEFAULT_MFE_REGISTRY;
|
|
14
|
+
},
|
|
15
|
+
get ROLLBACK_TAG_SUFFIX () {
|
|
16
|
+
return ROLLBACK_TAG_SUFFIX;
|
|
17
|
+
},
|
|
18
|
+
get buildRollbackTag () {
|
|
19
|
+
return buildRollbackTag;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const DEFAULT_MFE_REGISTRY = 'https://verdaccio.servicetitan.com';
|
|
23
|
+
const ROLLBACK_TAG_SUFFIX = '-rollback-1';
|
|
24
|
+
function buildRollbackTag(tag) {
|
|
25
|
+
return `${tag}${ROLLBACK_TAG_SUFFIX}`;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/commands/utils.ts"],"sourcesContent":["export const DEFAULT_MFE_REGISTRY = 'https://verdaccio.servicetitan.com';\nexport const ROLLBACK_TAG_SUFFIX = '-rollback-1';\n\nexport function buildRollbackTag(tag: string): string {\n return `${tag}${ROLLBACK_TAG_SUFFIX}`;\n}\n"],"names":["DEFAULT_MFE_REGISTRY","ROLLBACK_TAG_SUFFIX","buildRollbackTag","tag"],"mappings":";;;;;;;;;;;QAAaA;eAAAA;;QACAC;eAAAA;;QAEGC;eAAAA;;;AAHT,MAAMF,uBAAuB;AAC7B,MAAMC,sBAAsB;AAE5B,SAASC,iBAAiBC,GAAW;IACxC,OAAO,GAAGA,MAAMF,qBAAqB;AACzC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
const _chalk = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
6
6
|
const _execa = /*#__PURE__*/ _interop_require_default(require("execa"));
|
|
7
|
+
const _lodashkebabcase = /*#__PURE__*/ _interop_require_default(require("lodash.kebabcase"));
|
|
7
8
|
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
8
9
|
const _yargs = /*#__PURE__*/ _interop_require_default(require("yargs"));
|
|
9
10
|
const _helpers = require("yargs/helpers");
|
|
@@ -15,19 +16,20 @@ function _interop_require_default(obj) {
|
|
|
15
16
|
default: obj
|
|
16
17
|
};
|
|
17
18
|
}
|
|
18
|
-
|
|
19
|
+
const yargsInstance = (0, _yargs.default)((0, _helpers.hideBin)(process.argv));
|
|
20
|
+
Object.values(_utils.CommandName).reduce((y, name)=>addCommand(name, y), yargsInstance).usage('Usage: startup <command> [options]').epilogue(_chalk.default.bold.cyan(`startup cli v${(0, _utils.getStartupVersion)()}\n`) + `Run ${_chalk.default.bold.cyan('startup <command> --help')} to see command options.\n` + `For detailed documentation, see ${_chalk.default.bold.cyan('https://docs.st.dev/docs/frontend/uikit/startup')}.\n`).demandCommand(1, '').strictCommands().updateStrings({
|
|
19
21
|
'Unknown command: %s': {
|
|
20
22
|
one: _chalk.default.bold.red('Unknown command: %s'),
|
|
21
23
|
other: _chalk.default.bold.red('Unknown command: %s')
|
|
22
24
|
}
|
|
23
|
-
}).version().wrap(Math.min(100,
|
|
25
|
+
}).version().wrap(Math.min(100, yargsInstance.terminalWidth())).help().parse();
|
|
24
26
|
function addCommand(name, y) {
|
|
25
27
|
const klass = (0, _commands.getCommand)(name);
|
|
26
28
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
27
29
|
const { description, options: { _, ...options } = {} } = klass;
|
|
28
30
|
const nameWithArgs = name + ((_ === null || _ === void 0 ? void 0 : _.description) ? ` ${_.description}` : '');
|
|
29
31
|
const groupedOptions = Object.entries(options).reduce((result, [key, value])=>{
|
|
30
|
-
result[key] = {
|
|
32
|
+
result[(0, _lodashkebabcase.default)(key)] = {
|
|
31
33
|
group: 'Command Options:',
|
|
32
34
|
...value
|
|
33
35
|
};
|
|
@@ -43,12 +45,13 @@ function addCommand(name, y) {
|
|
|
43
45
|
}
|
|
44
46
|
function handleCommand(name, argv) {
|
|
45
47
|
const Command = (0, _commands.getCommand)(name);
|
|
46
|
-
checkNodeVersion();
|
|
47
48
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
48
49
|
const command = new Command({
|
|
49
50
|
...argv,
|
|
50
51
|
_: argv._.slice(1)
|
|
51
52
|
});
|
|
53
|
+
checkNodeVersion();
|
|
54
|
+
(0, _utils1.checkStartupLocation)(name, command);
|
|
52
55
|
if ((0, _utils1.setNodeOptions)(name, command)) {
|
|
53
56
|
_utils.log.debug('run', `Running ${name} in child process with amended NODE_OPTIONS`);
|
|
54
57
|
(0, _execa.default)(process.argv[0], process.argv.slice(1), {
|
|
@@ -70,7 +73,7 @@ function checkNodeVersion() {
|
|
|
70
73
|
const { engines } = require(_path.default.join(__dirname, '../../package.json'));
|
|
71
74
|
_utils.log.error(`error: node v${nodeVersion} detected, only even-numbered LTS versions ${engines.node} are supported`);
|
|
72
75
|
_utils.log.text('See https://nodejs.org/en/download for LTS versions');
|
|
73
|
-
process.exit(
|
|
76
|
+
process.exit(1);
|
|
74
77
|
}
|
|
75
78
|
|
|
76
79
|
//# sourceMappingURL=index.js.map
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["import chalk from 'chalk';\nimport execa from 'execa';\nimport path from 'path';\nimport yargs from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport { CommandName, getStartupVersion, log } from '../utils';\nimport { Command, getCommand } from './commands';\nimport { setNodeOptions } from './utils';\n\nObject.values(CommandName)\n .reduce((y, name) => addCommand(name, y),
|
|
1
|
+
{"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["import chalk from 'chalk';\nimport execa from 'execa';\nimport kebabCase from 'lodash.kebabcase';\nimport path from 'path';\nimport yargs from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport { CommandName, getStartupVersion, log } from '../utils';\nimport { Command, getCommand } from './commands';\nimport { checkStartupLocation, setNodeOptions } from './utils';\n\nconst yargsInstance = yargs(hideBin(process.argv));\n\nObject.values(CommandName)\n .reduce((y, name) => addCommand(name, y), yargsInstance)\n .usage('Usage: startup <command> [options]')\n .epilogue(\n chalk.bold.cyan(`startup cli v${getStartupVersion()}\\n`) +\n `Run ${chalk.bold.cyan('startup <command> --help')} to see command options.\\n` +\n `For detailed documentation, see ${chalk.bold.cyan('https://docs.st.dev/docs/frontend/uikit/startup')}.\\n`\n )\n .demandCommand(1, '')\n .strictCommands()\n .updateStrings({\n 'Unknown command: %s': {\n one: chalk.bold.red('Unknown command: %s'),\n other: chalk.bold.red('Unknown command: %s'),\n } as any,\n })\n .version()\n .wrap(Math.min(100, yargsInstance.terminalWidth()))\n .help()\n .parse();\n\nfunction addCommand(name: CommandName, y: typeof yargs) {\n const klass = getCommand(name)! as typeof Command;\n // eslint-disable-next-line @typescript-eslint/naming-convention\n const { description, options: { _, ...options } = {} } = klass;\n const nameWithArgs = name + (_?.description ? ` ${_.description}` : '');\n const groupedOptions = Object.entries(options).reduce(\n (result, [key, value]) => {\n result[kebabCase(key)] = { group: 'Command Options:', ...value };\n return result;\n },\n {} as NonNullable<typeof klass.options>\n );\n const handler = (argv: any) => handleCommand(name, argv);\n if (description) {\n y.command(nameWithArgs, description, groupedOptions, handler);\n } else {\n y.command(nameWithArgs, false, groupedOptions, handler);\n }\n return y;\n}\n\nfunction handleCommand(name: CommandName, argv: any) {\n const Command = getCommand(name)!;\n // eslint-disable-next-line @typescript-eslint/naming-convention\n const command = new Command({ ...argv, _: argv._.slice(1) });\n\n checkNodeVersion();\n checkStartupLocation(name, command);\n\n if (setNodeOptions(name, command)) {\n log.debug('run', `Running ${name} in child process with amended NODE_OPTIONS`);\n execa(process.argv[0], process.argv.slice(1), { stdio: 'inherit' }).catch(reason => {\n process.exit(reason.exitCode);\n });\n } else {\n command.execute().catch(() => {\n process.exit(1);\n });\n }\n}\n\nfunction checkNodeVersion() {\n const nodeVersion = Number(process.versions.node.split('.')[0]);\n if (nodeVersion % 2 === 0 || process.env.SKIP_NODE_VERSION_CHECK) {\n return;\n }\n\n const { engines } = require(path.join(__dirname, '../../package.json'));\n log.error(\n `error: node v${nodeVersion} detected, only even-numbered LTS versions ${engines.node} are supported`\n );\n log.text('See https://nodejs.org/en/download for LTS versions');\n process.exit(1);\n}\n"],"names":["yargsInstance","yargs","hideBin","process","argv","Object","values","CommandName","reduce","y","name","addCommand","usage","epilogue","chalk","bold","cyan","getStartupVersion","demandCommand","strictCommands","updateStrings","one","red","other","version","wrap","Math","min","terminalWidth","help","parse","klass","getCommand","description","options","_","nameWithArgs","groupedOptions","entries","result","key","value","kebabCase","group","handler","handleCommand","command","Command","slice","checkNodeVersion","checkStartupLocation","setNodeOptions","log","debug","execa","stdio","catch","reason","exit","exitCode","execute","nodeVersion","Number","versions","node","split","env","SKIP_NODE_VERSION_CHECK","engines","require","path","join","__dirname","error","text"],"mappings":";;;;8DAAkB;8DACA;wEACI;6DACL;8DACC;yBACM;uBAC4B;0BAChB;wBACiB;;;;;;AAErD,MAAMA,gBAAgBC,IAAAA,cAAK,EAACC,IAAAA,gBAAO,EAACC,QAAQC,IAAI;AAEhDC,OAAOC,MAAM,CAACC,kBAAW,EACpBC,MAAM,CAAC,CAACC,GAAGC,OAASC,WAAWD,MAAMD,IAAIT,eACzCY,KAAK,CAAC,sCACNC,QAAQ,CACLC,cAAK,CAACC,IAAI,CAACC,IAAI,CAAC,CAAC,aAAa,EAAEC,IAAAA,wBAAiB,IAAG,EAAE,CAAC,IACnD,CAAC,IAAI,EAAEH,cAAK,CAACC,IAAI,CAACC,IAAI,CAAC,4BAA4B,0BAA0B,CAAC,GAC9E,CAAC,gCAAgC,EAAEF,cAAK,CAACC,IAAI,CAACC,IAAI,CAAC,mDAAmD,GAAG,CAAC,EAEjHE,aAAa,CAAC,GAAG,IACjBC,cAAc,GACdC,aAAa,CAAC;IACX,uBAAuB;QACnBC,KAAKP,cAAK,CAACC,IAAI,CAACO,GAAG,CAAC;QACpBC,OAAOT,cAAK,CAACC,IAAI,CAACO,GAAG,CAAC;IAC1B;AACJ,GACCE,OAAO,GACPC,IAAI,CAACC,KAAKC,GAAG,CAAC,KAAK3B,cAAc4B,aAAa,KAC9CC,IAAI,GACJC,KAAK;AAEV,SAASnB,WAAWD,IAAiB,EAAED,CAAe;IAClD,MAAMsB,QAAQC,IAAAA,oBAAU,EAACtB;IACzB,gEAAgE;IAChE,MAAM,EAAEuB,WAAW,EAAEC,SAAS,EAAEC,CAAC,EAAE,GAAGD,SAAS,GAAG,CAAC,CAAC,EAAE,GAAGH;IACzD,MAAMK,eAAe1B,OAAQyB,CAAAA,CAAAA,cAAAA,wBAAAA,EAAGF,WAAW,IAAG,CAAC,CAAC,EAAEE,EAAEF,WAAW,EAAE,GAAG,EAAC;IACrE,MAAMI,iBAAiBhC,OAAOiC,OAAO,CAACJ,SAAS1B,MAAM,CACjD,CAAC+B,QAAQ,CAACC,KAAKC,MAAM;QACjBF,MAAM,CAACG,IAAAA,wBAAS,EAACF,KAAK,GAAG;YAAEG,OAAO;YAAoB,GAAGF,KAAK;QAAC;QAC/D,OAAOF;IACX,GACA,CAAC;IAEL,MAAMK,UAAU,CAACxC,OAAcyC,cAAcnC,MAAMN;IACnD,IAAI6B,aAAa;QACbxB,EAAEqC,OAAO,CAACV,cAAcH,aAAaI,gBAAgBO;IACzD,OAAO;QACHnC,EAAEqC,OAAO,CAACV,cAAc,OAAOC,gBAAgBO;IACnD;IACA,OAAOnC;AACX;AAEA,SAASoC,cAAcnC,IAAiB,EAAEN,IAAS;IAC/C,MAAM2C,UAAUf,IAAAA,oBAAU,EAACtB;IAC3B,gEAAgE;IAChE,MAAMoC,UAAU,IAAIC,QAAQ;QAAE,GAAG3C,IAAI;QAAE+B,GAAG/B,KAAK+B,CAAC,CAACa,KAAK,CAAC;IAAG;IAE1DC;IACAC,IAAAA,4BAAoB,EAACxC,MAAMoC;IAE3B,IAAIK,IAAAA,sBAAc,EAACzC,MAAMoC,UAAU;QAC/BM,UAAG,CAACC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE3C,KAAK,2CAA2C,CAAC;QAC7E4C,IAAAA,cAAK,EAACnD,QAAQC,IAAI,CAAC,EAAE,EAAED,QAAQC,IAAI,CAAC4C,KAAK,CAAC,IAAI;YAAEO,OAAO;QAAU,GAAGC,KAAK,CAACC,CAAAA;YACtEtD,QAAQuD,IAAI,CAACD,OAAOE,QAAQ;QAChC;IACJ,OAAO;QACHb,QAAQc,OAAO,GAAGJ,KAAK,CAAC;YACpBrD,QAAQuD,IAAI,CAAC;QACjB;IACJ;AACJ;AAEA,SAAST;IACL,MAAMY,cAAcC,OAAO3D,QAAQ4D,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;IAC9D,IAAIJ,cAAc,MAAM,KAAK1D,QAAQ+D,GAAG,CAACC,uBAAuB,EAAE;QAC9D;IACJ;IAEA,MAAM,EAAEC,OAAO,EAAE,GAAGC,QAAQC,aAAI,CAACC,IAAI,CAACC,WAAW;IACjDpB,UAAG,CAACqB,KAAK,CACL,CAAC,aAAa,EAAEZ,YAAY,2CAA2C,EAAEO,QAAQJ,IAAI,CAAC,cAAc,CAAC;IAEzGZ,UAAG,CAACsB,IAAI,CAAC;IACTvE,QAAQuD,IAAI,CAAC;AACjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-task.d.ts","sourceRoot":"","sources":["../../../src/cli/tasks/cli-task.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli-task.d.ts","sourceRoot":"","sources":["../../../src/cli/tasks/cli-task.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAE9C,MAAM,WAAW,UAAU;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACrD,UAAU,EAAE,UAAU,CAAC;CAC1B;AAED,8BAAsB,OAAQ,SAAQ,IAAI;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAE5B,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB;cAKtC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;CAmClE"}
|
|
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "CliTask", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _execa = /*#__PURE__*/ _interop_require_default(require("execa"));
|
|
12
|
-
const _task = require("./task");
|
|
13
12
|
const _utils = require("../utils");
|
|
13
|
+
const _task = require("./task");
|
|
14
14
|
function _define_property(obj, key, value) {
|
|
15
15
|
if (key in obj) {
|
|
16
16
|
Object.defineProperty(obj, key, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cli/tasks/cli-task.ts"],"sourcesContent":["import execa from 'execa';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tasks/cli-task.ts"],"sourcesContent":["import execa from 'execa';\nimport { pipeStdout, watchStdout } from '../utils';\nimport { Task, TaskParameters } from './task';\n\nexport interface Indicators {\n end: string;\n watchStart: string;\n watchEnd?: string;\n}\n\nexport interface CliTaskParameters extends TaskParameters {\n indicators: Indicators;\n}\n\nexport abstract class CliTask extends Task {\n private readonly indicators: Indicators;\n\n constructor({ indicators, ...rest }: CliTaskParameters) {\n super(rest);\n this.indicators = indicators;\n }\n\n protected async runChildProcess(command: string, args: string[]) {\n const childProcess = execa(\n command,\n args,\n this.watch\n ? {\n stdio: ['inherit', 'pipe', 'inherit'],\n }\n : {\n stdio: 'inherit',\n }\n );\n\n if (!this.watch) {\n try {\n await childProcess;\n } finally {\n this.logCompletionResults(this.taskTimer.end());\n }\n return;\n }\n\n pipeStdout(childProcess);\n watchStdout(childProcess, this.indicators.watchStart, () => {\n this.taskTimer.start();\n });\n watchStdout(childProcess, this.indicators.end, () => {\n this.logCompletionResults(this.taskTimer.end());\n });\n watchStdout(childProcess, this.indicators.watchEnd, () => {\n this.logCompletionResults(this.taskTimer.end());\n });\n\n await childProcess;\n }\n}\n"],"names":["CliTask","Task","runChildProcess","command","args","childProcess","execa","watch","stdio","logCompletionResults","taskTimer","end","pipeStdout","watchStdout","indicators","watchStart","start","watchEnd","rest"],"mappings":";;;;+BAcsBA;;;eAAAA;;;8DAdJ;uBACsB;sBACH;;;;;;;;;;;;;;;;;;;AAY9B,MAAeA,gBAAgBC,UAAI;IAQtC,MAAgBC,gBAAgBC,OAAe,EAAEC,IAAc,EAAE;QAC7D,MAAMC,eAAeC,IAAAA,cAAK,EACtBH,SACAC,MACA,IAAI,CAACG,KAAK,GACJ;YACIC,OAAO;gBAAC;gBAAW;gBAAQ;aAAU;QACzC,IACA;YACIA,OAAO;QACX;QAGV,IAAI,CAAC,IAAI,CAACD,KAAK,EAAE;YACb,IAAI;gBACA,MAAMF;YACV,SAAU;gBACN,IAAI,CAACI,oBAAoB,CAAC,IAAI,CAACC,SAAS,CAACC,GAAG;YAChD;YACA;QACJ;QAEAC,IAAAA,iBAAU,EAACP;QACXQ,IAAAA,kBAAW,EAACR,cAAc,IAAI,CAACS,UAAU,CAACC,UAAU,EAAE;YAClD,IAAI,CAACL,SAAS,CAACM,KAAK;QACxB;QACAH,IAAAA,kBAAW,EAACR,cAAc,IAAI,CAACS,UAAU,CAACH,GAAG,EAAE;YAC3C,IAAI,CAACF,oBAAoB,CAAC,IAAI,CAACC,SAAS,CAACC,GAAG;QAChD;QACAE,IAAAA,kBAAW,EAACR,cAAc,IAAI,CAACS,UAAU,CAACG,QAAQ,EAAE;YAChD,IAAI,CAACR,oBAAoB,CAAC,IAAI,CAACC,SAAS,CAACC,GAAG;QAChD;QAEA,MAAMN;IACV;IAvCA,YAAY,EAAES,UAAU,EAAE,GAAGI,MAAyB,CAAE;QACpD,KAAK,CAACA,OAHV,uBAAiBJ,cAAjB,KAAA;QAII,IAAI,CAACA,UAAU,GAAGA;IACtB;AAqCJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swc-compile-package.d.ts","sourceRoot":"","sources":["../../../src/cli/tasks/swc-compile-package.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"swc-compile-package.d.ts","sourceRoot":"","sources":["../../../src/cli/tasks/swc-compile-package.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,UAAU,IAAI;IACV,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAQD,qBAAa,iBAAkB,SAAQ,IAAI;gBAC3B,EAAE,KAAK,EAAE,EAAE,IAAI;IAIrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqC9B,OAAO,CAAC,SAAS;CAyDpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cli/tasks/swc-compile-package.ts"],"sourcesContent":["import { Options, swcDir } from '@swc/cli';\nimport debounce from 'debounce';\nimport deepmerge from 'deepmerge';\
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tasks/swc-compile-package.ts"],"sourcesContent":["import { Options, swcDir } from '@swc/cli';\nimport debounce from 'debounce';\nimport deepmerge from 'deepmerge';\nimport { getFolders, getSwcCompilePackageConfiguration, getTsConfig, log } from '../../utils';\nimport { TSConfig } from '../utils';\nimport { Task } from './task';\n\ninterface Args {\n watch?: boolean;\n}\n\nfunction overwriteMerge(_destinationArray: unknown[], sourceArray: unknown[]) {\n return sourceArray;\n}\n\nconst typedefsPattern = '**/*.d.ts';\n\nexport class SwcCompilePackage extends Task {\n constructor({ watch }: Args) {\n super({ name: 'swc-compile-package', global: false, watch });\n }\n\n async execute(): Promise<void> {\n const config = this.getConfig();\n\n /* istanbul ignore next: debug only */\n log.debug('swc-compile-package:config', () => JSON.stringify(config, null, 2));\n\n /*\n * @swc/cli@0.5.0 doesn't implement \"ignore\" in watch mode so debounce\n * noisy output. See https://servicetitan.atlassian.net/browse/FAR-1592\n * and DEVELOPER_NOTES in file://./../../../package.json\n */\n const logSuccessResults = this.watch\n ? debounce(this.logCompletionResults.bind(this), 200)\n : this.logCompletionResults.bind(this);\n\n return new Promise((resolve, reject) => {\n swcDir({\n ...config,\n callbacks: {\n onSuccess: (e: { duration: number }) => {\n logSuccessResults(this.taskTimer.add(e.duration));\n if (!this.watch) {\n resolve();\n }\n },\n onFail: (e: { duration: number; reasons: Map<string, string> }) => {\n log.text([...e.reasons.values()][0]);\n this.logCompletionResults(this.taskTimer.add(e.duration));\n if (!this.watch) {\n reject(new Error('Compilation failed'));\n }\n },\n },\n });\n });\n }\n\n private getConfig(): Options {\n const { source, destination } = getFolders();\n const packageConfig = getSwcCompilePackageConfiguration();\n const tsConfig = new TSConfig(getTsConfig());\n const target = tsConfig.getValue('compilerOptions.target');\n const legacyDecorator = tsConfig.getValue('compilerOptions.experimentalDecorators');\n const decoratorMetadata = tsConfig.getValue('compilerOptions.emitDecoratorMetadata');\n const sourceMaps = tsConfig.getValue('compilerOptions.sourceMap');\n const module = tsConfig.getValue<string>('compilerOptions.module')?.toLowerCase();\n const ignore = tsConfig.getValue('exclude', [\n '**/*.d.ts',\n '**/__tests__/*',\n '**/*.test.*',\n '**/__mocks__/*',\n '**/*.stories.*',\n ]);\n\n if (!ignore.includes(typedefsPattern)) {\n ignore.push(typedefsPattern);\n }\n\n return deepmerge(\n {\n cliOptions: {\n watch: this.watch,\n outDir: destination,\n stripLeadingPaths: true,\n extensions: ['.ts', '.tsx'],\n filenames: [source],\n ignore,\n },\n swcOptions: {\n jsc: {\n parser: {\n syntax: 'typescript',\n tsx: true,\n decorators: true,\n },\n target,\n transform: {\n legacyDecorator,\n decoratorMetadata,\n react: {\n runtime: 'automatic',\n },\n },\n },\n sourceMaps,\n module: {\n type: module === 'commonjs' || module === 'nodenext' ? 'commonjs' : 'es6',\n },\n },\n },\n packageConfig,\n { arrayMerge: overwriteMerge, clone: false }\n );\n }\n}\n"],"names":["SwcCompilePackage","overwriteMerge","_destinationArray","sourceArray","typedefsPattern","Task","execute","config","getConfig","log","debug","JSON","stringify","logSuccessResults","watch","debounce","logCompletionResults","bind","Promise","resolve","reject","swcDir","callbacks","onSuccess","e","taskTimer","add","duration","onFail","text","reasons","values","Error","tsConfig","source","destination","getFolders","packageConfig","getSwcCompilePackageConfiguration","TSConfig","getTsConfig","target","getValue","legacyDecorator","decoratorMetadata","sourceMaps","module","toLowerCase","ignore","includes","push","deepmerge","cliOptions","outDir","stripLeadingPaths","extensions","filenames","swcOptions","jsc","parser","syntax","tsx","decorators","transform","react","runtime","type","arrayMerge","clone","name","global"],"mappings":";;;;+BAiBaA;;;eAAAA;;;qBAjBmB;iEACX;kEACC;uBAC0D;wBACvD;sBACJ;;;;;;AAMrB,SAASC,eAAeC,iBAA4B,EAAEC,WAAsB;IACxE,OAAOA;AACX;AAEA,MAAMC,kBAAkB;AAEjB,MAAMJ,0BAA0BK,UAAI;IAKvC,MAAMC,UAAyB;QAC3B,MAAMC,SAAS,IAAI,CAACC,SAAS;QAE7B,oCAAoC,GACpCC,UAAG,CAACC,KAAK,CAAC,8BAA8B,IAAMC,KAAKC,SAAS,CAACL,QAAQ,MAAM;QAE3E;;;;SAIC,GACD,MAAMM,oBAAoB,IAAI,CAACC,KAAK,GAC9BC,IAAAA,iBAAQ,EAAC,IAAI,CAACC,oBAAoB,CAACC,IAAI,CAAC,IAAI,GAAG,OAC/C,IAAI,CAACD,oBAAoB,CAACC,IAAI,CAAC,IAAI;QAEzC,OAAO,IAAIC,QAAQ,CAACC,SAASC;YACzBC,IAAAA,WAAM,EAAC;gBACH,GAAGd,MAAM;gBACTe,WAAW;oBACPC,WAAW,CAACC;wBACRX,kBAAkB,IAAI,CAACY,SAAS,CAACC,GAAG,CAACF,EAAEG,QAAQ;wBAC/C,IAAI,CAAC,IAAI,CAACb,KAAK,EAAE;4BACbK;wBACJ;oBACJ;oBACAS,QAAQ,CAACJ;wBACLf,UAAG,CAACoB,IAAI,CAAC;+BAAIL,EAAEM,OAAO,CAACC,MAAM;yBAAG,CAAC,EAAE;wBACnC,IAAI,CAACf,oBAAoB,CAAC,IAAI,CAACS,SAAS,CAACC,GAAG,CAACF,EAAEG,QAAQ;wBACvD,IAAI,CAAC,IAAI,CAACb,KAAK,EAAE;4BACbM,OAAO,IAAIY,MAAM;wBACrB;oBACJ;gBACJ;YACJ;QACJ;IACJ;IAEQxB,YAAqB;YAQVyB;QAPf,MAAM,EAAEC,MAAM,EAAEC,WAAW,EAAE,GAAGC,IAAAA,iBAAU;QAC1C,MAAMC,gBAAgBC,IAAAA,wCAAiC;QACvD,MAAML,WAAW,IAAIM,gBAAQ,CAACC,IAAAA,kBAAW;QACzC,MAAMC,SAASR,SAASS,QAAQ,CAAC;QACjC,MAAMC,kBAAkBV,SAASS,QAAQ,CAAC;QAC1C,MAAME,oBAAoBX,SAASS,QAAQ,CAAC;QAC5C,MAAMG,aAAaZ,SAASS,QAAQ,CAAC;QACrC,MAAMI,UAASb,qBAAAA,SAASS,QAAQ,CAAS,uCAA1BT,yCAAAA,mBAAqDc,WAAW;QAC/E,MAAMC,SAASf,SAASS,QAAQ,CAAC,WAAW;YACxC;YACA;YACA;YACA;YACA;SACH;QAED,IAAI,CAACM,OAAOC,QAAQ,CAAC7C,kBAAkB;YACnC4C,OAAOE,IAAI,CAAC9C;QAChB;QAEA,OAAO+C,IAAAA,kBAAS,EACZ;YACIC,YAAY;gBACRtC,OAAO,IAAI,CAACA,KAAK;gBACjBuC,QAAQlB;gBACRmB,mBAAmB;gBACnBC,YAAY;oBAAC;oBAAO;iBAAO;gBAC3BC,WAAW;oBAACtB;iBAAO;gBACnBc;YACJ;YACAS,YAAY;gBACRC,KAAK;oBACDC,QAAQ;wBACJC,QAAQ;wBACRC,KAAK;wBACLC,YAAY;oBAChB;oBACArB;oBACAsB,WAAW;wBACPpB;wBACAC;wBACAoB,OAAO;4BACHC,SAAS;wBACb;oBACJ;gBACJ;gBACApB;gBACAC,QAAQ;oBACJoB,MAAMpB,WAAW,cAAcA,WAAW,aAAa,aAAa;gBACxE;YACJ;QACJ,GACAT,eACA;YAAE8B,YAAYlE;YAAgBmE,OAAO;QAAM;IAEnD;IAjGA,YAAY,EAAEtD,KAAK,EAAQ,CAAE;QACzB,KAAK,CAAC;YAAEuD,MAAM;YAAuBC,QAAQ;YAAOxD;QAAM;IAC9D;AAgGJ"}
|