@servicetitan/startup 36.0.0 → 36.1.1-beta.1
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.map +1 -1
- package/dist/cli/commands/build.js +14 -9
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/bundle-vite.d.ts +6 -0
- package/dist/cli/commands/bundle-vite.d.ts.map +1 -0
- package/dist/cli/commands/bundle-vite.js +110 -0
- package/dist/cli/commands/bundle-vite.js.map +1 -0
- package/dist/cli/commands/bundle-webpack.d.ts +6 -0
- package/dist/cli/commands/bundle-webpack.d.ts.map +1 -0
- package/dist/cli/commands/{bundle-package.js → bundle-webpack.js} +8 -6
- package/dist/cli/commands/bundle-webpack.js.map +1 -0
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +2 -1
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/mfe-check.d.ts.map +1 -1
- package/dist/cli/commands/mfe-check.js +2 -2
- package/dist/cli/commands/mfe-check.js.map +1 -1
- package/dist/cli/commands/mfe-generate-metadata.js +2 -2
- package/dist/cli/commands/mfe-generate-metadata.js.map +1 -1
- package/dist/cli/commands/mfe-list.js +1 -1
- package/dist/cli/commands/mfe-list.js.map +1 -1
- package/dist/cli/commands/mfe-package-publish.js.map +1 -1
- package/dist/cli/commands/mfe-publish.js +1 -1
- package/dist/cli/commands/mfe-publish.js.map +1 -1
- package/dist/cli/commands/registry/build.d.ts +8 -0
- package/dist/cli/commands/registry/build.d.ts.map +1 -1
- package/dist/cli/commands/registry/build.js +8 -0
- package/dist/cli/commands/registry/build.js.map +1 -1
- package/dist/cli/commands/registry/bundle-vite.d.ts +33 -0
- package/dist/cli/commands/registry/bundle-vite.d.ts.map +1 -0
- package/dist/cli/commands/registry/bundle-vite.js +45 -0
- package/dist/cli/commands/registry/bundle-vite.js.map +1 -0
- package/dist/cli/commands/registry/{bundle-package.d.ts → bundle-webpack.d.ts} +1 -1
- package/dist/cli/commands/registry/bundle-webpack.d.ts.map +1 -0
- package/dist/cli/commands/registry/{bundle-package.js → bundle-webpack.js} +1 -1
- package/dist/cli/commands/registry/{bundle-package.js.map → bundle-webpack.js.map} +1 -1
- package/dist/cli/commands/registry/command-registry.d.ts +72 -0
- package/dist/cli/commands/registry/command-registry.d.ts.map +1 -1
- package/dist/cli/commands/registry/command-registry.js +7 -2
- package/dist/cli/commands/registry/command-registry.js.map +1 -1
- package/dist/cli/commands/registry/start.d.ts +4 -0
- package/dist/cli/commands/registry/start.d.ts.map +1 -1
- package/dist/cli/commands/registry/start.js +4 -0
- package/dist/cli/commands/registry/start.js.map +1 -1
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +11 -9
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/index.js +2 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/tasks/tsc-compile/tsc-compile.js +1 -1
- package/dist/cli/tasks/tsc-compile/tsc-compile.js.map +1 -1
- package/dist/cli/utils/copy-files.js +1 -0
- package/dist/cli/utils/copy-files.js.map +1 -1
- package/dist/cli/utils/index.d.ts +0 -1
- package/dist/cli/utils/index.d.ts.map +1 -1
- package/dist/cli/utils/index.js +0 -1
- package/dist/cli/utils/index.js.map +1 -1
- package/dist/core/check-resource/check-resource.d.ts +3 -0
- package/dist/core/check-resource/check-resource.d.ts.map +1 -0
- package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/check-resource.js +2 -2
- package/dist/core/check-resource/check-resource.js.map +1 -0
- package/dist/core/check-resource/get-package-json.d.ts +7 -0
- package/dist/core/check-resource/get-package-json.d.ts.map +1 -0
- package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/get-package-json.js +1 -1
- package/dist/core/check-resource/get-package-json.js.map +1 -0
- package/dist/core/check-resource/index.d.ts +2 -0
- package/dist/core/check-resource/index.d.ts.map +1 -0
- package/dist/core/check-resource/index.js +13 -0
- package/dist/core/check-resource/index.js.map +1 -0
- package/dist/core/check-resource/is-optional-peer-dependency.d.ts.map +1 -0
- package/dist/core/check-resource/is-optional-peer-dependency.js.map +1 -0
- package/dist/core/check-resource/is-optional-react-dom-peer-dependency.d.ts.map +1 -0
- package/dist/core/check-resource/is-optional-react-dom-peer-dependency.js.map +1 -0
- package/dist/core/constants.d.ts +17 -0
- package/dist/core/constants.d.ts.map +1 -0
- package/dist/core/constants.js +28 -0
- package/dist/core/constants.js.map +1 -0
- package/dist/core/create-build-context.d.ts +13 -0
- package/dist/core/create-build-context.d.ts.map +1 -0
- package/dist/core/create-build-context.js +51 -0
- package/dist/core/create-build-context.js.map +1 -0
- package/dist/core/defines/define-exposed-dependencies.d.ts +5 -0
- package/dist/core/defines/define-exposed-dependencies.d.ts.map +1 -0
- package/dist/core/defines/define-exposed-dependencies.js +26 -0
- package/dist/core/defines/define-exposed-dependencies.js.map +1 -0
- package/dist/core/defines/define-exposed-instance-dependencies.d.ts +5 -0
- package/dist/core/defines/define-exposed-instance-dependencies.d.ts.map +1 -0
- package/dist/core/defines/define-exposed-instance-dependencies.js +29 -0
- package/dist/core/defines/define-exposed-instance-dependencies.js.map +1 -0
- package/dist/core/defines/define-web-component-name.d.ts +5 -0
- package/dist/core/defines/define-web-component-name.d.ts.map +1 -0
- package/dist/core/defines/define-web-component-name.js +23 -0
- package/dist/core/defines/define-web-component-name.js.map +1 -0
- package/dist/core/defines/index.d.ts +4 -0
- package/dist/core/defines/index.d.ts.map +1 -0
- package/dist/core/defines/index.js +26 -0
- package/dist/core/defines/index.js.map +1 -0
- package/dist/core/externals.d.ts +3 -0
- package/dist/core/externals.d.ts.map +1 -0
- package/dist/core/externals.js +28 -0
- package/dist/core/externals.js.map +1 -0
- package/dist/core/get-build-name.d.ts +2 -0
- package/dist/core/get-build-name.d.ts.map +1 -0
- package/dist/core/get-build-name.js +24 -0
- package/dist/core/get-build-name.js.map +1 -0
- package/dist/core/get-bundle-type.d.ts +3 -0
- package/dist/core/get-bundle-type.d.ts.map +1 -0
- package/dist/{webpack/configs/utils → core}/get-bundle-type.js +4 -2
- package/dist/core/get-bundle-type.js.map +1 -0
- package/dist/core/get-exposed-dependencies.d.ts.map +1 -0
- package/dist/core/get-exposed-dependencies.js.map +1 -0
- package/dist/core/get-output-path.d.ts +3 -0
- package/dist/core/get-output-path.d.ts.map +1 -0
- package/dist/core/get-output-path.js +32 -0
- package/dist/core/get-output-path.js.map +1 -0
- package/dist/core/get-shared-entry-points.d.ts +11 -0
- package/dist/core/get-shared-entry-points.d.ts.map +1 -0
- package/dist/core/get-shared-entry-points.js +43 -0
- package/dist/core/get-shared-entry-points.js.map +1 -0
- package/dist/core/get-version/get-launchdarkly-sdk-version.d.ts.map +1 -0
- package/dist/{webpack/configs/utils → core/get-version}/get-launchdarkly-sdk-version.js +1 -1
- package/dist/core/get-version/get-launchdarkly-sdk-version.js.map +1 -0
- package/dist/core/get-version/get-startup-version.d.ts.map +1 -0
- package/dist/{utils → core/get-version}/get-startup-version.js +2 -2
- package/dist/core/get-version/get-startup-version.js.map +1 -0
- package/dist/core/get-version/get-web-components-version.d.ts.map +1 -0
- package/dist/{webpack/configs/utils → core/get-version}/get-web-components-version.js +1 -1
- package/dist/core/get-version/get-web-components-version.js.map +1 -0
- package/dist/core/get-version/index.d.ts +4 -0
- package/dist/core/get-version/index.d.ts.map +1 -0
- package/dist/core/get-version/index.js +22 -0
- package/dist/core/get-version/index.js.map +1 -0
- package/dist/core/index.d.ts +16 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +33 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/metadata/build-metadata.d.ts.map +1 -0
- package/dist/{webpack/configs/utils → core/metadata}/build-metadata.js +5 -6
- package/dist/core/metadata/build-metadata.js.map +1 -0
- package/dist/core/metadata/generate-exposed-dependencies-metadata.d.ts +3 -0
- package/dist/core/metadata/generate-exposed-dependencies-metadata.d.ts.map +1 -0
- package/dist/core/metadata/generate-exposed-dependencies-metadata.js +42 -0
- package/dist/core/metadata/generate-exposed-dependencies-metadata.js.map +1 -0
- package/dist/core/metadata/generate-metadata.d.ts +3 -0
- package/dist/core/metadata/generate-metadata.d.ts.map +1 -0
- package/dist/{webpack/configs/utils → core/metadata}/generate-metadata.js +5 -4
- package/dist/core/metadata/generate-metadata.js.map +1 -0
- package/dist/core/metadata/index.d.ts +4 -0
- package/dist/core/metadata/index.d.ts.map +1 -0
- package/dist/{webpack/configs/utils → core/metadata}/index.js +2 -2
- package/dist/core/metadata/index.js.map +1 -0
- package/dist/core/stringify-config.d.ts.map +1 -0
- package/dist/core/stringify-config.js.map +1 -0
- package/dist/core/types.d.ts +51 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/virtual-modules.d.ts +8 -0
- package/dist/core/virtual-modules.d.ts.map +1 -0
- package/dist/core/virtual-modules.js +83 -0
- package/dist/core/virtual-modules.js.map +1 -0
- package/dist/cypress/config/webpack-config.d.ts +1 -1
- package/dist/cypress/config/webpack-config.d.ts.map +1 -1
- package/dist/cypress/config/webpack-config.js +19 -6
- package/dist/cypress/config/webpack-config.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/storybook-config/webpack-final.d.ts +1 -1
- package/dist/storybook-config/webpack-final.d.ts.map +1 -1
- package/dist/storybook-config/webpack-final.js +17 -6
- package/dist/storybook-config/webpack-final.js.map +1 -1
- package/dist/utils/get-configuration.d.ts +31 -1
- package/dist/utils/get-configuration.d.ts.map +1 -1
- package/dist/utils/get-configuration.js +12 -8
- package/dist/utils/get-configuration.js.map +1 -1
- package/dist/utils/get-package-data.d.ts.map +1 -1
- package/dist/utils/get-package-data.js +3 -2
- package/dist/utils/get-package-data.js.map +1 -1
- package/dist/utils/get-packages.d.ts +1 -1
- package/dist/utils/get-packages.d.ts.map +1 -1
- package/dist/utils/get-packages.js +1 -1
- package/dist/utils/get-packages.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/validate-shared-dependencies.d.ts +2 -0
- package/dist/utils/validate-shared-dependencies.d.ts.map +1 -0
- package/dist/utils/validate-shared-dependencies.js +26 -0
- package/dist/utils/validate-shared-dependencies.js.map +1 -0
- package/dist/vite/build-shared-dependencies.d.ts +3 -0
- package/dist/vite/build-shared-dependencies.d.ts.map +1 -0
- package/dist/vite/build-shared-dependencies.js +59 -0
- package/dist/vite/build-shared-dependencies.js.map +1 -0
- package/dist/vite/config/base-config.d.ts +4 -0
- package/dist/vite/config/base-config.d.ts.map +1 -0
- package/dist/vite/config/base-config.js +139 -0
- package/dist/vite/config/base-config.js.map +1 -0
- package/dist/vite/config/create-vite-build-context.d.ts +5 -0
- package/dist/vite/config/create-vite-build-context.d.ts.map +1 -0
- package/dist/vite/config/create-vite-build-context.js +43 -0
- package/dist/vite/config/create-vite-build-context.js.map +1 -0
- package/dist/vite/config/create-vite-config.d.ts +3 -0
- package/dist/vite/config/create-vite-config.d.ts.map +1 -0
- package/dist/vite/config/create-vite-config.js +43 -0
- package/dist/vite/config/create-vite-config.js.map +1 -0
- package/dist/vite/config/define-config.d.ts +13 -0
- package/dist/vite/config/define-config.d.ts.map +1 -0
- package/dist/vite/config/define-config.js +15 -0
- package/dist/vite/config/define-config.js.map +1 -0
- package/dist/vite/config/index.d.ts +6 -0
- package/dist/vite/config/index.d.ts.map +1 -0
- package/dist/vite/config/index.js +24 -0
- package/dist/vite/config/index.js.map +1 -0
- package/dist/vite/config/load-config-file.d.ts +4 -0
- package/dist/vite/config/load-config-file.d.ts.map +1 -0
- package/dist/vite/config/load-config-file.js +103 -0
- package/dist/vite/config/load-config-file.js.map +1 -0
- package/dist/vite/config/merge-vite-configs.d.ts +5 -0
- package/dist/vite/config/merge-vite-configs.d.ts.map +1 -0
- package/dist/vite/config/merge-vite-configs.js +17 -0
- package/dist/vite/config/merge-vite-configs.js.map +1 -0
- package/dist/vite/index.d.ts +2 -0
- package/dist/vite/index.d.ts.map +1 -0
- package/dist/vite/index.html +36 -0
- package/dist/vite/index.js +20 -0
- package/dist/vite/index.js.map +1 -0
- package/dist/vite/plugins/css-injector-plugin.d.ts +4 -0
- package/dist/vite/plugins/css-injector-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/css-injector-plugin.js +57 -0
- package/dist/vite/plugins/css-injector-plugin.js.map +1 -0
- package/dist/vite/plugins/dev-server-routing-plugin.d.ts +24 -0
- package/dist/vite/plugins/dev-server-routing-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/dev-server-routing-plugin.js +85 -0
- package/dist/vite/plugins/dev-server-routing-plugin.js.map +1 -0
- package/dist/vite/plugins/externals-plugin.d.ts +4 -0
- package/dist/vite/plugins/externals-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/externals-plugin.js +60 -0
- package/dist/vite/plugins/externals-plugin.js.map +1 -0
- package/dist/vite/plugins/html-plugin.d.ts +4 -0
- package/dist/vite/plugins/html-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/html-plugin.js +102 -0
- package/dist/vite/plugins/html-plugin.js.map +1 -0
- package/dist/vite/plugins/ignore-modules-plugin.d.ts +4 -0
- package/dist/vite/plugins/ignore-modules-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/ignore-modules-plugin.js +30 -0
- package/dist/vite/plugins/ignore-modules-plugin.js.map +1 -0
- package/dist/vite/plugins/index.d.ts +10 -0
- package/dist/vite/plugins/index.d.ts.map +1 -0
- package/dist/vite/plugins/index.js +28 -0
- package/dist/vite/plugins/index.js.map +1 -0
- package/dist/vite/plugins/metadata-plugin.d.ts +4 -0
- package/dist/vite/plugins/metadata-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/metadata-plugin.js +78 -0
- package/dist/vite/plugins/metadata-plugin.js.map +1 -0
- package/dist/vite/plugins/shared-dependencies-plugin.d.ts +8 -0
- package/dist/vite/plugins/shared-dependencies-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/shared-dependencies-plugin.js +252 -0
- package/dist/vite/plugins/shared-dependencies-plugin.js.map +1 -0
- package/dist/vite/plugins/style-urls-plugin.d.ts +4 -0
- package/dist/vite/plugins/style-urls-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/style-urls-plugin.js +31 -0
- package/dist/vite/plugins/style-urls-plugin.js.map +1 -0
- package/dist/vite/plugins/svgr-plugin.d.ts +4 -0
- package/dist/vite/plugins/svgr-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/svgr-plugin.js +33 -0
- package/dist/vite/plugins/svgr-plugin.js.map +1 -0
- package/dist/vite/plugins/virtual-modules-plugin.d.ts +4 -0
- package/dist/vite/plugins/virtual-modules-plugin.d.ts.map +1 -0
- package/dist/vite/plugins/virtual-modules-plugin.js +63 -0
- package/dist/vite/plugins/virtual-modules-plugin.js.map +1 -0
- package/dist/vite/types.d.ts +4 -0
- package/dist/vite/types.d.ts.map +1 -0
- package/dist/vite/types.js +6 -0
- package/dist/vite/types.js.map +1 -0
- package/dist/vite/validate-shared-dependencies.d.ts +2 -0
- package/dist/vite/validate-shared-dependencies.d.ts.map +1 -0
- package/dist/vite/validate-shared-dependencies.js +27 -0
- package/dist/vite/validate-shared-dependencies.js.map +1 -0
- package/dist/webpack/bundle-webpack.d.ts +11 -0
- package/dist/webpack/bundle-webpack.d.ts.map +1 -0
- package/dist/webpack/bundle-webpack.js +107 -0
- package/dist/webpack/bundle-webpack.js.map +1 -0
- package/dist/webpack/configs/amd-config.d.ts +3 -2
- package/dist/webpack/configs/amd-config.d.ts.map +1 -1
- package/dist/webpack/configs/amd-config.js.map +1 -1
- package/dist/webpack/configs/cache-config.d.ts +3 -2
- package/dist/webpack/configs/cache-config.d.ts.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/dev-server-config.d.ts +2 -2
- package/dist/webpack/configs/dev-server-config.d.ts.map +1 -1
- package/dist/webpack/configs/dev-server-config.js +8 -8
- package/dist/webpack/configs/dev-server-config.js.map +1 -1
- package/dist/webpack/configs/devtool-config.d.ts +3 -2
- package/dist/webpack/configs/devtool-config.d.ts.map +1 -1
- package/dist/webpack/configs/devtool-config.js +1 -1
- package/dist/webpack/configs/devtool-config.js.map +1 -1
- package/dist/webpack/configs/entry.config.d.ts +3 -2
- package/dist/webpack/configs/entry.config.d.ts.map +1 -1
- package/dist/webpack/configs/entry.config.js +6 -5
- package/dist/webpack/configs/entry.config.js.map +1 -1
- package/dist/webpack/configs/externals-config.d.ts +3 -2
- package/dist/webpack/configs/externals-config.d.ts.map +1 -1
- package/dist/webpack/configs/externals-config.js +4 -14
- package/dist/webpack/configs/externals-config.js.map +1 -1
- package/dist/webpack/configs/index.d.ts +0 -1
- package/dist/webpack/configs/index.d.ts.map +1 -1
- package/dist/webpack/configs/index.js.map +1 -1
- package/dist/webpack/configs/loaders/css-loader.d.ts +2 -2
- package/dist/webpack/configs/loaders/css-loader.d.ts.map +1 -1
- package/dist/webpack/configs/loaders/css-loader.js +2 -1
- package/dist/webpack/configs/loaders/css-loader.js.map +1 -1
- package/dist/webpack/configs/loaders/style-loader.d.ts +2 -2
- package/dist/webpack/configs/loaders/style-loader.d.ts.map +1 -1
- package/dist/webpack/configs/loaders/style-loader.js +3 -1
- package/dist/webpack/configs/loaders/style-loader.js.map +1 -1
- package/dist/webpack/configs/module-config.d.ts +2 -2
- package/dist/webpack/configs/module-config.d.ts.map +1 -1
- package/dist/webpack/configs/module-config.js.map +1 -1
- package/dist/webpack/configs/optimization-config.d.ts +2 -2
- package/dist/webpack/configs/optimization-config.d.ts.map +1 -1
- package/dist/webpack/configs/optimization-config.js +9 -7
- package/dist/webpack/configs/optimization-config.js.map +1 -1
- package/dist/webpack/configs/output-config.d.ts +3 -2
- package/dist/webpack/configs/output-config.d.ts.map +1 -1
- package/dist/webpack/configs/output-config.js +10 -24
- package/dist/webpack/configs/output-config.js.map +1 -1
- package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts +3 -8
- package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/assets-manifest-plugin.js +10 -47
- package/dist/webpack/configs/plugins/assets-manifest-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.js +6 -6
- package/dist/webpack/configs/plugins/bundle-analyser-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js +4 -13
- package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.js +4 -12
- package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/define-web-component-name-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/define-web-component-name-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/define-web-component-name-plugin.js +4 -6
- package/dist/webpack/configs/plugins/define-web-component-name-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/filter-warnings-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/filter-warnings-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/filter-warnings-plugin.js +2 -2
- package/dist/webpack/configs/plugins/filter-warnings-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/html-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/html-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/html-plugin.js +4 -2
- package/dist/webpack/configs/plugins/html-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/html-tags-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/html-tags-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/html-tags-plugin.js +8 -19
- package/dist/webpack/configs/plugins/html-tags-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts +15 -3
- package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js +41 -6
- package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/mini-css-extract-plugin.d.ts +2 -2
- package/dist/webpack/configs/plugins/mini-css-extract-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/mini-css-extract-plugin.js +4 -2
- package/dist/webpack/configs/plugins/mini-css-extract-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/moment-locales-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/moment-locales-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/moment-locales-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.d.ts +3 -2
- package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.js +1 -1
- package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/virtual-modules-plugin.d.ts +3 -3
- package/dist/webpack/configs/plugins/virtual-modules-plugin.d.ts.map +1 -1
- package/dist/webpack/configs/plugins/virtual-modules-plugin.js +13 -56
- package/dist/webpack/configs/plugins/virtual-modules-plugin.js.map +1 -1
- package/dist/webpack/configs/plugins/watch-run-plugin.d.ts +3 -2
- 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/plugins-config.d.ts +3 -2
- package/dist/webpack/configs/plugins-config.d.ts.map +1 -1
- package/dist/webpack/configs/plugins-config.js.map +1 -1
- package/dist/webpack/configs/resolve-config.d.ts +3 -2
- package/dist/webpack/configs/resolve-config.d.ts.map +1 -1
- package/dist/webpack/configs/resolve-config.js.map +1 -1
- package/dist/webpack/configs/rules/css-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/css-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/css-rules.js +2 -1
- package/dist/webpack/configs/rules/css-rules.js.map +1 -1
- package/dist/webpack/configs/rules/font-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/font-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/font-rules.js.map +1 -1
- package/dist/webpack/configs/rules/image-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/image-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/image-rules.js.map +1 -1
- package/dist/webpack/configs/rules/js-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/js-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/js-rules.js +3 -1
- package/dist/webpack/configs/rules/js-rules.js.map +1 -1
- package/dist/webpack/configs/rules/less-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/less-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/less-rules.js.map +1 -1
- package/dist/webpack/configs/rules/scss-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/scss-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/scss-rules.js.map +1 -1
- package/dist/webpack/configs/rules/svg-rules.d.ts +2 -2
- package/dist/webpack/configs/rules/svg-rules.d.ts.map +1 -1
- package/dist/webpack/configs/rules/svg-rules.js.map +1 -1
- package/dist/webpack/configs/rules-config.d.ts +2 -2
- package/dist/webpack/configs/rules-config.d.ts.map +1 -1
- package/dist/webpack/configs/rules-config.js +2 -2
- package/dist/webpack/configs/rules-config.js.map +1 -1
- package/dist/webpack/configs/stats-config.d.ts +3 -2
- package/dist/webpack/configs/stats-config.d.ts.map +1 -1
- package/dist/webpack/configs/stats-config.js.map +1 -1
- package/dist/webpack/configs/watch-options-config.d.ts +2 -2
- package/dist/webpack/configs/watch-options-config.d.ts.map +1 -1
- package/dist/webpack/configs/watch-options-config.js +2 -2
- package/dist/webpack/configs/watch-options-config.js.map +1 -1
- package/dist/webpack/create-webpack-config.d.ts +2 -0
- package/dist/webpack/create-webpack-config.d.ts.map +1 -1
- package/dist/webpack/create-webpack-config.js +36 -46
- package/dist/webpack/create-webpack-config.js.map +1 -1
- package/dist/webpack/create-webpack-configs.d.ts +16 -0
- package/dist/webpack/create-webpack-configs.d.ts.map +1 -0
- package/dist/webpack/create-webpack-configs.js +82 -0
- package/dist/webpack/create-webpack-configs.js.map +1 -0
- package/dist/webpack/index.d.ts +2 -0
- package/dist/webpack/index.d.ts.map +1 -1
- package/dist/webpack/index.js +2 -0
- package/dist/webpack/index.js.map +1 -1
- package/dist/webpack/types.d.ts +4 -11
- package/dist/webpack/types.d.ts.map +1 -1
- package/dist/webpack/utils/create-webpack-build-context.d.ts +4 -0
- package/dist/webpack/utils/create-webpack-build-context.d.ts.map +1 -0
- package/dist/webpack/utils/create-webpack-build-context.js +21 -0
- package/dist/webpack/utils/create-webpack-build-context.js.map +1 -0
- package/dist/webpack/utils/index.d.ts +1 -1
- package/dist/webpack/utils/index.d.ts.map +1 -1
- package/dist/webpack/utils/index.js +1 -1
- package/dist/webpack/utils/index.js.map +1 -1
- package/jest/babel-plugin-import-meta-env.js +18 -0
- package/jest/jest-preset.js +4 -1
- package/package.json +24 -17
- package/patches/vite-plugin-css-injected-by-js+3.5.2.patch +63 -0
- package/src/cli/commands/__tests__/build.test.ts +2 -2
- package/src/cli/commands/__tests__/bundle-vite.test.ts +228 -0
- package/src/cli/commands/__tests__/{bundle-package.test.ts → bundle-webpack.test.ts} +26 -17
- package/src/cli/commands/__tests__/install.test.ts +6 -2
- package/src/cli/commands/__tests__/mfe-generate-metadata.test.ts +13 -10
- package/src/cli/commands/__tests__/mfe-publish.test.ts +4 -4
- package/src/cli/commands/__tests__/start.test.ts +1 -1
- package/src/cli/commands/build.ts +14 -11
- package/src/cli/commands/bundle-vite.ts +82 -0
- package/src/cli/commands/{bundle-package.ts → bundle-webpack.ts} +9 -6
- package/src/cli/commands/install.ts +2 -1
- package/src/cli/commands/mfe-check.ts +1 -2
- package/src/cli/commands/mfe-generate-metadata.ts +1 -1
- package/src/cli/commands/mfe-list.ts +1 -1
- package/src/cli/commands/mfe-package-publish.ts +1 -1
- package/src/cli/commands/mfe-publish.ts +1 -1
- package/src/cli/commands/registry/__tests__/command-registry.test.ts +1 -0
- package/src/cli/commands/registry/build.ts +2 -0
- package/src/cli/commands/registry/bundle-vite.ts +14 -0
- package/src/cli/commands/registry/command-registry.ts +5 -2
- package/src/cli/commands/registry/start.ts +1 -0
- package/src/cli/commands/start.ts +13 -11
- package/src/cli/index.ts +2 -1
- package/src/cli/tasks/tsc-compile/tsc-compile.ts +1 -1
- package/src/cli/utils/copy-files.ts +1 -1
- package/src/cli/utils/index.ts +0 -1
- package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/check-resource.test.ts +18 -5
- package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/get-package-json.test.ts +1 -1
- package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/check-resource.ts +4 -4
- package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/get-package-json.ts +6 -1
- package/src/core/check-resource/index.ts +1 -0
- package/src/core/constants.ts +16 -0
- package/src/core/create-build-context.ts +57 -0
- package/src/core/defines/define-exposed-dependencies.ts +21 -0
- package/src/core/defines/define-exposed-instance-dependencies.ts +19 -0
- package/src/core/defines/define-web-component-name.ts +15 -0
- package/src/core/defines/index.ts +3 -0
- package/src/core/externals.ts +22 -0
- package/src/core/get-build-name.ts +11 -0
- package/src/core/get-bundle-type.ts +19 -0
- package/src/core/get-output-path.ts +18 -0
- package/src/core/get-shared-entry-points.ts +37 -0
- package/src/{webpack/configs/utils → core/get-version}/get-launchdarkly-sdk-version.ts +1 -1
- package/src/core/get-version/get-startup-version.ts +6 -0
- package/src/{webpack/configs/utils → core/get-version}/get-web-components-version.ts +1 -1
- package/src/core/get-version/index.ts +3 -0
- package/src/core/index.ts +15 -0
- package/src/{webpack/configs/utils → core/metadata}/__tests__/build-metadata.test.ts +10 -6
- package/src/{webpack/configs/utils → core/metadata}/__tests__/generate-metadata.test.ts +27 -13
- package/src/{webpack/configs/utils → core/metadata}/build-metadata.ts +6 -3
- package/src/core/metadata/generate-exposed-dependencies-metadata.ts +20 -0
- package/src/{webpack/configs/utils → core/metadata}/generate-metadata.ts +7 -6
- package/src/core/metadata/index.ts +3 -0
- package/src/core/types.ts +50 -0
- package/src/core/virtual-modules.ts +74 -0
- package/src/cypress/config/__tests__/webpack-config.test.ts +12 -2
- package/src/cypress/config/webpack-config.ts +23 -9
- package/src/index.ts +1 -0
- package/src/storybook-config/__tests__/webpack-final.test.ts +5 -2
- package/src/storybook-config/webpack-final.ts +22 -10
- package/src/utils/__tests__/get-configuration.test.ts +28 -7
- package/src/utils/__tests__/get-package-data.test.ts +35 -1
- package/src/utils/__tests__/get-packages.test.ts +3 -3
- package/src/utils/__tests__/validate-shared-dependencies.test.ts +55 -0
- package/src/utils/get-configuration.ts +48 -6
- package/src/utils/get-package-data.ts +3 -1
- package/src/utils/get-packages.ts +2 -2
- package/src/utils/index.ts +1 -1
- package/src/utils/validate-shared-dependencies.ts +32 -0
- package/src/vite/__tests__/build-shared-dependencies.test.ts +165 -0
- package/src/vite/__tests__/validate-shared-dependencies.test.ts +34 -0
- package/src/vite/build-shared-dependencies.ts +47 -0
- package/src/vite/config/__tests__/base-config.test.ts +291 -0
- package/src/vite/config/__tests__/create-vite-build-context.test.ts +86 -0
- package/src/vite/config/__tests__/create-vite-config.test.ts +141 -0
- package/src/vite/config/__tests__/define-config.test.ts +23 -0
- package/src/vite/config/__tests__/load-config-file.test.ts +191 -0
- package/src/vite/config/__tests__/merge-vite-configs.test.ts +84 -0
- package/src/vite/config/base-config.ts +127 -0
- package/src/vite/config/create-vite-build-context.ts +45 -0
- package/src/vite/config/create-vite-config.ts +33 -0
- package/src/vite/config/define-config.ts +18 -0
- package/src/vite/config/index.ts +5 -0
- package/src/vite/config/load-config-file.ts +52 -0
- package/src/vite/config/merge-vite-configs.ts +15 -0
- package/src/vite/index.html +36 -0
- package/src/vite/index.ts +1 -0
- package/src/vite/plugins/__tests__/css-injector-plugin.test.ts +61 -0
- package/src/vite/plugins/__tests__/dev-server-routing-plugin.test.ts +255 -0
- package/src/vite/plugins/__tests__/externals-plugin.test.ts +138 -0
- package/src/vite/plugins/__tests__/html-plugin.test.ts +308 -0
- package/src/vite/plugins/__tests__/ignore-modules-plugin.test.ts +80 -0
- package/src/vite/plugins/__tests__/metadata-plugin.test.ts +163 -0
- package/src/vite/plugins/__tests__/shared-dependencies-plugin.test.ts +427 -0
- package/src/vite/plugins/__tests__/style-urls-plugin.test.ts +76 -0
- package/src/vite/plugins/__tests__/svgr-plugin.test.ts +67 -0
- package/src/vite/plugins/__tests__/virtual-modules-plugin.test.ts +120 -0
- package/src/vite/plugins/css-injector-plugin.ts +60 -0
- package/src/vite/plugins/dev-server-routing-plugin.ts +96 -0
- package/src/vite/plugins/externals-plugin.ts +81 -0
- package/src/vite/plugins/html-plugin.ts +94 -0
- package/src/vite/plugins/ignore-modules-plugin.ts +22 -0
- package/src/vite/plugins/index.ts +9 -0
- package/src/vite/plugins/metadata-plugin.ts +66 -0
- package/src/vite/plugins/shared-dependencies-plugin.ts +273 -0
- package/src/vite/plugins/style-urls-plugin.ts +28 -0
- package/src/vite/plugins/svgr-plugin.ts +17 -0
- package/src/vite/plugins/virtual-modules-plugin.ts +59 -0
- package/src/vite/types.ts +6 -0
- package/src/vite/validate-shared-dependencies.ts +27 -0
- package/src/{cli/utils/__tests__/bundle.test.ts → webpack/__tests__/bundle-webpack.test.ts} +26 -19
- package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +23 -9
- package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +17 -16
- package/src/webpack/__tests__/create-webpack-config.test.ts +10 -8
- package/src/webpack/bundle-webpack.ts +107 -0
- package/src/webpack/configs/amd-config.ts +3 -2
- package/src/webpack/configs/cache-config.ts +4 -3
- package/src/webpack/configs/dev-server-config.ts +16 -17
- package/src/webpack/configs/devtool-config.ts +4 -3
- package/src/webpack/configs/entry.config.ts +8 -7
- package/src/webpack/configs/externals-config.ts +5 -21
- package/src/webpack/configs/index.ts +0 -1
- package/src/webpack/configs/loaders/css-loader.ts +3 -2
- package/src/webpack/configs/loaders/style-loader.ts +4 -5
- package/src/webpack/configs/module-config.ts +2 -2
- package/src/webpack/configs/optimization-config.ts +17 -11
- package/src/webpack/configs/output-config.ts +11 -22
- package/src/webpack/configs/plugins/assets-manifest-plugin.ts +9 -36
- package/src/webpack/configs/plugins/bundle-analyser-plugin.ts +8 -8
- package/src/webpack/configs/plugins/define-exposed-dependencies-plugin.ts +7 -15
- package/src/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.ts +7 -13
- package/src/webpack/configs/plugins/define-web-component-name-plugin.ts +7 -8
- package/src/webpack/configs/plugins/filter-warnings-plugin.ts +4 -3
- package/src/webpack/configs/plugins/html-plugin.ts +6 -6
- package/src/webpack/configs/plugins/html-tags-plugin.ts +7 -16
- package/src/webpack/configs/plugins/ignore-plugin/__tests__/ignore-plugin.test.ts +92 -0
- package/src/webpack/configs/plugins/ignore-plugin/empty-module.js +6 -0
- package/src/webpack/configs/plugins/ignore-plugin/ignore-plugin.ts +44 -6
- package/src/webpack/configs/plugins/mini-css-extract-plugin.ts +9 -5
- package/src/webpack/configs/plugins/moment-locales-plugin.ts +3 -2
- package/src/webpack/configs/plugins/remove-empty-scripts-plugin.ts +4 -3
- package/src/webpack/configs/plugins/virtual-modules-plugin.ts +11 -65
- package/src/webpack/configs/plugins/watch-run-plugin.ts +3 -2
- package/src/webpack/configs/plugins-config.ts +3 -2
- package/src/webpack/configs/resolve-config.ts +3 -2
- package/src/webpack/configs/rules/css-rules.ts +4 -3
- package/src/webpack/configs/rules/font-rules.ts +2 -2
- package/src/webpack/configs/rules/image-rules.ts +2 -2
- package/src/webpack/configs/rules/js-rules.ts +4 -2
- package/src/webpack/configs/rules/less-rules.ts +2 -2
- package/src/webpack/configs/rules/scss-rules.ts +2 -2
- package/src/webpack/configs/rules/svg-rules.ts +2 -2
- package/src/webpack/configs/rules-config.ts +6 -5
- package/src/webpack/configs/stats-config.ts +3 -2
- package/src/webpack/configs/watch-options-config.ts +3 -3
- package/src/webpack/create-webpack-config.ts +18 -49
- package/src/webpack/create-webpack-configs.ts +77 -0
- package/src/webpack/index.ts +2 -0
- package/src/webpack/types.ts +8 -11
- package/src/webpack/utils/__tests__/split-by-entry.test.ts +33 -0
- package/src/webpack/utils/create-webpack-build-context.ts +12 -0
- package/src/webpack/utils/index.ts +1 -1
- package/dist/cli/commands/bundle-package.d.ts +0 -6
- package/dist/cli/commands/bundle-package.d.ts.map +0 -1
- package/dist/cli/commands/bundle-package.js.map +0 -1
- package/dist/cli/commands/registry/bundle-package.d.ts.map +0 -1
- package/dist/cli/utils/bundle.d.ts +0 -14
- package/dist/cli/utils/bundle.d.ts.map +0 -1
- package/dist/cli/utils/bundle.js +0 -187
- package/dist/cli/utils/bundle.js.map +0 -1
- package/dist/utils/get-startup-version.d.ts.map +0 -1
- package/dist/utils/get-startup-version.js.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/check-resource.d.ts +0 -3
- package/dist/webpack/configs/plugins/ignore-plugin/check-resource.d.ts.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/check-resource.js.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.d.ts +0 -2
- package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.d.ts.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.js.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.d.ts.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.js.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.d.ts.map +0 -1
- package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.js.map +0 -1
- package/dist/webpack/configs/types.d.ts +0 -35
- package/dist/webpack/configs/types.d.ts.map +0 -1
- package/dist/webpack/configs/types.js.map +0 -1
- package/dist/webpack/configs/utils/build-metadata.d.ts.map +0 -1
- package/dist/webpack/configs/utils/build-metadata.js.map +0 -1
- package/dist/webpack/configs/utils/generate-metadata.d.ts +0 -3
- package/dist/webpack/configs/utils/generate-metadata.d.ts.map +0 -1
- package/dist/webpack/configs/utils/generate-metadata.js.map +0 -1
- package/dist/webpack/configs/utils/get-bundle-type.d.ts +0 -3
- package/dist/webpack/configs/utils/get-bundle-type.d.ts.map +0 -1
- package/dist/webpack/configs/utils/get-bundle-type.js.map +0 -1
- package/dist/webpack/configs/utils/get-exposed-dependencies.d.ts.map +0 -1
- package/dist/webpack/configs/utils/get-exposed-dependencies.js.map +0 -1
- package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.d.ts.map +0 -1
- package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.js.map +0 -1
- package/dist/webpack/configs/utils/get-web-components-version.d.ts.map +0 -1
- package/dist/webpack/configs/utils/get-web-components-version.js.map +0 -1
- package/dist/webpack/configs/utils/index.d.ts +0 -4
- package/dist/webpack/configs/utils/index.d.ts.map +0 -1
- package/dist/webpack/configs/utils/index.js.map +0 -1
- package/dist/webpack/utils/stringify-config.d.ts.map +0 -1
- package/dist/webpack/utils/stringify-config.js.map +0 -1
- package/src/cli/utils/bundle.ts +0 -191
- package/src/utils/get-startup-version.ts +0 -6
- package/src/webpack/configs/types.ts +0 -38
- package/src/webpack/configs/utils/get-bundle-type.ts +0 -22
- package/src/webpack/configs/utils/index.ts +0 -3
- /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-peer-dependency.d.ts +0 -0
- /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-peer-dependency.js +0 -0
- /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-react-dom-peer-dependency.d.ts +0 -0
- /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-react-dom-peer-dependency.js +0 -0
- /package/dist/{webpack/configs/utils → core}/get-exposed-dependencies.d.ts +0 -0
- /package/dist/{webpack/configs/utils → core}/get-exposed-dependencies.js +0 -0
- /package/dist/{webpack/configs/utils → core/get-version}/get-launchdarkly-sdk-version.d.ts +0 -0
- /package/dist/{utils → core/get-version}/get-startup-version.d.ts +0 -0
- /package/dist/{webpack/configs/utils → core/get-version}/get-web-components-version.d.ts +0 -0
- /package/dist/{webpack/configs/utils → core/metadata}/build-metadata.d.ts +0 -0
- /package/dist/{webpack/utils → core}/stringify-config.d.ts +0 -0
- /package/dist/{webpack/utils → core}/stringify-config.js +0 -0
- /package/dist/{webpack/configs → core}/types.js +0 -0
- /package/src/cli/commands/registry/{bundle-package.ts → bundle-webpack.ts} +0 -0
- /package/src/{webpack/configs/utils → core}/__tests__/get-exposed-dependencies.test.ts +0 -0
- /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/is-optional-peer-dependency.test.ts +0 -0
- /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/is-optional-react-dom-peer-dependency.test.ts +0 -0
- /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-peer-dependency.ts +0 -0
- /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-react-dom-peer-dependency.ts +0 -0
- /package/src/{webpack/configs/utils → core}/get-exposed-dependencies.ts +0 -0
- /package/src/{webpack/configs/utils → core/get-version}/__tests__/get-launchdarkly-sdk-version.test.ts +0 -0
- /package/src/{utils → core/get-version}/__tests__/get-startup-version.test.ts +0 -0
- /package/src/{webpack/configs/utils → core/get-version}/__tests__/get-web-components-version.test.ts +0 -0
- /package/src/{webpack/utils → core}/stringify-config.ts +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import type { Plugin } from 'vite';
|
|
4
|
+
import { BuildContext, generateMetadata } from '../../core';
|
|
5
|
+
|
|
6
|
+
export function metadataPlugin(context: BuildContext): Plugin | undefined {
|
|
7
|
+
if (!context.package.isWebComponent) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
let outDir = '';
|
|
12
|
+
|
|
13
|
+
return {
|
|
14
|
+
name: 'metadata',
|
|
15
|
+
configResolved(config) {
|
|
16
|
+
outDir = config.build.outDir;
|
|
17
|
+
},
|
|
18
|
+
configureServer(server) {
|
|
19
|
+
server.httpServer?.once('listening', () => {
|
|
20
|
+
const address = server.httpServer?.address();
|
|
21
|
+
if (!address || typeof address === 'string') {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const entrypoints = {
|
|
26
|
+
module: true,
|
|
27
|
+
port: address.port,
|
|
28
|
+
css: [],
|
|
29
|
+
js: ['@vite/client', '@id/__x00__VIRTUAL./index'],
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const entrypointsPath = path.join(outDir, 'entrypoints.json');
|
|
33
|
+
fs.mkdirSync(path.dirname(entrypointsPath), { recursive: true });
|
|
34
|
+
fs.writeFileSync(entrypointsPath, JSON.stringify(entrypoints, null, 2));
|
|
35
|
+
|
|
36
|
+
generateMetadata(context);
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
writeBundle(options, bundle) {
|
|
40
|
+
if (!options.dir) {
|
|
41
|
+
throw new Error(
|
|
42
|
+
'web-component build requires output.dir — output.file is not supported'
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const js: string[] = [];
|
|
47
|
+
const css: string[] = [];
|
|
48
|
+
|
|
49
|
+
for (const chunk of Object.values(bundle)) {
|
|
50
|
+
if (chunk.type === 'chunk' && chunk.isEntry) {
|
|
51
|
+
js.push(chunk.fileName);
|
|
52
|
+
}
|
|
53
|
+
if (chunk.type === 'asset' && chunk.fileName.endsWith('.css')) {
|
|
54
|
+
css.push(chunk.fileName);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
fs.writeFileSync(
|
|
59
|
+
path.join(options.dir, 'entrypoints.json'),
|
|
60
|
+
JSON.stringify({ module: true, css, js }, null, 2)
|
|
61
|
+
);
|
|
62
|
+
|
|
63
|
+
generateMetadata(context);
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import crypto from 'crypto';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { Plugin } from 'vite';
|
|
4
|
+
import { bundleConstants, generateExposedDependenciesMetadata } from '../../core';
|
|
5
|
+
|
|
6
|
+
/*
|
|
7
|
+
* Replaces `/` with `-` so scoped packages stay flat in Rolldown output.
|
|
8
|
+
* Without this, `@scope/foo` emits into a subdirectory and its require()
|
|
9
|
+
* calls use `../` paths that don't match the IIFE's flat module keys.
|
|
10
|
+
*/
|
|
11
|
+
function flatName(dep: string) {
|
|
12
|
+
return dep.replace('/', '-');
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface SharedDependenciesPluginOptions {
|
|
16
|
+
dependencies: Record<string, string>;
|
|
17
|
+
css?: Record<string, string[]>;
|
|
18
|
+
metadataDir?: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function indent(spaces: number) {
|
|
22
|
+
return ' '.repeat(spaces);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function sharedDependenciesPlugin({
|
|
26
|
+
dependencies,
|
|
27
|
+
css,
|
|
28
|
+
metadataDir,
|
|
29
|
+
}: SharedDependenciesPluginOptions): Plugin {
|
|
30
|
+
const CSS_VIRTUAL_PREFIX = '\0SHARED_DEPENDENCY_CSS';
|
|
31
|
+
|
|
32
|
+
const dependencyNames = Object.keys(dependencies);
|
|
33
|
+
const dependencySet = new Set(dependencyNames);
|
|
34
|
+
const cssEntries = css ?? {};
|
|
35
|
+
const cssInputNames = Object.keys(cssEntries);
|
|
36
|
+
let isProduction = false;
|
|
37
|
+
|
|
38
|
+
return {
|
|
39
|
+
name: 'shared-dependencies',
|
|
40
|
+
enforce: 'pre',
|
|
41
|
+
|
|
42
|
+
config(_, env) {
|
|
43
|
+
isProduction = env.mode === bundleConstants.mode.production;
|
|
44
|
+
|
|
45
|
+
const input: Record<string, string> = {};
|
|
46
|
+
for (const dependency of dependencyNames) {
|
|
47
|
+
input[flatName(dependency)] = dependency;
|
|
48
|
+
}
|
|
49
|
+
for (const name of cssInputNames) {
|
|
50
|
+
input[name] = CSS_VIRTUAL_PREFIX + name;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
return {
|
|
54
|
+
// Relative base so CSS font URLs resolve from the CSS file's directory, not site root
|
|
55
|
+
base: './',
|
|
56
|
+
// Must match host build mode — mismatch causes react-dom/client usingClientEntryPoint errors
|
|
57
|
+
define: {
|
|
58
|
+
'process.env.NODE_ENV': JSON.stringify(env.mode),
|
|
59
|
+
},
|
|
60
|
+
build: {
|
|
61
|
+
rolldownOptions: {
|
|
62
|
+
// Vite defaults to false which strips all CJS exports from entry chunks
|
|
63
|
+
preserveEntrySignatures: 'exports-only',
|
|
64
|
+
input,
|
|
65
|
+
output: {
|
|
66
|
+
/*
|
|
67
|
+
* CJS format + named exports: the factory system wraps each entry's
|
|
68
|
+
* code in function(module, exports, require) { ... }
|
|
69
|
+
*/
|
|
70
|
+
format: 'cjs',
|
|
71
|
+
exports: 'named',
|
|
72
|
+
entryFileNames: '[name].cjs.js',
|
|
73
|
+
chunkFileNames: '_[name]-[hash].js',
|
|
74
|
+
assetFileNames: assetInfo => {
|
|
75
|
+
const rawName = assetInfo.names?.[0] ?? '';
|
|
76
|
+
const ext = rawName.split('.').pop() ?? '';
|
|
77
|
+
// Strip scope prefix added by flatName (e.g. @servicetitan-anvil2 → anvil2)
|
|
78
|
+
const name = rawName
|
|
79
|
+
.replace(/^@[^-]+-/, '')
|
|
80
|
+
.replace(/\.[^.]+$/, '');
|
|
81
|
+
if (ext === 'css') {
|
|
82
|
+
return isProduction
|
|
83
|
+
? `${name}.[hash].bundle[extname]`
|
|
84
|
+
: `${name}.bundle[extname]`;
|
|
85
|
+
}
|
|
86
|
+
return isProduction
|
|
87
|
+
? `${name}.[hash][extname]`
|
|
88
|
+
: `${name}[extname]`;
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
// Disabled: we don't know which exports MFEs will use at runtime
|
|
92
|
+
treeshake: false,
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
},
|
|
97
|
+
|
|
98
|
+
resolveId(source: string, importer: string | undefined) {
|
|
99
|
+
if (source.startsWith(CSS_VIRTUAL_PREFIX)) {
|
|
100
|
+
return source;
|
|
101
|
+
}
|
|
102
|
+
if (!importer) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (dependencySet.has(source)) {
|
|
106
|
+
return { id: source, external: true };
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
|
|
110
|
+
load(id: string) {
|
|
111
|
+
if (!id.startsWith(CSS_VIRTUAL_PREFIX)) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const name = id.slice(CSS_VIRTUAL_PREFIX.length);
|
|
115
|
+
const imports = cssEntries[name];
|
|
116
|
+
if (!imports) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
return imports.map(p => `import '${p}';`).join('\n');
|
|
120
|
+
},
|
|
121
|
+
|
|
122
|
+
generateBundle(_options, bundle) {
|
|
123
|
+
const factories: string[] = [];
|
|
124
|
+
const exposes: string[] = [];
|
|
125
|
+
|
|
126
|
+
for (const [fileName, chunk] of Object.entries(bundle)) {
|
|
127
|
+
if (chunk.type !== 'chunk') {
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
if (!chunk.isEntry) {
|
|
131
|
+
factories.push(
|
|
132
|
+
`'./${fileName}': function(module, exports, require) {\n${indent(12)}${chunk.code}\n${indent(8)}}`
|
|
133
|
+
);
|
|
134
|
+
delete bundle[fileName];
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
for (const [dependency, variable] of Object.entries(dependencies)) {
|
|
139
|
+
const entryFileName = `${flatName(dependency)}.cjs.js`;
|
|
140
|
+
const chunk = bundle[entryFileName];
|
|
141
|
+
if (chunk?.type !== 'chunk') {
|
|
142
|
+
throw new Error(
|
|
143
|
+
`Expected entry chunk for ${dependency}, got type: ${chunk?.type ?? 'undefined'}`
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
factories.push(
|
|
147
|
+
`'${dependency}': function(module, exports, require) {\n${indent(12)}${chunk.code}\n${indent(8)}}`
|
|
148
|
+
);
|
|
149
|
+
exposes.push(`expose('${variable}', '${dependency}');`);
|
|
150
|
+
delete bundle[entryFileName];
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
for (const name of cssInputNames) {
|
|
154
|
+
delete bundle[`${name}.cjs.js`];
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
const code = assembleIIFE(factories, exposes);
|
|
158
|
+
const hash = crypto.createHash('md5').update(code).digest('hex').slice(0, 20);
|
|
159
|
+
const sharedFileName = isProduction ? `shared.${hash}.bundle.js` : 'shared.bundle.js';
|
|
160
|
+
|
|
161
|
+
this.emitFile({
|
|
162
|
+
type: 'asset',
|
|
163
|
+
fileName: sharedFileName,
|
|
164
|
+
source: code,
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
const cssFiles = Object.keys(bundle).filter(f => f.endsWith('.bundle.css'));
|
|
168
|
+
const entrypoints = { css: cssFiles, js: [sharedFileName] };
|
|
169
|
+
this.emitFile({
|
|
170
|
+
type: 'asset',
|
|
171
|
+
fileName: 'entrypoints.json',
|
|
172
|
+
source: JSON.stringify(entrypoints, null, 2),
|
|
173
|
+
});
|
|
174
|
+
},
|
|
175
|
+
|
|
176
|
+
writeBundle: metadataDir
|
|
177
|
+
? options => {
|
|
178
|
+
/*
|
|
179
|
+
* dir is always set when build.outDir is configured (our case).
|
|
180
|
+
* Rolldown types it as optional, but falling back to '' would
|
|
181
|
+
* silently resolve to cwd — better to crash than write wrong metadata.
|
|
182
|
+
*/
|
|
183
|
+
generateExposedDependenciesMetadata(metadataDir, () =>
|
|
184
|
+
path.resolve(options.dir!, 'entrypoints.json')
|
|
185
|
+
);
|
|
186
|
+
}
|
|
187
|
+
: undefined,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
function assembleIIFE(factories: string[], exposes: string[]): string {
|
|
192
|
+
return `\
|
|
193
|
+
(function () {
|
|
194
|
+
const STORAGE_KEY = Symbol.for('SERVICETITAN_EXPOSE_LOADER_STORAGE');
|
|
195
|
+
const g = globalThis;
|
|
196
|
+
|
|
197
|
+
if (g[STORAGE_KEY] === undefined) {
|
|
198
|
+
g[STORAGE_KEY] = Object.assign(Object.create(null), {
|
|
199
|
+
clear(scope) {
|
|
200
|
+
delete this[scope];
|
|
201
|
+
},
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
var storage = g[STORAGE_KEY];
|
|
206
|
+
|
|
207
|
+
var modules = {
|
|
208
|
+
${factories.join(`,\n${indent(8)}`)}
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
function createScopedRequire(scope) {
|
|
212
|
+
const cache = (storage[scope] = storage[scope] || Object.create(null));
|
|
213
|
+
|
|
214
|
+
function require(id) {
|
|
215
|
+
if (cache[id]) {
|
|
216
|
+
return cache[id].exports;
|
|
217
|
+
}
|
|
218
|
+
if (!modules[id]) {
|
|
219
|
+
throw new Error('Module not found: ' + id);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
const module = (cache[id] = { id, loaded: false, exports: {} });
|
|
223
|
+
modules[id](module, module.exports, require);
|
|
224
|
+
module.loaded = true;
|
|
225
|
+
|
|
226
|
+
const keys = Object.keys(module.exports);
|
|
227
|
+
if (module.exports.__esModule && keys.length === 1 && keys[0] === 'default') {
|
|
228
|
+
module.exports = module.exports.default;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
return module.exports;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
Object.setPrototypeOf(require, {
|
|
235
|
+
resolve(id) {
|
|
236
|
+
return id;
|
|
237
|
+
},
|
|
238
|
+
});
|
|
239
|
+
return require;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
function expose(path, moduleId) {
|
|
243
|
+
const parts = path.split('.');
|
|
244
|
+
let obj = g;
|
|
245
|
+
|
|
246
|
+
for (let i = 0; i < parts.length - 1; i++) {
|
|
247
|
+
if (obj[parts[i]] === undefined) {
|
|
248
|
+
obj[parts[i]] = Object.create(null);
|
|
249
|
+
}
|
|
250
|
+
obj = obj[parts[i]];
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
obj[parts[parts.length - 1]] = new Proxy(
|
|
254
|
+
Object.assign(Object.create(null), {
|
|
255
|
+
getStorage() {
|
|
256
|
+
return storage;
|
|
257
|
+
},
|
|
258
|
+
}),
|
|
259
|
+
{
|
|
260
|
+
get(target, scope, receiver) {
|
|
261
|
+
if (scope === 'getStorage') {
|
|
262
|
+
return Reflect.get(target, scope, receiver);
|
|
263
|
+
}
|
|
264
|
+
return createScopedRequire(scope)(moduleId);
|
|
265
|
+
},
|
|
266
|
+
}
|
|
267
|
+
);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
${exposes.join(`\n${indent(4)}`)}
|
|
271
|
+
})();
|
|
272
|
+
`;
|
|
273
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Plugin } from 'vite';
|
|
2
|
+
import type { BuildContext } from '../../core';
|
|
3
|
+
|
|
4
|
+
// Matches the empty style-urls attribute inserted by vite/index.html for web components
|
|
5
|
+
const STYLE_URLS_PLACEHOLDER = `style-urls="${encodeURIComponent('[]')}"`;
|
|
6
|
+
|
|
7
|
+
export function styleUrlsPlugin(context: BuildContext): Plugin | undefined {
|
|
8
|
+
const { isProduction } = context.build;
|
|
9
|
+
const { isWebComponent } = context.package;
|
|
10
|
+
if (isWebComponent && isProduction) {
|
|
11
|
+
return {
|
|
12
|
+
name: 'style-urls',
|
|
13
|
+
transformIndexHtml: {
|
|
14
|
+
order: 'post',
|
|
15
|
+
handler(html, context) {
|
|
16
|
+
const css = Object.values(context.bundle ?? {})
|
|
17
|
+
.filter(chunk => chunk.type === 'asset' && chunk.fileName.endsWith('.css'))
|
|
18
|
+
.map(chunk => chunk.fileName);
|
|
19
|
+
|
|
20
|
+
return html.replace(
|
|
21
|
+
STYLE_URLS_PLACEHOLDER,
|
|
22
|
+
`style-urls="${encodeURIComponent(JSON.stringify(css))}"`
|
|
23
|
+
);
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Plugin } from 'vite';
|
|
2
|
+
import svgr from 'vite-plugin-svgr';
|
|
3
|
+
import { ViteBuildContext } from '../types';
|
|
4
|
+
|
|
5
|
+
export function svgrPlugin(context: ViteBuildContext): Plugin {
|
|
6
|
+
const { pluginOverrides } = context.bundlerConfig;
|
|
7
|
+
return svgr({
|
|
8
|
+
include: pluginOverrides.svgr?.include ?? [
|
|
9
|
+
'**/*.svg?component',
|
|
10
|
+
'**/@servicetitan/anvil2/**/*.svg',
|
|
11
|
+
],
|
|
12
|
+
exclude: pluginOverrides.svgr?.exclude,
|
|
13
|
+
...(pluginOverrides.svgr?.svgrOptions
|
|
14
|
+
? { svgrOptions: pluginOverrides.svgr.svgrOptions }
|
|
15
|
+
: {}),
|
|
16
|
+
});
|
|
17
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import type { Plugin } from 'vite';
|
|
3
|
+
import { BuildContext, virtualModules } from '../../core';
|
|
4
|
+
|
|
5
|
+
function devWebComponentIndexCode(indexCode: string) {
|
|
6
|
+
let code = "import { withCssInjector } from '@servicetitan/web-components';\n" + indexCode;
|
|
7
|
+
code = code.replace(
|
|
8
|
+
/register\(App/m,
|
|
9
|
+
'\nconst WrappedApp = withCssInjector(App);\n\nregister(WrappedApp'
|
|
10
|
+
);
|
|
11
|
+
return code;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export function virtualModulesPlugin(context: BuildContext): Plugin | undefined {
|
|
15
|
+
const VIRTUAL_PREFIX = '\0VIRTUAL';
|
|
16
|
+
|
|
17
|
+
const { isProduction } = context.build;
|
|
18
|
+
const { destination, isWebComponent } = context.package;
|
|
19
|
+
|
|
20
|
+
const modules = virtualModules(context);
|
|
21
|
+
|
|
22
|
+
const pluginModules: Record<string, string> = {};
|
|
23
|
+
|
|
24
|
+
if (modules.index) {
|
|
25
|
+
pluginModules['./index'] = modules.index;
|
|
26
|
+
if (isWebComponent && !isProduction) {
|
|
27
|
+
pluginModules['./index'] = devWebComponentIndexCode(pluginModules['./index']);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (modules.designSystem) {
|
|
32
|
+
pluginModules['./design-system.css'] = modules.designSystem;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (Object.keys(pluginModules).length === 0) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return {
|
|
40
|
+
name: 'virtual-modules',
|
|
41
|
+
resolveId(source, importer) {
|
|
42
|
+
if (pluginModules[source]) {
|
|
43
|
+
return VIRTUAL_PREFIX + source;
|
|
44
|
+
}
|
|
45
|
+
if (importer?.startsWith(VIRTUAL_PREFIX) && source.startsWith('.')) {
|
|
46
|
+
const importerNoPrefix = importer.slice(VIRTUAL_PREFIX.length);
|
|
47
|
+
if (pluginModules[importerNoPrefix]) {
|
|
48
|
+
return path.resolve(destination, source + '.js');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
load(id) {
|
|
53
|
+
if (id.startsWith(VIRTUAL_PREFIX)) {
|
|
54
|
+
const idNoPrefix = id.slice(VIRTUAL_PREFIX.length);
|
|
55
|
+
return pluginModules[idNoPrefix];
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { getConfiguration, getWebpackConfiguration, validateSharedDependencies } from '../utils';
|
|
2
|
+
|
|
3
|
+
export function validateViteSharedDependencies() {
|
|
4
|
+
validateSharedDependencies();
|
|
5
|
+
|
|
6
|
+
const config = getConfiguration();
|
|
7
|
+
const webpackSharedDependencies = getWebpackConfiguration()['shared-dependencies'];
|
|
8
|
+
const topLevelSharedDependencies = config['shared-dependencies'];
|
|
9
|
+
|
|
10
|
+
if (webpackSharedDependencies && !topLevelSharedDependencies) {
|
|
11
|
+
throw new Error(
|
|
12
|
+
'cli.webpack.shared-dependencies is set but cli.shared-dependencies is not. ' +
|
|
13
|
+
'Vite reads shared-dependencies from cli top level. ' +
|
|
14
|
+
'Move your shared-dependencies config from cli.webpack to cli.'
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const webpackExpose = getWebpackConfiguration()['expose-shared-dependencies'];
|
|
19
|
+
const topLevelExpose = config['expose-shared-dependencies'];
|
|
20
|
+
|
|
21
|
+
if (webpackExpose !== undefined && topLevelExpose === undefined) {
|
|
22
|
+
throw new Error(
|
|
23
|
+
'cli.webpack.expose-shared-dependencies is set but cli.expose-shared-dependencies is not. ' +
|
|
24
|
+
'Move your expose-shared-dependencies config from cli.webpack to cli.'
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -3,7 +3,7 @@ import path from 'path';
|
|
|
3
3
|
import { getPortPromise } from 'portfinder';
|
|
4
4
|
import webpack from 'webpack';
|
|
5
5
|
import WebpackDevServer from 'webpack-dev-server';
|
|
6
|
-
import { createPackage } from '
|
|
6
|
+
import { createPackage } from '../../__mocks__';
|
|
7
7
|
import {
|
|
8
8
|
getConfiguration,
|
|
9
9
|
getFolders,
|
|
@@ -11,16 +11,20 @@ import {
|
|
|
11
11
|
hasHeadlessBundle,
|
|
12
12
|
isExposeSharedDependencies,
|
|
13
13
|
loadSharedDependencies,
|
|
14
|
-
} from '
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
14
|
+
} from '../../utils';
|
|
15
|
+
import { bundleWebpack } from '../bundle-webpack';
|
|
16
|
+
import {
|
|
17
|
+
createWebpackConfig,
|
|
18
|
+
webpackDevConfigFileName,
|
|
19
|
+
webpackProdConfigFileName,
|
|
20
|
+
} from '../create-webpack-config';
|
|
17
21
|
|
|
18
22
|
jest.mock('fs', () => fs);
|
|
19
23
|
jest.mock('portfinder');
|
|
20
24
|
jest.mock('webpack', () => jest.fn());
|
|
21
25
|
jest.mock('webpack-dev-server');
|
|
22
|
-
jest.mock('
|
|
23
|
-
...jest.requireActual('
|
|
26
|
+
jest.mock('../../utils', () => ({
|
|
27
|
+
...jest.requireActual('../../utils'),
|
|
24
28
|
getFolders: jest.fn(),
|
|
25
29
|
getPackageData: jest.fn(),
|
|
26
30
|
hasHeadlessBundle: jest.fn(),
|
|
@@ -28,7 +32,10 @@ jest.mock('../../../utils', () => ({
|
|
|
28
32
|
loadSharedDependencies: jest.fn(),
|
|
29
33
|
log: { info: jest.fn(), debug: jest.fn() }, // suppress test output
|
|
30
34
|
}));
|
|
31
|
-
jest.mock('
|
|
35
|
+
jest.mock('../create-webpack-config', () => ({
|
|
36
|
+
...jest.requireActual('../create-webpack-config'),
|
|
37
|
+
createWebpackConfig: jest.fn(),
|
|
38
|
+
}));
|
|
32
39
|
|
|
33
40
|
describe('[startup] Cli Utils', () => {
|
|
34
41
|
const pkg = createPackage({});
|
|
@@ -61,13 +68,13 @@ describe('[startup] Cli Utils', () => {
|
|
|
61
68
|
return packageFS({ 'web-component': true, ...configuration });
|
|
62
69
|
}
|
|
63
70
|
|
|
64
|
-
describe(`${
|
|
71
|
+
describe(`${bundleWebpack.name}`, () => {
|
|
65
72
|
const prodConfig = { configuration: { foo: 'bar' }, plugins: { baz: 'qux' } };
|
|
66
73
|
const customConfig = { configuration: { baz: 'qux' }, plugins: { foo: 'bar' } };
|
|
67
74
|
const customConfigFileName = 'custom.prod.config.js';
|
|
68
75
|
const stats: Partial<webpack.Stats> = { hasErrors: () => false, toString: () => 'foo' };
|
|
69
76
|
|
|
70
|
-
let options: Parameters<typeof
|
|
77
|
+
let options: Parameters<typeof bundleWebpack>[0];
|
|
71
78
|
let stdoutSpy: jest.SpyInstance;
|
|
72
79
|
|
|
73
80
|
beforeEach(() => {
|
|
@@ -82,7 +89,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
82
89
|
jest.doMock(path.resolve(customConfigFileName), () => customConfig, { virtual: true });
|
|
83
90
|
});
|
|
84
91
|
|
|
85
|
-
const subject = async () =>
|
|
92
|
+
const subject = async () => bundleWebpack(options);
|
|
86
93
|
|
|
87
94
|
test('runs webpack and outputs stats', async () => {
|
|
88
95
|
const toStringSpy = jest.spyOn(stats, 'toString');
|
|
@@ -293,7 +300,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
293
300
|
};
|
|
294
301
|
});
|
|
295
302
|
|
|
296
|
-
test('builds full and
|
|
303
|
+
test('builds full and light packages', async () => {
|
|
297
304
|
await subject();
|
|
298
305
|
|
|
299
306
|
expect(createWebpackConfig).toHaveBeenCalledWith(
|
|
@@ -302,7 +309,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
302
309
|
);
|
|
303
310
|
expect(createWebpackConfig).toHaveBeenCalledWith(defaultCreateOverrides, {
|
|
304
311
|
...defaultCreateOptions,
|
|
305
|
-
|
|
312
|
+
light: true,
|
|
306
313
|
});
|
|
307
314
|
expect(compiler.run).toHaveBeenCalledTimes(2);
|
|
308
315
|
});
|
|
@@ -339,7 +346,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
339
346
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, createOptions);
|
|
340
347
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, {
|
|
341
348
|
...createOptions,
|
|
342
|
-
|
|
349
|
+
light: true,
|
|
343
350
|
});
|
|
344
351
|
});
|
|
345
352
|
}
|
|
@@ -382,7 +389,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
382
389
|
});
|
|
383
390
|
});
|
|
384
391
|
|
|
385
|
-
describe(`${
|
|
392
|
+
describe(`${bundleWebpack.name} (watch mode)`, () => {
|
|
386
393
|
const devConfig = {
|
|
387
394
|
devServer: { host: 'http://127.0.0.0', port: '9000' },
|
|
388
395
|
configuration: { foo: 'bar' },
|
|
@@ -394,7 +401,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
394
401
|
plugins: { foo: 'bar' },
|
|
395
402
|
};
|
|
396
403
|
const customConfigFileName = 'custom.dev.config.js';
|
|
397
|
-
let options: Parameters<typeof
|
|
404
|
+
let options: Parameters<typeof bundleWebpack>[0];
|
|
398
405
|
|
|
399
406
|
function stopWatching(callback?: Function) {
|
|
400
407
|
setTimeout(() => callback?.(new Error('stopped')), 0);
|
|
@@ -420,7 +427,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
420
427
|
});
|
|
421
428
|
|
|
422
429
|
const subject = async () => {
|
|
423
|
-
await expect(
|
|
430
|
+
await expect(bundleWebpack({ ...options, watch: true })).rejects.toThrow('stopped');
|
|
424
431
|
};
|
|
425
432
|
|
|
426
433
|
test('runs webpack development server', async () => {
|
|
@@ -543,7 +550,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
543
550
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, options);
|
|
544
551
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, {
|
|
545
552
|
...options,
|
|
546
|
-
|
|
553
|
+
light: true,
|
|
547
554
|
});
|
|
548
555
|
expect(webpack).toHaveBeenNthCalledWith(1, createWebpackResult);
|
|
549
556
|
expect(webpack).toHaveBeenNthCalledWith(2, createWebpackResult);
|
|
@@ -585,7 +592,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
585
592
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, options);
|
|
586
593
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, {
|
|
587
594
|
...options,
|
|
588
|
-
|
|
595
|
+
light: true,
|
|
589
596
|
});
|
|
590
597
|
expect(WebpackDevServer).not.toHaveBeenCalled();
|
|
591
598
|
});
|
|
@@ -605,7 +612,7 @@ describe('[startup] Cli Utils', () => {
|
|
|
605
612
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, options);
|
|
606
613
|
expect(createWebpackConfig).toHaveBeenCalledWith(overrides, {
|
|
607
614
|
...options,
|
|
608
|
-
|
|
615
|
+
light: true,
|
|
609
616
|
});
|
|
610
617
|
});
|
|
611
618
|
}
|