@servicetitan/startup 34.2.1 → 34.3.0-beta.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 (514) hide show
  1. package/dist/cli/commands/build.d.ts +16 -0
  2. package/dist/cli/commands/build.d.ts.map +1 -1
  3. package/dist/cli/commands/build.js +15 -2
  4. package/dist/cli/commands/build.js.map +1 -1
  5. package/dist/cli/commands/bundle-vite.d.ts +66 -0
  6. package/dist/cli/commands/bundle-vite.d.ts.map +1 -0
  7. package/dist/cli/commands/bundle-vite.js +184 -0
  8. package/dist/cli/commands/bundle-vite.js.map +1 -0
  9. package/dist/cli/commands/get-command.d.ts.map +1 -1
  10. package/dist/cli/commands/get-command.js +2 -0
  11. package/dist/cli/commands/get-command.js.map +1 -1
  12. package/dist/cli/commands/mfe-check.d.ts.map +1 -1
  13. package/dist/cli/commands/mfe-check.js +2 -2
  14. package/dist/cli/commands/mfe-check.js.map +1 -1
  15. package/dist/cli/commands/mfe-generate-metadata.js +2 -2
  16. package/dist/cli/commands/mfe-generate-metadata.js.map +1 -1
  17. package/dist/cli/commands/mfe-package-publish.js.map +1 -1
  18. package/dist/cli/commands/start.d.ts +8 -0
  19. package/dist/cli/commands/start.d.ts.map +1 -1
  20. package/dist/cli/commands/start.js +8 -2
  21. package/dist/cli/commands/start.js.map +1 -1
  22. package/dist/cli/tasks/swc-compile-package.js +127 -0
  23. package/dist/cli/tasks/swc-compile-package.js.map +1 -0
  24. package/dist/cli/tasks/tsc-compile-package.js +46 -0
  25. package/dist/cli/tasks/tsc-compile-package.js.map +1 -0
  26. package/dist/cli/tasks/tsc-compile.js +68 -0
  27. package/dist/cli/tasks/tsc-compile.js.map +1 -0
  28. package/dist/cli/utils/bundle.d.ts +2 -5
  29. package/dist/cli/utils/bundle.d.ts.map +1 -1
  30. package/dist/cli/utils/bundle.js +18 -98
  31. package/dist/cli/utils/bundle.js.map +1 -1
  32. package/dist/core/check-resource/check-resource.d.ts +3 -0
  33. package/dist/core/check-resource/check-resource.d.ts.map +1 -0
  34. package/dist/core/check-resource/check-resource.js +40 -0
  35. package/dist/core/check-resource/check-resource.js.map +1 -0
  36. package/dist/core/check-resource/get-package-json.d.ts.map +1 -0
  37. package/dist/core/check-resource/get-package-json.js +37 -0
  38. package/dist/core/check-resource/get-package-json.js.map +1 -0
  39. package/dist/core/check-resource/index.d.ts +2 -0
  40. package/dist/core/check-resource/index.d.ts.map +1 -0
  41. package/dist/core/check-resource/index.js +13 -0
  42. package/dist/core/check-resource/index.js.map +1 -0
  43. package/dist/core/check-resource/is-optional-peer-dependency.d.ts.map +1 -0
  44. package/dist/core/check-resource/is-optional-peer-dependency.js +27 -0
  45. package/dist/core/check-resource/is-optional-peer-dependency.js.map +1 -0
  46. package/dist/core/check-resource/is-optional-react-dom-peer-dependency.d.ts.map +1 -0
  47. package/dist/core/check-resource/is-optional-react-dom-peer-dependency.js +15 -0
  48. package/dist/core/check-resource/is-optional-react-dom-peer-dependency.js.map +1 -0
  49. package/dist/core/context.d.ts +14 -0
  50. package/dist/core/context.d.ts.map +1 -0
  51. package/dist/core/context.js +62 -0
  52. package/dist/core/context.js.map +1 -0
  53. package/dist/core/defines/exposed-dependencies.d.ts +5 -0
  54. package/dist/core/defines/exposed-dependencies.d.ts.map +1 -0
  55. package/dist/core/defines/exposed-dependencies.js +26 -0
  56. package/dist/core/defines/exposed-dependencies.js.map +1 -0
  57. package/dist/core/defines/exposed-instance-dependencies.d.ts +5 -0
  58. package/dist/core/defines/exposed-instance-dependencies.d.ts.map +1 -0
  59. package/dist/core/defines/exposed-instance-dependencies.js +29 -0
  60. package/dist/core/defines/exposed-instance-dependencies.js.map +1 -0
  61. package/dist/core/defines/index.d.ts +4 -0
  62. package/dist/core/defines/index.d.ts.map +1 -0
  63. package/dist/core/defines/index.js +26 -0
  64. package/dist/core/defines/index.js.map +1 -0
  65. package/dist/core/defines/web-component-name.d.ts +5 -0
  66. package/dist/core/defines/web-component-name.d.ts.map +1 -0
  67. package/dist/core/defines/web-component-name.js +23 -0
  68. package/dist/core/defines/web-component-name.js.map +1 -0
  69. package/dist/core/externals.d.ts +3 -0
  70. package/dist/core/externals.d.ts.map +1 -0
  71. package/dist/core/externals.js +29 -0
  72. package/dist/core/externals.js.map +1 -0
  73. package/dist/core/get-exposed-dependencies-entry-points.d.ts +11 -0
  74. package/dist/core/get-exposed-dependencies-entry-points.d.ts.map +1 -0
  75. package/dist/core/get-exposed-dependencies-entry-points.js +82 -0
  76. package/dist/core/get-exposed-dependencies-entry-points.js.map +1 -0
  77. package/dist/core/index.d.ts +9 -0
  78. package/dist/core/index.d.ts.map +1 -0
  79. package/dist/core/index.js +26 -0
  80. package/dist/core/index.js.map +1 -0
  81. package/dist/core/types.d.ts +55 -0
  82. package/dist/core/types.d.ts.map +1 -0
  83. package/dist/core/types.js +6 -0
  84. package/dist/core/types.js.map +1 -0
  85. package/dist/core/utils/build-metadata.d.ts.map +1 -0
  86. package/dist/core/utils/build-metadata.js +50 -0
  87. package/dist/core/utils/build-metadata.js.map +1 -0
  88. package/dist/core/utils/generate-metadata.d.ts +3 -0
  89. package/dist/core/utils/generate-metadata.d.ts.map +1 -0
  90. package/dist/core/utils/generate-metadata.js +40 -0
  91. package/dist/core/utils/generate-metadata.js.map +1 -0
  92. package/dist/core/utils/get-bundle-type.d.ts +3 -0
  93. package/dist/core/utils/get-bundle-type.d.ts.map +1 -0
  94. package/dist/core/utils/get-bundle-type.js +27 -0
  95. package/dist/core/utils/get-bundle-type.js.map +1 -0
  96. package/dist/core/utils/get-exposed-dependencies.d.ts.map +1 -0
  97. package/dist/core/utils/get-exposed-dependencies.js +21 -0
  98. package/dist/core/utils/get-exposed-dependencies.js.map +1 -0
  99. package/dist/core/utils/get-launchdarkly-sdk-version.d.ts.map +1 -0
  100. package/dist/core/utils/get-launchdarkly-sdk-version.js +26 -0
  101. package/dist/core/utils/get-launchdarkly-sdk-version.js.map +1 -0
  102. package/dist/core/utils/get-output-path.d.ts +3 -0
  103. package/dist/core/utils/get-output-path.d.ts.map +1 -0
  104. package/dist/core/utils/get-output-path.js +32 -0
  105. package/dist/core/utils/get-output-path.js.map +1 -0
  106. package/dist/core/utils/get-web-components-version.d.ts.map +1 -0
  107. package/dist/core/utils/get-web-components-version.js +22 -0
  108. package/dist/core/utils/get-web-components-version.js.map +1 -0
  109. package/dist/core/utils/index.d.ts +9 -0
  110. package/dist/core/utils/index.d.ts.map +1 -0
  111. package/dist/core/utils/index.js +27 -0
  112. package/dist/core/utils/index.js.map +1 -0
  113. package/dist/core/utils/stringify-config.d.ts +2 -0
  114. package/dist/core/utils/stringify-config.d.ts.map +1 -0
  115. package/dist/core/utils/stringify-config.js +35 -0
  116. package/dist/core/utils/stringify-config.js.map +1 -0
  117. package/dist/core/virtual-modules.d.ts +9 -0
  118. package/dist/core/virtual-modules.d.ts.map +1 -0
  119. package/dist/core/virtual-modules.js +84 -0
  120. package/dist/core/virtual-modules.js.map +1 -0
  121. package/dist/index.d.ts +1 -0
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +1 -0
  124. package/dist/index.js.map +1 -1
  125. package/dist/storybook-config/webpack-final.d.ts +1 -1
  126. package/dist/storybook-config/webpack-final.d.ts.map +1 -1
  127. package/dist/storybook-config/webpack-final.js +18 -6
  128. package/dist/storybook-config/webpack-final.js.map +1 -1
  129. package/dist/utils/get-configuration.d.ts +28 -0
  130. package/dist/utils/get-configuration.d.ts.map +1 -1
  131. package/dist/utils/get-configuration.js +42 -1
  132. package/dist/utils/get-configuration.js.map +1 -1
  133. package/dist/utils/get-package-data.d.ts.map +1 -1
  134. package/dist/utils/get-package-data.js +3 -2
  135. package/dist/utils/get-package-data.js.map +1 -1
  136. package/dist/vite/base-config.d.ts +4 -0
  137. package/dist/vite/base-config.d.ts.map +1 -0
  138. package/dist/vite/base-config.js +65 -0
  139. package/dist/vite/base-config.js.map +1 -0
  140. package/dist/vite/build-shared-deps.d.ts +3 -0
  141. package/dist/vite/build-shared-deps.d.ts.map +1 -0
  142. package/dist/vite/build-shared-deps.js +310 -0
  143. package/dist/vite/build-shared-deps.js.map +1 -0
  144. package/dist/vite/create-vite-config.d.ts +3 -0
  145. package/dist/vite/create-vite-config.d.ts.map +1 -0
  146. package/dist/vite/create-vite-config.js +52 -0
  147. package/dist/vite/create-vite-config.js.map +1 -0
  148. package/dist/vite/define-config.d.ts +12 -0
  149. package/dist/vite/define-config.d.ts.map +1 -0
  150. package/dist/vite/define-config.js +15 -0
  151. package/dist/vite/define-config.js.map +1 -0
  152. package/dist/vite/load-config-file.d.ts +6 -0
  153. package/dist/vite/load-config-file.d.ts.map +1 -0
  154. package/dist/vite/load-config-file.js +107 -0
  155. package/dist/vite/load-config-file.js.map +1 -0
  156. package/dist/vite/merge-config.d.ts +6 -0
  157. package/dist/vite/merge-config.d.ts.map +1 -0
  158. package/dist/vite/merge-config.js +106 -0
  159. package/dist/vite/merge-config.js.map +1 -0
  160. package/dist/vite/plugins/css-injector-plugin.d.ts +15 -0
  161. package/dist/vite/plugins/css-injector-plugin.d.ts.map +1 -0
  162. package/dist/vite/plugins/css-injector-plugin.js +76 -0
  163. package/dist/vite/plugins/css-injector-plugin.js.map +1 -0
  164. package/dist/vite/plugins/dev-bundle-routing-plugin.d.ts +7 -0
  165. package/dist/vite/plugins/dev-bundle-routing-plugin.d.ts.map +1 -0
  166. package/dist/vite/plugins/dev-bundle-routing-plugin.js +48 -0
  167. package/dist/vite/plugins/dev-bundle-routing-plugin.js.map +1 -0
  168. package/dist/vite/plugins/dev-server-routing-plugin.d.ts +12 -0
  169. package/dist/vite/plugins/dev-server-routing-plugin.d.ts.map +1 -0
  170. package/dist/vite/plugins/dev-server-routing-plugin.js +85 -0
  171. package/dist/vite/plugins/dev-server-routing-plugin.js.map +1 -0
  172. package/dist/vite/plugins/externals-plugin.d.ts +4 -0
  173. package/dist/vite/plugins/externals-plugin.d.ts.map +1 -0
  174. package/dist/vite/plugins/externals-plugin.js +39 -0
  175. package/dist/vite/plugins/externals-plugin.js.map +1 -0
  176. package/dist/vite/plugins/full-bundle-proxy-plugin.d.ts +14 -0
  177. package/dist/vite/plugins/full-bundle-proxy-plugin.d.ts.map +1 -0
  178. package/dist/vite/plugins/full-bundle-proxy-plugin.js +48 -0
  179. package/dist/vite/plugins/full-bundle-proxy-plugin.js.map +1 -0
  180. package/dist/vite/plugins/html-plugin.d.ts +5 -0
  181. package/dist/vite/plugins/html-plugin.d.ts.map +1 -0
  182. package/dist/vite/plugins/html-plugin.js +74 -0
  183. package/dist/vite/plugins/html-plugin.js.map +1 -0
  184. package/dist/vite/plugins/ignore-modules-plugin.d.ts +4 -0
  185. package/dist/vite/plugins/ignore-modules-plugin.d.ts.map +1 -0
  186. package/dist/vite/plugins/ignore-modules-plugin.js +30 -0
  187. package/dist/vite/plugins/ignore-modules-plugin.js.map +1 -0
  188. package/dist/vite/plugins/index.d.ts +10 -0
  189. package/dist/vite/plugins/index.d.ts.map +1 -0
  190. package/dist/vite/plugins/index.js +28 -0
  191. package/dist/vite/plugins/index.js.map +1 -0
  192. package/dist/vite/plugins/metadata-plugin.d.ts +4 -0
  193. package/dist/vite/plugins/metadata-plugin.d.ts.map +1 -0
  194. package/dist/vite/plugins/metadata-plugin.js +86 -0
  195. package/dist/vite/plugins/metadata-plugin.js.map +1 -0
  196. package/dist/vite/plugins/outdir-rewrite-plugin.d.ts +9 -0
  197. package/dist/vite/plugins/outdir-rewrite-plugin.d.ts.map +1 -0
  198. package/dist/vite/plugins/preview-static-files-plugin.d.ts +9 -0
  199. package/dist/vite/plugins/preview-static-files-plugin.d.ts.map +1 -0
  200. package/dist/vite/plugins/preview-static-files-plugin.js +50 -0
  201. package/dist/vite/plugins/preview-static-files-plugin.js.map +1 -0
  202. package/dist/vite/plugins/shared-deps-dev-server-plugin.d.ts +11 -0
  203. package/dist/vite/plugins/shared-deps-dev-server-plugin.d.ts.map +1 -0
  204. package/dist/vite/plugins/shared-deps-rewrite-plugin.d.ts +10 -0
  205. package/dist/vite/plugins/shared-deps-rewrite-plugin.d.ts.map +1 -0
  206. package/dist/vite/plugins/shared-deps-rewrite-plugin.js +51 -0
  207. package/dist/vite/plugins/shared-deps-rewrite-plugin.js.map +1 -0
  208. package/dist/vite/plugins/style-urls-plugin.d.ts +4 -0
  209. package/dist/vite/plugins/style-urls-plugin.d.ts.map +1 -0
  210. package/dist/vite/plugins/style-urls-plugin.js +29 -0
  211. package/dist/vite/plugins/style-urls-plugin.js.map +1 -0
  212. package/dist/vite/plugins/svgr-plugin.d.ts +4 -0
  213. package/dist/vite/plugins/svgr-plugin.d.ts.map +1 -0
  214. package/dist/vite/plugins/svgr-plugin.js +31 -0
  215. package/dist/vite/plugins/svgr-plugin.js.map +1 -0
  216. package/dist/vite/plugins/virtual-modules-plugin.d.ts +4 -0
  217. package/dist/vite/plugins/virtual-modules-plugin.d.ts.map +1 -0
  218. package/dist/vite/plugins/virtual-modules-plugin.js +71 -0
  219. package/dist/vite/plugins/virtual-modules-plugin.js.map +1 -0
  220. package/dist/webpack/configs/amd-config.d.ts +3 -2
  221. package/dist/webpack/configs/amd-config.d.ts.map +1 -1
  222. package/dist/webpack/configs/amd-config.js.map +1 -1
  223. package/dist/webpack/configs/cache-config.d.ts +3 -2
  224. package/dist/webpack/configs/cache-config.d.ts.map +1 -1
  225. package/dist/webpack/configs/cache-config.js +1 -1
  226. package/dist/webpack/configs/cache-config.js.map +1 -1
  227. package/dist/webpack/configs/dev-server-config.d.ts +3 -2
  228. package/dist/webpack/configs/dev-server-config.d.ts.map +1 -1
  229. package/dist/webpack/configs/dev-server-config.js +1 -1
  230. package/dist/webpack/configs/dev-server-config.js.map +1 -1
  231. package/dist/webpack/configs/devtool-config.d.ts +3 -2
  232. package/dist/webpack/configs/devtool-config.d.ts.map +1 -1
  233. package/dist/webpack/configs/devtool-config.js +1 -1
  234. package/dist/webpack/configs/devtool-config.js.map +1 -1
  235. package/dist/webpack/configs/entry.config.d.ts +3 -2
  236. package/dist/webpack/configs/entry.config.d.ts.map +1 -1
  237. package/dist/webpack/configs/entry.config.js +6 -5
  238. package/dist/webpack/configs/entry.config.js.map +1 -1
  239. package/dist/webpack/configs/externals-config.d.ts +3 -2
  240. package/dist/webpack/configs/externals-config.d.ts.map +1 -1
  241. package/dist/webpack/configs/externals-config.js +4 -14
  242. package/dist/webpack/configs/externals-config.js.map +1 -1
  243. package/dist/webpack/configs/index.d.ts +0 -1
  244. package/dist/webpack/configs/index.d.ts.map +1 -1
  245. package/dist/webpack/configs/index.js.map +1 -1
  246. package/dist/webpack/configs/loaders/css-loader.d.ts +2 -2
  247. package/dist/webpack/configs/loaders/css-loader.d.ts.map +1 -1
  248. package/dist/webpack/configs/loaders/css-loader.js +2 -1
  249. package/dist/webpack/configs/loaders/css-loader.js.map +1 -1
  250. package/dist/webpack/configs/loaders/style-loader.d.ts +2 -2
  251. package/dist/webpack/configs/loaders/style-loader.d.ts.map +1 -1
  252. package/dist/webpack/configs/loaders/style-loader.js +4 -1
  253. package/dist/webpack/configs/loaders/style-loader.js.map +1 -1
  254. package/dist/webpack/configs/module-config.d.ts +3 -2
  255. package/dist/webpack/configs/module-config.d.ts.map +1 -1
  256. package/dist/webpack/configs/module-config.js.map +1 -1
  257. package/dist/webpack/configs/optimization-config.d.ts +3 -2
  258. package/dist/webpack/configs/optimization-config.d.ts.map +1 -1
  259. package/dist/webpack/configs/optimization-config.js +10 -7
  260. package/dist/webpack/configs/optimization-config.js.map +1 -1
  261. package/dist/webpack/configs/output-config.d.ts +3 -2
  262. package/dist/webpack/configs/output-config.d.ts.map +1 -1
  263. package/dist/webpack/configs/output-config.js +15 -24
  264. package/dist/webpack/configs/output-config.js.map +1 -1
  265. package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts +3 -8
  266. package/dist/webpack/configs/plugins/assets-manifest-plugin.d.ts.map +1 -1
  267. package/dist/webpack/configs/plugins/assets-manifest-plugin.js +10 -47
  268. package/dist/webpack/configs/plugins/assets-manifest-plugin.js.map +1 -1
  269. package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts +3 -2
  270. package/dist/webpack/configs/plugins/bundle-analyser-plugin.d.ts.map +1 -1
  271. package/dist/webpack/configs/plugins/bundle-analyser-plugin.js +6 -6
  272. package/dist/webpack/configs/plugins/bundle-analyser-plugin.js.map +1 -1
  273. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts +3 -2
  274. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.d.ts.map +1 -1
  275. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js +4 -13
  276. package/dist/webpack/configs/plugins/define-exposed-dependencies-plugin.js.map +1 -1
  277. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.d.ts +3 -2
  278. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.d.ts.map +1 -1
  279. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.js +4 -12
  280. package/dist/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.js.map +1 -1
  281. package/dist/webpack/configs/plugins/define-web-component-name-plugin.d.ts +3 -2
  282. package/dist/webpack/configs/plugins/define-web-component-name-plugin.d.ts.map +1 -1
  283. package/dist/webpack/configs/plugins/define-web-component-name-plugin.js +4 -6
  284. package/dist/webpack/configs/plugins/define-web-component-name-plugin.js.map +1 -1
  285. package/dist/webpack/configs/plugins/filter-warnings-plugin.d.ts +3 -2
  286. package/dist/webpack/configs/plugins/filter-warnings-plugin.d.ts.map +1 -1
  287. package/dist/webpack/configs/plugins/filter-warnings-plugin.js +2 -2
  288. package/dist/webpack/configs/plugins/filter-warnings-plugin.js.map +1 -1
  289. package/dist/webpack/configs/plugins/html-plugin.d.ts +3 -2
  290. package/dist/webpack/configs/plugins/html-plugin.d.ts.map +1 -1
  291. package/dist/webpack/configs/plugins/html-plugin.js +5 -2
  292. package/dist/webpack/configs/plugins/html-plugin.js.map +1 -1
  293. package/dist/webpack/configs/plugins/html-tags-plugin.d.ts +3 -2
  294. package/dist/webpack/configs/plugins/html-tags-plugin.d.ts.map +1 -1
  295. package/dist/webpack/configs/plugins/html-tags-plugin.js +8 -19
  296. package/dist/webpack/configs/plugins/html-tags-plugin.js.map +1 -1
  297. package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.js +1 -1
  298. package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.js.map +1 -1
  299. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts +17 -3
  300. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.d.ts.map +1 -1
  301. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js +45 -6
  302. package/dist/webpack/configs/plugins/ignore-plugin/ignore-plugin.js.map +1 -1
  303. package/dist/webpack/configs/plugins/mini-css-extract-plugin.d.ts +3 -2
  304. package/dist/webpack/configs/plugins/mini-css-extract-plugin.d.ts.map +1 -1
  305. package/dist/webpack/configs/plugins/mini-css-extract-plugin.js +4 -2
  306. package/dist/webpack/configs/plugins/mini-css-extract-plugin.js.map +1 -1
  307. package/dist/webpack/configs/plugins/moment-locales-plugin.d.ts +3 -2
  308. package/dist/webpack/configs/plugins/moment-locales-plugin.d.ts.map +1 -1
  309. package/dist/webpack/configs/plugins/moment-locales-plugin.js.map +1 -1
  310. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.d.ts +3 -2
  311. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.d.ts.map +1 -1
  312. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.js +1 -1
  313. package/dist/webpack/configs/plugins/remove-empty-scripts-plugin.js.map +1 -1
  314. package/dist/webpack/configs/plugins/virtual-modules-plugin.d.ts +3 -3
  315. package/dist/webpack/configs/plugins/virtual-modules-plugin.d.ts.map +1 -1
  316. package/dist/webpack/configs/plugins/virtual-modules-plugin.js +13 -56
  317. package/dist/webpack/configs/plugins/virtual-modules-plugin.js.map +1 -1
  318. package/dist/webpack/configs/plugins/watch-run-plugin.d.ts +3 -2
  319. package/dist/webpack/configs/plugins/watch-run-plugin.d.ts.map +1 -1
  320. package/dist/webpack/configs/plugins/watch-run-plugin.js.map +1 -1
  321. package/dist/webpack/configs/plugins-config.d.ts +3 -2
  322. package/dist/webpack/configs/plugins-config.d.ts.map +1 -1
  323. package/dist/webpack/configs/plugins-config.js.map +1 -1
  324. package/dist/webpack/configs/resolve-config.d.ts +3 -2
  325. package/dist/webpack/configs/resolve-config.d.ts.map +1 -1
  326. package/dist/webpack/configs/resolve-config.js.map +1 -1
  327. package/dist/webpack/configs/rules/css-rules.d.ts +2 -2
  328. package/dist/webpack/configs/rules/css-rules.d.ts.map +1 -1
  329. package/dist/webpack/configs/rules/css-rules.js +2 -1
  330. package/dist/webpack/configs/rules/css-rules.js.map +1 -1
  331. package/dist/webpack/configs/rules/font-rules.d.ts +2 -2
  332. package/dist/webpack/configs/rules/font-rules.d.ts.map +1 -1
  333. package/dist/webpack/configs/rules/font-rules.js.map +1 -1
  334. package/dist/webpack/configs/rules/image-rules.d.ts +2 -2
  335. package/dist/webpack/configs/rules/image-rules.d.ts.map +1 -1
  336. package/dist/webpack/configs/rules/image-rules.js.map +1 -1
  337. package/dist/webpack/configs/rules/js-rules.d.ts +2 -2
  338. package/dist/webpack/configs/rules/js-rules.d.ts.map +1 -1
  339. package/dist/webpack/configs/rules/js-rules.js +3 -1
  340. package/dist/webpack/configs/rules/js-rules.js.map +1 -1
  341. package/dist/webpack/configs/rules/less-rules.d.ts +2 -2
  342. package/dist/webpack/configs/rules/less-rules.d.ts.map +1 -1
  343. package/dist/webpack/configs/rules/less-rules.js.map +1 -1
  344. package/dist/webpack/configs/rules/scss-rules.d.ts +2 -2
  345. package/dist/webpack/configs/rules/scss-rules.d.ts.map +1 -1
  346. package/dist/webpack/configs/rules/scss-rules.js.map +1 -1
  347. package/dist/webpack/configs/rules/svg-rules.d.ts +2 -2
  348. package/dist/webpack/configs/rules/svg-rules.d.ts.map +1 -1
  349. package/dist/webpack/configs/rules/svg-rules.js.map +1 -1
  350. package/dist/webpack/configs/rules-config.d.ts +3 -2
  351. package/dist/webpack/configs/rules-config.d.ts.map +1 -1
  352. package/dist/webpack/configs/rules-config.js +2 -2
  353. package/dist/webpack/configs/rules-config.js.map +1 -1
  354. package/dist/webpack/configs/stats-config.d.ts +3 -2
  355. package/dist/webpack/configs/stats-config.d.ts.map +1 -1
  356. package/dist/webpack/configs/stats-config.js.map +1 -1
  357. package/dist/webpack/configs/watch-options-config.d.ts +2 -2
  358. package/dist/webpack/configs/watch-options-config.d.ts.map +1 -1
  359. package/dist/webpack/configs/watch-options-config.js +2 -2
  360. package/dist/webpack/configs/watch-options-config.js.map +1 -1
  361. package/dist/webpack/create-webpack-config.d.ts +10 -0
  362. package/dist/webpack/create-webpack-config.d.ts.map +1 -1
  363. package/dist/webpack/create-webpack-config.js +109 -41
  364. package/dist/webpack/create-webpack-config.js.map +1 -1
  365. package/dist/webpack/types.d.ts +4 -11
  366. package/dist/webpack/types.d.ts.map +1 -1
  367. package/dist/webpack/utils/index.d.ts +0 -1
  368. package/dist/webpack/utils/index.d.ts.map +1 -1
  369. package/dist/webpack/utils/index.js +0 -1
  370. package/dist/webpack/utils/index.js.map +1 -1
  371. package/package.json +13 -10
  372. package/patches/vite-plugin-css-injected-by-js+3.5.2.patch +63 -0
  373. package/src/cli/commands/__tests__/mfe-generate-metadata.test.ts +3 -4
  374. package/src/cli/commands/build.ts +7 -2
  375. package/src/cli/commands/bundle-vite.ts +112 -0
  376. package/src/cli/commands/get-command.ts +2 -0
  377. package/src/cli/commands/mfe-check.ts +1 -2
  378. package/src/cli/commands/mfe-generate-metadata.ts +1 -1
  379. package/src/cli/commands/mfe-package-publish.ts +1 -1
  380. package/src/cli/commands/start.ts +5 -2
  381. package/src/cli/utils/__tests__/bundle.test.ts +19 -10
  382. package/src/cli/utils/bundle.ts +20 -101
  383. package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/check-resource.test.ts +18 -5
  384. package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/check-resource.ts +4 -4
  385. package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/get-package-json.ts +2 -2
  386. package/src/core/check-resource/index.ts +1 -0
  387. package/src/core/context.ts +65 -0
  388. package/src/core/defines/exposed-dependencies.ts +21 -0
  389. package/src/core/defines/exposed-instance-dependencies.ts +19 -0
  390. package/src/core/defines/index.ts +3 -0
  391. package/src/core/defines/web-component-name.ts +15 -0
  392. package/src/core/externals.ts +23 -0
  393. package/src/core/get-exposed-dependencies-entry-points.ts +59 -0
  394. package/src/core/index.ts +8 -0
  395. package/src/core/types.ts +59 -0
  396. package/src/{webpack/configs → core}/utils/__tests__/build-metadata.test.ts +2 -2
  397. package/src/{webpack/configs → core}/utils/__tests__/generate-metadata.test.ts +27 -13
  398. package/src/{webpack/configs → core}/utils/build-metadata.ts +1 -1
  399. package/src/{webpack/configs → core}/utils/generate-metadata.ts +7 -6
  400. package/src/core/utils/get-bundle-type.ts +20 -0
  401. package/src/{webpack/configs → core}/utils/get-launchdarkly-sdk-version.ts +1 -1
  402. package/src/core/utils/get-output-path.ts +18 -0
  403. package/src/{webpack/configs → core}/utils/get-web-components-version.ts +1 -1
  404. package/src/core/utils/index.ts +8 -0
  405. package/src/core/virtual-modules.ts +76 -0
  406. package/src/index.ts +1 -0
  407. package/src/storybook-config/__tests__/webpack-final.test.ts +5 -2
  408. package/src/storybook-config/webpack-final.ts +24 -10
  409. package/src/utils/__tests__/get-configuration.test.ts +99 -1
  410. package/src/utils/__tests__/get-package-data.test.ts +35 -1
  411. package/src/utils/get-configuration.ts +92 -1
  412. package/src/utils/get-package-data.ts +3 -1
  413. package/src/vite/__tests__/define-config.test.ts +13 -0
  414. package/src/vite/__tests__/load-config-file.test.ts +115 -0
  415. package/src/vite/__tests__/merge-config.test.ts +173 -0
  416. package/src/vite/base-config.ts +70 -0
  417. package/src/vite/build-shared-deps.ts +320 -0
  418. package/src/vite/create-vite-config.ts +50 -0
  419. package/src/vite/define-config.ts +20 -0
  420. package/src/vite/index.html +29 -0
  421. package/src/vite/load-config-file.ts +54 -0
  422. package/src/vite/merge-config.ts +93 -0
  423. package/src/vite/plugins/css-injector-plugin.ts +85 -0
  424. package/src/vite/plugins/dev-server-routing-plugin.ts +89 -0
  425. package/src/vite/plugins/externals-plugin.ts +27 -0
  426. package/src/vite/plugins/html-plugin.ts +65 -0
  427. package/src/vite/plugins/ignore-modules-plugin.ts +22 -0
  428. package/src/vite/plugins/index.ts +9 -0
  429. package/src/vite/plugins/metadata-plugin.ts +78 -0
  430. package/src/vite/plugins/style-urls-plugin.ts +34 -0
  431. package/src/vite/plugins/svgr-plugin.ts +11 -0
  432. package/src/vite/plugins/virtual-modules-plugin.ts +74 -0
  433. package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +2 -2
  434. package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +11 -11
  435. package/src/webpack/__tests__/create-webpack-config.test.ts +3 -2
  436. package/src/webpack/configs/amd-config.ts +3 -2
  437. package/src/webpack/configs/cache-config.ts +4 -3
  438. package/src/webpack/configs/dev-server-config.ts +8 -3
  439. package/src/webpack/configs/devtool-config.ts +4 -3
  440. package/src/webpack/configs/entry.config.ts +8 -7
  441. package/src/webpack/configs/externals-config.ts +5 -21
  442. package/src/webpack/configs/index.ts +0 -1
  443. package/src/webpack/configs/loaders/css-loader.ts +3 -2
  444. package/src/webpack/configs/loaders/style-loader.ts +5 -5
  445. package/src/webpack/configs/module-config.ts +3 -2
  446. package/src/webpack/configs/optimization-config.ts +16 -11
  447. package/src/webpack/configs/output-config.ts +16 -22
  448. package/src/webpack/configs/plugins/assets-manifest-plugin.ts +9 -36
  449. package/src/webpack/configs/plugins/bundle-analyser-plugin.ts +8 -8
  450. package/src/webpack/configs/plugins/define-exposed-dependencies-plugin.ts +7 -15
  451. package/src/webpack/configs/plugins/define-exposed-instance-dependencies-plugin.ts +7 -13
  452. package/src/webpack/configs/plugins/define-web-component-name-plugin.ts +7 -8
  453. package/src/webpack/configs/plugins/filter-warnings-plugin.ts +4 -3
  454. package/src/webpack/configs/plugins/html-plugin.ts +7 -6
  455. package/src/webpack/configs/plugins/html-tags-plugin.ts +7 -16
  456. package/src/webpack/configs/plugins/ignore-plugin/empty-module.js +1 -0
  457. package/src/webpack/configs/plugins/ignore-plugin/ignore-plugin.ts +48 -6
  458. package/src/webpack/configs/plugins/mini-css-extract-plugin.ts +10 -5
  459. package/src/webpack/configs/plugins/moment-locales-plugin.ts +3 -2
  460. package/src/webpack/configs/plugins/remove-empty-scripts-plugin.ts +4 -3
  461. package/src/webpack/configs/plugins/virtual-modules-plugin.ts +13 -65
  462. package/src/webpack/configs/plugins/watch-run-plugin.ts +3 -2
  463. package/src/webpack/configs/plugins-config.ts +3 -2
  464. package/src/webpack/configs/resolve-config.ts +3 -2
  465. package/src/webpack/configs/rules/css-rules.ts +4 -3
  466. package/src/webpack/configs/rules/font-rules.ts +2 -2
  467. package/src/webpack/configs/rules/image-rules.ts +2 -2
  468. package/src/webpack/configs/rules/js-rules.ts +4 -2
  469. package/src/webpack/configs/rules/less-rules.ts +2 -2
  470. package/src/webpack/configs/rules/scss-rules.ts +2 -2
  471. package/src/webpack/configs/rules/svg-rules.ts +2 -2
  472. package/src/webpack/configs/rules-config.ts +9 -5
  473. package/src/webpack/configs/stats-config.ts +3 -2
  474. package/src/webpack/configs/watch-options-config.ts +3 -3
  475. package/src/webpack/create-webpack-config.ts +88 -43
  476. package/src/webpack/types.ts +7 -11
  477. package/src/webpack/utils/index.ts +0 -1
  478. package/dist/webpack/configs/plugins/ignore-plugin/check-resource.d.ts +0 -3
  479. package/dist/webpack/configs/plugins/ignore-plugin/check-resource.d.ts.map +0 -1
  480. package/dist/webpack/configs/plugins/ignore-plugin/get-package-json.d.ts.map +0 -1
  481. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-peer-dependency.d.ts.map +0 -1
  482. package/dist/webpack/configs/plugins/ignore-plugin/is-optional-react-dom-peer-dependency.d.ts.map +0 -1
  483. package/dist/webpack/configs/types.d.ts +0 -35
  484. package/dist/webpack/configs/types.d.ts.map +0 -1
  485. package/dist/webpack/configs/utils/build-metadata.d.ts.map +0 -1
  486. package/dist/webpack/configs/utils/generate-metadata.d.ts +0 -3
  487. package/dist/webpack/configs/utils/generate-metadata.d.ts.map +0 -1
  488. package/dist/webpack/configs/utils/get-bundle-type.d.ts +0 -3
  489. package/dist/webpack/configs/utils/get-bundle-type.d.ts.map +0 -1
  490. package/dist/webpack/configs/utils/get-exposed-dependencies.d.ts.map +0 -1
  491. package/dist/webpack/configs/utils/get-launchdarkly-sdk-version.d.ts.map +0 -1
  492. package/dist/webpack/configs/utils/get-web-components-version.d.ts.map +0 -1
  493. package/dist/webpack/configs/utils/index.d.ts +0 -4
  494. package/dist/webpack/configs/utils/index.d.ts.map +0 -1
  495. package/src/webpack/configs/types.ts +0 -38
  496. package/src/webpack/configs/utils/get-bundle-type.ts +0 -22
  497. package/src/webpack/configs/utils/index.ts +0 -3
  498. /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/get-package-json.d.ts +0 -0
  499. /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-peer-dependency.d.ts +0 -0
  500. /package/dist/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-react-dom-peer-dependency.d.ts +0 -0
  501. /package/dist/{webpack/configs → core}/utils/build-metadata.d.ts +0 -0
  502. /package/dist/{webpack/configs → core}/utils/get-exposed-dependencies.d.ts +0 -0
  503. /package/dist/{webpack/configs → core}/utils/get-launchdarkly-sdk-version.d.ts +0 -0
  504. /package/dist/{webpack/configs → core}/utils/get-web-components-version.d.ts +0 -0
  505. /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/get-package-json.test.ts +0 -0
  506. /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/is-optional-peer-dependency.test.ts +0 -0
  507. /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/__tests__/is-optional-react-dom-peer-dependency.test.ts +0 -0
  508. /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-peer-dependency.ts +0 -0
  509. /package/src/{webpack/configs/plugins/ignore-plugin → core/check-resource}/is-optional-react-dom-peer-dependency.ts +0 -0
  510. /package/src/{webpack/configs → core}/utils/__tests__/get-exposed-dependencies.test.ts +0 -0
  511. /package/src/{webpack/configs → core}/utils/__tests__/get-launchdarkly-sdk-version.test.ts +0 -0
  512. /package/src/{webpack/configs → core}/utils/__tests__/get-web-components-version.test.ts +0 -0
  513. /package/src/{webpack/configs → core}/utils/get-exposed-dependencies.ts +0 -0
  514. /package/src/{webpack → core}/utils/stringify-config.ts +0 -0
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "createBaseConfig", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return createBaseConfig;
9
+ }
10
+ });
11
+ const _core = require("../core");
12
+ function importMetaRemap(...definitions) {
13
+ const result = {};
14
+ definitions.filter((definition)=>definition !== undefined).forEach((definition)=>Object.keys(definition).forEach((item)=>{
15
+ result[`import.meta.env.${item}`] = definition[item];
16
+ }));
17
+ return result;
18
+ }
19
+ function createBaseConfig(context) {
20
+ var _getBundleType;
21
+ const { isProduction } = context.build;
22
+ const { isWebComponent } = context.package;
23
+ return {
24
+ cacheDir: `node_modules/.vite/${(_getBundleType = (0, _core.getBundleType)(context)) !== null && _getBundleType !== void 0 ? _getBundleType : 'host'}`,
25
+ server: {
26
+ // TODO: need default port for MFE?
27
+ port: isWebComponent ? 8888 : 8080,
28
+ warmup: {
29
+ /*
30
+ * TODO: dist duplication/use destination
31
+ * Pre-warms compiled files to avoid multiple page reloads at dev session start
32
+ */ clientFiles: [
33
+ 'dist/**/*.js'
34
+ ]
35
+ }
36
+ },
37
+ mode: isProduction ? 'production' : 'development',
38
+ configFile: false,
39
+ oxc: {
40
+ legalComments: 'none'
41
+ },
42
+ base: './',
43
+ build: {
44
+ outDir: (0, _core.getOutputPath)(context),
45
+ // Preserves shared deps in dist/bundle/shared/ when host rebuilds into dist/bundle/
46
+ emptyOutDir: false,
47
+ sourcemap: true,
48
+ commonjsOptions: {
49
+ include: [
50
+ // TODO: move to config override
51
+ /startup-utils/,
52
+ /\/node_modules\//
53
+ ]
54
+ }
55
+ },
56
+ define: importMetaRemap((0, _core.defineExposedDependencies)(context), (0, _core.defineExposedInstanceDependencies)(context), (0, _core.defineWebComponentName)(context)),
57
+ optimizeDeps: {
58
+ include: [
59
+ '@servicetitan/startup-utils'
60
+ ]
61
+ }
62
+ };
63
+ }
64
+
65
+ //# sourceMappingURL=base-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/vite/base-config.ts"],"sourcesContent":["import type { InlineConfig } from 'vite';\nimport {\n BuildContext,\n defineExposedDependencies,\n defineExposedInstanceDependencies,\n defineWebComponentName,\n getBundleType,\n getOutputPath,\n} from '../core';\n\nfunction importMetaRemap(\n ...definitions: (Record<string, string> | undefined)[]\n): Record<string, string> {\n const result: Record<string, string> = {};\n\n definitions\n .filter(definition => definition !== undefined)\n .forEach(definition =>\n Object.keys(definition).forEach(item => {\n result[`import.meta.env.${item}`] = definition[item];\n })\n );\n\n return result;\n}\n\nexport function createBaseConfig(context: BuildContext): InlineConfig {\n const { isProduction } = context.build;\n const { isWebComponent } = context.package;\n\n return {\n cacheDir: `node_modules/.vite/${getBundleType(context) ?? 'host'}`,\n server: {\n // TODO: need default port for MFE?\n port: isWebComponent ? 8888 : 8080,\n warmup: {\n /*\n * TODO: dist duplication/use destination\n * Pre-warms compiled files to avoid multiple page reloads at dev session start\n */\n clientFiles: ['dist/**/*.js'],\n },\n },\n mode: isProduction ? 'production' : 'development',\n configFile: false,\n oxc: { legalComments: 'none' },\n base: './',\n build: {\n outDir: getOutputPath(context),\n // Preserves shared deps in dist/bundle/shared/ when host rebuilds into dist/bundle/\n emptyOutDir: false,\n sourcemap: true,\n commonjsOptions: {\n include: [\n // TODO: move to config override\n /startup-utils/,\n /\\/node_modules\\//,\n ],\n },\n },\n define: importMetaRemap(\n defineExposedDependencies(context),\n defineExposedInstanceDependencies(context),\n defineWebComponentName(context)\n ),\n optimizeDeps: {\n include: ['@servicetitan/startup-utils'],\n },\n };\n}\n"],"names":["createBaseConfig","importMetaRemap","definitions","result","filter","definition","undefined","forEach","Object","keys","item","context","getBundleType","isProduction","build","isWebComponent","package","cacheDir","server","port","warmup","clientFiles","mode","configFile","oxc","legalComments","base","outDir","getOutputPath","emptyOutDir","sourcemap","commonjsOptions","include","define","defineExposedDependencies","defineExposedInstanceDependencies","defineWebComponentName","optimizeDeps"],"mappings":";;;;+BA0BgBA;;;eAAAA;;;sBAlBT;AAEP,SAASC,gBACL,GAAGC,WAAmD;IAEtD,MAAMC,SAAiC,CAAC;IAExCD,YACKE,MAAM,CAACC,CAAAA,aAAcA,eAAeC,WACpCC,OAAO,CAACF,CAAAA,aACLG,OAAOC,IAAI,CAACJ,YAAYE,OAAO,CAACG,CAAAA;YAC5BP,MAAM,CAAC,CAAC,gBAAgB,EAAEO,MAAM,CAAC,GAAGL,UAAU,CAACK,KAAK;QACxD;IAGR,OAAOP;AACX;AAEO,SAASH,iBAAiBW,OAAqB;QAKdC;IAJpC,MAAM,EAAEC,YAAY,EAAE,GAAGF,QAAQG,KAAK;IACtC,MAAM,EAAEC,cAAc,EAAE,GAAGJ,QAAQK,OAAO;IAE1C,OAAO;QACHC,UAAU,CAAC,mBAAmB,GAAEL,iBAAAA,IAAAA,mBAAa,EAACD,sBAAdC,4BAAAA,iBAA0B,QAAQ;QAClEM,QAAQ;YACJ,mCAAmC;YACnCC,MAAMJ,iBAAiB,OAAO;YAC9BK,QAAQ;gBACJ;;;iBAGC,GACDC,aAAa;oBAAC;iBAAe;YACjC;QACJ;QACAC,MAAMT,eAAe,eAAe;QACpCU,YAAY;QACZC,KAAK;YAAEC,eAAe;QAAO;QAC7BC,MAAM;QACNZ,OAAO;YACHa,QAAQC,IAAAA,mBAAa,EAACjB;YACtB,oFAAoF;YACpFkB,aAAa;YACbC,WAAW;YACXC,iBAAiB;gBACbC,SAAS;oBACL,gCAAgC;oBAChC;oBACA;iBACH;YACL;QACJ;QACAC,QAAQhC,gBACJiC,IAAAA,+BAAyB,EAACvB,UAC1BwB,IAAAA,uCAAiC,EAACxB,UAClCyB,IAAAA,4BAAsB,EAACzB;QAE3B0B,cAAc;YACVL,SAAS;gBAAC;aAA8B;QAC5C;IACJ;AACJ"}
@@ -0,0 +1,3 @@
1
+ import { CreateBuildContextInput } from '../core';
2
+ export declare function buildSharedDeps(input: CreateBuildContextInput): Promise<void>;
3
+ //# sourceMappingURL=build-shared-deps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-shared-deps.d.ts","sourceRoot":"","sources":["../../src/vite/build-shared-deps.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,uBAAuB,EAAiB,MAAM,SAAS,CAAC;AAkRrF,wBAAsB,eAAe,CAAC,KAAK,EAAE,uBAAuB,iBAyCnE"}
@@ -0,0 +1,310 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "buildSharedDeps", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return buildSharedDeps;
9
+ }
10
+ });
11
+ const _crypto = /*#__PURE__*/ _interop_require_default(require("crypto"));
12
+ const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
13
+ const _path = /*#__PURE__*/ _interop_require_default(require("path"));
14
+ const _vite = require("vite");
15
+ const _core = require("../core");
16
+ const _createviteconfig = require("./create-vite-config");
17
+ function _interop_require_default(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ function getShortName(dep) {
23
+ return dep.split('/').pop();
24
+ }
25
+ function contentHash(content) {
26
+ return _crypto.default.createHash('md5').update(content).digest('hex').slice(0, 20);
27
+ }
28
+ function bundleName(name, ext, content) {
29
+ return content ? `${name}.${contentHash(content)}.bundle${ext}` : `${name}.bundle${ext}`;
30
+ }
31
+ const CSS_VIRTUAL_PREFIX = '\0shared-deps-css:';
32
+ function sharedDepsPlugin({ dependencies, css, metadataDir }) {
33
+ const depNames = Object.keys(dependencies);
34
+ const depSet = new Set(depNames);
35
+ const cssEntries = css !== null && css !== void 0 ? css : {};
36
+ const depShortNames = new Set(depNames.map(getShortName));
37
+ const cssInputNames = new Map();
38
+ for (const name of Object.keys(cssEntries)){
39
+ cssInputNames.set(depShortNames.has(name) ? `${name}-css` : name, name);
40
+ }
41
+ let isProduction = false;
42
+ return {
43
+ name: 'shared-deps',
44
+ enforce: 'pre',
45
+ config (_, env) {
46
+ isProduction = env.mode === 'production';
47
+ const input = {};
48
+ for (const dep of depNames){
49
+ input[getShortName(dep)] = dep;
50
+ }
51
+ for (const [inputName, originalName] of cssInputNames){
52
+ input[inputName] = CSS_VIRTUAL_PREFIX + originalName;
53
+ }
54
+ return {
55
+ // Relative base so CSS font URLs resolve from the CSS file's directory, not site root
56
+ base: './',
57
+ // Must match host build mode — mismatch causes react-dom/client usingClientEntryPoint errors
58
+ define: {
59
+ 'process.env.NODE_ENV': JSON.stringify(env.mode)
60
+ },
61
+ build: {
62
+ commonjsOptions: {
63
+ include: [
64
+ /\/node_modules\//
65
+ ],
66
+ transformMixedEsModules: true
67
+ },
68
+ rollupOptions: {
69
+ // Vite defaults to false which strips all CJS exports from entry chunks
70
+ preserveEntrySignatures: 'exports-only',
71
+ input,
72
+ output: {
73
+ /*
74
+ * CJS format + named exports: the factory system wraps each entry's
75
+ * code in function(module, exports, require) { ... }
76
+ */ format: 'cjs',
77
+ exports: 'named',
78
+ entryFileNames: '[name].cjs.js',
79
+ chunkFileNames: '_[name]-[hash].js',
80
+ assetFileNames: (assetInfo)=>{
81
+ var _ref;
82
+ var _assetInfo_names_, _assetInfo_names;
83
+ const ext = (_ref = (_assetInfo_names = assetInfo.names) === null || _assetInfo_names === void 0 ? void 0 : (_assetInfo_names_ = _assetInfo_names[0]) === null || _assetInfo_names_ === void 0 ? void 0 : _assetInfo_names_.split('.').pop()) !== null && _ref !== void 0 ? _ref : '';
84
+ if (ext === 'css') {
85
+ return isProduction ? '[name].[hash].bundle[extname]' : '[name].bundle[extname]';
86
+ }
87
+ return isProduction ? '[name].[hash][extname]' : '[name][extname]';
88
+ }
89
+ },
90
+ // Disabled: we don't know which exports MFEs will use at runtime
91
+ treeshake: false
92
+ }
93
+ }
94
+ };
95
+ },
96
+ resolveId (source, importer) {
97
+ if (source.startsWith(CSS_VIRTUAL_PREFIX)) {
98
+ return source;
99
+ }
100
+ if (!importer) {
101
+ return;
102
+ }
103
+ if (depSet.has(source)) {
104
+ return {
105
+ id: source,
106
+ external: true
107
+ };
108
+ }
109
+ if (!source.startsWith('.') && !source.startsWith('/')) {
110
+ try {
111
+ return require.resolve(source);
112
+ } catch (unused) {
113
+ return undefined;
114
+ }
115
+ }
116
+ },
117
+ load (id) {
118
+ if (!id.startsWith(CSS_VIRTUAL_PREFIX)) {
119
+ return;
120
+ }
121
+ const name = id.slice(CSS_VIRTUAL_PREFIX.length);
122
+ const imports = cssEntries[name];
123
+ if (!imports) {
124
+ return;
125
+ }
126
+ return imports.map((p)=>`import '${p}';`).join('\n');
127
+ },
128
+ generateBundle (_options, bundle) {
129
+ const factories = [];
130
+ const exposes = [];
131
+ for (const [fileName, chunk] of Object.entries(bundle)){
132
+ if (chunk.type !== 'chunk') {
133
+ continue;
134
+ }
135
+ if (!chunk.isEntry) {
136
+ factories.push(`'./${fileName}': function(module, exports, require) {\n${chunk.code}\n}`);
137
+ delete bundle[fileName];
138
+ }
139
+ }
140
+ for (const [dep, variable] of Object.entries(dependencies)){
141
+ const entryFileName = `${getShortName(dep)}.cjs.js`;
142
+ const chunk = bundle[entryFileName];
143
+ if ((chunk === null || chunk === void 0 ? void 0 : chunk.type) !== 'chunk') {
144
+ continue;
145
+ }
146
+ factories.push(`'${dep}': function(module, exports, require) {\n${chunk.code}\n}`);
147
+ exposes.push(`expose('${variable}', '${dep}');`);
148
+ delete bundle[entryFileName];
149
+ }
150
+ /*
151
+ * Rename CSS assets from collision-avoidance names back to original names
152
+ * (e.g. design-system-css → design-system). Rolldown's bundle proxy doesn't
153
+ * support delete or assignment, so we track renamed prefixes and filter them
154
+ * out when building the entrypoints list.
155
+ */ const renamedPrefixes = [];
156
+ for (const [inputName, originalName] of cssInputNames){
157
+ delete bundle[`${inputName}.cjs.js`];
158
+ if (inputName !== originalName) {
159
+ renamedPrefixes.push(inputName);
160
+ for (const [fileName, asset] of Object.entries(bundle)){
161
+ if (asset.type === 'asset' && fileName.startsWith(inputName)) {
162
+ this.emitFile({
163
+ type: 'asset',
164
+ fileName: fileName.replace(inputName, originalName),
165
+ source: asset.source
166
+ });
167
+ }
168
+ }
169
+ }
170
+ }
171
+ const code = assembleIIFE(factories, exposes);
172
+ const sharedFileName = bundleName('shared', '.js', isProduction ? code : undefined);
173
+ this.emitFile({
174
+ type: 'asset',
175
+ fileName: sharedFileName,
176
+ source: code
177
+ });
178
+ const cssFiles = Object.keys(bundle).filter((f)=>f.endsWith('.bundle.css')).filter((f)=>!renamedPrefixes.some((p)=>f.startsWith(p))).concat(renamedPrefixes.flatMap((p)=>Object.keys(bundle).filter((f)=>f.startsWith(p) && f.endsWith('.bundle.css')).map((f)=>f.replace(p, cssInputNames.get(p)))));
179
+ const entrypoints = {
180
+ css: cssFiles,
181
+ js: [
182
+ sharedFileName
183
+ ]
184
+ };
185
+ this.emitFile({
186
+ type: 'asset',
187
+ fileName: 'entrypoints.json',
188
+ source: JSON.stringify(entrypoints, null, 2)
189
+ });
190
+ },
191
+ writeBundle (options) {
192
+ var _options_dir;
193
+ if (!metadataDir) {
194
+ return;
195
+ }
196
+ const outDir = (_options_dir = options.dir) !== null && _options_dir !== void 0 ? _options_dir : '';
197
+ const metadata = {
198
+ entryPointsPath: _path.default.resolve(outDir, 'entrypoints.json')
199
+ };
200
+ if (!_fs.default.existsSync(metadataDir)) {
201
+ _fs.default.mkdirSync(metadataDir, {
202
+ recursive: true
203
+ });
204
+ }
205
+ _fs.default.writeFileSync(_path.default.join(metadataDir, 'exposed-dependencies-metadata.json'), JSON.stringify(metadata, null, 2));
206
+ }
207
+ };
208
+ }
209
+ function assembleIIFE(factories, exposes) {
210
+ return `(function() {
211
+ var STORAGE_KEY = Symbol.for('SERVICETITAN_EXPOSE_LOADER_STORAGE');
212
+ var g = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {};
213
+ if (g[STORAGE_KEY] === undefined) {
214
+ g[STORAGE_KEY] = Object.assign(Object.create(null), {
215
+ clear: function(scope) { delete this[scope]; }
216
+ });
217
+ }
218
+ var storage = g[STORAGE_KEY];
219
+
220
+ var modules = {
221
+ ${factories.join(',\n')}
222
+ };
223
+
224
+ function createScopedRequire(scope) {
225
+ var cache = storage[scope] = storage[scope] || Object.create(null);
226
+ function require(id) {
227
+ if (cache[id]) return cache[id].exports;
228
+ if (!modules[id]) throw new Error('Module not found: ' + id);
229
+ var module = cache[id] = { id: id, loaded: false, exports: {} };
230
+ modules[id](module, module.exports, require);
231
+ module.loaded = true;
232
+ var keys = Object.keys(module.exports);
233
+ if (module.exports.__esModule && keys.length === 1 && keys[0] === 'default') {
234
+ module.exports = module.exports.default;
235
+ }
236
+ return module.exports;
237
+ }
238
+ Object.setPrototypeOf(require, { resolve: function(id) { return id; } });
239
+ return require;
240
+ }
241
+
242
+ function expose(path, moduleId) {
243
+ var parts = path.split('.');
244
+ var obj = g;
245
+ for (var i = 0; i < parts.length - 1; i++) {
246
+ if (obj[parts[i]] === undefined) { obj[parts[i]] = Object.create(null); }
247
+ obj = obj[parts[i]];
248
+ }
249
+ obj[parts[parts.length - 1]] = new Proxy(
250
+ Object.assign(Object.create(null), { getStorage: function() { return storage; } }),
251
+ {
252
+ get: function(target, scope, receiver) {
253
+ if (scope === 'getStorage') return Reflect.get(target, scope, receiver);
254
+ return createScopedRequire(scope)(moduleId);
255
+ }
256
+ }
257
+ );
258
+ }
259
+
260
+ ${exposes.join('\n')}
261
+ })();
262
+ `;
263
+ }
264
+ async function buildSharedDeps(input) {
265
+ var _config_build;
266
+ // Get merged config to read custom outDir (parity with webpack)
267
+ const config = await (0, _createviteconfig.createViteConfig)(input);
268
+ const customOutDir = (_config_build = config.build) === null || _config_build === void 0 ? void 0 : _config_build.outDir;
269
+ const context = (0, _core.createBuildContext)({
270
+ ...input,
271
+ bundlerConfig: customOutDir ? {
272
+ emitExposedDependencies: {
273
+ output: {
274
+ path: customOutDir
275
+ }
276
+ }
277
+ } : undefined
278
+ });
279
+ const { destination, sharedDependencies } = context.package;
280
+ const outputDir = (0, _core.getOutputPath)(context);
281
+ const mode = context.build.isProduction ? 'production' : 'development';
282
+ const css = {};
283
+ if (sharedDependencies['@servicetitan/design-system']) {
284
+ css['design-system'] = [
285
+ '@servicetitan/tokens/core/tokens.css',
286
+ '@servicetitan/anvil-fonts/dist/css/anvil-fonts.css',
287
+ '@servicetitan/design-system/dist/system.min.css'
288
+ ];
289
+ }
290
+ await (0, _vite.build)({
291
+ configFile: false,
292
+ logLevel: 'warn',
293
+ oxc: {
294
+ legalComments: 'none'
295
+ },
296
+ mode,
297
+ plugins: [
298
+ sharedDepsPlugin({
299
+ dependencies: sharedDependencies,
300
+ css,
301
+ metadataDir: destination
302
+ })
303
+ ],
304
+ build: {
305
+ outDir: outputDir
306
+ }
307
+ });
308
+ }
309
+
310
+ //# sourceMappingURL=build-shared-deps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/vite/build-shared-deps.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport path from 'path';\nimport { build, Plugin } from 'vite';\nimport { createBuildContext, CreateBuildContextInput, getOutputPath } from '../core';\nimport { createViteConfig } from './create-vite-config';\n\nfunction getShortName(dep: string) {\n return dep.split('/').pop()!;\n}\n\nfunction contentHash(content: string) {\n return crypto.createHash('md5').update(content).digest('hex').slice(0, 20);\n}\n\nfunction bundleName(name: string, ext: string, content?: string) {\n return content ? `${name}.${contentHash(content)}.bundle${ext}` : `${name}.bundle${ext}`;\n}\n\ninterface SharedDepsPluginOptions {\n dependencies: Record<string, string>;\n css?: Record<string, string[]>;\n metadataDir?: string;\n}\n\nconst CSS_VIRTUAL_PREFIX = '\\0shared-deps-css:';\n\nfunction sharedDepsPlugin({ dependencies, css, metadataDir }: SharedDepsPluginOptions): Plugin {\n const depNames = Object.keys(dependencies);\n const depSet = new Set(depNames);\n const cssEntries = css ?? {};\n const depShortNames = new Set(depNames.map(getShortName));\n const cssInputNames = new Map<string, string>();\n for (const name of Object.keys(cssEntries)) {\n cssInputNames.set(depShortNames.has(name) ? `${name}-css` : name, name);\n }\n let isProduction = false;\n\n return {\n name: 'shared-deps',\n enforce: 'pre',\n\n config(_, env) {\n isProduction = env.mode === 'production';\n\n const input: Record<string, string> = {};\n for (const dep of depNames) {\n input[getShortName(dep)] = dep;\n }\n for (const [inputName, originalName] of cssInputNames) {\n input[inputName] = CSS_VIRTUAL_PREFIX + originalName;\n }\n\n return {\n // Relative base so CSS font URLs resolve from the CSS file's directory, not site root\n base: './',\n // Must match host build mode — mismatch causes react-dom/client usingClientEntryPoint errors\n define: {\n 'process.env.NODE_ENV': JSON.stringify(env.mode),\n },\n build: {\n commonjsOptions: {\n include: [/\\/node_modules\\//],\n transformMixedEsModules: true,\n },\n rollupOptions: {\n // Vite defaults to false which strips all CJS exports from entry chunks\n preserveEntrySignatures: 'exports-only',\n input,\n output: {\n /*\n * CJS format + named exports: the factory system wraps each entry's\n * code in function(module, exports, require) { ... }\n */\n format: 'cjs',\n exports: 'named',\n entryFileNames: '[name].cjs.js',\n chunkFileNames: '_[name]-[hash].js',\n assetFileNames: assetInfo => {\n const ext = assetInfo.names?.[0]?.split('.').pop() ?? '';\n if (ext === 'css') {\n return isProduction\n ? '[name].[hash].bundle[extname]'\n : '[name].bundle[extname]';\n }\n return isProduction ? '[name].[hash][extname]' : '[name][extname]';\n },\n },\n // Disabled: we don't know which exports MFEs will use at runtime\n treeshake: false,\n },\n },\n };\n },\n\n resolveId(source: string, importer: string | undefined) {\n if (source.startsWith(CSS_VIRTUAL_PREFIX)) {\n return source;\n }\n if (!importer) {\n return;\n }\n if (depSet.has(source)) {\n return { id: source, external: true };\n }\n if (!source.startsWith('.') && !source.startsWith('/')) {\n try {\n return require.resolve(source);\n } catch {\n return undefined;\n }\n }\n },\n\n load(id: string) {\n if (!id.startsWith(CSS_VIRTUAL_PREFIX)) {\n return;\n }\n const name = id.slice(CSS_VIRTUAL_PREFIX.length);\n const imports = cssEntries[name];\n if (!imports) {\n return;\n }\n return imports.map(p => `import '${p}';`).join('\\n');\n },\n\n generateBundle(_options, bundle) {\n const factories: string[] = [];\n const exposes: string[] = [];\n\n for (const [fileName, chunk] of Object.entries(bundle)) {\n if (chunk.type !== 'chunk') {\n continue;\n }\n if (!chunk.isEntry) {\n factories.push(\n `'./${fileName}': function(module, exports, require) {\\n${chunk.code}\\n}`\n );\n delete bundle[fileName];\n }\n }\n\n for (const [dep, variable] of Object.entries(dependencies)) {\n const entryFileName = `${getShortName(dep)}.cjs.js`;\n const chunk = bundle[entryFileName];\n if (chunk?.type !== 'chunk') {\n continue;\n }\n factories.push(`'${dep}': function(module, exports, require) {\\n${chunk.code}\\n}`);\n exposes.push(`expose('${variable}', '${dep}');`);\n delete bundle[entryFileName];\n }\n\n /*\n * Rename CSS assets from collision-avoidance names back to original names\n * (e.g. design-system-css → design-system). Rolldown's bundle proxy doesn't\n * support delete or assignment, so we track renamed prefixes and filter them\n * out when building the entrypoints list.\n */\n const renamedPrefixes: string[] = [];\n for (const [inputName, originalName] of cssInputNames) {\n delete bundle[`${inputName}.cjs.js`];\n if (inputName !== originalName) {\n renamedPrefixes.push(inputName);\n for (const [fileName, asset] of Object.entries(bundle)) {\n if (asset.type === 'asset' && fileName.startsWith(inputName)) {\n this.emitFile({\n type: 'asset',\n fileName: fileName.replace(inputName, originalName),\n source: asset.source,\n });\n }\n }\n }\n }\n\n const code = assembleIIFE(factories, exposes);\n const sharedFileName = bundleName('shared', '.js', isProduction ? code : undefined);\n\n this.emitFile({\n type: 'asset',\n fileName: sharedFileName,\n source: code,\n });\n\n const cssFiles = Object.keys(bundle)\n .filter(f => f.endsWith('.bundle.css'))\n .filter(f => !renamedPrefixes.some(p => f.startsWith(p)))\n .concat(\n renamedPrefixes.flatMap(p =>\n Object.keys(bundle)\n .filter(f => f.startsWith(p) && f.endsWith('.bundle.css'))\n .map(f => f.replace(p, cssInputNames.get(p)!))\n )\n );\n const entrypoints = { css: cssFiles, js: [sharedFileName] };\n this.emitFile({\n type: 'asset',\n fileName: 'entrypoints.json',\n source: JSON.stringify(entrypoints, null, 2),\n });\n },\n\n writeBundle(options) {\n if (!metadataDir) {\n return;\n }\n const outDir = options.dir ?? '';\n const metadata = {\n entryPointsPath: path.resolve(outDir, 'entrypoints.json'),\n };\n if (!fs.existsSync(metadataDir)) {\n fs.mkdirSync(metadataDir, { recursive: true });\n }\n fs.writeFileSync(\n path.join(metadataDir, 'exposed-dependencies-metadata.json'),\n JSON.stringify(metadata, null, 2)\n );\n },\n };\n}\n\nfunction assembleIIFE(factories: string[], exposes: string[]): string {\n return `(function() {\nvar STORAGE_KEY = Symbol.for('SERVICETITAN_EXPOSE_LOADER_STORAGE');\nvar g = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {};\nif (g[STORAGE_KEY] === undefined) {\n g[STORAGE_KEY] = Object.assign(Object.create(null), {\n clear: function(scope) { delete this[scope]; }\n });\n}\nvar storage = g[STORAGE_KEY];\n\nvar modules = {\n${factories.join(',\\n')}\n};\n\nfunction createScopedRequire(scope) {\n var cache = storage[scope] = storage[scope] || Object.create(null);\n function require(id) {\n if (cache[id]) return cache[id].exports;\n if (!modules[id]) throw new Error('Module not found: ' + id);\n var module = cache[id] = { id: id, loaded: false, exports: {} };\n modules[id](module, module.exports, require);\n module.loaded = true;\n var keys = Object.keys(module.exports);\n if (module.exports.__esModule && keys.length === 1 && keys[0] === 'default') {\n module.exports = module.exports.default;\n }\n return module.exports;\n }\n Object.setPrototypeOf(require, { resolve: function(id) { return id; } });\n return require;\n}\n\nfunction expose(path, moduleId) {\n var parts = path.split('.');\n var obj = g;\n for (var i = 0; i < parts.length - 1; i++) {\n if (obj[parts[i]] === undefined) { obj[parts[i]] = Object.create(null); }\n obj = obj[parts[i]];\n }\n obj[parts[parts.length - 1]] = new Proxy(\n Object.assign(Object.create(null), { getStorage: function() { return storage; } }),\n {\n get: function(target, scope, receiver) {\n if (scope === 'getStorage') return Reflect.get(target, scope, receiver);\n return createScopedRequire(scope)(moduleId);\n }\n }\n );\n}\n\n${exposes.join('\\n')}\n})();\n`;\n}\n\nexport async function buildSharedDeps(input: CreateBuildContextInput) {\n // Get merged config to read custom outDir (parity with webpack)\n const config = await createViteConfig(input);\n const customOutDir = config.build?.outDir;\n\n const context = createBuildContext({\n ...input,\n bundlerConfig: customOutDir\n ? { emitExposedDependencies: { output: { path: customOutDir } } }\n : undefined,\n });\n\n const { destination, sharedDependencies } = context.package;\n const outputDir = getOutputPath(context);\n const mode = context.build.isProduction ? 'production' : 'development';\n\n const css: Record<string, string[]> = {};\n if (sharedDependencies['@servicetitan/design-system']) {\n css['design-system'] = [\n '@servicetitan/tokens/core/tokens.css',\n '@servicetitan/anvil-fonts/dist/css/anvil-fonts.css',\n '@servicetitan/design-system/dist/system.min.css',\n ];\n }\n\n await build({\n configFile: false,\n logLevel: 'warn',\n oxc: { legalComments: 'none' },\n mode,\n plugins: [\n sharedDepsPlugin({\n dependencies: sharedDependencies,\n css,\n metadataDir: destination,\n }),\n ],\n build: {\n outDir: outputDir,\n },\n });\n}\n"],"names":["buildSharedDeps","getShortName","dep","split","pop","contentHash","content","crypto","createHash","update","digest","slice","bundleName","name","ext","CSS_VIRTUAL_PREFIX","sharedDepsPlugin","dependencies","css","metadataDir","depNames","Object","keys","depSet","Set","cssEntries","depShortNames","map","cssInputNames","Map","set","has","isProduction","enforce","config","_","env","mode","input","inputName","originalName","base","define","JSON","stringify","build","commonjsOptions","include","transformMixedEsModules","rollupOptions","preserveEntrySignatures","output","format","exports","entryFileNames","chunkFileNames","assetFileNames","assetInfo","names","treeshake","resolveId","source","importer","startsWith","id","external","require","resolve","undefined","load","length","imports","p","join","generateBundle","_options","bundle","factories","exposes","fileName","chunk","entries","type","isEntry","push","code","variable","entryFileName","renamedPrefixes","asset","emitFile","replace","assembleIIFE","sharedFileName","cssFiles","filter","f","endsWith","some","concat","flatMap","get","entrypoints","js","writeBundle","options","outDir","dir","metadata","entryPointsPath","path","fs","existsSync","mkdirSync","recursive","writeFileSync","createViteConfig","customOutDir","context","createBuildContext","bundlerConfig","emitExposedDependencies","destination","sharedDependencies","package","outputDir","getOutputPath","configFile","logLevel","oxc","legalComments","plugins"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { CreateBuildContextInput } from '../core';
2
+ export declare function createViteConfig(input: CreateBuildContextInput): Promise<import("vite").InlineConfig>;
3
+ //# sourceMappingURL=create-vite-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-vite-config.d.ts","sourceRoot":"","sources":["../../src/vite/create-vite-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,uBAAuB,EAAmB,MAAM,SAAS,CAAC;AAMvF,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,uBAAuB,wCA2CpE"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "createViteConfig", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return createViteConfig;
9
+ }
10
+ });
11
+ const _core = require("../core");
12
+ const _utils = require("../utils");
13
+ const _baseconfig = require("./base-config");
14
+ const _loadconfigfile = require("./load-config-file");
15
+ const _mergeconfig = require("./merge-config");
16
+ async function createViteConfig(input) {
17
+ const context = (0, _core.createBuildContext)(input);
18
+ const { isProduction } = context.build;
19
+ /*
20
+ * TODO: distinguish between apps in debugging (NOT SUPPORTED)
21
+ * TODO: look into request logging similar to webpack
22
+ * TODO: make it the Task
23
+ * TODO: consolidate shared configuration (add plugins depending on context)
24
+ * TODO: dist folder cleaning? MFE cleaning
25
+ * TODO: check full bundle bundles (number and names compared to wp)
26
+ * TODO: standalone MFE host needs to have anvil stylesheet? (only in dev?)
27
+ * TODO: vite's index.html in dist/src??
28
+ * TODO: urls to page resources are inconsistent. some are dist/bundle some are direct
29
+ * TODO: full bundle injected css uses absolute URL and doesn't seem cached?
30
+ * TODO: test ts config override
31
+ * TODO: rename bundle-package to bundle-webpack?
32
+ * REVIEWS: plugins especially style injection, loading config file, base config, shared deps, context files, weird config shortcuts like isCustomStyleRules, bundlerConfig in context
33
+ * TESTS: fix existing and add new, bff and token server
34
+ */ const pkgJsonConfig = (0, _utils.getViteConfiguration)();
35
+ const configFileExport = await (0, _loadconfigfile.loadConfigFile)('./', isProduction);
36
+ const fileConfig = typeof configFileExport === 'function' ? configFileExport(context) : configFileExport !== null && configFileExport !== void 0 ? configFileExport : {};
37
+ const baseConfig = (0, _baseconfig.createBaseConfig)(context);
38
+ const finalConfig = (0, _mergeconfig.mergeViteConfigs)(baseConfig, pkgJsonConfig, fileConfig, context);
39
+ /*
40
+ * Background dev servers (light/headless) must use a random port to avoid
41
+ * conflicting with the full bundle's user-configured port.
42
+ */ if (context.build.light || context.build.headless) {
43
+ finalConfig.server = {
44
+ ...finalConfig.server,
45
+ port: 0
46
+ };
47
+ }
48
+ /* istanbul ignore next: debug only */ _utils.log.debug('create-vite-config', ()=>(0, _core.stringifyConfig)(finalConfig));
49
+ return finalConfig;
50
+ }
51
+
52
+ //# sourceMappingURL=create-vite-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/vite/create-vite-config.ts"],"sourcesContent":["import { createBuildContext, CreateBuildContextInput, stringifyConfig } from '../core';\nimport { getViteConfiguration, log } from '../utils';\nimport { createBaseConfig } from './base-config';\nimport { loadConfigFile } from './load-config-file';\nimport { mergeViteConfigs } from './merge-config';\n\nexport async function createViteConfig(input: CreateBuildContextInput) {\n const context = createBuildContext(input);\n const { isProduction } = context.build;\n\n /*\n * TODO: distinguish between apps in debugging (NOT SUPPORTED)\n * TODO: look into request logging similar to webpack\n * TODO: make it the Task\n * TODO: consolidate shared configuration (add plugins depending on context)\n * TODO: dist folder cleaning? MFE cleaning\n * TODO: check full bundle bundles (number and names compared to wp)\n * TODO: standalone MFE host needs to have anvil stylesheet? (only in dev?)\n * TODO: vite's index.html in dist/src??\n * TODO: urls to page resources are inconsistent. some are dist/bundle some are direct\n * TODO: full bundle injected css uses absolute URL and doesn't seem cached?\n * TODO: test ts config override\n * TODO: rename bundle-package to bundle-webpack?\n * REVIEWS: plugins especially style injection, loading config file, base config, shared deps, context files, weird config shortcuts like isCustomStyleRules, bundlerConfig in context\n * TESTS: fix existing and add new, bff and token server\n */\n\n const pkgJsonConfig = getViteConfiguration();\n const configFileExport = await loadConfigFile('./', isProduction);\n const fileConfig =\n typeof configFileExport === 'function'\n ? configFileExport(context)\n : (configFileExport ?? {});\n\n const baseConfig = createBaseConfig(context);\n const finalConfig = mergeViteConfigs(baseConfig, pkgJsonConfig, fileConfig, context);\n\n /*\n * Background dev servers (light/headless) must use a random port to avoid\n * conflicting with the full bundle's user-configured port.\n */\n if (context.build.light || context.build.headless) {\n finalConfig.server = { ...finalConfig.server, port: 0 };\n }\n\n /* istanbul ignore next: debug only */\n log.debug('create-vite-config', () => stringifyConfig(finalConfig));\n\n return finalConfig;\n}\n"],"names":["createViteConfig","input","context","createBuildContext","isProduction","build","pkgJsonConfig","getViteConfiguration","configFileExport","loadConfigFile","fileConfig","baseConfig","createBaseConfig","finalConfig","mergeViteConfigs","light","headless","server","port","log","debug","stringifyConfig"],"mappings":";;;;+BAMsBA;;;eAAAA;;;sBANuD;uBACnC;4BACT;gCACF;6BACE;AAE1B,eAAeA,iBAAiBC,KAA8B;IACjE,MAAMC,UAAUC,IAAAA,wBAAkB,EAACF;IACnC,MAAM,EAAEG,YAAY,EAAE,GAAGF,QAAQG,KAAK;IAEtC;;;;;;;;;;;;;;;KAeC,GAED,MAAMC,gBAAgBC,IAAAA,2BAAoB;IAC1C,MAAMC,mBAAmB,MAAMC,IAAAA,8BAAc,EAAC,MAAML;IACpD,MAAMM,aACF,OAAOF,qBAAqB,aACtBA,iBAAiBN,WAChBM,6BAAAA,8BAAAA,mBAAoB,CAAC;IAEhC,MAAMG,aAAaC,IAAAA,4BAAgB,EAACV;IACpC,MAAMW,cAAcC,IAAAA,6BAAgB,EAACH,YAAYL,eAAeI,YAAYR;IAE5E;;;KAGC,GACD,IAAIA,QAAQG,KAAK,CAACU,KAAK,IAAIb,QAAQG,KAAK,CAACW,QAAQ,EAAE;QAC/CH,YAAYI,MAAM,GAAG;YAAE,GAAGJ,YAAYI,MAAM;YAAEC,MAAM;QAAE;IAC1D;IAEA,oCAAoC,GACpCC,UAAG,CAACC,KAAK,CAAC,sBAAsB,IAAMC,IAAAA,qBAAe,EAACR;IAEtD,OAAOA;AACX"}
@@ -0,0 +1,12 @@
1
+ import type { UserConfig } from 'vite';
2
+ import type { BuildContext } from '../core/types';
3
+ import type { MinifyOptions, PluginOverrides } from '../utils/get-configuration';
4
+ export interface ViteConfigOverride {
5
+ omitDefault?: string[];
6
+ minify?: MinifyOptions;
7
+ pluginOverrides?: PluginOverrides;
8
+ config?: UserConfig;
9
+ }
10
+ export declare function defineConfig(config: ViteConfigOverride): ViteConfigOverride;
11
+ export declare function defineConfig(fn: (context: BuildContext) => ViteConfigOverride): (context: BuildContext) => ViteConfigOverride;
12
+ //# sourceMappingURL=define-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-config.d.ts","sourceRoot":"","sources":["../../src/vite/define-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAEjF,MAAM,WAAW,kBAAkB;IAC/B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,MAAM,CAAC,EAAE,UAAU,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,kBAAkB,CAAC;AAC7E,wBAAgB,YAAY,CACxB,EAAE,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,kBAAkB,GAClD,CAAC,OAAO,EAAE,YAAY,KAAK,kBAAkB,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "defineConfig", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return defineConfig;
9
+ }
10
+ });
11
+ function defineConfig(configOrFn) {
12
+ return configOrFn;
13
+ }
14
+
15
+ //# sourceMappingURL=define-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/vite/define-config.ts"],"sourcesContent":["import type { UserConfig } from 'vite';\nimport type { BuildContext } from '../core/types';\nimport type { MinifyOptions, PluginOverrides } from '../utils/get-configuration';\n\nexport interface ViteConfigOverride {\n omitDefault?: string[];\n minify?: MinifyOptions;\n pluginOverrides?: PluginOverrides;\n config?: UserConfig;\n}\n\nexport function defineConfig(config: ViteConfigOverride): ViteConfigOverride;\nexport function defineConfig(\n fn: (context: BuildContext) => ViteConfigOverride\n): (context: BuildContext) => ViteConfigOverride;\nexport function defineConfig(\n configOrFn: ViteConfigOverride | ((context: BuildContext) => ViteConfigOverride)\n) {\n return configOrFn;\n}\n"],"names":["defineConfig","configOrFn"],"mappings":";;;;+BAegBA;;;eAAAA;;;AAAT,SAASA,aACZC,UAAgF;IAEhF,OAAOA;AACX"}
@@ -0,0 +1,6 @@
1
+ import type { BuildContext } from '../core/types';
2
+ import type { ViteConfigOverride } from './define-config';
3
+ type ConfigFileExport = ViteConfigOverride | ((context: BuildContext) => ViteConfigOverride);
4
+ export declare function loadConfigFile(root: string, isProduction: boolean): Promise<ConfigFileExport | undefined>;
5
+ export {};
6
+ //# sourceMappingURL=load-config-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-config-file.d.ts","sourceRoot":"","sources":["../../src/vite/load-config-file.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,KAAK,gBAAgB,GAAG,kBAAkB,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,KAAK,kBAAkB,CAAC,CAAC;AAK7F,wBAAsB,cAAc,CAChC,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,OAAO,GACtB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAuCvC"}