@elliemae/pui-cli 7.0.0-beta.9 → 7.2.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 (283) hide show
  1. package/README.md +4 -0
  2. package/{lib/babel/babel.config.js → dist/cjs/babel.config.cjs} +3 -7
  3. package/dist/cjs/cli.js +53 -0
  4. package/dist/cjs/commands/build.js +81 -0
  5. package/dist/cjs/commands/codemod.js +55 -0
  6. package/dist/cjs/commands/gendoc.js +53 -0
  7. package/dist/cjs/commands/lint.js +95 -0
  8. package/dist/cjs/commands/pack.js +98 -0
  9. package/dist/cjs/commands/start.js +76 -0
  10. package/dist/cjs/commands/storybook.js +71 -0
  11. package/dist/cjs/commands/test.js +100 -0
  12. package/dist/cjs/commands/tscheck.js +82 -0
  13. package/dist/cjs/commands/utils.js +157 -0
  14. package/dist/cjs/commands/version.js +77 -0
  15. package/dist/cjs/commands/vitest.js +93 -0
  16. package/dist/cjs/dummy.js +1 -0
  17. package/dist/cjs/index.cjs +25 -0
  18. package/dist/cjs/index.js +42 -0
  19. package/dist/cjs/jsdoc.conf.json +17 -0
  20. package/dist/cjs/lint-config/commitlint.config.cjs +1 -0
  21. package/{lib/lint/eslint/common.js → dist/cjs/lint-config/eslint/common.cjs} +5 -5
  22. package/{lib/lint/eslint/non-react.js → dist/cjs/lint-config/eslint/non-react.cjs} +2 -2
  23. package/{lib/lint/eslint/react.js → dist/cjs/lint-config/eslint/react.cjs} +2 -2
  24. package/{lib/lint/eslint/typescript/common.js → dist/cjs/lint-config/eslint/typescript/common.cjs} +1 -1
  25. package/{lib/lint/eslint/typescript/non-react.js → dist/cjs/lint-config/eslint/typescript/non-react.cjs} +2 -2
  26. package/{lib/lint/eslint/typescript/react.js → dist/cjs/lint-config/eslint/typescript/react.cjs} +2 -2
  27. package/dist/cjs/lint-config/lint-staged.config.js +40 -0
  28. package/{lib/lint/prettier.config.js → dist/cjs/lint-config/prettier.config.cjs} +1 -1
  29. package/{lib/lint/stylelint.config.js → dist/cjs/lint-config/stylelint.config.cjs} +2 -2
  30. package/dist/cjs/monorepo/delete-merged-tags.js +58 -0
  31. package/dist/cjs/monorepo/set-registry-version.js +49 -0
  32. package/dist/cjs/monorepo/set-workspace-version.js +56 -0
  33. package/{lib/monorepo/utils.js → dist/cjs/monorepo/utils.cjs} +17 -2
  34. package/dist/cjs/package.json +4 -0
  35. package/dist/cjs/pui-config.js +44 -0
  36. package/{lib/release/release.config.js → dist/cjs/release.config.cjs} +0 -0
  37. package/{lib/server/util/index.js → dist/cjs/server/app-routes.cjs} +5 -15
  38. package/dist/cjs/server/csp.js +94 -0
  39. package/dist/cjs/server/index.js +34 -0
  40. package/dist/cjs/server/logger.js +58 -0
  41. package/dist/cjs/server/middlewares.js +75 -0
  42. package/dist/cjs/server/utils.js +39 -0
  43. package/{lib/testing/jest.config.js → dist/cjs/testing/jest.config.cjs} +10 -10
  44. package/{lib/testing/jest.node.config.js → dist/cjs/testing/jest.node.config.cjs} +1 -1
  45. package/dist/cjs/testing/mocks/axios.js +38 -0
  46. package/dist/cjs/testing/mocks/cssModule.js +24 -0
  47. package/dist/cjs/testing/mocks/html.js +24 -0
  48. package/dist/cjs/testing/mocks/image.js +24 -0
  49. package/dist/cjs/testing/mocks/matchMedia.js +44 -0
  50. package/dist/cjs/testing/mocks/pui-app-loader.js +25 -0
  51. package/dist/cjs/testing/mocks/pui-diagnostics.js +69 -0
  52. package/dist/cjs/testing/mocks/pui-user-monitoring.js +31 -0
  53. package/dist/cjs/testing/mocks/retry-axios.js +28 -0
  54. package/dist/cjs/testing/mocks/svg.js +33 -0
  55. package/dist/cjs/testing/mocks/webpack-hmr.js +25 -0
  56. package/{lib/testing/resolver.js → dist/cjs/testing/resolver.cjs} +0 -0
  57. package/dist/cjs/testing/setup-react-env.js +22 -0
  58. package/dist/cjs/testing/setup-test-env.js +23 -0
  59. package/dist/cjs/testing/setup-tests.js +69 -0
  60. package/dist/cjs/testing/vitest.config.js +52 -0
  61. package/{lib → dist/cjs}/transpile/.swcrc +0 -0
  62. package/dist/cjs/transpile/esbuild.js +134 -0
  63. package/dist/cjs/transpile/react-shim.js +30 -0
  64. package/{lib/transpile/swcrc.config.js → dist/cjs/transpile/swcrc.config.cjs} +1 -1
  65. package/dist/cjs/typedoc.cjs +12 -0
  66. package/{lib → dist/cjs}/typescript/app.tsconfig.json +0 -0
  67. package/{lib → dist/cjs}/typescript/library.tsconfig.json +0 -0
  68. package/dist/cjs/update-notifier.js +37 -0
  69. package/dist/cjs/utils.cjs +23 -0
  70. package/dist/cjs/webpack/helpers.js +237 -0
  71. package/dist/cjs/webpack/webpack.base.babel.js +280 -0
  72. package/dist/cjs/webpack/webpack.dev.babel.js +144 -0
  73. package/dist/cjs/webpack/webpack.lib.base.babel.js +212 -0
  74. package/dist/cjs/webpack/webpack.lib.dev.babel.js +93 -0
  75. package/dist/cjs/webpack/webpack.lib.prod.babel.js +95 -0
  76. package/dist/cjs/webpack/webpack.prod.babel.js +145 -0
  77. package/dist/cjs/webpack/webpack.storybook.js +111 -0
  78. package/dist/esm/babel.config.cjs +97 -0
  79. package/dist/esm/cli.js +33 -0
  80. package/dist/esm/commands/build.js +61 -0
  81. package/dist/esm/commands/codemod.js +29 -0
  82. package/dist/esm/commands/gendoc.js +26 -0
  83. package/dist/esm/commands/lint.js +69 -0
  84. package/dist/esm/commands/pack.js +71 -0
  85. package/dist/esm/commands/start.js +49 -0
  86. package/dist/esm/commands/storybook.js +45 -0
  87. package/dist/esm/commands/test.js +74 -0
  88. package/dist/esm/commands/tscheck.js +56 -0
  89. package/dist/esm/commands/utils.js +143 -0
  90. package/dist/esm/commands/version.js +51 -0
  91. package/dist/esm/commands/vitest.js +66 -0
  92. package/{lib/dummy.ts → dist/esm/dummy.js} +0 -0
  93. package/dist/esm/index.cjs +25 -0
  94. package/dist/esm/index.js +22 -0
  95. package/dist/esm/jsdoc.conf.json +17 -0
  96. package/dist/esm/lint-config/commitlint.config.cjs +1 -0
  97. package/dist/esm/lint-config/eslint/common.cjs +160 -0
  98. package/dist/esm/lint-config/eslint/non-react.cjs +14 -0
  99. package/dist/esm/lint-config/eslint/react.cjs +26 -0
  100. package/dist/esm/lint-config/eslint/typescript/common.cjs +43 -0
  101. package/dist/esm/lint-config/eslint/typescript/non-react.cjs +12 -0
  102. package/dist/esm/lint-config/eslint/typescript/react.cjs +19 -0
  103. package/dist/esm/lint-config/lint-staged.config.js +14 -0
  104. package/dist/esm/lint-config/prettier.config.cjs +8 -0
  105. package/dist/esm/lint-config/stylelint.config.cjs +19 -0
  106. package/dist/esm/monorepo/delete-merged-tags.js +38 -0
  107. package/dist/esm/monorepo/set-registry-version.js +23 -0
  108. package/dist/esm/monorepo/set-workspace-version.js +30 -0
  109. package/dist/esm/monorepo/utils.cjs +30 -0
  110. package/dist/esm/package.json +4 -0
  111. package/dist/esm/pui-config.js +18 -0
  112. package/dist/esm/release.config.cjs +31 -0
  113. package/dist/esm/server/app-routes.cjs +42 -0
  114. package/dist/esm/server/csp.js +68 -0
  115. package/dist/esm/server/index.js +18 -0
  116. package/dist/esm/server/logger.js +32 -0
  117. package/dist/esm/server/middlewares.js +49 -0
  118. package/dist/esm/server/utils.js +13 -0
  119. package/dist/esm/testing/jest.config.cjs +103 -0
  120. package/dist/esm/testing/jest.node.config.cjs +8 -0
  121. package/{lib → dist/esm}/testing/mocks/axios.js +8 -5
  122. package/dist/esm/testing/mocks/cssModule.js +4 -0
  123. package/dist/esm/testing/mocks/html.js +4 -0
  124. package/dist/esm/testing/mocks/image.js +4 -0
  125. package/dist/esm/testing/mocks/matchMedia.js +24 -0
  126. package/dist/esm/testing/mocks/pui-app-loader.js +5 -0
  127. package/dist/esm/testing/mocks/pui-diagnostics.js +49 -0
  128. package/dist/esm/testing/mocks/pui-user-monitoring.js +11 -0
  129. package/dist/esm/testing/mocks/retry-axios.js +8 -0
  130. package/dist/esm/testing/mocks/svg.js +7 -0
  131. package/dist/esm/testing/mocks/webpack-hmr.js +5 -0
  132. package/dist/esm/testing/resolver.cjs +47 -0
  133. package/dist/esm/testing/setup-react-env.js +3 -0
  134. package/dist/esm/testing/setup-test-env.js +4 -0
  135. package/dist/esm/testing/setup-tests.js +50 -0
  136. package/dist/esm/testing/vitest.config.js +25 -0
  137. package/dist/esm/transpile/.swcrc +11 -0
  138. package/{lib → dist/esm}/transpile/esbuild.js +35 -44
  139. package/dist/esm/transpile/react-shim.js +4 -0
  140. package/dist/esm/transpile/swcrc.config.cjs +13 -0
  141. package/dist/esm/typedoc.cjs +12 -0
  142. package/dist/esm/typescript/app.tsconfig.json +23 -0
  143. package/dist/esm/typescript/library.tsconfig.json +23 -0
  144. package/dist/esm/update-notifier.js +11 -0
  145. package/dist/esm/utils.cjs +23 -0
  146. package/dist/esm/webpack/helpers.js +211 -0
  147. package/dist/esm/webpack/webpack.base.babel.js +260 -0
  148. package/dist/esm/webpack/webpack.dev.babel.js +121 -0
  149. package/dist/esm/webpack/webpack.lib.base.babel.js +192 -0
  150. package/dist/esm/webpack/webpack.lib.dev.babel.js +67 -0
  151. package/dist/esm/webpack/webpack.lib.prod.babel.js +69 -0
  152. package/dist/esm/webpack/webpack.prod.babel.js +124 -0
  153. package/dist/esm/webpack/webpack.storybook.js +85 -0
  154. package/dist/types/babel.config.d.cts +59 -0
  155. package/dist/types/cli.d.ts +2 -0
  156. package/dist/types/commands/build.d.ts +14 -0
  157. package/dist/types/commands/codemod.d.ts +6 -0
  158. package/dist/types/commands/gendoc.d.ts +6 -0
  159. package/dist/types/commands/lint.d.ts +29 -0
  160. package/dist/types/commands/pack.d.ts +26 -0
  161. package/dist/types/commands/start.d.ts +13 -0
  162. package/dist/types/commands/storybook.d.ts +19 -0
  163. package/dist/types/commands/test.d.ts +39 -0
  164. package/dist/types/commands/tscheck.d.ts +14 -0
  165. package/dist/types/commands/utils.d.ts +16 -0
  166. package/dist/types/commands/version.d.ts +30 -0
  167. package/dist/types/commands/vitest.d.ts +35 -0
  168. package/{lib/testing/vitest.setup.ts → dist/types/dummy.d.ts} +0 -0
  169. package/dist/types/index.d.cts +10 -0
  170. package/dist/types/index.d.ts +10 -0
  171. package/dist/types/lint-config/commitlint.config.d.cts +4 -0
  172. package/dist/types/lint-config/eslint/common.d.cts +127 -0
  173. package/dist/types/lint-config/eslint/non-react.d.cts +93 -0
  174. package/dist/types/lint-config/eslint/react.d.cts +123 -0
  175. package/dist/types/lint-config/eslint/typescript/common.d.cts +37 -0
  176. package/dist/types/lint-config/eslint/typescript/non-react.d.cts +87 -0
  177. package/dist/types/lint-config/eslint/typescript/react.d.cts +118 -0
  178. package/dist/types/lint-config/lint-staged.config.d.ts +5 -0
  179. package/dist/types/lint-config/prettier.config.d.cts +8 -0
  180. package/dist/types/lint-config/stylelint.config.d.cts +11 -0
  181. package/dist/types/monorepo/delete-merged-tags.d.ts +1 -0
  182. package/dist/types/monorepo/set-registry-version.d.ts +1 -0
  183. package/dist/types/monorepo/set-workspace-version.d.ts +1 -0
  184. package/dist/types/monorepo/utils.d.cts +1 -0
  185. package/dist/types/pui-config.d.ts +1 -0
  186. package/dist/types/release.config.d.cts +9 -0
  187. package/dist/types/server/app-routes.d.cts +1 -0
  188. package/dist/types/server/csp.d.ts +10 -0
  189. package/dist/types/server/index.d.ts +1 -0
  190. package/dist/types/server/logger.d.ts +4 -0
  191. package/dist/types/server/middlewares.d.ts +2 -0
  192. package/dist/types/server/utils.d.ts +3 -0
  193. package/dist/types/testing/jest.config.d.cts +39 -0
  194. package/dist/types/testing/jest.node.config.d.cts +39 -0
  195. package/dist/types/testing/mocks/axios.d.ts +17 -0
  196. package/dist/types/testing/mocks/cssModule.d.ts +2 -0
  197. package/dist/types/testing/mocks/html.d.ts +2 -0
  198. package/dist/types/testing/mocks/image.d.ts +2 -0
  199. package/dist/types/testing/mocks/matchMedia.d.ts +1 -0
  200. package/dist/types/testing/mocks/pui-app-loader.d.ts +1 -0
  201. package/dist/types/testing/mocks/pui-diagnostics.d.ts +28 -0
  202. package/dist/types/testing/mocks/pui-user-monitoring.d.ts +3 -0
  203. package/dist/types/testing/mocks/retry-axios.d.ts +3 -0
  204. package/dist/types/testing/mocks/svg.d.ts +3 -0
  205. package/dist/types/testing/mocks/webpack-hmr.d.ts +1 -0
  206. package/dist/types/testing/resolver.d.cts +2 -0
  207. package/dist/types/testing/setup-react-env.d.ts +1 -0
  208. package/dist/types/testing/setup-test-env.d.ts +2 -0
  209. package/dist/types/testing/setup-tests.d.ts +1 -0
  210. package/dist/types/testing/vitest.config.d.ts +2 -0
  211. package/dist/types/transpile/esbuild.d.ts +13 -0
  212. package/dist/types/transpile/react-shim.d.ts +2 -0
  213. package/dist/types/transpile/swcrc.config.d.cts +1 -0
  214. package/dist/types/typedoc.d.cts +3 -0
  215. package/dist/types/update-notifier.d.ts +1 -0
  216. package/dist/types/utils.d.cts +4 -0
  217. package/dist/types/webpack/helpers.d.ts +28 -0
  218. package/dist/types/webpack/webpack.base.babel.d.ts +90 -0
  219. package/dist/types/webpack/webpack.dev.babel.d.ts +2 -0
  220. package/dist/types/webpack/webpack.lib.base.babel.d.ts +110 -0
  221. package/dist/types/webpack/webpack.lib.dev.babel.d.ts +110 -0
  222. package/dist/types/webpack/webpack.lib.prod.babel.d.ts +110 -0
  223. package/dist/types/webpack/webpack.prod.babel.d.ts +2 -0
  224. package/dist/types/webpack/webpack.storybook.d.ts +4 -0
  225. package/package.json +159 -144
  226. package/lib/cli-commands/build.js +0 -60
  227. package/lib/cli-commands/codemod.js +0 -31
  228. package/lib/cli-commands/gendoc.js +0 -36
  229. package/lib/cli-commands/lint.js +0 -75
  230. package/lib/cli-commands/pack.js +0 -67
  231. package/lib/cli-commands/start.js +0 -49
  232. package/lib/cli-commands/storybook.js +0 -53
  233. package/lib/cli-commands/test.js +0 -63
  234. package/lib/cli-commands/tsc.js +0 -103
  235. package/lib/cli-commands/utils.js +0 -135
  236. package/lib/cli-commands/version.js +0 -53
  237. package/lib/cli-commands/vitest.js +0 -66
  238. package/lib/cli.js +0 -33
  239. package/lib/docgen/jsdoc.config.js +0 -17
  240. package/lib/index.js +0 -25
  241. package/lib/lint/commitlint.config.js +0 -1
  242. package/lib/lint/lint-staged.config.js +0 -16
  243. package/lib/monorepo/delete-merged-tags.js +0 -48
  244. package/lib/monorepo/set-registry-version.js +0 -22
  245. package/lib/monorepo/set-workspace-version.js +0 -29
  246. package/lib/pui-config/index.js +0 -18
  247. package/lib/scripts/helpers/checkmark.js +0 -15
  248. package/lib/scripts/helpers/get-npm-config.js +0 -3
  249. package/lib/scripts/helpers/progress.js +0 -19
  250. package/lib/scripts/helpers/xmark.js +0 -13
  251. package/lib/scripts/npmcheckversion.js +0 -8
  252. package/lib/scripts/update-notifier.js +0 -7
  253. package/lib/server/csp.js +0 -74
  254. package/lib/server/index.js +0 -37
  255. package/lib/server/logger.js +0 -42
  256. package/lib/server/middlewares/addDevMiddlewares.js +0 -39
  257. package/lib/server/middlewares/addProdMiddlewares.js +0 -30
  258. package/lib/server/middlewares/index.js +0 -37
  259. package/lib/testing/mocks/cssModule.js +0 -1
  260. package/lib/testing/mocks/html.js +0 -1
  261. package/lib/testing/mocks/image.js +0 -1
  262. package/lib/testing/mocks/matchMedia.js +0 -24
  263. package/lib/testing/mocks/pui-app-loader.js +0 -1
  264. package/lib/testing/mocks/pui-diagnostics.js +0 -28
  265. package/lib/testing/mocks/pui-user-monitoring.js +0 -3
  266. package/lib/testing/mocks/retry-axios.js +0 -3
  267. package/lib/testing/mocks/svg.js +0 -5
  268. package/lib/testing/mocks/webpack-hmr.js +0 -1
  269. package/lib/testing/setup-react-env.js +0 -3
  270. package/lib/testing/setup-tests.js +0 -58
  271. package/lib/testing/vitest.config.ts +0 -16
  272. package/lib/transpile/react-shim.js +0 -2
  273. package/lib/typescript/tsc-files/index.js +0 -66
  274. package/lib/typescript/tsc-files/utils.js +0 -16
  275. package/lib/typescript/util.js +0 -5
  276. package/lib/webpack/helpers.js +0 -252
  277. package/lib/webpack/webpack.base.babel.js +0 -242
  278. package/lib/webpack/webpack.dev.babel.js +0 -139
  279. package/lib/webpack/webpack.lib.base.babel.js +0 -205
  280. package/lib/webpack/webpack.lib.dev.babel.js +0 -49
  281. package/lib/webpack/webpack.lib.prod.babel.js +0 -77
  282. package/lib/webpack/webpack.prod.babel.js +0 -142
  283. package/lib/webpack/webpack.storybook.js +0 -87
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var webpack_lib_dev_babel_exports = {};
26
+ __export(webpack_lib_dev_babel_exports, {
27
+ default: () => webpack_lib_dev_babel_default
28
+ });
29
+ module.exports = __toCommonJS(webpack_lib_dev_babel_exports);
30
+ var import_node_path = __toESM(require("node:path"), 1);
31
+ var import_fast_glob = __toESM(require("fast-glob"), 1);
32
+ var import_circular_dependency_plugin = __toESM(require("circular-dependency-plugin"), 1);
33
+ var import_mini_css_extract_plugin = __toESM(require("mini-css-extract-plugin"), 1);
34
+ var import_html_webpack_plugin = __toESM(require("html-webpack-plugin"), 1);
35
+ var import_helpers = require("./helpers.js");
36
+ var import_webpack_lib_base_babel = require("./webpack.lib.base.babel.js");
37
+ const libraryName = (0, import_helpers.getLibraryName)();
38
+ const { basePath } = (0, import_helpers.getPaths)();
39
+ const getHtmlWebpackPlugins = () => {
40
+ const htmlTemplateFiles = import_fast_glob.default.sync([import_node_path.default.join(process.cwd(), "lib/*.html")]);
41
+ return htmlTemplateFiles.map(
42
+ (htmlTemplateFile) => new import_html_webpack_plugin.default({
43
+ template: htmlTemplateFile,
44
+ filename: import_node_path.default.basename(htmlTemplateFile),
45
+ libraryName,
46
+ inject: true
47
+ })
48
+ );
49
+ };
50
+ var webpack_lib_dev_babel_default = (0, import_webpack_lib_base_babel.baseConfig)({
51
+ mode: "development",
52
+ output: {
53
+ filename: `js/${libraryName}.js`,
54
+ chunkFilename: `js/${libraryName}.chunk.js`,
55
+ assetModuleFilename: "[name][ext][query]"
56
+ },
57
+ optimization: {
58
+ splitChunks: {
59
+ chunks: "all"
60
+ }
61
+ },
62
+ resolve: {
63
+ alias: {}
64
+ },
65
+ plugins: [
66
+ ...getHtmlWebpackPlugins(),
67
+ new import_circular_dependency_plugin.default({
68
+ exclude: /a\.(js|ts|jsx|tsx)|node_modules/,
69
+ failOnError: false
70
+ }),
71
+ new import_mini_css_extract_plugin.default({
72
+ filename: `css/${libraryName}.css`,
73
+ chunkFilename: `css/${libraryName}.chunk.css`
74
+ })
75
+ ],
76
+ devtool: "eval-source-map",
77
+ performance: {
78
+ hints: false
79
+ },
80
+ devServer: {
81
+ allowedHosts: "all",
82
+ client: {
83
+ overlay: {
84
+ errors: true,
85
+ warnings: false
86
+ }
87
+ },
88
+ historyApiFallback: true,
89
+ hot: true,
90
+ open: [basePath],
91
+ port: process.env.PORT || "auto"
92
+ }
93
+ });
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var webpack_lib_prod_babel_exports = {};
26
+ __export(webpack_lib_prod_babel_exports, {
27
+ default: () => webpack_lib_prod_babel_default
28
+ });
29
+ module.exports = __toCommonJS(webpack_lib_prod_babel_exports);
30
+ var import_node_path = __toESM(require("node:path"), 1);
31
+ var import_fast_glob = __toESM(require("fast-glob"), 1);
32
+ var import_mini_css_extract_plugin = __toESM(require("mini-css-extract-plugin"), 1);
33
+ var import_html_webpack_plugin = __toESM(require("html-webpack-plugin"), 1);
34
+ var import_webpack_bundle_analyzer = require("webpack-bundle-analyzer");
35
+ var import_esbuild_loader = require("esbuild-loader");
36
+ var import_browserslist_to_esbuild = __toESM(require("browserslist-to-esbuild"), 1);
37
+ var import_helpers = require("./helpers.js");
38
+ var import_webpack_lib_base_babel = require("./webpack.lib.base.babel.js");
39
+ const libraryName = process.env.LIBRARY_FILE_NAME || (0, import_helpers.getLibraryName)();
40
+ const getHtmlWebpackPlugins = () => {
41
+ const htmlTemplateFiles = import_fast_glob.default.sync([import_node_path.default.join(process.cwd(), "lib/*.html")]);
42
+ return htmlTemplateFiles.map(
43
+ (htmlTemplateFile) => new import_html_webpack_plugin.default({
44
+ template: htmlTemplateFile,
45
+ filename: import_node_path.default.basename(htmlTemplateFile),
46
+ libraryName,
47
+ inject: true,
48
+ minify: {
49
+ removeComments: true,
50
+ collapseWhitespace: true,
51
+ removeRedundantAttributes: true,
52
+ useShortDoctype: true,
53
+ removeEmptyAttributes: true,
54
+ removeStyleLinkTypeAttributes: true,
55
+ keepClosingSlash: true,
56
+ minifyJS: true,
57
+ minifyCSS: true,
58
+ minifyURLs: true
59
+ }
60
+ })
61
+ );
62
+ };
63
+ var webpack_lib_prod_babel_default = (0, import_webpack_lib_base_babel.baseConfig)({
64
+ mode: "production",
65
+ optimization: {
66
+ moduleIds: "deterministic",
67
+ minimize: true,
68
+ minimizer: [
69
+ new import_esbuild_loader.ESBuildMinifyPlugin({
70
+ target: (0, import_browserslist_to_esbuild.default)(),
71
+ css: true
72
+ })
73
+ ],
74
+ nodeEnv: "production",
75
+ sideEffects: true,
76
+ concatenateModules: true,
77
+ splitChunks: {
78
+ chunks: "all"
79
+ }
80
+ },
81
+ plugins: [
82
+ ...getHtmlWebpackPlugins(),
83
+ new import_mini_css_extract_plugin.default({}),
84
+ ...(0, import_helpers.getCompressionPlugins)(true),
85
+ new import_webpack_bundle_analyzer.BundleAnalyzerPlugin({
86
+ analyzerMode: "static",
87
+ reportFilename: import_node_path.default.join(process.cwd(), "reports/bundle-stats.html"),
88
+ openAnalyzer: false
89
+ })
90
+ ],
91
+ devtool: "source-map",
92
+ performance: {
93
+ assetFilter: (assetFilename) => !/(\.map$)|(^(main\.|favicon\.))/.test(assetFilename)
94
+ }
95
+ });
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var webpack_prod_babel_exports = {};
26
+ __export(webpack_prod_babel_exports, {
27
+ default: () => webpack_prod_babel_default
28
+ });
29
+ module.exports = __toCommonJS(webpack_prod_babel_exports);
30
+ var import_node_path = __toESM(require("node:path"), 1);
31
+ var import_html_webpack_plugin = __toESM(require("html-webpack-plugin"), 1);
32
+ var import_workbox_webpack_plugin = require("workbox-webpack-plugin");
33
+ var import_mini_css_extract_plugin = __toESM(require("mini-css-extract-plugin"), 1);
34
+ var import_webpack_bundle_analyzer = require("webpack-bundle-analyzer");
35
+ var import_esbuild_loader = require("esbuild-loader");
36
+ var import_speed_measure_webpack_plugin = __toESM(require("speed-measure-webpack-plugin"), 1);
37
+ var import_browserslist_to_esbuild = __toESM(require("browserslist-to-esbuild"), 1);
38
+ var import_webpack_base_babel = require("./webpack.base.babel.js");
39
+ var import_helpers = require("./helpers.js");
40
+ const getProdConfig = ({ latestVersion = true } = {}) => {
41
+ const { buildPath } = (0, import_helpers.getPaths)(latestVersion);
42
+ return {
43
+ mode: "production",
44
+ entry: {
45
+ app: import_node_path.default.join(process.cwd(), "app/index")
46
+ },
47
+ output: {
48
+ path: buildPath,
49
+ publicPath: "auto",
50
+ filename: "latest/js/[name].[contenthash].js",
51
+ chunkFilename: "latest/js/[name].[contenthash].chunk.js",
52
+ assetModuleFilename: "latest/assets/[name].[hash][ext][query]"
53
+ },
54
+ optimization: {
55
+ moduleIds: "deterministic",
56
+ minimizer: [
57
+ new import_esbuild_loader.ESBuildMinifyPlugin({
58
+ target: (0, import_browserslist_to_esbuild.default)(),
59
+ css: true
60
+ })
61
+ ],
62
+ runtimeChunk: true,
63
+ splitChunks: {
64
+ chunks: "all",
65
+ cacheGroups: {
66
+ emui: {
67
+ name: "emui",
68
+ test: /[\\/]node_modules[\\/](@elliemae)[\\/]/,
69
+ priority: 1
70
+ },
71
+ vendors: {
72
+ name: "vendors",
73
+ test: /[\\/]node_modules[\\/]/
74
+ }
75
+ }
76
+ }
77
+ },
78
+ plugins: [
79
+ ...(0, import_helpers.getCompressionPlugins)(),
80
+ new import_webpack_bundle_analyzer.BundleAnalyzerPlugin({
81
+ analyzerMode: "static",
82
+ reportFilename: import_node_path.default.join(process.cwd(), "reports/bundle-stats.html"),
83
+ openAnalyzer: false
84
+ }),
85
+ new import_workbox_webpack_plugin.GenerateSW({
86
+ swDest: "sw.js",
87
+ clientsClaim: true,
88
+ skipWaiting: true
89
+ })
90
+ ],
91
+ devtool: "source-map",
92
+ performance: {
93
+ assetFilter: (assetFilename) => !/(\.map$)|(^(main\.|favicon\.))/.test(assetFilename)
94
+ }
95
+ };
96
+ };
97
+ const {
98
+ userMonScriptPath,
99
+ globalScriptPath,
100
+ appLoaderScriptPath,
101
+ diagnosticsScriptPath,
102
+ encwLoaderScriptPath,
103
+ basePath
104
+ } = (0, import_helpers.getPaths)();
105
+ const htmlWebpackPlugin = new import_html_webpack_plugin.default({
106
+ inject: !(0, import_helpers.isAppLoaderEnabled)(),
107
+ template: !(0, import_helpers.isAppLoaderEnabled)() ? "app/index.html" : "app/index-app-loader.html",
108
+ minify: {
109
+ removeComments: true,
110
+ collapseWhitespace: true,
111
+ removeRedundantAttributes: true,
112
+ useShortDoctype: true,
113
+ removeEmptyAttributes: true,
114
+ removeStyleLinkTypeAttributes: true,
115
+ keepClosingSlash: true,
116
+ minifyJS: true,
117
+ minifyCSS: true,
118
+ minifyURLs: true
119
+ },
120
+ emui: {
121
+ appVersion: "latest",
122
+ basePath,
123
+ globalScriptPath,
124
+ userMonScriptPath,
125
+ appLoaderScriptPath,
126
+ diagnosticsScriptPath,
127
+ encwLoaderScriptPath,
128
+ googleTagManager: (0, import_helpers.isGoogleTagManagerEnabled)()
129
+ }
130
+ });
131
+ const config = (0, import_webpack_base_babel.baseConfig)(getProdConfig());
132
+ config.plugins.push(htmlWebpackPlugin);
133
+ const addSMPPlugin = (webpackConfig) => {
134
+ const smpConfig = new import_speed_measure_webpack_plugin.default({
135
+ disable: !process.env.MEASURE
136
+ }).wrap(webpackConfig);
137
+ smpConfig.plugins.push(
138
+ new import_mini_css_extract_plugin.default({
139
+ filename: "latest/css/[name].[contenthash].css",
140
+ chunkFilename: "latest/css/[name].[contenthash].chunk.css"
141
+ })
142
+ );
143
+ return smpConfig;
144
+ };
145
+ var webpack_prod_babel_default = addSMPPlugin(config);
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var webpack_storybook_exports = {};
26
+ __export(webpack_storybook_exports, {
27
+ managerWebpack: () => managerWebpack,
28
+ webpackFinal: () => webpackFinal
29
+ });
30
+ module.exports = __toCommonJS(webpack_storybook_exports);
31
+ var import_webpack = __toESM(require("webpack"), 1);
32
+ var import_mini_css_extract_plugin = __toESM(require("mini-css-extract-plugin"), 1);
33
+ var import_copy_webpack_plugin = __toESM(require("copy-webpack-plugin"), 1);
34
+ var import_resolve_typescript_plugin = __toESM(require("resolve-typescript-plugin"), 1);
35
+ var import_helpers = require("./helpers.js");
36
+ var import_utils = require("../utils.cjs");
37
+ const IS_APP = (0, import_utils.isApp)();
38
+ const CWD = process.cwd();
39
+ const getAdditionalPlugins = () => [
40
+ new import_webpack.default.EnvironmentPlugin({
41
+ IS_APP,
42
+ CWD
43
+ }),
44
+ new import_mini_css_extract_plugin.default({
45
+ filename: "[name].[contenthash].css",
46
+ chunkFilename: "[name].[contenthash].chunk.css"
47
+ }),
48
+ new import_copy_webpack_plugin.default({
49
+ patterns: [
50
+ {
51
+ from: "lib/app.config.json",
52
+ to: "app.config.json",
53
+ noErrorOnMissing: true
54
+ },
55
+ {
56
+ from: "app/app.config.json",
57
+ to: "app.config.json",
58
+ noErrorOnMissing: true
59
+ },
60
+ {
61
+ from: "public",
62
+ noErrorOnMissing: true
63
+ }
64
+ ]
65
+ })
66
+ ];
67
+ const getModuleRules = () => [
68
+ {
69
+ type: "asset",
70
+ resourceQuery: /url/
71
+ },
72
+ {
73
+ test: /\.svg$/i,
74
+ issuer: /\.[jt]sx?$/,
75
+ resourceQuery: /^((?!url).)*$/,
76
+ use: ["@svgr/webpack"]
77
+ },
78
+ {
79
+ resourceQuery: /resource/,
80
+ type: "asset/resource"
81
+ }
82
+ ];
83
+ const webpackFinal = async (config, { configType }) => {
84
+ const isProd = configType === "PRODUCTION";
85
+ const fileLoaderRule = config.module.rules.find(
86
+ (rule) => rule.test?.test?.(".svg")
87
+ );
88
+ fileLoaderRule.exclude = /\.svg$/i;
89
+ config.module.rules.unshift(...getModuleRules());
90
+ config.plugins.push(...getAdditionalPlugins());
91
+ if (isProd) {
92
+ config.plugins = config.plugins.concat((0, import_helpers.getCompressionPlugins)());
93
+ }
94
+ config.resolve.alias = { ...config.resolve.alias, ...(0, import_helpers.getAlias)() };
95
+ config.resolve.fallback = { ...config.resolve.fallback, crypto: false };
96
+ config.resolve.extensions.push(".svg");
97
+ config.resolve.plugins = [
98
+ ...config.resolve.plugins || [],
99
+ new import_resolve_typescript_plugin.default({})
100
+ ];
101
+ config.externals = config.externals || {};
102
+ config.externals["@elliemae/pui-user-monitoring"] = "emuiUserMonitoring";
103
+ config.externals["@elliemae/pui-app-loader"] = "emuiAppLoader";
104
+ config.externals["@elliemae/pui-diagnostics"] = "emuiDiagnostics";
105
+ return config;
106
+ };
107
+ const managerWebpack = async (config) => {
108
+ config.plugins = config.plugins.concat((0, import_helpers.getCompressionPlugins)());
109
+ config.resolve.alias = { ...config.resolve.alias, ...(0, import_helpers.getAlias)() };
110
+ return config;
111
+ };
@@ -0,0 +1,97 @@
1
+ const { isApp } = require('./utils.cjs');
2
+
3
+ const nodeEnvPreset = {
4
+ modules: process.env.ES_MODULES === 'false' ? 'commonjs' : false,
5
+ targets: {
6
+ node: 'current',
7
+ },
8
+ };
9
+
10
+ const webEnvPreset = {
11
+ modules: process.env.ES_MODULES === 'false' ? 'commonjs' : false,
12
+ useBuiltIns: 'usage',
13
+ corejs: { version: '3.22', proposals: true },
14
+ };
15
+
16
+ const presetEnvOptions =
17
+ process.env.TARGET_ENV === 'node' ? nodeEnvPreset : webEnvPreset;
18
+
19
+ const config = {
20
+ ignore: [/\/core-js/],
21
+ sourceType: 'unambiguous',
22
+ presets: [
23
+ ['@babel/preset-env', presetEnvOptions],
24
+ ['@babel/preset-react', { runtime: 'automatic' }],
25
+ '@babel/preset-typescript',
26
+ ],
27
+ plugins: [
28
+ [
29
+ 'babel-plugin-module-resolver',
30
+ {
31
+ alias: {
32
+ '@': isApp() ? './app' : './lib',
33
+ },
34
+ stripExtensions: [],
35
+ },
36
+ ],
37
+ ['babel-plugin-styled-components', { displayName: true }],
38
+ ['@babel/plugin-transform-runtime', { regenerator: true }],
39
+ '@babel/plugin-proposal-class-properties',
40
+ '@babel/plugin-syntax-dynamic-import',
41
+ '@babel/plugin-proposal-export-default-from',
42
+ 'lodash',
43
+ 'date-fns',
44
+ ],
45
+ env: {
46
+ development: {
47
+ plugins: [
48
+ ['babel-plugin-styled-components', { displayName: true }],
49
+ '@babel/plugin-transform-react-jsx-source',
50
+ ],
51
+ },
52
+ production: {
53
+ plugins: [
54
+ ['babel-plugin-styled-components', { displayName: false, pure: true }],
55
+ ['transform-remove-console', { exclude: ['error', 'warn'] }],
56
+ 'transform-react-remove-prop-types',
57
+ '@babel/plugin-transform-react-inline-elements',
58
+ '@babel/plugin-transform-react-constant-elements',
59
+ ],
60
+ },
61
+ test: {
62
+ plugins: [
63
+ ['babel-plugin-styled-components', { displayName: true }],
64
+ '@babel/plugin-transform-modules-commonjs',
65
+ 'dynamic-import-node',
66
+ [
67
+ 'babel-plugin-transform-strip-block',
68
+ {
69
+ requireDirective: true,
70
+ identifiers: [{ start: 'block:start', end: 'block:end' }],
71
+ },
72
+ ],
73
+ 'babel-plugin-import-remove-resource-query',
74
+ ],
75
+ },
76
+ },
77
+ };
78
+
79
+ if (
80
+ process.env.STORYBOOK_BUILD !== 'true' &&
81
+ process.env.TARGET_ENV !== 'node'
82
+ ) {
83
+ config.env?.development?.plugins?.push?.('react-refresh/babel');
84
+ }
85
+
86
+ // ToDo: Once ECC team migrates from webpack 3 to webpack 5 remove this strip-block plugin from commonjs output. without this they are receiving error when import.meta is used in app sdk
87
+ if (process.env.ES_MODULES === 'false') {
88
+ config.plugins.push([
89
+ 'babel-plugin-transform-strip-block',
90
+ {
91
+ requireDirective: true,
92
+ identifiers: [{ start: 'block:start', end: 'block:end' }],
93
+ },
94
+ ]);
95
+ }
96
+
97
+ exports.babelConfig = config;
@@ -0,0 +1,33 @@
1
+ #!/usr/bin/env node
2
+ import path from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ import yargs from "yargs";
5
+ import { hideBin } from "yargs/helpers";
6
+ import { config as envConfig } from "dotenv";
7
+ import { notifyUpdates } from "./update-notifier.js";
8
+ import { buildCmd } from "./commands/build.js";
9
+ import { packCmd } from "./commands/pack.js";
10
+ import { startCmd } from "./commands/start.js";
11
+ import { testCmd } from "./commands/test.js";
12
+ import { lintCmd } from "./commands/lint.js";
13
+ import { gendocCmd } from "./commands/gendoc.js";
14
+ import { codemodCmd } from "./commands/codemod.js";
15
+ import { storybookCmd } from "./commands/storybook.js";
16
+ import { vitestCmd } from "./commands/vitest.js";
17
+ import { versionCmd } from "./commands/version.js";
18
+ import { tscheckCmd } from "./commands/tscheck.js";
19
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
20
+ envConfig();
21
+ process.env.PATH += path.delimiter + path.join(__dirname, "..", "node_modules", ".bin");
22
+ yargs(hideBin(process.argv)).command(buildCmd).help().argv;
23
+ yargs(hideBin(process.argv)).command(packCmd).help().argv;
24
+ yargs(hideBin(process.argv)).command(startCmd).help().argv;
25
+ yargs(hideBin(process.argv)).command(testCmd).help().argv;
26
+ yargs(hideBin(process.argv)).command(lintCmd).help().argv;
27
+ yargs(hideBin(process.argv)).command(gendocCmd).help().argv;
28
+ yargs(hideBin(process.argv)).command(codemodCmd).help().argv;
29
+ yargs(hideBin(process.argv)).command(storybookCmd).help().argv;
30
+ yargs(hideBin(process.argv)).command(vitestCmd).help().argv;
31
+ yargs(hideBin(process.argv)).command(versionCmd).help().argv;
32
+ yargs(hideBin(process.argv)).command(tscheckCmd).help().argv;
33
+ notifyUpdates();
@@ -0,0 +1,61 @@
1
+ import path from "node:path";
2
+ import { fileURLToPath } from "node:url";
3
+ import yargs from "yargs";
4
+ import {
5
+ exec,
6
+ logInfo,
7
+ logError,
8
+ logSuccess,
9
+ writeAppInfo,
10
+ copyBuildAssetsToVersionedFolder
11
+ } from "./utils.js";
12
+ import { esBuild, TARGETS } from "../transpile/esbuild.js";
13
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
14
+ const buildWebApp = async () => {
15
+ await exec(`rimraf ./build`);
16
+ await exec(
17
+ `cross-env NODE_ENV=production webpack --config ${path.resolve(
18
+ __dirname,
19
+ "../webpack/webpack.prod.babel.js"
20
+ )} --color`
21
+ );
22
+ await copyBuildAssetsToVersionedFolder();
23
+ await writeAppInfo();
24
+ };
25
+ const buildService = async () => {
26
+ await exec("rimraf ./build");
27
+ await esBuild({
28
+ srcdir: "./app",
29
+ outdir: "build",
30
+ esmOnly: true,
31
+ target: TARGETS.node,
32
+ injectReactShim: false,
33
+ skipNestedPackageJSON: true
34
+ });
35
+ };
36
+ const buildCmd = {
37
+ handler: async ({ service = false }) => {
38
+ try {
39
+ logInfo("Build in progress...");
40
+ if (service)
41
+ await buildService();
42
+ else
43
+ await buildWebApp();
44
+ logSuccess("Build completed");
45
+ } catch (err) {
46
+ logError("Build failed", err);
47
+ yargs().exit(-1, err);
48
+ }
49
+ },
50
+ command: "build",
51
+ describe: "builds front end application or NodeJS service",
52
+ builder: {
53
+ service: {
54
+ type: "boolean",
55
+ default: false
56
+ }
57
+ }
58
+ };
59
+ export {
60
+ buildCmd
61
+ };
@@ -0,0 +1,29 @@
1
+ import yargs from "yargs";
2
+ import { exec, logInfo, logError, logSuccess } from "./utils.js";
3
+ const transform = async (argv) => {
4
+ logInfo("Code modification in-progress...");
5
+ exec(`jscodeshift --ignore-file=.gitignore -t ${argv.transform} .`);
6
+ };
7
+ const codemodCmd = {
8
+ handler: async (argv) => {
9
+ try {
10
+ await transform(argv);
11
+ logSuccess("Code modifications completed. ");
12
+ } catch (err) {
13
+ logError("Code modifications failed", err);
14
+ yargs().exit(-1, err);
15
+ }
16
+ },
17
+ command: "codemod <transform>",
18
+ describe: "Transforms code",
19
+ builder: (yargsRef) => {
20
+ yargsRef.positional("transform", {
21
+ describe: "path to the transform file. Can be either a local path or url",
22
+ type: "string",
23
+ default: "./transform.js"
24
+ });
25
+ }
26
+ };
27
+ export {
28
+ codemodCmd
29
+ };
@@ -0,0 +1,26 @@
1
+ import path from "node:path";
2
+ import { fileURLToPath } from "node:url";
3
+ import yargs from "yargs";
4
+ import { exec, logInfo, logSuccess, logError } from "./utils.js";
5
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
+ const generateDocs = async () => {
7
+ logInfo("Documentation Generation in-progress...");
8
+ await exec(`typedoc --options ${path.resolve(__dirname, "../typedoc.cjs")}`);
9
+ };
10
+ const gendocCmd = {
11
+ handler: async () => {
12
+ try {
13
+ await generateDocs();
14
+ logSuccess("Document generation completed. ");
15
+ } catch (err) {
16
+ logError("Document generation failed", err);
17
+ yargs().exit(-1, err);
18
+ }
19
+ },
20
+ command: "gendoc",
21
+ describe: "Builds documentation from source files",
22
+ builder: {}
23
+ };
24
+ export {
25
+ gendocCmd
26
+ };