@elliemae/pui-cli 7.0.0-alpha.1 → 7.0.0-alpha.4

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 (290) hide show
  1. package/{lib/babel/babel.config.js → dist/cjs/babel/babel.config.cjs} +2 -2
  2. package/dist/cjs/cli-commands/build.js +72 -0
  3. package/dist/cjs/cli-commands/codemod.js +51 -0
  4. package/dist/cjs/cli-commands/gendoc.js +52 -0
  5. package/dist/cjs/cli-commands/lint.js +86 -0
  6. package/dist/cjs/cli-commands/pack.js +88 -0
  7. package/dist/cjs/cli-commands/start.js +61 -0
  8. package/dist/cjs/cli-commands/storybook.js +63 -0
  9. package/dist/cjs/cli-commands/test.js +86 -0
  10. package/dist/cjs/cli-commands/tsc.js +103 -0
  11. package/dist/cjs/cli-commands/utils.js +137 -0
  12. package/dist/cjs/cli-commands/version.js +71 -0
  13. package/dist/cjs/cli-commands/vitest.js +84 -0
  14. package/dist/cjs/cli.js +47 -0
  15. package/dist/cjs/docgen/jsdoc.conf.json +17 -0
  16. package/{lib/dummy.ts → dist/cjs/dummy.js} +0 -0
  17. package/dist/cjs/index.js +41 -0
  18. package/dist/cjs/lint/commitlint.config.cjs +1 -0
  19. package/{lib/lint/eslint/common.js → dist/cjs/lint/eslint/common.cjs} +8 -8
  20. package/{lib/lint/eslint/non-react.js → dist/cjs/lint/eslint/non-react.cjs} +2 -2
  21. package/{lib/lint/eslint/react.js → dist/cjs/lint/eslint/react.cjs} +2 -2
  22. package/{lib/lint/eslint/typescript/common.js → dist/cjs/lint/eslint/typescript/common.cjs} +1 -1
  23. package/{lib/lint/eslint/typescript/non-react.js → dist/cjs/lint/eslint/typescript/non-react.cjs} +2 -2
  24. package/{lib/lint/eslint/typescript/react.js → dist/cjs/lint/eslint/typescript/react.cjs} +2 -2
  25. package/dist/cjs/lint/lint-staged.config.js +42 -0
  26. package/{lib/lint/prettier.config.js → dist/cjs/lint/prettier.config.cjs} +1 -1
  27. package/{lib/lint/stylelint.config.js → dist/cjs/lint/stylelint.config.cjs} +2 -2
  28. package/dist/cjs/monorepo/delete-merged-tags.js +57 -0
  29. package/dist/cjs/monorepo/set-registry-version.js +43 -0
  30. package/dist/cjs/monorepo/set-workspace-version.js +44 -0
  31. package/dist/cjs/monorepo/utils.js +34 -0
  32. package/dist/cjs/package.json +4 -0
  33. package/dist/cjs/pui-config/index.js +40 -0
  34. package/{lib/release/release.config.js → dist/cjs/release/release.config.cjs} +0 -0
  35. package/dist/cjs/scripts/helpers/checkmark.js +32 -0
  36. package/dist/cjs/scripts/helpers/get-npm-config.js +27 -0
  37. package/dist/cjs/scripts/helpers/progress.js +35 -0
  38. package/dist/cjs/scripts/helpers/xmark.js +31 -0
  39. package/dist/cjs/scripts/npmcheckversion.js +8 -0
  40. package/dist/cjs/scripts/update-notifier.js +33 -0
  41. package/dist/cjs/server/csp.js +88 -0
  42. package/dist/cjs/server/index.js +29 -0
  43. package/dist/cjs/server/logger.js +50 -0
  44. package/dist/cjs/server/middlewares/addProdMiddlewares.js +44 -0
  45. package/dist/cjs/server/middlewares/index.js +57 -0
  46. package/dist/cjs/server/util/index.js +68 -0
  47. package/{lib/testing/jest.config.js → dist/cjs/testing/jest.config.cjs} +15 -15
  48. package/{lib/testing/jest.node.config.js → dist/cjs/testing/jest.node.config.cjs} +1 -1
  49. package/{lib/testing/mocks/axios.js → dist/cjs/testing/mocks/axios.cjs} +0 -0
  50. package/{lib/testing/mocks/cssModule.js → dist/cjs/testing/mocks/cssModule.cjs} +0 -0
  51. package/{lib/testing/mocks/html.js → dist/cjs/testing/mocks/html.cjs} +0 -0
  52. package/{lib/testing/mocks/image.js → dist/cjs/testing/mocks/image.cjs} +0 -0
  53. package/{lib/testing/mocks/matchMedia.js → dist/cjs/testing/mocks/matchMedia.cjs} +0 -0
  54. package/{lib/testing/mocks/pui-app-loader.js → dist/cjs/testing/mocks/pui-app-loader.cjs} +0 -0
  55. package/{lib/testing/mocks/pui-diagnostics.js → dist/cjs/testing/mocks/pui-diagnostics.cjs} +0 -0
  56. package/{lib/testing/mocks/pui-user-monitoring.js → dist/cjs/testing/mocks/pui-user-monitoring.cjs} +0 -0
  57. package/{lib/testing/mocks/retry-axios.js → dist/cjs/testing/mocks/retry-axios.cjs} +0 -0
  58. package/{lib/testing/mocks/svg.js → dist/cjs/testing/mocks/svg.cjs} +0 -0
  59. package/{lib/testing/mocks/webpack-hmr.js → dist/cjs/testing/mocks/webpack-hmr.cjs} +0 -0
  60. package/{lib/testing/resolver.js → dist/cjs/testing/resolver.cjs} +0 -0
  61. package/dist/cjs/testing/setup-react-env.js +18 -0
  62. package/dist/cjs/testing/setup-tests.js +63 -0
  63. package/dist/cjs/testing/vitest.config.js +39 -0
  64. package/{lib/testing/vitest.setup.ts → dist/cjs/testing/vitest.setup.js} +0 -0
  65. package/dist/cjs/transpile/esbuild.js +138 -0
  66. package/dist/cjs/transpile/react-shim.js +26 -0
  67. package/{lib/transpile/swcrc.config.js → dist/cjs/transpile/swcrc.config.cjs} +1 -1
  68. package/{lib → dist/cjs}/typescript/app.tsconfig.json +0 -0
  69. package/{lib → dist/cjs}/typescript/library.tsconfig.json +0 -0
  70. package/dist/cjs/typescript/tsc-files/index.js +68 -0
  71. package/dist/cjs/typescript/tsc-files/utils.js +31 -0
  72. package/dist/cjs/typescript/util.js +28 -0
  73. package/dist/cjs/utils.cjs +20 -0
  74. package/dist/cjs/webpack/helpers.js +216 -0
  75. package/dist/cjs/webpack/webpack.base.babel.js +262 -0
  76. package/dist/cjs/webpack/webpack.dev.babel.js +136 -0
  77. package/dist/cjs/webpack/webpack.lib.base.babel.js +217 -0
  78. package/dist/cjs/webpack/webpack.lib.dev.babel.js +67 -0
  79. package/dist/cjs/webpack/webpack.lib.prod.babel.js +92 -0
  80. package/dist/cjs/webpack/webpack.prod.babel.js +139 -0
  81. package/{lib/webpack/webpack.storybook.js → dist/cjs/webpack/webpack.storybook.cjs} +1 -1
  82. package/dist/esm/babel/babel.config.cjs +101 -0
  83. package/dist/esm/cli-commands/build.js +56 -0
  84. package/dist/esm/cli-commands/codemod.js +29 -0
  85. package/dist/esm/cli-commands/gendoc.js +29 -0
  86. package/dist/esm/cli-commands/lint.js +64 -0
  87. package/dist/esm/cli-commands/pack.js +65 -0
  88. package/dist/esm/cli-commands/start.js +38 -0
  89. package/dist/esm/cli-commands/storybook.js +41 -0
  90. package/dist/esm/cli-commands/test.js +64 -0
  91. package/dist/esm/cli-commands/tsc.js +83 -0
  92. package/dist/esm/cli-commands/utils.js +120 -0
  93. package/dist/esm/cli-commands/version.js +49 -0
  94. package/dist/esm/cli-commands/vitest.js +61 -0
  95. package/dist/esm/cli.js +31 -0
  96. package/dist/esm/docgen/jsdoc.conf.json +17 -0
  97. package/dist/esm/dummy.js +0 -0
  98. package/dist/esm/index.js +22 -0
  99. package/dist/esm/lint/commitlint.config.cjs +1 -0
  100. package/dist/esm/lint/eslint/common.cjs +160 -0
  101. package/dist/esm/lint/eslint/non-react.cjs +14 -0
  102. package/dist/esm/lint/eslint/react.cjs +26 -0
  103. package/dist/esm/lint/eslint/typescript/common.cjs +43 -0
  104. package/dist/esm/lint/eslint/typescript/non-react.cjs +12 -0
  105. package/dist/esm/lint/eslint/typescript/react.cjs +19 -0
  106. package/dist/esm/lint/lint-staged.config.js +19 -0
  107. package/dist/esm/lint/prettier.config.cjs +8 -0
  108. package/dist/esm/lint/stylelint.config.cjs +19 -0
  109. package/dist/esm/monorepo/delete-merged-tags.js +38 -0
  110. package/dist/esm/monorepo/set-registry-version.js +21 -0
  111. package/dist/esm/monorepo/set-workspace-version.js +22 -0
  112. package/dist/esm/monorepo/utils.js +12 -0
  113. package/dist/esm/package.json +4 -0
  114. package/dist/esm/pui-config/index.js +18 -0
  115. package/dist/esm/release/release.config.cjs +31 -0
  116. package/dist/esm/scripts/helpers/checkmark.js +10 -0
  117. package/dist/esm/scripts/helpers/get-npm-config.js +5 -0
  118. package/dist/esm/scripts/helpers/progress.js +13 -0
  119. package/dist/esm/scripts/helpers/xmark.js +9 -0
  120. package/dist/esm/scripts/npmcheckversion.js +8 -0
  121. package/dist/esm/scripts/update-notifier.js +11 -0
  122. package/dist/esm/server/csp.js +66 -0
  123. package/dist/esm/server/index.js +17 -0
  124. package/dist/esm/server/logger.js +28 -0
  125. package/dist/esm/server/middlewares/addProdMiddlewares.js +22 -0
  126. package/dist/esm/server/middlewares/index.js +35 -0
  127. package/dist/esm/server/util/index.js +46 -0
  128. package/dist/esm/testing/jest.config.cjs +105 -0
  129. package/dist/esm/testing/jest.node.config.cjs +8 -0
  130. package/dist/esm/testing/mocks/axios.cjs +15 -0
  131. package/dist/esm/testing/mocks/cssModule.cjs +1 -0
  132. package/dist/esm/testing/mocks/html.cjs +1 -0
  133. package/dist/esm/testing/mocks/image.cjs +1 -0
  134. package/dist/esm/testing/mocks/matchMedia.cjs +24 -0
  135. package/dist/esm/testing/mocks/pui-app-loader.cjs +1 -0
  136. package/dist/esm/testing/mocks/pui-diagnostics.cjs +28 -0
  137. package/dist/esm/testing/mocks/pui-user-monitoring.cjs +3 -0
  138. package/dist/esm/testing/mocks/retry-axios.cjs +3 -0
  139. package/dist/esm/testing/mocks/svg.cjs +5 -0
  140. package/dist/esm/testing/mocks/webpack-hmr.cjs +1 -0
  141. package/dist/esm/testing/resolver.cjs +47 -0
  142. package/dist/esm/testing/setup-react-env.js +3 -0
  143. package/dist/esm/testing/setup-tests.js +48 -0
  144. package/dist/esm/testing/vitest.config.js +17 -0
  145. package/dist/esm/testing/vitest.setup.js +0 -0
  146. package/dist/esm/transpile/esbuild.js +117 -0
  147. package/dist/esm/transpile/react-shim.js +4 -0
  148. package/dist/esm/transpile/swcrc.config.cjs +13 -0
  149. package/dist/esm/typescript/app.tsconfig.json +23 -0
  150. package/dist/esm/typescript/library.tsconfig.json +23 -0
  151. package/dist/esm/typescript/tsc-files/index.js +55 -0
  152. package/{lib → dist/esm}/typescript/tsc-files/utils.js +3 -7
  153. package/dist/esm/typescript/util.js +6 -0
  154. package/dist/esm/utils.cjs +20 -0
  155. package/dist/esm/webpack/helpers.js +196 -0
  156. package/dist/esm/webpack/webpack.base.babel.js +248 -0
  157. package/dist/esm/webpack/webpack.dev.babel.js +118 -0
  158. package/dist/esm/webpack/webpack.lib.base.babel.js +208 -0
  159. package/dist/esm/webpack/webpack.lib.dev.babel.js +45 -0
  160. package/dist/esm/webpack/webpack.lib.prod.babel.js +70 -0
  161. package/dist/esm/webpack/webpack.prod.babel.js +122 -0
  162. package/dist/esm/webpack/webpack.storybook.cjs +87 -0
  163. package/dist/types/babel/babel.config.d.cts +59 -0
  164. package/dist/types/cli-commands/build.d.ts +14 -0
  165. package/dist/types/cli-commands/codemod.d.ts +6 -0
  166. package/dist/types/cli-commands/gendoc.d.ts +6 -0
  167. package/dist/types/cli-commands/lint.d.ts +29 -0
  168. package/dist/types/cli-commands/pack.d.ts +26 -0
  169. package/dist/types/cli-commands/start.d.ts +13 -0
  170. package/dist/types/cli-commands/storybook.d.ts +19 -0
  171. package/dist/types/cli-commands/test.d.ts +35 -0
  172. package/dist/types/cli-commands/tsc.d.ts +20 -0
  173. package/dist/types/cli-commands/utils.d.ts +14 -0
  174. package/dist/types/cli-commands/version.d.ts +30 -0
  175. package/dist/types/cli-commands/vitest.d.ts +35 -0
  176. package/dist/types/cli.d.ts +2 -0
  177. package/dist/types/dummy.d.ts +0 -0
  178. package/dist/types/index.d.ts +10 -0
  179. package/dist/types/lint/commitlint.config.d.cts +4 -0
  180. package/dist/types/lint/eslint/common.d.cts +124 -0
  181. package/dist/types/lint/eslint/non-react.d.cts +88 -0
  182. package/dist/types/lint/eslint/react.d.cts +118 -0
  183. package/dist/types/lint/eslint/typescript/common.d.cts +37 -0
  184. package/dist/types/lint/eslint/typescript/non-react.d.cts +87 -0
  185. package/dist/types/lint/eslint/typescript/react.d.cts +118 -0
  186. package/dist/types/lint/lint-staged.config.d.ts +5 -0
  187. package/dist/types/lint/prettier.config.d.cts +8 -0
  188. package/dist/types/lint/stylelint.config.d.cts +11 -0
  189. package/dist/types/monorepo/delete-merged-tags.d.ts +1 -0
  190. package/dist/types/monorepo/set-registry-version.d.ts +1 -0
  191. package/dist/types/monorepo/set-workspace-version.d.ts +1 -0
  192. package/dist/types/monorepo/utils.d.ts +1 -0
  193. package/dist/types/pui-config/index.d.ts +1 -0
  194. package/dist/types/release/release.config.d.cts +9 -0
  195. package/dist/types/scripts/helpers/checkmark.d.ts +7 -0
  196. package/dist/types/scripts/helpers/get-npm-config.d.ts +2 -0
  197. package/dist/types/scripts/helpers/progress.d.ts +7 -0
  198. package/dist/types/scripts/helpers/xmark.d.ts +6 -0
  199. package/dist/types/scripts/npmcheckversion.d.ts +1 -0
  200. package/dist/types/scripts/update-notifier.d.ts +2 -0
  201. package/dist/types/server/csp.d.ts +10 -0
  202. package/dist/types/server/index.d.ts +1 -0
  203. package/dist/types/server/logger.d.ts +4 -0
  204. package/dist/types/server/middlewares/addProdMiddlewares.d.ts +1 -0
  205. package/dist/types/server/middlewares/index.d.ts +2 -0
  206. package/dist/types/server/util/index.d.ts +4 -0
  207. package/dist/types/testing/jest.config.d.cts +38 -0
  208. package/dist/types/testing/jest.node.config.d.cts +38 -0
  209. package/dist/types/testing/mocks/axios.d.cts +14 -0
  210. package/dist/types/testing/mocks/cssModule.d.cts +2 -0
  211. package/dist/types/testing/mocks/html.d.cts +2 -0
  212. package/dist/types/testing/mocks/image.d.cts +2 -0
  213. package/dist/types/testing/mocks/matchMedia.d.cts +2 -0
  214. package/dist/types/testing/mocks/pui-app-loader.d.cts +1 -0
  215. package/dist/types/testing/mocks/pui-diagnostics.d.cts +28 -0
  216. package/dist/types/testing/mocks/pui-user-monitoring.d.cts +3 -0
  217. package/dist/types/testing/mocks/retry-axios.d.cts +3 -0
  218. package/dist/types/testing/mocks/svg.d.cts +3 -0
  219. package/dist/types/testing/mocks/webpack-hmr.d.cts +1 -0
  220. package/dist/types/testing/resolver.d.cts +2 -0
  221. package/dist/types/testing/setup-react-env.d.ts +1 -0
  222. package/dist/types/testing/setup-tests.d.ts +1 -0
  223. package/dist/types/testing/vitest.config.d.ts +2 -0
  224. package/dist/types/testing/vitest.setup.d.ts +0 -0
  225. package/dist/types/transpile/esbuild.d.ts +13 -0
  226. package/dist/types/transpile/react-shim.d.ts +2 -0
  227. package/dist/types/transpile/swcrc.config.d.cts +1 -0
  228. package/dist/types/typescript/tsc-files/index.d.ts +1 -0
  229. package/dist/types/typescript/tsc-files/utils.d.ts +3 -0
  230. package/dist/types/typescript/util.d.ts +1 -0
  231. package/dist/types/utils.d.cts +3 -0
  232. package/dist/types/webpack/helpers.d.ts +28 -0
  233. package/dist/types/webpack/webpack.base.babel.d.ts +90 -0
  234. package/dist/types/webpack/webpack.dev.babel.d.ts +1 -0
  235. package/dist/types/webpack/webpack.lib.base.babel.d.ts +107 -0
  236. package/dist/types/webpack/webpack.lib.dev.babel.d.ts +91 -0
  237. package/dist/types/webpack/webpack.lib.prod.babel.d.ts +91 -0
  238. package/dist/types/webpack/webpack.prod.babel.d.ts +2 -0
  239. package/dist/types/webpack/webpack.storybook.d.cts +4 -0
  240. package/package.json +45 -37
  241. package/lib/cli-commands/build.js +0 -60
  242. package/lib/cli-commands/codemod.js +0 -31
  243. package/lib/cli-commands/gendoc.js +0 -36
  244. package/lib/cli-commands/lint.js +0 -75
  245. package/lib/cli-commands/pack.js +0 -67
  246. package/lib/cli-commands/start.js +0 -49
  247. package/lib/cli-commands/storybook.js +0 -53
  248. package/lib/cli-commands/test.js +0 -63
  249. package/lib/cli-commands/tsc.js +0 -103
  250. package/lib/cli-commands/utils.js +0 -135
  251. package/lib/cli-commands/version.js +0 -53
  252. package/lib/cli-commands/vitest.js +0 -66
  253. package/lib/cli.js +0 -33
  254. package/lib/docgen/jsdoc.config.js +0 -17
  255. package/lib/index.js +0 -25
  256. package/lib/lint/commitlint.config.js +0 -1
  257. package/lib/lint/lint-staged.config.js +0 -16
  258. package/lib/monorepo/delete-merged-tags.js +0 -48
  259. package/lib/monorepo/set-registry-version.js +0 -22
  260. package/lib/monorepo/set-workspace-version.js +0 -29
  261. package/lib/monorepo/utils.js +0 -15
  262. package/lib/pui-config/index.js +0 -18
  263. package/lib/scripts/helpers/checkmark.js +0 -15
  264. package/lib/scripts/helpers/get-npm-config.js +0 -3
  265. package/lib/scripts/helpers/progress.js +0 -19
  266. package/lib/scripts/helpers/xmark.js +0 -13
  267. package/lib/scripts/npmcheckversion.js +0 -8
  268. package/lib/scripts/update-notifier.js +0 -7
  269. package/lib/server/csp.js +0 -74
  270. package/lib/server/index.js +0 -37
  271. package/lib/server/logger.js +0 -42
  272. package/lib/server/middlewares/addDevMiddlewares.js +0 -39
  273. package/lib/server/middlewares/addProdMiddlewares.js +0 -30
  274. package/lib/server/middlewares/index.js +0 -37
  275. package/lib/server/util/index.js +0 -52
  276. package/lib/testing/setup-react-env.js +0 -3
  277. package/lib/testing/setup-tests.js +0 -58
  278. package/lib/testing/vitest.config.ts +0 -16
  279. package/lib/transpile/.swcrc +0 -11
  280. package/lib/transpile/esbuild.js +0 -116
  281. package/lib/transpile/react-shim.js +0 -2
  282. package/lib/typescript/tsc-files/index.js +0 -66
  283. package/lib/typescript/util.js +0 -5
  284. package/lib/webpack/helpers.js +0 -252
  285. package/lib/webpack/webpack.base.babel.js +0 -242
  286. package/lib/webpack/webpack.dev.babel.js +0 -137
  287. package/lib/webpack/webpack.lib.base.babel.js +0 -205
  288. package/lib/webpack/webpack.lib.dev.babel.js +0 -49
  289. package/lib/webpack/webpack.lib.prod.babel.js +0 -77
  290. package/lib/webpack/webpack.prod.babel.js +0 -142
@@ -0,0 +1,208 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ import path from "node:path";
18
+ import {
19
+ EnvironmentPlugin,
20
+ DefinePlugin,
21
+ optimize,
22
+ ProgressPlugin
23
+ } from "webpack";
24
+ import MiniCssExtractPlugin from "mini-css-extract-plugin";
25
+ import CopyWebpackPlugin from "copy-webpack-plugin";
26
+ import PostcssPresetEnv from "postcss-preset-env";
27
+ import DuplicatePackageCheckerPlugin from "duplicate-package-checker-webpack-plugin";
28
+ import MomentLocalesPlugin from "moment-locales-webpack-plugin";
29
+ import ResolveTypeScriptPlugin from "resolve-typescript-plugin";
30
+ import browserslistToEsbuild from "browserslist-to-esbuild";
31
+ import {
32
+ excludeNodeModulesExcept,
33
+ getLibraryName,
34
+ modulesToTranspile,
35
+ getAlias,
36
+ filterByFilePresence
37
+ } from "./helpers.js";
38
+ import { getAppConfig } from "../utils.cjs";
39
+ const minicssLoader = {
40
+ loader: MiniCssExtractPlugin.loader,
41
+ options: {}
42
+ };
43
+ const finalCSSLoader = (mode) => mode !== "production" ? { loader: "style-loader" } : minicssLoader;
44
+ const copyPluginPatterns = filterByFilePresence([
45
+ {
46
+ from: "lib/app.config.json",
47
+ to: "app.config.json",
48
+ noErrorOnMissing: true
49
+ },
50
+ {
51
+ from: "public",
52
+ noErrorOnMissing: true
53
+ }
54
+ ]);
55
+ const plugins = [
56
+ new EnvironmentPlugin({
57
+ ASSET_PATH: "/",
58
+ CI: "false"
59
+ }),
60
+ new DefinePlugin({
61
+ APP_CONFIG: getAppConfig(true)
62
+ }),
63
+ ...copyPluginPatterns.length > 0 ? [
64
+ new CopyWebpackPlugin({
65
+ patterns: copyPluginPatterns
66
+ })
67
+ ] : [],
68
+ new DuplicatePackageCheckerPlugin(),
69
+ new optimize.LimitChunkCountPlugin({
70
+ maxChunks: 1
71
+ }),
72
+ new MomentLocalesPlugin({ localesToKeep: ["es-us"] }),
73
+ new ProgressPlugin()
74
+ ];
75
+ const baseConfig = (options) => ({
76
+ mode: options.mode,
77
+ entry: [path.join(process.cwd(), "lib/index")],
78
+ output: __spreadValues({
79
+ clean: true,
80
+ path: path.resolve(process.cwd(), "dist/public"),
81
+ publicPath: "auto",
82
+ library: getLibraryName(),
83
+ libraryTarget: "umd"
84
+ }, options.output),
85
+ optimization: options.optimization,
86
+ module: {
87
+ rules: [
88
+ {
89
+ test: /^(?!.*\.exec\.js$).*\.jsx?$/,
90
+ exclude: excludeNodeModulesExcept(modulesToTranspile),
91
+ resolve: {
92
+ fullySpecified: false
93
+ },
94
+ use: {
95
+ loader: "esbuild-loader",
96
+ options: {
97
+ loader: "jsx",
98
+ target: browserslistToEsbuild()
99
+ }
100
+ }
101
+ },
102
+ {
103
+ test: /^(?!.*\.exec\.js$).*\.tsx?$/,
104
+ exclude: excludeNodeModulesExcept(modulesToTranspile),
105
+ resolve: {
106
+ fullySpecified: false
107
+ },
108
+ use: {
109
+ loader: "esbuild-loader",
110
+ options: {
111
+ loader: "tsx",
112
+ target: browserslistToEsbuild()
113
+ }
114
+ }
115
+ },
116
+ {
117
+ test: /\.css$/,
118
+ exclude: excludeNodeModulesExcept(modulesToTranspile),
119
+ use: [
120
+ finalCSSLoader(options.mode),
121
+ {
122
+ loader: "css-loader",
123
+ options: {
124
+ importLoaders: 1,
125
+ sourceMap: true
126
+ }
127
+ },
128
+ {
129
+ loader: "postcss-loader",
130
+ options: {
131
+ postcssOptions: {
132
+ plugins: [PostcssPresetEnv({ autoprefixer: { grid: true } })]
133
+ },
134
+ sourceMap: true
135
+ }
136
+ }
137
+ ]
138
+ },
139
+ {
140
+ test: /\.pug$/,
141
+ exclude: /node_modules/,
142
+ use: "pug-loader"
143
+ },
144
+ {
145
+ test: /\.(woff|woff2)$/,
146
+ exclude: excludeNodeModulesExcept(["@elliemae/*"]),
147
+ type: "asset/resource"
148
+ },
149
+ {
150
+ test: /\.svg$/i,
151
+ issuer: /\.[jt]sx?$/,
152
+ resourceQuery: /^((?!url).)*$/,
153
+ exclude: excludeNodeModulesExcept(["@elliemae/*"]),
154
+ use: ["@svgr/webpack"]
155
+ },
156
+ {
157
+ test: /\.(jpe?g|png|gif|ico)$/i,
158
+ exclude: excludeNodeModulesExcept(["@elliemae/*"]),
159
+ type: "asset"
160
+ },
161
+ {
162
+ test: /(?<!\/iframe)\.html$/,
163
+ exclude: excludeNodeModulesExcept(["@elliemae/*"]),
164
+ use: "html-loader"
165
+ },
166
+ {
167
+ test: /\.(mp4|webm)$/,
168
+ exclude: excludeNodeModulesExcept(["@elliemae/*"]),
169
+ type: "asset"
170
+ },
171
+ {
172
+ resourceQuery: /resource/,
173
+ type: "asset/resource",
174
+ exclude: excludeNodeModulesExcept(["@elliemae/*"])
175
+ },
176
+ {
177
+ type: "asset",
178
+ resourceQuery: /url/,
179
+ exclude: excludeNodeModulesExcept(["@elliemae/*"])
180
+ }
181
+ ]
182
+ },
183
+ plugins: plugins.concat(options.plugins || []),
184
+ resolve: {
185
+ modules: [
186
+ "node_modules",
187
+ "app",
188
+ "lib",
189
+ path.resolve(process.cwd(), "node_modules"),
190
+ path.resolve(process.cwd(), "app"),
191
+ path.resolve(process.cwd(), "lib")
192
+ ],
193
+ extensions: [".ts", ".tsx", ".js", ".jsx", ".json", ".wasm", ".mjs"],
194
+ mainFields: ["browser", "module", "main"],
195
+ alias: __spreadValues(__spreadValues({}, getAlias()), (options.resolve || {}).alias || {}),
196
+ plugins: [new ResolveTypeScriptPlugin({})]
197
+ },
198
+ externals: {
199
+ "@elliemae/pui-user-monitoring": "emuiUserMonitoring",
200
+ "@elliemae/pui-app-loader": "emuiAppLoader",
201
+ "@elliemae/pui-diagnostics": "emuiDiagnostics"
202
+ },
203
+ devtool: options.devtool || "eval-source-map",
204
+ performance: options.performance || {}
205
+ });
206
+ export {
207
+ baseConfig
208
+ };
@@ -0,0 +1,45 @@
1
+ import CircularDependencyPlugin from "circular-dependency-plugin";
2
+ import MiniCssExtractPlugin from "mini-css-extract-plugin";
3
+ import HtmlWebpackPlugin from "html-webpack-plugin";
4
+ import { getLibraryName } from "./helpers.js";
5
+ import { baseConfig } from "./webpack.base.babel.js";
6
+ const libraryName = getLibraryName();
7
+ var webpack_lib_dev_babel_default = baseConfig({
8
+ mode: "development",
9
+ output: {
10
+ filename: `js/${libraryName}.js`,
11
+ chunkFilename: `js/${libraryName}.chunk.js`,
12
+ assetModuleFilename: "[name][ext][query]"
13
+ },
14
+ optimization: {
15
+ splitChunks: {
16
+ chunks: "all"
17
+ }
18
+ },
19
+ resolve: {
20
+ alias: {}
21
+ },
22
+ plugins: [
23
+ new HtmlWebpackPlugin({
24
+ inject: true,
25
+ template: "lib/index.pug",
26
+ filename: "index.html",
27
+ libraryName
28
+ }),
29
+ new CircularDependencyPlugin({
30
+ exclude: /a\.(js|ts|jsx|tsx)|node_modules/,
31
+ failOnError: false
32
+ }),
33
+ new MiniCssExtractPlugin({
34
+ filename: `css/${libraryName}.css`,
35
+ chunkFilename: `css/${libraryName}.chunk.css`
36
+ })
37
+ ],
38
+ devtool: "eval-source-map",
39
+ performance: {
40
+ hints: false
41
+ }
42
+ });
43
+ export {
44
+ webpack_lib_dev_babel_default as default
45
+ };
@@ -0,0 +1,70 @@
1
+ import path from "node:path";
2
+ import MiniCssExtractPlugin from "mini-css-extract-plugin";
3
+ import HtmlWebpackPlugin from "html-webpack-plugin";
4
+ import { BundleAnalyzerPlugin } from "webpack-bundle-analyzer";
5
+ import { ESBuildMinifyPlugin } from "esbuild-loader";
6
+ import browserslistToEsbuild from "browserslist-to-esbuild";
7
+ import { getLibraryName, getCompressionPlugins } from "./helpers.js";
8
+ import { baseConfig } from "./webpack.base.babel.js";
9
+ const libraryName = getLibraryName();
10
+ var webpack_lib_prod_babel_default = baseConfig({
11
+ mode: "production",
12
+ output: {
13
+ filename: `js/${libraryName}.[chunkhash].js`,
14
+ chunkFilename: `js/${libraryName}.[chunkhash].chunk.js`,
15
+ assetModuleFilename: "assets/[name].[hash][ext][query]"
16
+ },
17
+ optimization: {
18
+ moduleIds: "deterministic",
19
+ minimize: true,
20
+ minimizer: [
21
+ new ESBuildMinifyPlugin({
22
+ target: browserslistToEsbuild(),
23
+ css: true
24
+ })
25
+ ],
26
+ nodeEnv: "production",
27
+ sideEffects: true,
28
+ concatenateModules: true,
29
+ splitChunks: {
30
+ chunks: "all"
31
+ }
32
+ },
33
+ plugins: [
34
+ new HtmlWebpackPlugin({
35
+ template: "lib/index.pug",
36
+ filename: "index.html",
37
+ libraryName,
38
+ minify: {
39
+ removeComments: true,
40
+ collapseWhitespace: true,
41
+ removeRedundantAttributes: true,
42
+ useShortDoctype: true,
43
+ removeEmptyAttributes: true,
44
+ removeStyleLinkTypeAttributes: true,
45
+ keepClosingSlash: true,
46
+ minifyJS: true,
47
+ minifyCSS: true,
48
+ minifyURLs: true
49
+ },
50
+ inject: true
51
+ }),
52
+ new MiniCssExtractPlugin({
53
+ filename: `css/${libraryName}.[contenthash].css`,
54
+ chunkFilename: `css/${libraryName}.[contenthash].chunk.css`
55
+ }),
56
+ ...getCompressionPlugins(true),
57
+ new BundleAnalyzerPlugin({
58
+ analyzerMode: "static",
59
+ reportFilename: path.join(process.cwd(), "reports/bundle-stats.html"),
60
+ openAnalyzer: false
61
+ })
62
+ ],
63
+ devtool: "source-map",
64
+ performance: {
65
+ assetFilter: (assetFilename) => !/(\.map$)|(^(main\.|favicon\.))/.test(assetFilename)
66
+ }
67
+ });
68
+ export {
69
+ webpack_lib_prod_babel_default as default
70
+ };
@@ -0,0 +1,122 @@
1
+ import path from "node:path";
2
+ import HtmlWebpackPlugin from "html-webpack-plugin";
3
+ import { GenerateSW } from "workbox-webpack-plugin";
4
+ import MiniCssExtractPlugin from "mini-css-extract-plugin";
5
+ import { BundleAnalyzerPlugin } from "webpack-bundle-analyzer";
6
+ import { ESBuildMinifyPlugin } from "esbuild-loader";
7
+ import SpeedMeasurePlugin from "speed-measure-webpack-plugin";
8
+ import browserslistToEsbuild from "browserslist-to-esbuild";
9
+ import baseConfigFactory from "./webpack.base.babel.js";
10
+ import {
11
+ isAppLoaderEnabled,
12
+ getPaths,
13
+ isGoogleTagManagerEnabled,
14
+ getCompressionPlugins
15
+ } from "./helpers.js";
16
+ const getProdConfig = ({ latestVersion = true } = {}) => {
17
+ const { buildPath } = getPaths(latestVersion);
18
+ return {
19
+ mode: "production",
20
+ entry: {
21
+ app: path.join(process.cwd(), "app/index")
22
+ },
23
+ output: {
24
+ path: buildPath,
25
+ publicPath: "auto",
26
+ filename: "latest/js/[name].[contenthash].js",
27
+ chunkFilename: "latest/js/[name].[contenthash].chunk.js",
28
+ assetModuleFilename: "latest/assets/[name].[hash][ext][query]"
29
+ },
30
+ optimization: {
31
+ moduleIds: "deterministic",
32
+ minimizer: [
33
+ new ESBuildMinifyPlugin({
34
+ target: browserslistToEsbuild(),
35
+ css: true
36
+ })
37
+ ],
38
+ runtimeChunk: true,
39
+ splitChunks: {
40
+ chunks: "all",
41
+ cacheGroups: {
42
+ emui: {
43
+ name: "emui",
44
+ test: /[\\/]node_modules[\\/](@elliemae)[\\/]/,
45
+ priority: 1
46
+ },
47
+ vendors: {
48
+ name: "vendors",
49
+ test: /[\\/]node_modules[\\/]/
50
+ }
51
+ }
52
+ }
53
+ },
54
+ plugins: [
55
+ ...getCompressionPlugins(),
56
+ new BundleAnalyzerPlugin({
57
+ analyzerMode: "static",
58
+ reportFilename: path.join(process.cwd(), "reports/bundle-stats.html"),
59
+ openAnalyzer: false
60
+ }),
61
+ new GenerateSW({
62
+ swDest: "sw.js",
63
+ clientsClaim: true,
64
+ skipWaiting: true
65
+ })
66
+ ],
67
+ devtool: "source-map",
68
+ performance: {
69
+ assetFilter: (assetFilename) => !/(\.map$)|(^(main\.|favicon\.))/.test(assetFilename)
70
+ }
71
+ };
72
+ };
73
+ const {
74
+ userMonScriptPath,
75
+ globalScriptPath,
76
+ appLoaderScriptPath,
77
+ diagnosticsScriptPath,
78
+ encwLoaderScriptPath,
79
+ basePath
80
+ } = getPaths();
81
+ const htmlWebpackPlugin = new HtmlWebpackPlugin({
82
+ inject: !isAppLoaderEnabled(),
83
+ template: !isAppLoaderEnabled() ? "app/index.html" : "app/index-app-loader.html",
84
+ minify: {
85
+ removeComments: true,
86
+ collapseWhitespace: true,
87
+ removeRedundantAttributes: true,
88
+ useShortDoctype: true,
89
+ removeEmptyAttributes: true,
90
+ removeStyleLinkTypeAttributes: true,
91
+ keepClosingSlash: true,
92
+ minifyJS: true,
93
+ minifyCSS: true,
94
+ minifyURLs: true
95
+ },
96
+ emui: {
97
+ appVersion: "latest",
98
+ basePath,
99
+ globalScriptPath,
100
+ userMonScriptPath,
101
+ appLoaderScriptPath,
102
+ diagnosticsScriptPath,
103
+ encwLoaderScriptPath,
104
+ googleTagManager: isGoogleTagManagerEnabled()
105
+ }
106
+ });
107
+ const config = baseConfigFactory(getProdConfig());
108
+ config.plugins.push(htmlWebpackPlugin);
109
+ const addSMPPlugin = (webpackConfig) => {
110
+ const smpConfig = new SpeedMeasurePlugin({
111
+ disable: !process.env.MEASURE
112
+ }).wrap(webpackConfig);
113
+ smpConfig.plugins.push(new MiniCssExtractPlugin({
114
+ filename: "latest/css/[name].[contenthash].css",
115
+ chunkFilename: "latest/css/[name].[contenthash].chunk.css"
116
+ }));
117
+ return smpConfig;
118
+ };
119
+ var webpack_prod_babel_default = addSMPPlugin(config);
120
+ export {
121
+ webpack_prod_babel_default as default
122
+ };
@@ -0,0 +1,87 @@
1
+ const { EnvironmentPlugin } = require('webpack');
2
+ const MiniCssExtractPlugin = require('mini-css-extract-plugin');
3
+ const CopyWebpackPlugin = require('copy-webpack-plugin');
4
+ const ResolveTypeScriptPlugin = require('resolve-typescript-plugin');
5
+ const { isApp, getAlias, getCompressionPlugins } = require('./helpers.js');
6
+
7
+ const IS_APP = isApp();
8
+ const CWD = process.cwd();
9
+
10
+ const getAdditionalPlugins = () => [
11
+ new EnvironmentPlugin({
12
+ IS_APP,
13
+ CWD,
14
+ }),
15
+ new MiniCssExtractPlugin({
16
+ filename: '[name].[contenthash].css',
17
+ chunkFilename: '[name].[contenthash].chunk.css',
18
+ }),
19
+ new CopyWebpackPlugin({
20
+ patterns: [
21
+ {
22
+ from: 'lib/app.config.json',
23
+ to: 'app.config.json',
24
+ noErrorOnMissing: true,
25
+ },
26
+ {
27
+ from: 'app/app.config.json',
28
+ to: 'app.config.json',
29
+ noErrorOnMissing: true,
30
+ },
31
+ {
32
+ from: 'public',
33
+ noErrorOnMissing: true,
34
+ },
35
+ ],
36
+ }),
37
+ ];
38
+
39
+ const getModuleRules = () => [
40
+ {
41
+ type: 'asset',
42
+ resourceQuery: /url/,
43
+ },
44
+ {
45
+ test: /\.svg$/i,
46
+ issuer: /\.[jt]sx?$/,
47
+ resourceQuery: /^((?!url).)*$/,
48
+ use: ['@svgr/webpack'],
49
+ },
50
+ {
51
+ resourceQuery: /resource/,
52
+ type: 'asset/resource',
53
+ },
54
+ ];
55
+
56
+ exports.webpackFinal = async (config, { configType }) => {
57
+ const isProd = configType === 'PRODUCTION';
58
+ const fileLoaderRule = config.module.rules.find((rule) =>
59
+ rule.test?.test?.('.svg'),
60
+ );
61
+ fileLoaderRule.exclude = /\.svg$/i;
62
+ config.module.rules.unshift(...getModuleRules());
63
+ config.plugins.push(...getAdditionalPlugins());
64
+ if (isProd) {
65
+ config.plugins = config.plugins.concat(getCompressionPlugins());
66
+ }
67
+
68
+ config.resolve.alias = { ...config.resolve.alias, ...getAlias() };
69
+ config.resolve.fallback = { ...config.resolve.fallback, crypto: false };
70
+ config.resolve.extensions.push('.svg');
71
+ config.resolve.plugins = [
72
+ ...(config.resolve.plugins || []),
73
+ new ResolveTypeScriptPlugin({}),
74
+ ];
75
+ config.externals = config.externals || {};
76
+ config.externals['@elliemae/pui-user-monitoring'] = 'emuiUserMonitoring';
77
+ config.externals['@elliemae/pui-app-loader'] = 'emuiAppLoader';
78
+ config.externals['@elliemae/pui-diagnostics'] = 'emuiDiagnostics';
79
+ return config;
80
+ };
81
+
82
+ // storybook manager webpack
83
+ exports.managerWebpack = async (config) => {
84
+ config.plugins = config.plugins.concat(getCompressionPlugins());
85
+ config.resolve.alias = { ...config.resolve.alias, ...getAlias() };
86
+ return config;
87
+ };
@@ -0,0 +1,59 @@
1
+ export { config as babelConfig };
2
+ declare namespace config {
3
+ const ignore: RegExp[];
4
+ const sourceType: string;
5
+ const presets: (string | (string | {
6
+ modules: string | boolean;
7
+ targets: {
8
+ node: string;
9
+ };
10
+ } | {
11
+ modules: string | boolean;
12
+ useBuiltIns: string;
13
+ corejs: {
14
+ version: string;
15
+ proposals: boolean;
16
+ };
17
+ })[] | (string | {
18
+ runtime: string;
19
+ })[])[];
20
+ const plugins: (string | (string | {
21
+ alias: {
22
+ '@': string;
23
+ };
24
+ stripExtensions: never[];
25
+ })[] | (string | {
26
+ displayName: boolean;
27
+ })[] | (string | {
28
+ regenerator: boolean;
29
+ })[])[];
30
+ namespace env {
31
+ namespace development {
32
+ const plugins_1: (string | (string | {
33
+ displayName: boolean;
34
+ })[])[];
35
+ export { plugins_1 as plugins };
36
+ }
37
+ namespace production {
38
+ const plugins_2: (string | (string | {
39
+ displayName: boolean;
40
+ pure: boolean;
41
+ })[] | (string | {
42
+ exclude: string[];
43
+ })[])[];
44
+ export { plugins_2 as plugins };
45
+ }
46
+ namespace test {
47
+ const plugins_3: (string | (string | {
48
+ displayName: boolean;
49
+ })[] | (string | {
50
+ requireDirective: boolean;
51
+ identifiers: {
52
+ start: string;
53
+ end: string;
54
+ }[];
55
+ })[])[];
56
+ export { plugins_3 as plugins };
57
+ }
58
+ }
59
+ }
@@ -0,0 +1,14 @@
1
+ export namespace buildCmd {
2
+ function handler({ service }: {
3
+ service?: boolean | undefined;
4
+ }): Promise<void>;
5
+ const command: string;
6
+ const describe: string;
7
+ namespace builder {
8
+ namespace service {
9
+ export const type: string;
10
+ const _default: boolean;
11
+ export { _default as default };
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,6 @@
1
+ export namespace codemodCmd {
2
+ function handler(argv: any): Promise<void>;
3
+ const command: string;
4
+ const describe: string;
5
+ function builder(yargsRef: any): void;
6
+ }
@@ -0,0 +1,6 @@
1
+ export namespace gendocCmd {
2
+ function handler(): Promise<void>;
3
+ const command: string;
4
+ const describe: string;
5
+ const builder: {};
6
+ }
@@ -0,0 +1,29 @@
1
+ export namespace lintCmd {
2
+ function handler(argv: any): Promise<0 | -1>;
3
+ const command: string;
4
+ const describe: string;
5
+ namespace builder {
6
+ namespace css {
7
+ export const alias: string;
8
+ export const type: string;
9
+ const _default: boolean;
10
+ export { _default as default };
11
+ }
12
+ namespace js {
13
+ const alias_1: string;
14
+ export { alias_1 as alias };
15
+ const type_1: string;
16
+ export { type_1 as type };
17
+ const _default_1: boolean;
18
+ export { _default_1 as default };
19
+ }
20
+ namespace fix {
21
+ const alias_2: string;
22
+ export { alias_2 as alias };
23
+ const type_2: string;
24
+ export { type_2 as type };
25
+ const _default_2: boolean;
26
+ export { _default_2 as default };
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,26 @@
1
+ export namespace packCmd {
2
+ function handler(argv: any): Promise<void>;
3
+ const command: string;
4
+ const describe: string;
5
+ namespace builder {
6
+ namespace production {
7
+ export const alias: string;
8
+ export const type: string;
9
+ const _default: boolean;
10
+ export { _default as default };
11
+ }
12
+ namespace target {
13
+ const alias_1: string;
14
+ export { alias_1 as alias };
15
+ const type_1: string;
16
+ export { type_1 as type };
17
+ export const description: string;
18
+ }
19
+ namespace srcPath {
20
+ const type_2: string;
21
+ export { type_2 as type };
22
+ const _default_1: string;
23
+ export { _default_1 as default };
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,13 @@
1
+ export namespace startCmd {
2
+ function handler(argv: any): Promise<void>;
3
+ const command: string;
4
+ const describe: string;
5
+ namespace builder {
6
+ namespace prod {
7
+ export const alias: string;
8
+ const _default: boolean;
9
+ export { _default as default };
10
+ export const type: string;
11
+ }
12
+ }
13
+ }