@servicetitan/startup 36.3.1 → 37.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.
Files changed (962) hide show
  1. package/bin/analyze.js +3 -0
  2. package/bin/vite.js +3 -0
  3. package/dist/cli/commands/build.d.ts.map +1 -1
  4. package/dist/cli/commands/build.js +13 -9
  5. package/dist/cli/commands/build.js.map +1 -1
  6. package/dist/cli/commands/bundle-vite.d.ts +6 -0
  7. package/dist/cli/commands/bundle-vite.d.ts.map +1 -0
  8. package/dist/cli/commands/bundle-vite.js +127 -0
  9. package/dist/cli/commands/bundle-vite.js.map +1 -0
  10. package/dist/cli/commands/bundle-webpack.d.ts +6 -0
  11. package/dist/cli/commands/bundle-webpack.d.ts.map +1 -0
  12. package/dist/cli/commands/{bundle-package.js → bundle-webpack.js} +8 -6
  13. package/dist/cli/commands/bundle-webpack.js.map +1 -0
  14. package/dist/cli/commands/install.d.ts.map +1 -1
  15. package/dist/cli/commands/install.js +2 -1
  16. package/dist/cli/commands/install.js.map +1 -1
  17. package/dist/cli/commands/mfe-check.d.ts.map +1 -1
  18. package/dist/cli/commands/mfe-check.js +2 -2
  19. package/dist/cli/commands/mfe-check.js.map +1 -1
  20. package/dist/cli/commands/mfe-generate-metadata.js +2 -2
  21. package/dist/cli/commands/mfe-generate-metadata.js.map +1 -1
  22. package/dist/cli/commands/mfe-list.js +1 -1
  23. package/dist/cli/commands/mfe-list.js.map +1 -1
  24. package/dist/cli/commands/mfe-package-publish.js.map +1 -1
  25. package/dist/cli/commands/mfe-publish.js +1 -1
  26. package/dist/cli/commands/mfe-publish.js.map +1 -1
  27. package/dist/cli/commands/registry/build.d.ts +14 -0
  28. package/dist/cli/commands/registry/build.d.ts.map +1 -1
  29. package/dist/cli/commands/registry/build.js +17 -0
  30. package/dist/cli/commands/registry/build.js.map +1 -1
  31. package/dist/cli/commands/registry/bundle-vite.d.ts +33 -0
  32. package/dist/cli/commands/registry/bundle-vite.d.ts.map +1 -0
  33. package/dist/cli/commands/registry/bundle-vite.js +45 -0
  34. package/dist/cli/commands/registry/bundle-vite.js.map +1 -0
  35. package/dist/cli/commands/registry/{bundle-package.d.ts → bundle-webpack.d.ts} +1 -1
  36. package/dist/cli/commands/registry/bundle-webpack.d.ts.map +1 -0
  37. package/dist/cli/commands/registry/{bundle-package.js → bundle-webpack.js} +1 -1
  38. package/dist/cli/commands/registry/{bundle-package.js.map → bundle-webpack.js.map} +1 -1
  39. package/dist/cli/commands/registry/command-registry.d.ts +57 -1
  40. package/dist/cli/commands/registry/command-registry.d.ts.map +1 -1
  41. package/dist/cli/commands/registry/command-registry.js +4 -2
  42. package/dist/cli/commands/registry/command-registry.js.map +1 -1
  43. package/dist/cli/commands/registry/start.d.ts +10 -0
  44. package/dist/cli/commands/registry/start.d.ts.map +1 -1
  45. package/dist/cli/commands/registry/start.js +13 -0
  46. package/dist/cli/commands/registry/start.js.map +1 -1
  47. package/dist/cli/commands/review/rules/index.d.ts.map +1 -1
  48. package/dist/cli/commands/review/rules/index.js +2 -0
  49. package/dist/cli/commands/review/rules/index.js.map +1 -1
  50. package/dist/cli/commands/review/rules/require-compatible-typescript.d.ts +13 -0
  51. package/dist/cli/commands/review/rules/require-compatible-typescript.d.ts.map +1 -0
  52. package/dist/cli/commands/review/rules/require-compatible-typescript.js +72 -0
  53. package/dist/cli/commands/review/rules/require-compatible-typescript.js.map +1 -0
  54. package/dist/cli/commands/start.d.ts.map +1 -1
  55. package/dist/cli/commands/start.js +11 -22
  56. package/dist/cli/commands/start.js.map +1 -1
  57. package/dist/cli/index.js +3 -2
  58. package/dist/cli/index.js.map +1 -1
  59. package/dist/cli/tasks/swc-compile-package/swc-compile-package.d.ts.map +1 -1
  60. package/dist/cli/tasks/swc-compile-package/swc-compile-package.js +8 -3
  61. package/dist/cli/tasks/swc-compile-package/swc-compile-package.js.map +1 -1
  62. package/dist/cli/tasks/tsc-compile/tsc-compile.js +1 -1
  63. package/dist/cli/tasks/tsc-compile/tsc-compile.js.map +1 -1
  64. package/dist/cli/utils/copy-files.js +1 -0
  65. package/dist/cli/utils/copy-files.js.map +1 -1
  66. package/dist/cli/utils/get-bundle-command.d.ts +3 -0
  67. package/dist/cli/utils/get-bundle-command.d.ts.map +1 -0
  68. package/dist/cli/utils/get-bundle-command.js +16 -0
  69. package/dist/cli/utils/get-bundle-command.js.map +1 -0
  70. package/dist/cli/utils/get-exit-code.d.ts +12 -0
  71. package/dist/cli/utils/get-exit-code.d.ts.map +1 -0
  72. package/dist/cli/utils/get-exit-code.js +26 -0
  73. package/dist/cli/utils/get-exit-code.js.map +1 -0
  74. package/dist/cli/utils/index.d.ts +3 -1
  75. package/dist/cli/utils/index.d.ts.map +1 -1
  76. package/dist/cli/utils/index.js +3 -1
  77. package/dist/cli/utils/index.js.map +1 -1
  78. package/dist/cli/utils/resolve-bundler.d.ts +8 -0
  79. package/dist/cli/utils/resolve-bundler.d.ts.map +1 -0
  80. package/dist/cli/utils/resolve-bundler.js +24 -0
  81. package/dist/cli/utils/resolve-bundler.js.map +1 -0
  82. package/dist/core/bundle-report.d.ts +4 -0
  83. package/dist/core/bundle-report.d.ts.map +1 -0
  84. package/dist/core/bundle-report.js +43 -0
  85. package/dist/core/bundle-report.js.map +1 -0
  86. package/dist/core/check-resource/check-resource.d.ts +4 -0
  87. package/dist/core/check-resource/check-resource.d.ts.map +1 -0
  88. package/dist/core/check-resource/check-resource.js +51 -0
  89. package/dist/core/check-resource/check-resource.js.map +1 -0
  90. package/dist/core/check-resource/get-package-json.d.ts +10 -0
  91. package/dist/core/check-resource/get-package-json.d.ts.map +1 -0
  92. package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/get-package-json.js +12 -10
  93. package/dist/core/check-resource/get-package-json.js.map +1 -0
  94. package/dist/core/check-resource/get-peer-dependency-meta.d.ts +17 -0
  95. package/dist/core/check-resource/get-peer-dependency-meta.d.ts.map +1 -0
  96. package/dist/core/check-resource/get-peer-dependency-meta.js +73 -0
  97. package/dist/core/check-resource/get-peer-dependency-meta.js.map +1 -0
  98. package/dist/core/check-resource/index.d.ts +3 -0
  99. package/dist/core/check-resource/index.d.ts.map +1 -0
  100. package/dist/core/check-resource/index.js +13 -0
  101. package/dist/core/check-resource/index.js.map +1 -0
  102. package/dist/core/check-resource/is-managed-react-dom-client-dependency.d.ts +8 -0
  103. package/dist/core/check-resource/is-managed-react-dom-client-dependency.d.ts.map +1 -0
  104. package/dist/core/check-resource/is-managed-react-dom-client-dependency.js +15 -0
  105. package/dist/core/check-resource/is-managed-react-dom-client-dependency.js.map +1 -0
  106. package/dist/core/check-resource/is-resolvable.d.ts +7 -0
  107. package/dist/core/check-resource/is-resolvable.d.ts.map +1 -0
  108. package/dist/core/check-resource/is-resolvable.js +31 -0
  109. package/dist/core/check-resource/is-resolvable.js.map +1 -0
  110. package/dist/core/check-resource/types.d.ts +6 -0
  111. package/dist/core/check-resource/types.d.ts.map +1 -0
  112. package/dist/core/check-resource/types.js.map +1 -0
  113. package/dist/core/chunk-patterns.d.ts +7 -0
  114. package/dist/core/chunk-patterns.d.ts.map +1 -0
  115. package/dist/core/chunk-patterns.js +37 -0
  116. package/dist/core/chunk-patterns.js.map +1 -0
  117. package/dist/core/constants.d.ts +17 -0
  118. package/dist/core/constants.d.ts.map +1 -0
  119. package/dist/core/constants.js +28 -0
  120. package/dist/core/constants.js.map +1 -0
  121. package/dist/core/create-build-context.d.ts +13 -0
  122. package/dist/core/create-build-context.d.ts.map +1 -0
  123. package/dist/core/create-build-context.js +54 -0
  124. package/dist/core/create-build-context.js.map +1 -0
  125. package/dist/core/create-extension-regexp.d.ts +5 -0
  126. package/dist/core/create-extension-regexp.d.ts.map +1 -0
  127. package/dist/core/create-extension-regexp.js +45 -0
  128. package/dist/core/create-extension-regexp.js.map +1 -0
  129. package/dist/core/defines/define-exposed-dependencies.d.ts +5 -0
  130. package/dist/core/defines/define-exposed-dependencies.d.ts.map +1 -0
  131. package/dist/core/defines/define-exposed-dependencies.js +32 -0
  132. package/dist/core/defines/define-exposed-dependencies.js.map +1 -0
  133. package/dist/core/defines/define-exposed-instance-dependencies.d.ts +5 -0
  134. package/dist/core/defines/define-exposed-instance-dependencies.d.ts.map +1 -0
  135. package/dist/core/defines/define-exposed-instance-dependencies.js +29 -0
  136. package/dist/core/defines/define-exposed-instance-dependencies.js.map +1 -0
  137. package/dist/core/defines/define-web-component-name.d.ts +5 -0
  138. package/dist/core/defines/define-web-component-name.d.ts.map +1 -0
  139. package/dist/core/defines/define-web-component-name.js +23 -0
  140. package/dist/core/defines/define-web-component-name.js.map +1 -0
  141. package/dist/core/defines/index.d.ts +4 -0
  142. package/dist/core/defines/index.d.ts.map +1 -0
  143. package/dist/core/defines/index.js +26 -0
  144. package/dist/core/defines/index.js.map +1 -0
  145. package/dist/core/externals.d.ts +3 -0
  146. package/dist/core/externals.d.ts.map +1 -0
  147. package/dist/core/externals.js +28 -0
  148. package/dist/core/externals.js.map +1 -0
  149. package/dist/core/get-build-name.d.ts +2 -0
  150. package/dist/core/get-build-name.d.ts.map +1 -0
  151. package/dist/core/get-build-name.js +24 -0
  152. package/dist/core/get-build-name.js.map +1 -0
  153. package/dist/core/get-bundle-type.d.ts +3 -0
  154. package/dist/core/get-bundle-type.d.ts.map +1 -0
  155. package/dist/{webpack/configs/utils → core}/get-bundle-type.js +4 -2
  156. package/dist/core/get-bundle-type.js.map +1 -0
  157. package/dist/core/get-cdn-path.d.ts +3 -0
  158. package/dist/core/get-cdn-path.d.ts.map +1 -0
  159. package/dist/core/get-cdn-path.js +15 -0
  160. package/dist/core/get-cdn-path.js.map +1 -0
  161. package/dist/core/get-exposed-dependencies.d.ts.map +1 -0
  162. package/dist/core/get-exposed-dependencies.js.map +1 -0
  163. package/dist/core/get-process-env.d.ts +3 -0
  164. package/dist/core/get-process-env.d.ts.map +1 -0
  165. package/dist/core/get-process-env.js +25 -0
  166. package/dist/core/get-process-env.js.map +1 -0
  167. package/dist/core/get-shared-entry-points.d.ts +11 -0
  168. package/dist/core/get-shared-entry-points.d.ts.map +1 -0
  169. package/dist/core/get-shared-entry-points.js +43 -0
  170. package/dist/core/get-shared-entry-points.js.map +1 -0
  171. package/dist/core/get-version/get-launchdarkly-sdk-version.d.ts.map +1 -0
  172. package/dist/core/get-version/get-launchdarkly-sdk-version.js.map +1 -0
  173. package/dist/core/get-version/get-startup-version.d.ts.map +1 -0
  174. package/dist/{utils → core/get-version}/get-startup-version.js +2 -2
  175. package/dist/core/get-version/get-startup-version.js.map +1 -0
  176. package/dist/core/get-version/get-web-components-version.d.ts.map +1 -0
  177. package/dist/core/get-version/get-web-components-version.js.map +1 -0
  178. package/dist/core/get-version/index.d.ts +4 -0
  179. package/dist/core/get-version/index.d.ts.map +1 -0
  180. package/dist/core/get-version/index.js +22 -0
  181. package/dist/core/get-version/index.js.map +1 -0
  182. package/dist/core/index.d.ts +24 -0
  183. package/dist/core/index.d.ts.map +1 -0
  184. package/dist/core/index.js +41 -0
  185. package/dist/core/index.js.map +1 -0
  186. package/dist/core/metadata/build-metadata.d.ts.map +1 -0
  187. package/dist/{webpack/configs/utils → core/metadata}/build-metadata.js +5 -6
  188. package/dist/core/metadata/build-metadata.js.map +1 -0
  189. package/dist/core/metadata/generate-exposed-dependencies-metadata.d.ts +3 -0
  190. package/dist/core/metadata/generate-exposed-dependencies-metadata.d.ts.map +1 -0
  191. package/dist/core/metadata/generate-exposed-dependencies-metadata.js +42 -0
  192. package/dist/core/metadata/generate-exposed-dependencies-metadata.js.map +1 -0
  193. package/dist/core/metadata/generate-metadata.d.ts +3 -0
  194. package/dist/core/metadata/generate-metadata.d.ts.map +1 -0
  195. package/dist/{webpack/configs/utils → core/metadata}/generate-metadata.js +5 -4
  196. package/dist/core/metadata/generate-metadata.js.map +1 -0
  197. package/dist/core/metadata/index.d.ts +4 -0
  198. package/dist/core/metadata/index.d.ts.map +1 -0
  199. package/dist/{webpack/configs/utils → core/metadata}/index.js +2 -2
  200. package/dist/core/metadata/index.js.map +1 -0
  201. package/dist/core/moment-locales.d.ts +2 -0
  202. package/dist/core/moment-locales.d.ts.map +1 -0
  203. package/dist/core/moment-locales.js +21 -0
  204. package/dist/core/moment-locales.js.map +1 -0
  205. package/dist/core/resolve-output-path.d.ts +3 -0
  206. package/dist/core/resolve-output-path.d.ts.map +1 -0
  207. package/dist/core/resolve-output-path.js +25 -0
  208. package/dist/core/resolve-output-path.js.map +1 -0
  209. package/dist/core/resolve-output-root.d.ts +3 -0
  210. package/dist/core/resolve-output-root.d.ts.map +1 -0
  211. package/dist/core/resolve-output-root.js +23 -0
  212. package/dist/core/resolve-output-root.js.map +1 -0
  213. package/dist/core/sort-shared-css.d.ts +2 -0
  214. package/dist/core/sort-shared-css.d.ts.map +1 -0
  215. package/dist/core/sort-shared-css.js +20 -0
  216. package/dist/core/sort-shared-css.js.map +1 -0
  217. package/dist/core/stringify-config.d.ts.map +1 -0
  218. package/dist/core/stringify-config.js.map +1 -0
  219. package/dist/core/types.d.ts +50 -0
  220. package/dist/core/types.d.ts.map +1 -0
  221. package/dist/core/types.js +6 -0
  222. package/dist/core/types.js.map +1 -0
  223. package/dist/core/virtual-modules.d.ts +8 -0
  224. package/dist/core/virtual-modules.d.ts.map +1 -0
  225. package/dist/core/virtual-modules.js +83 -0
  226. package/dist/core/virtual-modules.js.map +1 -0
  227. package/dist/cypress/config/index.d.ts +1 -0
  228. package/dist/cypress/config/index.d.ts.map +1 -1
  229. package/dist/cypress/config/index.js +1 -0
  230. package/dist/cypress/config/index.js.map +1 -1
  231. package/dist/cypress/config/vite-config.d.ts +3 -0
  232. package/dist/cypress/config/vite-config.d.ts.map +1 -0
  233. package/dist/cypress/config/vite-config.js +58 -0
  234. package/dist/cypress/config/vite-config.js.map +1 -0
  235. package/dist/cypress/config/webpack-config.d.ts +1 -1
  236. package/dist/cypress/config/webpack-config.d.ts.map +1 -1
  237. package/dist/cypress/config/webpack-config.js +20 -8
  238. package/dist/cypress/config/webpack-config.js.map +1 -1
  239. package/dist/index.d.ts.map +1 -1
  240. package/dist/index.js.map +1 -1
  241. package/dist/storybook-config/index.d.ts +1 -0
  242. package/dist/storybook-config/index.d.ts.map +1 -1
  243. package/dist/storybook-config/index.js +1 -0
  244. package/dist/storybook-config/index.js.map +1 -1
  245. package/dist/storybook-config/vite-final.d.ts +7 -0
  246. package/dist/storybook-config/vite-final.d.ts.map +1 -0
  247. package/dist/storybook-config/vite-final.js +86 -0
  248. package/dist/storybook-config/vite-final.js.map +1 -0
  249. package/dist/storybook-config/webpack-final.d.ts +1 -1
  250. package/dist/storybook-config/webpack-final.d.ts.map +1 -1
  251. package/dist/storybook-config/webpack-final.js +18 -13
  252. package/dist/storybook-config/webpack-final.js.map +1 -1
  253. package/dist/utils/get-configuration.d.ts +47 -11
  254. package/dist/utils/get-configuration.d.ts.map +1 -1
  255. package/dist/utils/get-configuration.js +43 -9
  256. package/dist/utils/get-configuration.js.map +1 -1
  257. package/dist/utils/get-package-data.d.ts.map +1 -1
  258. package/dist/utils/get-package-data.js +3 -2
  259. package/dist/utils/get-package-data.js.map +1 -1
  260. package/dist/utils/get-package-name.d.ts +2 -1
  261. package/dist/utils/get-package-name.d.ts.map +1 -1
  262. package/dist/utils/get-package-name.js +4 -2
  263. package/dist/utils/get-package-name.js.map +1 -1
  264. package/dist/utils/get-packages.d.ts +1 -1
  265. package/dist/utils/get-packages.d.ts.map +1 -1
  266. package/dist/utils/get-packages.js +1 -1
  267. package/dist/utils/get-packages.js.map +1 -1
  268. package/dist/utils/index.d.ts +2 -1
  269. package/dist/utils/index.d.ts.map +1 -1
  270. package/dist/utils/index.js +1 -1
  271. package/dist/utils/index.js.map +1 -1
  272. package/dist/utils/types.d.ts +2 -0
  273. package/dist/utils/types.d.ts.map +1 -0
  274. package/dist/utils/types.js +6 -0
  275. package/dist/utils/types.js.map +1 -0
  276. package/dist/utils/validate-shared-dependencies.d.ts +2 -0
  277. package/dist/utils/validate-shared-dependencies.d.ts.map +1 -0
  278. package/dist/utils/validate-shared-dependencies.js +30 -0
  279. package/dist/utils/validate-shared-dependencies.js.map +1 -0
  280. package/dist/vite/build-shared-dependencies.d.ts +3 -0
  281. package/dist/vite/build-shared-dependencies.d.ts.map +1 -0
  282. package/dist/vite/build-shared-dependencies.js +60 -0
  283. package/dist/vite/build-shared-dependencies.js.map +1 -0
  284. package/dist/vite/config/asset-file-names.d.ts +4 -0
  285. package/dist/vite/config/asset-file-names.d.ts.map +1 -0
  286. package/dist/vite/config/asset-file-names.js +29 -0
  287. package/dist/vite/config/asset-file-names.js.map +1 -0
  288. package/dist/vite/config/base-config.d.ts +4 -0
  289. package/dist/vite/config/base-config.d.ts.map +1 -0
  290. package/dist/vite/config/base-config.js +176 -0
  291. package/dist/vite/config/base-config.js.map +1 -0
  292. package/dist/vite/config/code-splitting.d.ts +4 -0
  293. package/dist/vite/config/code-splitting.d.ts.map +1 -0
  294. package/dist/vite/config/code-splitting.js +48 -0
  295. package/dist/vite/config/code-splitting.js.map +1 -0
  296. package/dist/vite/config/create-css-config.d.ts +3 -0
  297. package/dist/vite/config/create-css-config.d.ts.map +1 -0
  298. package/dist/vite/config/create-css-config.js +26 -0
  299. package/dist/vite/config/create-css-config.js.map +1 -0
  300. package/dist/vite/config/create-filtering-logger.d.ts +3 -0
  301. package/dist/vite/config/create-filtering-logger.d.ts.map +1 -0
  302. package/dist/vite/config/create-filtering-logger.js +37 -0
  303. package/dist/vite/config/create-filtering-logger.js.map +1 -0
  304. package/dist/vite/config/create-vite-build-context.d.ts +6 -0
  305. package/dist/vite/config/create-vite-build-context.d.ts.map +1 -0
  306. package/dist/vite/config/create-vite-build-context.js +43 -0
  307. package/dist/vite/config/create-vite-build-context.js.map +1 -0
  308. package/dist/vite/config/create-vite-config.d.ts +3 -0
  309. package/dist/vite/config/create-vite-config.d.ts.map +1 -0
  310. package/dist/vite/config/create-vite-config.js +60 -0
  311. package/dist/vite/config/create-vite-config.js.map +1 -0
  312. package/dist/vite/config/define-config.d.ts +13 -0
  313. package/dist/vite/config/define-config.d.ts.map +1 -0
  314. package/dist/vite/config/define-config.js +15 -0
  315. package/dist/vite/config/define-config.js.map +1 -0
  316. package/dist/vite/config/get-warmup-client-files.d.ts +3 -0
  317. package/dist/vite/config/get-warmup-client-files.d.ts.map +1 -0
  318. package/dist/vite/config/get-warmup-client-files.js +26 -0
  319. package/dist/vite/config/get-warmup-client-files.js.map +1 -0
  320. package/dist/vite/config/index.d.ts +6 -0
  321. package/dist/vite/config/index.d.ts.map +1 -0
  322. package/dist/vite/config/index.js +24 -0
  323. package/dist/vite/config/index.js.map +1 -0
  324. package/dist/vite/config/load-config-file.d.ts +4 -0
  325. package/dist/vite/config/load-config-file.d.ts.map +1 -0
  326. package/dist/vite/config/load-config-file.js +103 -0
  327. package/dist/vite/config/load-config-file.js.map +1 -0
  328. package/dist/vite/config/merge-vite-configs.d.ts +5 -0
  329. package/dist/vite/config/merge-vite-configs.d.ts.map +1 -0
  330. package/dist/vite/config/merge-vite-configs.js +17 -0
  331. package/dist/vite/config/merge-vite-configs.js.map +1 -0
  332. package/dist/vite/index.d.ts +2 -0
  333. package/dist/vite/index.d.ts.map +1 -0
  334. package/dist/vite/index.html +33 -0
  335. package/dist/vite/index.js +20 -0
  336. package/dist/vite/index.js.map +1 -0
  337. package/dist/vite/plugins/bundle-stat-plugin.d.ts +4 -0
  338. package/dist/vite/plugins/bundle-stat-plugin.d.ts.map +1 -0
  339. package/dist/vite/plugins/bundle-stat-plugin.js +32 -0
  340. package/dist/vite/plugins/bundle-stat-plugin.js.map +1 -0
  341. package/dist/vite/plugins/chain-source-maps-plugin.d.ts +3 -0
  342. package/dist/vite/plugins/chain-source-maps-plugin.d.ts.map +1 -0
  343. package/dist/vite/plugins/chain-source-maps-plugin.js +37 -0
  344. package/dist/vite/plugins/chain-source-maps-plugin.js.map +1 -0
  345. package/dist/vite/plugins/clean-plugin.d.ts +4 -0
  346. package/dist/vite/plugins/clean-plugin.d.ts.map +1 -0
  347. package/dist/vite/plugins/clean-plugin.js +63 -0
  348. package/dist/vite/plugins/clean-plugin.js.map +1 -0
  349. package/dist/vite/plugins/css-injector-plugin.d.ts +4 -0
  350. package/dist/vite/plugins/css-injector-plugin.d.ts.map +1 -0
  351. package/dist/vite/plugins/css-injector-plugin.js +42 -0
  352. package/dist/vite/plugins/css-injector-plugin.js.map +1 -0
  353. package/dist/vite/plugins/design-system-guard-plugin.d.ts +4 -0
  354. package/dist/vite/plugins/design-system-guard-plugin.d.ts.map +1 -0
  355. package/dist/vite/plugins/design-system-guard-plugin.js +35 -0
  356. package/dist/vite/plugins/design-system-guard-plugin.js.map +1 -0
  357. package/dist/vite/plugins/dev-server-routing-plugin.d.ts +24 -0
  358. package/dist/vite/plugins/dev-server-routing-plugin.d.ts.map +1 -0
  359. package/dist/vite/plugins/dev-server-routing-plugin.js +85 -0
  360. package/dist/vite/plugins/dev-server-routing-plugin.js.map +1 -0
  361. package/dist/vite/plugins/externals-plugin.d.ts +4 -0
  362. package/dist/vite/plugins/externals-plugin.d.ts.map +1 -0
  363. package/dist/vite/plugins/externals-plugin.js +60 -0
  364. package/dist/vite/plugins/externals-plugin.js.map +1 -0
  365. package/dist/vite/plugins/html-plugin.d.ts +4 -0
  366. package/dist/vite/plugins/html-plugin.d.ts.map +1 -0
  367. package/dist/vite/plugins/html-plugin.js +118 -0
  368. package/dist/vite/plugins/html-plugin.js.map +1 -0
  369. package/dist/vite/plugins/ignore-modules-plugin.d.ts +21 -0
  370. package/dist/vite/plugins/ignore-modules-plugin.d.ts.map +1 -0
  371. package/dist/vite/plugins/ignore-modules-plugin.js +58 -0
  372. package/dist/vite/plugins/ignore-modules-plugin.js.map +1 -0
  373. package/dist/vite/plugins/index.d.ts +17 -0
  374. package/dist/vite/plugins/index.d.ts.map +1 -0
  375. package/dist/vite/plugins/index.js +35 -0
  376. package/dist/vite/plugins/index.js.map +1 -0
  377. package/dist/vite/plugins/istanbul-plugin.d.ts +4 -0
  378. package/dist/vite/plugins/istanbul-plugin.d.ts.map +1 -0
  379. package/dist/vite/plugins/istanbul-plugin.js +27 -0
  380. package/dist/vite/plugins/istanbul-plugin.js.map +1 -0
  381. package/dist/vite/plugins/magic-comments-plugin/index.d.ts +2 -0
  382. package/dist/vite/plugins/magic-comments-plugin/index.d.ts.map +1 -0
  383. package/dist/vite/plugins/magic-comments-plugin/index.js +20 -0
  384. package/dist/vite/plugins/magic-comments-plugin/index.js.map +1 -0
  385. package/dist/vite/plugins/magic-comments-plugin/magic-comments-plugin.d.ts +4 -0
  386. package/dist/vite/plugins/magic-comments-plugin/magic-comments-plugin.d.ts.map +1 -0
  387. package/dist/vite/plugins/magic-comments-plugin/magic-comments-plugin.js +63 -0
  388. package/dist/vite/plugins/magic-comments-plugin/magic-comments-plugin.js.map +1 -0
  389. package/dist/vite/plugins/magic-comments-plugin/parse-magic-comments.d.ts +6 -0
  390. package/dist/vite/plugins/magic-comments-plugin/parse-magic-comments.d.ts.map +1 -0
  391. package/dist/vite/plugins/magic-comments-plugin/parse-magic-comments.js +40 -0
  392. package/dist/vite/plugins/magic-comments-plugin/parse-magic-comments.js.map +1 -0
  393. package/dist/vite/plugins/metadata-plugin.d.ts +4 -0
  394. package/dist/vite/plugins/metadata-plugin.d.ts.map +1 -0
  395. package/dist/vite/plugins/metadata-plugin.js +76 -0
  396. package/dist/vite/plugins/metadata-plugin.js.map +1 -0
  397. package/dist/vite/plugins/moment-locales-plugin.d.ts +5 -0
  398. package/dist/vite/plugins/moment-locales-plugin.d.ts.map +1 -0
  399. package/dist/vite/plugins/moment-locales-plugin.js +50 -0
  400. package/dist/vite/plugins/moment-locales-plugin.js.map +1 -0
  401. package/dist/vite/plugins/shared-dependencies-plugin/assemble-iife.d.ts +14 -0
  402. package/dist/vite/plugins/shared-dependencies-plugin/assemble-iife.d.ts.map +1 -0
  403. package/dist/vite/plugins/shared-dependencies-plugin/assemble-iife.js +100 -0
  404. package/dist/vite/plugins/shared-dependencies-plugin/assemble-iife.js.map +1 -0
  405. package/dist/vite/plugins/shared-dependencies-plugin/assert-no-dynamic-css.d.ts +3 -0
  406. package/dist/vite/plugins/shared-dependencies-plugin/assert-no-dynamic-css.d.ts.map +1 -0
  407. package/dist/vite/plugins/shared-dependencies-plugin/assert-no-dynamic-css.js +56 -0
  408. package/dist/vite/plugins/shared-dependencies-plugin/assert-no-dynamic-css.js.map +1 -0
  409. package/dist/vite/plugins/shared-dependencies-plugin/flatten.d.ts +2 -0
  410. package/dist/vite/plugins/shared-dependencies-plugin/flatten.d.ts.map +1 -0
  411. package/dist/vite/plugins/shared-dependencies-plugin/flatten.js +19 -0
  412. package/dist/vite/plugins/shared-dependencies-plugin/flatten.js.map +1 -0
  413. package/dist/vite/plugins/shared-dependencies-plugin/index.d.ts +2 -0
  414. package/dist/vite/plugins/shared-dependencies-plugin/index.d.ts.map +1 -0
  415. package/dist/vite/plugins/shared-dependencies-plugin/index.js +20 -0
  416. package/dist/vite/plugins/shared-dependencies-plugin/index.js.map +1 -0
  417. package/dist/vite/plugins/shared-dependencies-plugin/shared-dependencies-plugin.d.ts +8 -0
  418. package/dist/vite/plugins/shared-dependencies-plugin/shared-dependencies-plugin.d.ts.map +1 -0
  419. package/dist/vite/plugins/shared-dependencies-plugin/shared-dependencies-plugin.js +174 -0
  420. package/dist/vite/plugins/shared-dependencies-plugin/shared-dependencies-plugin.js.map +1 -0
  421. package/dist/vite/plugins/style-urls-plugin.d.ts +4 -0
  422. package/dist/vite/plugins/style-urls-plugin.d.ts.map +1 -0
  423. package/dist/vite/plugins/style-urls-plugin.js +31 -0
  424. package/dist/vite/plugins/style-urls-plugin.js.map +1 -0
  425. package/dist/vite/plugins/svgr-plugin.d.ts +4 -0
  426. package/dist/vite/plugins/svgr-plugin.d.ts.map +1 -0
  427. package/dist/vite/plugins/svgr-plugin.js +33 -0
  428. package/dist/vite/plugins/svgr-plugin.js.map +1 -0
  429. package/dist/vite/plugins/utils/get-css-file-names.d.ts +5 -0
  430. package/dist/vite/plugins/utils/get-css-file-names.d.ts.map +1 -0
  431. package/dist/vite/plugins/utils/get-css-file-names.js +21 -0
  432. package/dist/vite/plugins/utils/get-css-file-names.js.map +1 -0
  433. package/dist/vite/plugins/utils/import-esm.d.ts +2 -0
  434. package/dist/vite/plugins/utils/import-esm.d.ts.map +1 -0
  435. package/dist/vite/plugins/utils/import-esm.js +22 -0
  436. package/dist/vite/plugins/utils/import-esm.js.map +1 -0
  437. package/dist/vite/plugins/utils/index.d.ts +3 -0
  438. package/dist/vite/plugins/utils/index.d.ts.map +1 -0
  439. package/dist/vite/plugins/utils/index.js +21 -0
  440. package/dist/vite/plugins/utils/index.js.map +1 -0
  441. package/dist/vite/plugins/virtual-modules-plugin.d.ts +4 -0
  442. package/dist/vite/plugins/virtual-modules-plugin.d.ts.map +1 -0
  443. package/dist/vite/plugins/virtual-modules-plugin.js +54 -0
  444. package/dist/vite/plugins/virtual-modules-plugin.js.map +1 -0
  445. package/dist/vite/types.d.ts +4 -0
  446. package/dist/vite/types.d.ts.map +1 -0
  447. package/dist/vite/types.js +6 -0
  448. package/dist/vite/types.js.map +1 -0
  449. package/dist/vite/validate-shared-dependencies.d.ts +2 -0
  450. package/dist/vite/validate-shared-dependencies.d.ts.map +1 -0
  451. package/dist/vite/validate-shared-dependencies.js +27 -0
  452. package/dist/vite/validate-shared-dependencies.js.map +1 -0
  453. package/dist/webpack/bundle-webpack.d.ts +11 -0
  454. package/dist/webpack/bundle-webpack.d.ts.map +1 -0
  455. package/dist/webpack/bundle-webpack.js +107 -0
  456. package/dist/webpack/bundle-webpack.js.map +1 -0
  457. package/dist/webpack/configs/amd-config.d.ts +3 -2
  458. package/dist/webpack/configs/amd-config.d.ts.map +1 -1
  459. package/dist/webpack/configs/amd-config.js.map +1 -1
  460. package/dist/webpack/configs/cache-config.d.ts +3 -2
  461. package/dist/webpack/configs/cache-config.d.ts.map +1 -1
  462. package/dist/webpack/configs/cache-config.js +5 -18
  463. package/dist/webpack/configs/cache-config.js.map +1 -1
  464. package/dist/webpack/configs/dev-server-config.d.ts +2 -2
  465. package/dist/webpack/configs/dev-server-config.d.ts.map +1 -1
  466. package/dist/webpack/configs/dev-server-config.js +8 -8
  467. package/dist/webpack/configs/dev-server-config.js.map +1 -1
  468. package/dist/webpack/configs/devtool-config.d.ts +3 -2
  469. package/dist/webpack/configs/devtool-config.d.ts.map +1 -1
  470. package/dist/webpack/configs/devtool-config.js +1 -1
  471. package/dist/webpack/configs/devtool-config.js.map +1 -1
  472. package/dist/webpack/configs/entry.config.d.ts +3 -2
  473. package/dist/webpack/configs/entry.config.d.ts.map +1 -1
  474. package/dist/webpack/configs/entry.config.js +6 -5
  475. package/dist/webpack/configs/entry.config.js.map +1 -1
  476. package/dist/webpack/configs/externals-config.d.ts +3 -2
  477. package/dist/webpack/configs/externals-config.d.ts.map +1 -1
  478. package/dist/webpack/configs/externals-config.js +4 -14
  479. package/dist/webpack/configs/externals-config.js.map +1 -1
  480. package/dist/webpack/configs/index.d.ts +0 -1
  481. package/dist/webpack/configs/index.d.ts.map +1 -1
  482. package/dist/webpack/configs/index.js.map +1 -1
  483. package/dist/webpack/configs/loaders/css-loader.d.ts +3 -3
  484. package/dist/webpack/configs/loaders/css-loader.d.ts.map +1 -1
  485. package/dist/webpack/configs/loaders/css-loader.js +5 -4
  486. package/dist/webpack/configs/loaders/css-loader.js.map +1 -1
  487. package/dist/webpack/configs/loaders/style-loader.d.ts +2 -2
  488. package/dist/webpack/configs/loaders/style-loader.d.ts.map +1 -1
  489. package/dist/webpack/configs/loaders/style-loader.js +3 -1
  490. package/dist/webpack/configs/loaders/style-loader.js.map +1 -1
  491. package/dist/webpack/configs/module-config.d.ts +2 -2
  492. package/dist/webpack/configs/module-config.d.ts.map +1 -1
  493. package/dist/webpack/configs/module-config.js.map +1 -1
  494. package/dist/webpack/configs/optimization-config.d.ts +2 -2
  495. package/dist/webpack/configs/optimization-config.d.ts.map +1 -1
  496. package/dist/webpack/configs/optimization-config.js +62 -31
  497. package/dist/webpack/configs/optimization-config.js.map +1 -1
  498. package/dist/webpack/configs/output-config.d.ts +3 -2
  499. package/dist/webpack/configs/output-config.d.ts.map +1 -1
  500. package/dist/webpack/configs/output-config.js +10 -25
  501. package/dist/webpack/configs/output-config.js.map +1 -1
  502. package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts +3 -8
  503. package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts.map +1 -1
  504. package/dist/webpack/configs/plugins/assets-manifest-plugin.js +21 -50
  505. package/dist/webpack/configs/plugins/assets-manifest-plugin.js.map +1 -1
  506. package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts +3 -2
  507. package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts.map +1 -1
  508. package/dist/webpack/configs/plugins/bundle-analyser-plugin.js +4 -23
  509. package/dist/webpack/configs/plugins/bundle-analyser-plugin.js.map +1 -1
  510. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts +3 -2
  511. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts.map +1 -1
  512. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js +4 -17
  513. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js.map +1 -1
  514. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.d.ts +3 -2
  515. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.d.ts.map +1 -1
  516. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.js +4 -12
  517. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.js.map +1 -1
  518. package/dist/webpack/configs/plugins/define-process-env-plugin.d.ts +5 -0
  519. package/dist/webpack/configs/plugins/define-process-env-plugin.d.ts.map +1 -0
  520. package/dist/webpack/configs/plugins/define-process-env-plugin.js +20 -0
  521. package/dist/webpack/configs/plugins/define-process-env-plugin.js.map +1 -0
  522. package/dist/webpack/configs/plugins/define-web-component-name-plugin.d.ts +3 -2
  523. package/dist/webpack/configs/plugins/define-web-component-name-plugin.d.ts.map +1 -1
  524. package/dist/webpack/configs/plugins/define-web-component-name-plugin.js +4 -6
  525. package/dist/webpack/configs/plugins/define-web-component-name-plugin.js.map +1 -1
  526. package/dist/webpack/configs/plugins/filter-warnings-plugin.d.ts +3 -2
  527. package/dist/webpack/configs/plugins/filter-warnings-plugin.d.ts.map +1 -1
  528. package/dist/webpack/configs/plugins/filter-warnings-plugin.js +2 -2
  529. package/dist/webpack/configs/plugins/filter-warnings-plugin.js.map +1 -1
  530. package/dist/webpack/configs/plugins/html-plugin.d.ts +3 -2
  531. package/dist/webpack/configs/plugins/html-plugin.d.ts.map +1 -1
  532. package/dist/webpack/configs/plugins/html-plugin.js +4 -2
  533. package/dist/webpack/configs/plugins/html-plugin.js.map +1 -1
  534. package/dist/webpack/configs/plugins/html-tags-plugin.d.ts +3 -2
  535. package/dist/webpack/configs/plugins/html-tags-plugin.d.ts.map +1 -1
  536. package/dist/webpack/configs/plugins/html-tags-plugin.js +16 -21
  537. package/dist/webpack/configs/plugins/html-tags-plugin.js.map +1 -1
  538. package/dist/webpack/configs/plugins/ignore-plugin/empty-module.d.ts +2 -0
  539. package/dist/webpack/configs/plugins/ignore-plugin/empty-module.d.ts.map +1 -0
  540. package/dist/webpack/configs/plugins/ignore-plugin/empty-module.js +11 -0
  541. package/dist/webpack/configs/plugins/ignore-plugin/empty-module.js.map +1 -0
  542. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts +27 -3
  543. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts.map +1 -1
  544. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js +42 -10
  545. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js.map +1 -1
  546. package/dist/webpack/configs/plugins/index.d.ts +1 -0
  547. package/dist/webpack/configs/plugins/index.d.ts.map +1 -1
  548. package/dist/webpack/configs/plugins/index.js +1 -0
  549. package/dist/webpack/configs/plugins/index.js.map +1 -1
  550. package/dist/webpack/configs/plugins/mini-css-extract-plugin.d.ts +2 -2
  551. package/dist/webpack/configs/plugins/mini-css-extract-plugin.d.ts.map +1 -1
  552. package/dist/webpack/configs/plugins/mini-css-extract-plugin.js +4 -2
  553. package/dist/webpack/configs/plugins/mini-css-extract-plugin.js.map +1 -1
  554. package/dist/webpack/configs/plugins/moment-locales-plugin.d.ts +3 -2
  555. package/dist/webpack/configs/plugins/moment-locales-plugin.d.ts.map +1 -1
  556. package/dist/webpack/configs/plugins/moment-locales-plugin.js +2 -5
  557. package/dist/webpack/configs/plugins/moment-locales-plugin.js.map +1 -1
  558. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.d.ts +3 -2
  559. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.d.ts.map +1 -1
  560. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.js +1 -1
  561. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.js.map +1 -1
  562. package/dist/webpack/configs/plugins/virtual-modules-plugin.d.ts +3 -3
  563. package/dist/webpack/configs/plugins/virtual-modules-plugin.d.ts.map +1 -1
  564. package/dist/webpack/configs/plugins/virtual-modules-plugin.js +13 -56
  565. package/dist/webpack/configs/plugins/virtual-modules-plugin.js.map +1 -1
  566. package/dist/webpack/configs/plugins/watch-run-plugin.d.ts +3 -2
  567. package/dist/webpack/configs/plugins/watch-run-plugin.d.ts.map +1 -1
  568. package/dist/webpack/configs/plugins/watch-run-plugin.js.map +1 -1
  569. package/dist/webpack/configs/plugins-config.d.ts +3 -2
  570. package/dist/webpack/configs/plugins-config.d.ts.map +1 -1
  571. package/dist/webpack/configs/plugins-config.js +1 -0
  572. package/dist/webpack/configs/plugins-config.js.map +1 -1
  573. package/dist/webpack/configs/resolve-config.d.ts +3 -2
  574. package/dist/webpack/configs/resolve-config.d.ts.map +1 -1
  575. package/dist/webpack/configs/resolve-config.js +2 -1
  576. package/dist/webpack/configs/resolve-config.js.map +1 -1
  577. package/dist/webpack/configs/rules/css-rules.d.ts +2 -2
  578. package/dist/webpack/configs/rules/css-rules.d.ts.map +1 -1
  579. package/dist/webpack/configs/rules/css-rules.js +2 -1
  580. package/dist/webpack/configs/rules/css-rules.js.map +1 -1
  581. package/dist/webpack/configs/rules/font-rules.d.ts +2 -2
  582. package/dist/webpack/configs/rules/font-rules.d.ts.map +1 -1
  583. package/dist/webpack/configs/rules/font-rules.js +2 -1
  584. package/dist/webpack/configs/rules/font-rules.js.map +1 -1
  585. package/dist/webpack/configs/rules/image-rules.d.ts +2 -2
  586. package/dist/webpack/configs/rules/image-rules.d.ts.map +1 -1
  587. package/dist/webpack/configs/rules/image-rules.js +2 -1
  588. package/dist/webpack/configs/rules/image-rules.js.map +1 -1
  589. package/dist/webpack/configs/rules/js-rules.d.ts +2 -2
  590. package/dist/webpack/configs/rules/js-rules.d.ts.map +1 -1
  591. package/dist/webpack/configs/rules/js-rules.js +2 -1
  592. package/dist/webpack/configs/rules/js-rules.js.map +1 -1
  593. package/dist/webpack/configs/rules/less-rules.d.ts +2 -2
  594. package/dist/webpack/configs/rules/less-rules.d.ts.map +1 -1
  595. package/dist/webpack/configs/rules/less-rules.js.map +1 -1
  596. package/dist/webpack/configs/rules/scss-rules.d.ts +2 -2
  597. package/dist/webpack/configs/rules/scss-rules.d.ts.map +1 -1
  598. package/dist/webpack/configs/rules/scss-rules.js.map +1 -1
  599. package/dist/webpack/configs/rules/svg-rules.d.ts +2 -2
  600. package/dist/webpack/configs/rules/svg-rules.d.ts.map +1 -1
  601. package/dist/webpack/configs/rules/svg-rules.js.map +1 -1
  602. package/dist/webpack/configs/rules-config.d.ts +2 -2
  603. package/dist/webpack/configs/rules-config.d.ts.map +1 -1
  604. package/dist/webpack/configs/rules-config.js +2 -2
  605. package/dist/webpack/configs/rules-config.js.map +1 -1
  606. package/dist/webpack/configs/stats-config.d.ts +3 -2
  607. package/dist/webpack/configs/stats-config.d.ts.map +1 -1
  608. package/dist/webpack/configs/stats-config.js.map +1 -1
  609. package/dist/webpack/configs/watch-options-config.d.ts +2 -2
  610. package/dist/webpack/configs/watch-options-config.d.ts.map +1 -1
  611. package/dist/webpack/configs/watch-options-config.js +2 -2
  612. package/dist/webpack/configs/watch-options-config.js.map +1 -1
  613. package/dist/webpack/create-webpack-config.d.ts +2 -0
  614. package/dist/webpack/create-webpack-config.d.ts.map +1 -1
  615. package/dist/webpack/create-webpack-config.js +43 -49
  616. package/dist/webpack/create-webpack-config.js.map +1 -1
  617. package/dist/webpack/create-webpack-configs.d.ts +16 -0
  618. package/dist/webpack/create-webpack-configs.d.ts.map +1 -0
  619. package/dist/webpack/create-webpack-configs.js +80 -0
  620. package/dist/webpack/create-webpack-configs.js.map +1 -0
  621. package/dist/webpack/index.d.ts +2 -0
  622. package/dist/webpack/index.d.ts.map +1 -1
  623. package/dist/webpack/index.js +2 -0
  624. package/dist/webpack/index.js.map +1 -1
  625. package/dist/webpack/types.d.ts +4 -11
  626. package/dist/webpack/types.d.ts.map +1 -1
  627. package/dist/webpack/utils/create-webpack-build-context.d.ts +4 -0
  628. package/dist/webpack/utils/create-webpack-build-context.d.ts.map +1 -0
  629. package/dist/webpack/utils/create-webpack-build-context.js +20 -0
  630. package/dist/webpack/utils/create-webpack-build-context.js.map +1 -0
  631. package/dist/webpack/utils/index.d.ts +1 -1
  632. package/dist/webpack/utils/index.d.ts.map +1 -1
  633. package/dist/webpack/utils/index.js +1 -1
  634. package/dist/webpack/utils/index.js.map +1 -1
  635. package/jest/babel-plugin-import-meta-env.js +18 -0
  636. package/jest/jest-preset.js +5 -2
  637. package/package.json +40 -28
  638. package/src/cli/commands/__tests__/build.test.ts +35 -7
  639. package/src/cli/commands/__tests__/bundle-vite.test.ts +277 -0
  640. package/src/cli/commands/__tests__/{bundle-package.test.ts → bundle-webpack.test.ts} +26 -17
  641. package/src/cli/commands/__tests__/install.test.ts +6 -2
  642. package/src/cli/commands/__tests__/mfe-generate-metadata.test.ts +13 -10
  643. package/src/cli/commands/__tests__/mfe-publish.test.ts +4 -4
  644. package/src/cli/commands/__tests__/start.test.ts +18 -5
  645. package/src/cli/commands/build.ts +14 -12
  646. package/src/cli/commands/bundle-vite.ts +95 -0
  647. package/src/cli/commands/{bundle-package.ts → bundle-webpack.ts} +9 -6
  648. package/src/cli/commands/install.ts +2 -1
  649. package/src/cli/commands/mfe-check.ts +1 -2
  650. package/src/cli/commands/mfe-generate-metadata.ts +1 -1
  651. package/src/cli/commands/mfe-list.ts +1 -1
  652. package/src/cli/commands/mfe-package-publish.ts +1 -1
  653. package/src/cli/commands/mfe-publish.ts +1 -1
  654. package/src/cli/commands/registry/__tests__/command-registry.test.ts +1 -0
  655. package/src/cli/commands/registry/build.ts +7 -0
  656. package/src/cli/commands/registry/bundle-vite.ts +14 -0
  657. package/src/cli/commands/registry/command-registry.ts +4 -2
  658. package/src/cli/commands/registry/start.ts +6 -0
  659. package/src/cli/commands/review/rules/__tests__/require-compatible-typescript.test.ts +127 -0
  660. package/src/cli/commands/review/rules/index.ts +2 -0
  661. package/src/cli/commands/review/rules/require-compatible-typescript.ts +64 -0
  662. package/src/cli/commands/start.ts +15 -29
  663. package/src/cli/index.ts +4 -3
  664. package/src/cli/tasks/swc-compile-package/__tests__/swc-compile-package.test.ts +21 -1
  665. package/src/cli/tasks/swc-compile-package/swc-cli.d.ts +1 -1
  666. package/src/cli/tasks/swc-compile-package/swc-compile-package.ts +9 -3
  667. package/src/cli/tasks/tsc-compile/tsc-compile.ts +1 -1
  668. package/src/cli/utils/__tests__/get-bundle-command.test.ts +23 -0
  669. package/src/cli/utils/__tests__/get-exit-code.test.ts +41 -0
  670. package/src/cli/utils/__tests__/resolve-bundler.test.ts +64 -0
  671. package/src/cli/utils/copy-files.ts +1 -1
  672. package/src/cli/utils/get-bundle-command.ts +5 -0
  673. package/src/cli/utils/get-exit-code.ts +17 -0
  674. package/src/cli/utils/index.ts +3 -1
  675. package/src/cli/utils/resolve-bundler.ts +23 -0
  676. package/src/core/__tests__/bundle-report.test.ts +60 -0
  677. package/src/core/__tests__/create-extension-regexp.test.ts +32 -0
  678. package/src/core/__tests__/get-cdn-path.test.ts +27 -0
  679. package/src/core/__tests__/resolve-output-path.test.ts +45 -0
  680. package/src/core/__tests__/resolve-output-root.test.ts +37 -0
  681. package/src/core/__tests__/sort-shared-css.test.ts +39 -0
  682. package/src/core/bundle-report.ts +33 -0
  683. package/src/core/check-resource/__tests__/check-resource.test.ts +72 -0
  684. package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/get-package-json.test.ts +2 -1
  685. package/src/core/check-resource/__tests__/get-peer-dependency-meta.test.ts +108 -0
  686. package/src/core/check-resource/__tests__/is-managed-react-dom-client-dependency.test.ts +35 -0
  687. package/src/core/check-resource/__tests__/is-resolvable.test.ts +20 -0
  688. package/src/core/check-resource/check-resource.ts +31 -0
  689. package/src/core/check-resource/get-package-json.ts +33 -0
  690. package/src/core/check-resource/get-peer-dependency-meta.ts +78 -0
  691. package/src/core/check-resource/index.ts +2 -0
  692. package/src/core/check-resource/is-managed-react-dom-client-dependency.ts +13 -0
  693. package/src/core/check-resource/is-resolvable.ts +19 -0
  694. package/src/core/check-resource/types.ts +6 -0
  695. package/src/core/chunk-patterns.ts +30 -0
  696. package/src/core/constants.ts +16 -0
  697. package/src/core/create-build-context.ts +61 -0
  698. package/src/core/create-extension-regexp.ts +7 -0
  699. package/src/core/defines/define-exposed-dependencies.ts +25 -0
  700. package/src/core/defines/define-exposed-instance-dependencies.ts +19 -0
  701. package/src/core/defines/define-web-component-name.ts +15 -0
  702. package/src/core/defines/index.ts +3 -0
  703. package/src/core/externals.ts +22 -0
  704. package/src/core/get-build-name.ts +11 -0
  705. package/src/core/get-bundle-type.ts +19 -0
  706. package/src/core/get-cdn-path.ts +5 -0
  707. package/src/core/get-process-env.ts +17 -0
  708. package/src/core/get-shared-entry-points.ts +37 -0
  709. package/src/core/get-version/get-startup-version.ts +6 -0
  710. package/src/core/get-version/index.ts +3 -0
  711. package/src/core/index.ts +23 -0
  712. package/src/{webpack/configs/utils → core/metadata}/__tests__/build-metadata.test.ts +10 -6
  713. package/src/{webpack/configs/utils → core/metadata}/__tests__/generate-metadata.test.ts +25 -13
  714. package/src/{webpack/configs/utils → core/metadata}/build-metadata.ts +6 -3
  715. package/src/core/metadata/generate-exposed-dependencies-metadata.ts +20 -0
  716. package/src/{webpack/configs/utils → core/metadata}/generate-metadata.ts +8 -6
  717. package/src/core/metadata/index.ts +3 -0
  718. package/src/core/moment-locales.ts +6 -0
  719. package/src/core/resolve-output-path.ts +10 -0
  720. package/src/core/resolve-output-root.ts +8 -0
  721. package/src/core/sort-shared-css.ts +7 -0
  722. package/src/core/types.ts +54 -0
  723. package/src/core/virtual-modules.ts +74 -0
  724. package/src/cypress/config/__tests__/vite-config.test.ts +72 -0
  725. package/src/cypress/config/__tests__/webpack-config.test.ts +4 -3
  726. package/src/cypress/config/index.ts +1 -0
  727. package/src/cypress/config/vite-config.ts +37 -0
  728. package/src/cypress/config/webpack-config.ts +24 -11
  729. package/src/index.ts +1 -0
  730. package/src/storybook-config/__tests__/vite-final.test.ts +122 -0
  731. package/src/storybook-config/__tests__/webpack-final.test.ts +5 -27
  732. package/src/storybook-config/index.ts +1 -0
  733. package/src/storybook-config/vite-final.ts +65 -0
  734. package/src/storybook-config/webpack-final.ts +23 -15
  735. package/src/utils/__tests__/get-configuration.test.ts +109 -11
  736. package/src/utils/__tests__/get-package-data.test.ts +35 -1
  737. package/src/utils/__tests__/get-package-name.test.ts +57 -0
  738. package/src/utils/__tests__/get-packages.test.ts +4 -4
  739. package/src/utils/__tests__/validate-shared-dependencies.test.ts +70 -0
  740. package/src/utils/get-configuration.ts +96 -17
  741. package/src/utils/get-package-data.ts +3 -1
  742. package/src/utils/get-package-name.ts +8 -2
  743. package/src/utils/get-packages.ts +2 -2
  744. package/src/utils/index.ts +2 -1
  745. package/src/utils/types.ts +1 -0
  746. package/src/utils/validate-shared-dependencies.ts +46 -0
  747. package/src/vite/__tests__/build-shared-dependencies.test.ts +234 -0
  748. package/src/vite/__tests__/validate-shared-dependencies.test.ts +45 -0
  749. package/src/vite/build-shared-dependencies.ts +52 -0
  750. package/src/vite/config/__tests__/asset-file-names.test.ts +40 -0
  751. package/src/vite/config/__tests__/base-config.test.ts +377 -0
  752. package/src/vite/config/__tests__/code-splitting.test.ts +34 -0
  753. package/src/vite/config/__tests__/create-css-config.test.ts +58 -0
  754. package/src/vite/config/__tests__/create-filtering-logger.test.ts +51 -0
  755. package/src/vite/config/__tests__/create-vite-build-context.test.ts +89 -0
  756. package/src/vite/config/__tests__/create-vite-config.test.ts +219 -0
  757. package/src/vite/config/__tests__/define-config.test.ts +23 -0
  758. package/src/vite/config/__tests__/get-warmup-client-files.test.ts +20 -0
  759. package/src/vite/config/__tests__/load-config-file.test.ts +191 -0
  760. package/src/vite/config/__tests__/merge-vite-configs.test.ts +84 -0
  761. package/src/vite/config/asset-file-names.ts +20 -0
  762. package/src/vite/config/base-config.ts +145 -0
  763. package/src/vite/config/code-splitting.ts +23 -0
  764. package/src/vite/config/create-css-config.ts +16 -0
  765. package/src/vite/config/create-filtering-logger.ts +34 -0
  766. package/src/vite/config/create-vite-build-context.ts +43 -0
  767. package/src/vite/config/create-vite-config.ts +66 -0
  768. package/src/vite/config/define-config.ts +18 -0
  769. package/src/vite/config/get-warmup-client-files.ts +13 -0
  770. package/src/vite/config/index.ts +5 -0
  771. package/src/vite/config/load-config-file.ts +52 -0
  772. package/src/vite/config/merge-vite-configs.ts +15 -0
  773. package/src/vite/index.html +33 -0
  774. package/src/vite/index.ts +1 -0
  775. package/src/vite/plugins/__tests__/bundle-stat-plugin.test.ts +70 -0
  776. package/src/vite/plugins/__tests__/chain-source-maps-plugin.test.ts +58 -0
  777. package/src/vite/plugins/__tests__/clean-plugin.test.ts +121 -0
  778. package/src/vite/plugins/__tests__/css-injector-plugin.test.ts +119 -0
  779. package/src/vite/plugins/__tests__/design-system-guard-plugin.test.ts +83 -0
  780. package/src/vite/plugins/__tests__/dev-server-routing-plugin.test.ts +255 -0
  781. package/src/vite/plugins/__tests__/externals-plugin.test.ts +138 -0
  782. package/src/vite/plugins/__tests__/html-plugin.test.ts +360 -0
  783. package/src/vite/plugins/__tests__/html-template.test.ts +103 -0
  784. package/src/vite/plugins/__tests__/ignore-modules-plugin.test.ts +107 -0
  785. package/src/vite/plugins/__tests__/istanbul-plugin.test.ts +62 -0
  786. package/src/vite/plugins/__tests__/metadata-plugin.test.ts +163 -0
  787. package/src/vite/plugins/__tests__/moment-locales-plugin.test.ts +104 -0
  788. package/src/vite/plugins/__tests__/style-urls-plugin.test.ts +77 -0
  789. package/src/vite/plugins/__tests__/svgr-plugin.test.ts +67 -0
  790. package/src/vite/plugins/__tests__/virtual-modules-plugin.test.ts +101 -0
  791. package/src/vite/plugins/bundle-stat-plugin.ts +24 -0
  792. package/src/vite/plugins/chain-source-maps-plugin.ts +26 -0
  793. package/src/vite/plugins/clean-plugin.ts +46 -0
  794. package/src/vite/plugins/css-injector-plugin.ts +65 -0
  795. package/src/vite/plugins/design-system-guard-plugin.ts +34 -0
  796. package/src/vite/plugins/dev-server-routing-plugin.ts +96 -0
  797. package/src/vite/plugins/externals-plugin.ts +81 -0
  798. package/src/vite/plugins/html-plugin.ts +111 -0
  799. package/src/vite/plugins/ignore-modules-plugin.ts +51 -0
  800. package/src/vite/plugins/index.ts +16 -0
  801. package/src/vite/plugins/istanbul-plugin.ts +19 -0
  802. package/src/vite/plugins/magic-comments-plugin/__tests__/magic-comments-plugin.test.ts +105 -0
  803. package/src/vite/plugins/magic-comments-plugin/__tests__/parse-magic-comments.test.ts +40 -0
  804. package/src/vite/plugins/magic-comments-plugin/index.ts +1 -0
  805. package/src/vite/plugins/magic-comments-plugin/magic-comments-plugin.ts +63 -0
  806. package/src/vite/plugins/magic-comments-plugin/parse-magic-comments.ts +39 -0
  807. package/src/vite/plugins/metadata-plugin.ts +65 -0
  808. package/src/vite/plugins/moment-locales-plugin.ts +41 -0
  809. package/src/vite/plugins/shared-dependencies-plugin/__tests__/assemble-iife.test.ts +29 -0
  810. package/src/vite/plugins/shared-dependencies-plugin/__tests__/assert-no-dynamic-css.test.ts +113 -0
  811. package/src/vite/plugins/shared-dependencies-plugin/__tests__/flatten.test.ts +23 -0
  812. package/src/vite/plugins/shared-dependencies-plugin/__tests__/shared-dependencies-plugin.test.ts +461 -0
  813. package/src/vite/plugins/shared-dependencies-plugin/assemble-iife.ts +114 -0
  814. package/src/vite/plugins/shared-dependencies-plugin/assert-no-dynamic-css.ts +58 -0
  815. package/src/vite/plugins/shared-dependencies-plugin/flatten.ts +8 -0
  816. package/src/vite/plugins/shared-dependencies-plugin/index.ts +1 -0
  817. package/src/vite/plugins/shared-dependencies-plugin/shared-dependencies-plugin.ts +182 -0
  818. package/src/vite/plugins/style-urls-plugin.ts +21 -0
  819. package/src/vite/plugins/svgr-plugin.ts +17 -0
  820. package/src/vite/plugins/utils/get-css-file-names.ts +11 -0
  821. package/src/vite/plugins/utils/import-esm.ts +15 -0
  822. package/src/vite/plugins/utils/index.ts +2 -0
  823. package/src/vite/plugins/virtual-modules-plugin.ts +46 -0
  824. package/src/vite/rolldown-oxc.d.ts +20 -0
  825. package/src/vite/types.ts +6 -0
  826. package/src/vite/validate-shared-dependencies.ts +27 -0
  827. package/src/webpack/__mocks__/style-rules.ts +15 -3
  828. package/src/{cli/utils/__tests__/bundle.test.ts → webpack/__tests__/bundle-webpack.test.ts} +33 -26
  829. package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +91 -16
  830. package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +85 -26
  831. package/src/webpack/__tests__/create-webpack-config.test.ts +97 -13
  832. package/src/webpack/bundle-webpack.ts +107 -0
  833. package/src/webpack/configs/amd-config.ts +3 -2
  834. package/src/webpack/configs/cache-config.ts +7 -15
  835. package/src/webpack/configs/dev-server-config.ts +16 -17
  836. package/src/webpack/configs/devtool-config.ts +4 -3
  837. package/src/webpack/configs/entry.config.ts +8 -7
  838. package/src/webpack/configs/externals-config.ts +5 -21
  839. package/src/webpack/configs/index.ts +0 -1
  840. package/src/webpack/configs/loaders/css-loader.ts +7 -3
  841. package/src/webpack/configs/loaders/style-loader.ts +4 -5
  842. package/src/webpack/configs/module-config.ts +2 -2
  843. package/src/webpack/configs/optimization-config.ts +64 -36
  844. package/src/webpack/configs/output-config.ts +12 -24
  845. package/src/webpack/configs/plugins/assets-manifest-plugin.ts +24 -39
  846. package/src/webpack/configs/plugins/bundle-analyser-plugin.ts +6 -28
  847. package/src/webpack/configs/plugins/define-exposed-dependencies-plugin.ts +7 -18
  848. package/src/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.ts +7 -13
  849. package/src/webpack/configs/plugins/define-process-env-plugin.ts +10 -0
  850. package/src/webpack/configs/plugins/define-web-component-name-plugin.ts +7 -8
  851. package/src/webpack/configs/plugins/filter-warnings-plugin.ts +4 -3
  852. package/src/webpack/configs/plugins/html-plugin.ts +6 -6
  853. package/src/webpack/configs/plugins/html-tags-plugin.ts +10 -17
  854. package/src/webpack/configs/plugins/ignore-plugin/__tests__/ignore-plugin.test.ts +119 -0
  855. package/src/webpack/configs/plugins/ignore-plugin/empty-module.ts +7 -0
  856. package/src/webpack/configs/plugins/ignore-plugin/ignore-plugin.ts +62 -12
  857. package/src/webpack/configs/plugins/index.ts +1 -0
  858. package/src/webpack/configs/plugins/mini-css-extract-plugin.ts +9 -5
  859. package/src/webpack/configs/plugins/moment-locales-plugin.ts +4 -3
  860. package/src/webpack/configs/plugins/remove-empty-scripts-plugin.ts +4 -3
  861. package/src/webpack/configs/plugins/virtual-modules-plugin.ts +11 -65
  862. package/src/webpack/configs/plugins/watch-run-plugin.ts +3 -2
  863. package/src/webpack/configs/plugins-config.ts +5 -2
  864. package/src/webpack/configs/resolve-config.ts +4 -2
  865. package/src/webpack/configs/rules/css-rules.ts +4 -3
  866. package/src/webpack/configs/rules/font-rules.ts +3 -3
  867. package/src/webpack/configs/rules/image-rules.ts +3 -3
  868. package/src/webpack/configs/rules/js-rules.ts +3 -2
  869. package/src/webpack/configs/rules/less-rules.ts +2 -2
  870. package/src/webpack/configs/rules/scss-rules.ts +2 -2
  871. package/src/webpack/configs/rules/svg-rules.ts +2 -2
  872. package/src/webpack/configs/rules-config.ts +6 -5
  873. package/src/webpack/configs/stats-config.ts +3 -2
  874. package/src/webpack/configs/watch-options-config.ts +3 -3
  875. package/src/webpack/create-webpack-config.ts +28 -53
  876. package/src/webpack/create-webpack-configs.ts +77 -0
  877. package/src/webpack/index.ts +2 -0
  878. package/src/webpack/types.ts +8 -11
  879. package/src/webpack/utils/__tests__/split-by-entry.test.ts +33 -0
  880. package/src/webpack/utils/create-webpack-build-context.ts +7 -0
  881. package/src/webpack/utils/index.ts +1 -1
  882. package/tsconfig/base.json +1 -1
  883. package/tsconfig/types.d.ts +10 -0
  884. package/dist/cli/commands/bundle-package.d.ts +0 -6
  885. package/dist/cli/commands/bundle-package.d.ts.map +0 -1
  886. package/dist/cli/commands/bundle-package.js.map +0 -1
  887. package/dist/cli/commands/registry/bundle-package.d.ts.map +0 -1
  888. package/dist/cli/utils/bundle.d.ts +0 -14
  889. package/dist/cli/utils/bundle.d.ts.map +0 -1
  890. package/dist/cli/utils/bundle.js +0 -187
  891. package/dist/cli/utils/bundle.js.map +0 -1
  892. package/dist/utils/get-startup-version.d.ts.map +0 -1
  893. package/dist/utils/get-startup-version.js.map +0 -1
  894. package/dist/webpack/configs/plugins/ignore-plugin/check-resource.d.ts +0 -3
  895. package/dist/webpack/configs/plugins/ignore-plugin/check-resource.d.ts.map +0 -1
  896. package/dist/webpack/configs/plugins/ignore-plugin/check-resource.js +0 -40
  897. package/dist/webpack/configs/plugins/ignore-plugin/check-resource.js.map +0 -1
  898. package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.d.ts +0 -2
  899. package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.d.ts.map +0 -1
  900. package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.js.map +0 -1
  901. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.d.ts +0 -2
  902. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.d.ts.map +0 -1
  903. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.js +0 -27
  904. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.js.map +0 -1
  905. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.d.ts +0 -7
  906. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.d.ts.map +0 -1
  907. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.js +0 -15
  908. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.js.map +0 -1
  909. package/dist/webpack/configs/types.d.ts +0 -37
  910. package/dist/webpack/configs/types.d.ts.map +0 -1
  911. package/dist/webpack/configs/types.js.map +0 -1
  912. package/dist/webpack/configs/utils/build-metadata.d.ts.map +0 -1
  913. package/dist/webpack/configs/utils/build-metadata.js.map +0 -1
  914. package/dist/webpack/configs/utils/generate-metadata.d.ts +0 -3
  915. package/dist/webpack/configs/utils/generate-metadata.d.ts.map +0 -1
  916. package/dist/webpack/configs/utils/generate-metadata.js.map +0 -1
  917. package/dist/webpack/configs/utils/get-bundle-type.d.ts +0 -3
  918. package/dist/webpack/configs/utils/get-bundle-type.d.ts.map +0 -1
  919. package/dist/webpack/configs/utils/get-bundle-type.js.map +0 -1
  920. package/dist/webpack/configs/utils/get-exposed-dependencies.d.ts.map +0 -1
  921. package/dist/webpack/configs/utils/get-exposed-dependencies.js.map +0 -1
  922. package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.d.ts.map +0 -1
  923. package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.js.map +0 -1
  924. package/dist/webpack/configs/utils/get-web-components-version.d.ts.map +0 -1
  925. package/dist/webpack/configs/utils/get-web-components-version.js.map +0 -1
  926. package/dist/webpack/configs/utils/index.d.ts +0 -4
  927. package/dist/webpack/configs/utils/index.d.ts.map +0 -1
  928. package/dist/webpack/configs/utils/index.js.map +0 -1
  929. package/dist/webpack/utils/stringify-config.d.ts.map +0 -1
  930. package/dist/webpack/utils/stringify-config.js.map +0 -1
  931. package/src/cli/utils/bundle.ts +0 -191
  932. package/src/utils/get-startup-version.ts +0 -6
  933. package/src/webpack/configs/plugins/ignore-plugin/__tests__/check-resource.test.ts +0 -62
  934. package/src/webpack/configs/plugins/ignore-plugin/__tests__/is-optional-peer-dependency.test.ts +0 -47
  935. package/src/webpack/configs/plugins/ignore-plugin/__tests__/is-optional-react-dom-peer-dependency.test.ts +0 -35
  936. package/src/webpack/configs/plugins/ignore-plugin/check-resource.ts +0 -29
  937. package/src/webpack/configs/plugins/ignore-plugin/get-package-json.ts +0 -23
  938. package/src/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.ts +0 -12
  939. package/src/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.ts +0 -11
  940. package/src/webpack/configs/types.ts +0 -40
  941. package/src/webpack/configs/utils/get-bundle-type.ts +0 -22
  942. package/src/webpack/configs/utils/index.ts +0 -3
  943. /package/dist/{webpack/configs → core/check-resource}/types.js +0 -0
  944. /package/dist/{webpack/configs/utils → core}/get-exposed-dependencies.d.ts +0 -0
  945. /package/dist/{webpack/configs/utils → core}/get-exposed-dependencies.js +0 -0
  946. /package/dist/{webpack/configs/utils → core/get-version}/get-launchdarkly-sdk-version.d.ts +0 -0
  947. /package/dist/{webpack/configs/utils → core/get-version}/get-launchdarkly-sdk-version.js +0 -0
  948. /package/dist/{utils → core/get-version}/get-startup-version.d.ts +0 -0
  949. /package/dist/{webpack/configs/utils → core/get-version}/get-web-components-version.d.ts +0 -0
  950. /package/dist/{webpack/configs/utils → core/get-version}/get-web-components-version.js +0 -0
  951. /package/dist/{webpack/configs/utils → core/metadata}/build-metadata.d.ts +0 -0
  952. /package/dist/{webpack/utils → core}/stringify-config.d.ts +0 -0
  953. /package/dist/{webpack/utils → core}/stringify-config.js +0 -0
  954. /package/src/cli/commands/registry/{bundle-package.ts → bundle-webpack.ts} +0 -0
  955. /package/src/{webpack/configs/utils → core}/__tests__/get-exposed-dependencies.test.ts +0 -0
  956. /package/src/{webpack/configs/utils → core}/get-exposed-dependencies.ts +0 -0
  957. /package/src/{webpack/configs/utils → core/get-version}/__tests__/get-launchdarkly-sdk-version.test.ts +0 -0
  958. /package/src/{utils → core/get-version}/__tests__/get-startup-version.test.ts +0 -0
  959. /package/src/{webpack/configs/utils → core/get-version}/__tests__/get-web-components-version.test.ts +0 -0
  960. /package/src/{webpack/configs/utils → core/get-version}/get-launchdarkly-sdk-version.ts +0 -0
  961. /package/src/{webpack/configs/utils → core/get-version}/get-web-components-version.ts +0 -0
  962. /package/src/{webpack/utils → core}/stringify-config.ts +0 -0
@@ -0,0 +1,37 @@
1
+ import { type InlineConfig, mergeConfig } from 'vite';
2
+ import { createCssConfig } from '../../vite/config/create-css-config';
3
+ import { istanbulPlugin, svgrPlugin } from '../../vite/plugins';
4
+ import type { ViteBuildContext } from '../../vite/types';
5
+
6
+ /*
7
+ * Dedupe and pre-bundle React so component tests load a single React instance.
8
+ * Mirrors how viteFinal handles Storybook, where automatic discovery can miss
9
+ * React in monorepos.
10
+ */
11
+ const REACT_DEDUPE = ['react', 'react-dom'];
12
+ const REACT_OPTIMIZE = [...REACT_DEDUPE, 'react/jsx-runtime'];
13
+
14
+ export function viteConfig(overrides?: InlineConfig): InlineConfig {
15
+ const context = getContext();
16
+
17
+ const config: InlineConfig = {
18
+ css: createCssConfig(false),
19
+ resolve: { dedupe: REACT_DEDUPE },
20
+ optimizeDeps: { include: REACT_OPTIMIZE },
21
+ plugins: [svgrPlugin(context), istanbulPlugin(context)],
22
+ };
23
+
24
+ return mergeConfig(config, overrides ?? {});
25
+ }
26
+
27
+ function getContext(): ViteBuildContext {
28
+ /*
29
+ * svgrPlugin reads bundlerConfig.pluginOverrides and istanbulPlugin reads
30
+ * options.codeCoverage, so a minimal context reuses both. Component tests
31
+ * always instrument for coverage, matching the webpack Cypress config.
32
+ */
33
+ return {
34
+ options: { codeCoverage: true },
35
+ bundlerConfig: { pluginOverrides: {} },
36
+ } as ViteBuildContext;
37
+ }
@@ -5,7 +5,8 @@ import merge from 'webpack-merge';
5
5
  import { getSwcOptions } from '../../cli/tasks';
6
6
  import { TSConfig } from '../../cli/utils';
7
7
  import { getTsConfigWithFallback, log } from '../../utils';
8
- import { Context, JS_RULE_EXCLUDE, Overrides, rulesConfig } from '../../webpack/configs';
8
+ import { JS_RULE_EXCLUDE, rulesConfig } from '../../webpack/configs';
9
+ import { Overrides, WebpackBuildContext } from '../../webpack/types';
9
10
 
10
11
  export function webpackConfig(overrides?: Overrides): Configuration {
11
12
  const context = getContext();
@@ -26,20 +27,32 @@ export function webpackConfig(overrides?: Overrides): Configuration {
26
27
  return merge(config, overrides?.configuration ?? {});
27
28
  }
28
29
 
29
- function getContext(): Context {
30
+ function getContext(): WebpackBuildContext {
30
31
  return {
31
- codeCoverage: true,
32
- destination: '',
33
- isProduction: false,
34
- name: '',
35
- packageData: {} as any,
36
- packageManager: getPackageManager(),
37
- sharedDependencies: {},
38
- source: '',
32
+ package: {
33
+ name: '',
34
+ version: '',
35
+ destination: '',
36
+ source: '',
37
+ dependencies: {},
38
+ sharedDependencies: {},
39
+ isWebComponent: false,
40
+ isLegacyRoot: false,
41
+ isExposeSharedDependencies: false,
42
+ packageManager: getPackageManager(),
43
+ },
44
+ build: {
45
+ name: '',
46
+ isProduction: false,
47
+ },
48
+ options: {
49
+ codeCoverage: true,
50
+ },
51
+ bundlerConfig: {},
39
52
  };
40
53
  }
41
54
 
42
- function getRules(context: Context, overrides: Overrides) {
55
+ function getRules(context: WebpackBuildContext, overrides: Overrides) {
43
56
  const { rules } = rulesConfig(context, overrides);
44
57
 
45
58
  return [getSwcLoaderRule(), getSwcIstanbulRule(), ...rules];
package/src/index.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './utils/get-packages';
2
+
2
3
  export * from './webpack';
@@ -0,0 +1,122 @@
1
+ import type { InlineConfig } from 'vite';
2
+ import { createCssConfig } from '../../vite/config/create-css-config';
3
+ import { svgrPlugin } from '../../vite/plugins/svgr-plugin';
4
+ import { viteFinal } from '../vite-final';
5
+
6
+ jest.mock('../../vite/plugins/svgr-plugin', () => ({ svgrPlugin: jest.fn() }));
7
+
8
+ describe(`[startup/storybook-config] ${viteFinal.name}`, () => {
9
+ const mockSvgrPlugin = { name: 'vite-plugin-svgr' } as any;
10
+ let config: InlineConfig;
11
+ let configType: 'DEVELOPMENT' | 'PRODUCTION' | undefined;
12
+
13
+ beforeEach(() => {
14
+ jest.clearAllMocks();
15
+ jest.mocked(svgrPlugin).mockReturnValue(mockSvgrPlugin);
16
+ config = {};
17
+ configType = undefined;
18
+ });
19
+
20
+ const subject = () => viteFinal(config, { configType });
21
+
22
+ test('adds svgr plugin', () => {
23
+ expect(subject()).toEqual(expect.objectContaining({ plugins: [mockSvgrPlugin] }));
24
+ });
25
+
26
+ test('dedupes react', () => {
27
+ expect(subject()).toEqual(
28
+ expect.objectContaining({ resolve: { dedupe: ['react', 'react-dom'] } })
29
+ );
30
+ });
31
+
32
+ test('pre-bundles react', () => {
33
+ expect(subject()).toEqual(
34
+ expect.objectContaining({
35
+ optimizeDeps: { include: ['react', 'react-dom', 'react/jsx-runtime'] },
36
+ })
37
+ );
38
+ });
39
+
40
+ describe.each([
41
+ ['DEVELOPMENT', false],
42
+ ['PRODUCTION', true],
43
+ ] as const)('when configType is %s', (type, isProduction) => {
44
+ const cssConfig = createCssConfig(isProduction);
45
+
46
+ beforeEach(() => (configType = type));
47
+
48
+ test('adds the css modules', () => {
49
+ const { modules } = cssConfig;
50
+
51
+ expect(subject()).toEqual(
52
+ expect.objectContaining({ css: expect.objectContaining({ modules }) })
53
+ );
54
+ });
55
+
56
+ test('adds the preprocessor options', () => {
57
+ const { preprocessorOptions } = cssConfig;
58
+
59
+ expect(subject()).toEqual(
60
+ expect.objectContaining({ css: expect.objectContaining({ preprocessorOptions }) })
61
+ );
62
+ });
63
+ });
64
+
65
+ describe('when config already contains css preprocessor options', () => {
66
+ const scssOptions = { quietDeps: true };
67
+
68
+ beforeEach(() => (config = { css: { preprocessorOptions: { scss: scssOptions } } }));
69
+
70
+ test('preserves existing preprocessor options', () => {
71
+ const { preprocessorOptions } = createCssConfig(false);
72
+
73
+ expect(subject()).toEqual(
74
+ expect.objectContaining({
75
+ css: expect.objectContaining({
76
+ preprocessorOptions: {
77
+ ...config.css?.preprocessorOptions,
78
+ ...preprocessorOptions,
79
+ },
80
+ }),
81
+ })
82
+ );
83
+ });
84
+ });
85
+
86
+ describe('when config already contains plugins', () => {
87
+ const existingPlugin = { name: 'existing' };
88
+
89
+ beforeEach(() => (config = { plugins: [existingPlugin] }));
90
+
91
+ test('preserves existing plugins', () => {
92
+ expect(subject()).toEqual(
93
+ expect.objectContaining({ plugins: [existingPlugin, mockSvgrPlugin] })
94
+ );
95
+ });
96
+ });
97
+
98
+ describe('when config already contains resolve.dedupe', () => {
99
+ beforeEach(() => (config = { resolve: { dedupe: ['lodash', 'react'] } }));
100
+
101
+ test('merges react without duplicating existing entries', () => {
102
+ expect((subject().resolve as { dedupe: string[] }).dedupe).toEqual([
103
+ 'lodash',
104
+ 'react',
105
+ 'react-dom',
106
+ ]);
107
+ });
108
+ });
109
+
110
+ describe('when config already contains optimizeDeps.include', () => {
111
+ beforeEach(() => (config = { optimizeDeps: { include: ['lodash', 'react'] } }));
112
+
113
+ test('merges react without duplicating existing entries', () => {
114
+ expect((subject().optimizeDeps as { include: string[] }).include).toEqual([
115
+ 'lodash',
116
+ 'react',
117
+ 'react-dom',
118
+ 'react/jsx-runtime',
119
+ ]);
120
+ });
121
+ });
122
+ });
@@ -1,6 +1,7 @@
1
1
  import type { Configuration } from 'webpack';
2
- import { Overrides, rulesConfig } from '../../webpack/configs';
2
+ import { rulesConfig } from '../../webpack/configs';
3
3
  import { miniCssExtractPlugin } from '../../webpack/configs/plugins';
4
+ import { Overrides } from '../../webpack/types';
4
5
  import { webpackFinal } from '../webpack-final';
5
6
 
6
7
  jest.mock('@servicetitan/install');
@@ -50,31 +51,6 @@ describe(`[startup/storybook-config] ${webpackFinal.name}`, () => {
50
51
  );
51
52
  });
52
53
 
53
- describe('when config has optimization settings', () => {
54
- beforeEach(() => {
55
- config.optimization = { sideEffects: true, splitChunks: { chunks: 'all' } };
56
- });
57
-
58
- describe('when mode is development', () => {
59
- beforeEach(() => (config.mode = 'development'));
60
-
61
- test('disables sideEffects to preserve CSS imports from barrel files', () => {
62
- expect(subject().optimization).toEqual({
63
- ...config.optimization,
64
- sideEffects: false,
65
- });
66
- });
67
- });
68
-
69
- describe('when mode is production', () => {
70
- beforeEach(() => (config.mode = 'production'));
71
-
72
- test('does not change sideEffects', () => {
73
- expect(subject().optimization).toEqual(config.optimization);
74
- });
75
- });
76
- });
77
-
78
54
  test('adds MiniCssExtractPlugin to config', () => {
79
55
  expect(subject().plugins).toEqual([mockMiniCssExtractPlugin]);
80
56
  });
@@ -117,7 +93,9 @@ describe(`[startup/storybook-config] ${webpackFinal.name}`, () => {
117
93
  subject();
118
94
 
119
95
  expect(rulesConfig).toHaveBeenCalledWith(
120
- expect.objectContaining({ isProduction: true }),
96
+ expect.objectContaining({
97
+ build: expect.objectContaining({ isProduction: true }),
98
+ }),
121
99
  expect.anything()
122
100
  );
123
101
  });
@@ -1,2 +1,3 @@
1
1
  export * from './swc';
2
+ export * from './vite-final';
2
3
  export * from './webpack-final';
@@ -0,0 +1,65 @@
1
+ import { inspect } from 'node:util';
2
+ import type { InlineConfig } from 'vite';
3
+ import { log } from '../utils';
4
+ import { createCssConfig } from '../vite/config/create-css-config';
5
+ import { svgrPlugin } from '../vite/plugins/svgr-plugin';
6
+ import type { ViteBuildContext } from '../vite/types';
7
+
8
+ interface ViteFinalOptions {
9
+ /*
10
+ * Storybook signals the build type through `configType`, not Vite's
11
+ * `config.mode` (which Storybook's Vite builder leaves unset).
12
+ */
13
+ configType?: 'DEVELOPMENT' | 'PRODUCTION';
14
+ }
15
+
16
+ /*
17
+ * Pre-bundle and dedupe React so the Storybook preview loads a single React
18
+ * instance. Storybook leaves this to Vite's automatic discovery, which can miss
19
+ * React in monorepos.
20
+ */
21
+ const REACT_DEDUPE = ['react', 'react-dom'];
22
+ const REACT_OPTIMIZE = [...REACT_DEDUPE, 'react/jsx-runtime'];
23
+
24
+ export function viteFinal(
25
+ config: InlineConfig,
26
+ { configType }: ViteFinalOptions = {}
27
+ ): InlineConfig {
28
+ const isProduction = configType === 'PRODUCTION';
29
+ const css = createCssConfig(isProduction);
30
+ const plugins = [svgrPlugin(getContext())];
31
+
32
+ const merged: InlineConfig = {
33
+ ...config,
34
+ css: {
35
+ ...config.css,
36
+ modules: css.modules,
37
+ preprocessorOptions: {
38
+ ...config.css?.preprocessorOptions,
39
+ ...css.preprocessorOptions,
40
+ },
41
+ },
42
+ resolve: {
43
+ ...config.resolve,
44
+ dedupe: [...new Set([...(config.resolve?.dedupe ?? []), ...REACT_DEDUPE])],
45
+ },
46
+ optimizeDeps: {
47
+ ...config.optimizeDeps,
48
+ include: [...new Set([...(config.optimizeDeps?.include ?? []), ...REACT_OPTIMIZE])],
49
+ },
50
+ plugins: [...(config.plugins ?? []), ...plugins],
51
+ };
52
+
53
+ /* istanbul ignore next: debug only */
54
+ log.debug('storybook-config:vite-final', () => inspect({ merged }, { depth: null }));
55
+
56
+ return merged;
57
+ }
58
+
59
+ function getContext(): ViteBuildContext {
60
+ /*
61
+ * svgrPlugin only reads bundlerConfig.pluginOverrides, so a minimal context
62
+ * is enough to reuse it with startup's default SVG include patterns.
63
+ */
64
+ return { bundlerConfig: { pluginOverrides: {} } } as ViteBuildContext;
65
+ }
@@ -2,8 +2,9 @@ import { getPackageManager } from '@servicetitan/install';
2
2
  import { inspect } from 'node:util';
3
3
  import type { Configuration } from 'webpack';
4
4
  import { log } from '../utils';
5
- import { Context, Overrides, rulesConfig } from '../webpack/configs';
5
+ import { rulesConfig } from '../webpack/configs';
6
6
  import { miniCssExtractPlugin } from '../webpack/configs/plugins';
7
+ import { Overrides, WebpackBuildContext } from '../webpack/types';
7
8
 
8
9
  export function webpackFinal(config: Configuration, overrides: Overrides = {}): Configuration {
9
10
  const context = getContext(config);
@@ -15,10 +16,6 @@ export function webpackFinal(config: Configuration, overrides: Overrides = {}):
15
16
 
16
17
  return {
17
18
  ...config,
18
- optimization: {
19
- ...config.optimization,
20
- ...(config.mode !== 'production' ? { sideEffects: false } : {}),
21
- },
22
19
  module: {
23
20
  ...config.module,
24
21
  rules: [...transformDefaultRules(config.module?.rules), ...rules],
@@ -27,23 +24,34 @@ export function webpackFinal(config: Configuration, overrides: Overrides = {}):
27
24
  };
28
25
  }
29
26
 
30
- function getContext(config: Configuration): Context {
27
+ function getContext(config: Configuration): WebpackBuildContext {
31
28
  return {
32
- destination: '',
33
- isProduction: config.mode === 'production',
34
- name: '',
35
- packageData: {} as any,
36
- packageManager: getPackageManager(),
37
- sharedDependencies: {},
38
- source: '',
29
+ package: {
30
+ name: '',
31
+ version: '',
32
+ destination: '',
33
+ source: '',
34
+ dependencies: {},
35
+ sharedDependencies: {},
36
+ isWebComponent: false,
37
+ isLegacyRoot: false,
38
+ isExposeSharedDependencies: false,
39
+ packageManager: getPackageManager(),
40
+ },
41
+ build: {
42
+ name: '',
43
+ isProduction: config.mode === 'production',
44
+ },
45
+ options: {},
46
+ bundlerConfig: {},
39
47
  };
40
48
  }
41
49
 
42
- function getPlugins(context: Context, overrides: Overrides) {
50
+ function getPlugins(context: WebpackBuildContext, overrides: Overrides) {
43
51
  return [miniCssExtractPlugin(context, overrides)].filter(plugin => !!plugin);
44
52
  }
45
53
 
46
- function getRules(context: Context, overrides: Overrides) {
54
+ function getRules(context: WebpackBuildContext, overrides: Overrides) {
47
55
  const include = ['.module.css', '.module.less', '.less', '.module.scss', '.scss', '.svg'];
48
56
  const exclude = ['.css'];
49
57
 
@@ -4,20 +4,22 @@ import {
4
4
  getConfiguration,
5
5
  getConfigurationSafe,
6
6
  getESLintConfiguration,
7
+ getExposeProcessEnv,
7
8
  getJestConfiguration,
8
9
  getReviewConfiguration,
9
10
  getStylelintConfiguration,
11
+ getViteConfiguration,
10
12
  getVitestConfiguration,
11
13
  getWebComponentBranchConfigs,
12
14
  getWebComponentConfiguration,
13
15
  hasHeadlessBundle,
14
16
  isBundle,
15
- isCustomStyleRules,
16
17
  isDevServerDisabled,
17
18
  isExposeSharedDependencies,
18
19
  isLegacy,
19
20
  isLegacyRoot,
20
21
  isStyleCheckDisabled,
22
+ isViteDevServerDisabled,
21
23
  isWebComponent,
22
24
  } from '../get-configuration';
23
25
  import { log } from '../log';
@@ -225,6 +227,45 @@ describe('[startup] Utils', () => {
225
227
  });
226
228
  });
227
229
 
230
+ describe(getExposeProcessEnv.name, () => {
231
+ const subject = () => getExposeProcessEnv();
232
+
233
+ itReturns(subject, []);
234
+
235
+ describe('with "cli.expose-process-env"', () => {
236
+ const content = { cli: { 'expose-process-env': ['API_URL', 'FEATURE_FLAG'] } };
237
+
238
+ beforeEach(() => mockPackageJson(content));
239
+
240
+ test('returns "cli.expose-process-env"', () => {
241
+ expect(subject()).toEqual(content.cli['expose-process-env']);
242
+ });
243
+ });
244
+ });
245
+
246
+ describe(getViteConfiguration.name, () => {
247
+ const subject = () => getViteConfiguration();
248
+
249
+ itReturns(subject, {});
250
+
251
+ describe('with "cli.vite"', () => {
252
+ const content = {
253
+ cli: {
254
+ vite: {
255
+ omitDefault: ['plugins.svgr'],
256
+ config: { server: { port: 9000 }, build: { minify: false } },
257
+ },
258
+ },
259
+ };
260
+
261
+ beforeEach(() => mockPackageJson(content));
262
+
263
+ test('returns "cli.vite"', () => {
264
+ expect(subject()).toEqual(content.cli.vite);
265
+ });
266
+ });
267
+ });
268
+
228
269
  describe(getVitestConfiguration.name, () => {
229
270
  const subject = () => getVitestConfiguration();
230
271
 
@@ -390,24 +431,22 @@ describe('[startup] Utils', () => {
390
431
 
391
432
  describe.each([
392
433
  {
393
- fn: isBundle,
394
- defaultValue: true,
395
- trigger: { cli: { webpack: false } },
396
- },
397
- {
398
- fn: isCustomStyleRules,
434
+ fn: isDevServerDisabled,
399
435
  defaultValue: false,
400
- trigger: { cli: { webpack: { 'custom-style-rules': true } } },
436
+ trigger: { cli: { webpack: { devServer: false } } },
401
437
  },
402
438
  {
403
- fn: isDevServerDisabled,
439
+ fn: isViteDevServerDisabled,
404
440
  defaultValue: false,
405
- trigger: { cli: { webpack: { devServer: false } } },
441
+ trigger: { cli: { vite: { devServer: false } } },
406
442
  },
407
443
  {
408
444
  fn: isExposeSharedDependencies,
409
445
  defaultValue: false,
410
- trigger: { cli: { webpack: { 'expose-shared-dependencies': true } } },
446
+ trigger: [
447
+ { cli: { 'expose-shared-dependencies': true } },
448
+ { cli: { webpack: { 'expose-shared-dependencies': true } } },
449
+ ],
411
450
  },
412
451
  {
413
452
  fn: isLegacy,
@@ -465,4 +504,63 @@ describe('[startup] Utils', () => {
465
504
  });
466
505
  });
467
506
  });
507
+
508
+ describe(isBundle.name, () => {
509
+ let json: Record<string, any>;
510
+
511
+ beforeEach(() => {
512
+ json = { name: '{packageName}', cli: {} };
513
+ mockPackageJson(json);
514
+ });
515
+
516
+ const subject = () => isBundle();
517
+
518
+ itReturns(subject, true);
519
+
520
+ describe('when cli.webpack is false', () => {
521
+ beforeEach(() => {
522
+ json.cli.webpack = false;
523
+ mockPackageJson(json);
524
+ });
525
+
526
+ itReturns(subject, false);
527
+
528
+ describe('when cli.vite is truthy', () => {
529
+ beforeEach(() => {
530
+ json.cli.vite = {};
531
+ mockPackageJson(json);
532
+ });
533
+
534
+ test('throws error', () => {
535
+ expect(subject).toThrow(
536
+ `package ${json.name} has conflicting webpack and vite configurations: ` +
537
+ `cli.webpack is false but cli.vite is not`
538
+ );
539
+ });
540
+ });
541
+ });
542
+
543
+ describe('when cli.vite is false', () => {
544
+ beforeEach(() => {
545
+ json.cli.vite = false;
546
+ mockPackageJson(json);
547
+ });
548
+
549
+ itReturns(subject, false);
550
+
551
+ describe('when cli.webpack is truthy', () => {
552
+ beforeEach(() => {
553
+ json.cli.webpack = {};
554
+ mockPackageJson(json);
555
+ });
556
+
557
+ test('throws error', () => {
558
+ expect(subject).toThrow(
559
+ `package ${json.name} has conflicting webpack and vite configurations: ` +
560
+ `cli.vite is false but cli.webpack is not`
561
+ );
562
+ });
563
+ });
564
+ });
565
+ });
468
566
  });
@@ -32,7 +32,7 @@ describe(`[startup] Utils`, () => {
32
32
  });
33
33
  });
34
34
 
35
- describe(`when ${packageJson} contains sharedDependencies`, () => {
35
+ describe(`when ${packageJson} contains cli.webpack.sharedDependencies`, () => {
36
36
  const sharedDependencies = { react: 'SharedDependencies.React' };
37
37
 
38
38
  beforeEach(() => {
@@ -45,5 +45,39 @@ describe(`[startup] Utils`, () => {
45
45
  expect(subject()).toEqual(expect.objectContaining({ sharedDependencies }));
46
46
  });
47
47
  });
48
+
49
+ describe(`when ${packageJson} contains cli.sharedDependencies`, () => {
50
+ const sharedDependencies = { mobx: 'SharedDependencies.MobX' };
51
+
52
+ beforeEach(() => {
53
+ Object.assign(packages[packageJson], {
54
+ cli: { 'shared-dependencies': sharedDependencies },
55
+ });
56
+ });
57
+
58
+ test('returns sharedDependencies', () => {
59
+ expect(subject()).toEqual(expect.objectContaining({ sharedDependencies }));
60
+ });
61
+ });
62
+
63
+ describe(`when ${packageJson} contains cli.sharedDependencies and cli.webpack.sharedDependencies`, () => {
64
+ const topLevel = { react: 'SharedDependencies.React' };
65
+ const webpack = { mobx: 'SharedDependencies.MobX' };
66
+
67
+ beforeEach(() => {
68
+ Object.assign(packages[packageJson], {
69
+ cli: {
70
+ 'shared-dependencies': topLevel,
71
+ 'webpack': { 'shared-dependencies': webpack },
72
+ },
73
+ });
74
+ });
75
+
76
+ test('returns cli.sharedDependencies', () => {
77
+ expect(subject()).toEqual(
78
+ expect.objectContaining({ sharedDependencies: topLevel })
79
+ );
80
+ });
81
+ });
48
82
  });
49
83
  });
@@ -0,0 +1,57 @@
1
+ import { fs, vol } from 'memfs';
2
+ import { getPackageName } from '../get-package-name';
3
+ import { LocationOrJson } from '../types';
4
+
5
+ jest.mock('fs', () => fs);
6
+
7
+ describe(getPackageName.name, () => {
8
+ let locationOrJson: LocationOrJson | undefined;
9
+
10
+ beforeEach(() => {
11
+ vol.reset();
12
+ locationOrJson = undefined;
13
+ });
14
+
15
+ const subject = () => getPackageName(locationOrJson);
16
+
17
+ describe('with a JSON object', () => {
18
+ beforeEach(() => (locationOrJson = { name: 'foo' }));
19
+
20
+ test('returns "name" property', () => {
21
+ expect(subject()).toBe((locationOrJson as Record<string, any>).name);
22
+ });
23
+ });
24
+
25
+ describe('when name is not present', () => {
26
+ beforeEach(() => (locationOrJson = {}));
27
+
28
+ test('returns empty string', () => {
29
+ expect(subject()).toBe('');
30
+ });
31
+ });
32
+
33
+ describe('with a location', () => {
34
+ const packageJson = { name: 'bar' };
35
+
36
+ beforeEach(() => {
37
+ locationOrJson = 'packages/foo';
38
+ vol.fromJSON({
39
+ [`${locationOrJson as string}/package.json`]: JSON.stringify(packageJson),
40
+ });
41
+ });
42
+
43
+ test('returns "name" from location\'s package.json', () => {
44
+ expect(subject()).toBe(packageJson.name);
45
+ });
46
+ });
47
+
48
+ describe('with no argument', () => {
49
+ const packageJson = { name: 'baz' };
50
+
51
+ beforeEach(() => vol.fromJSON({ 'package.json': JSON.stringify(packageJson) }));
52
+
53
+ test('returns "name" from current package.json', () => {
54
+ expect(subject()).toBe(packageJson.name);
55
+ });
56
+ });
57
+ });