qcobjects-cli 2.5.143-beta → 2.5.145-beta

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 (270) hide show
  1. package/.cursor/rules/collaboration-features.mdc +25 -0
  2. package/.cursor/rules/development-guidelines.mdc +37 -0
  3. package/.cursor/rules/project-structure.mdc +36 -0
  4. package/.dockerignore +0 -0
  5. package/.github/FUNDING.yml +0 -0
  6. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  7. package/.github/ISSUE_TEMPLATE/custom.md +0 -0
  8. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  9. package/.github/ISSUE_TEMPLATE/issue-template.md +0 -0
  10. package/.github/workflows/ci.yml +26 -0
  11. package/.github/workflows/codeql-analysis.yml +0 -0
  12. package/.github/workflows/main-pr-source.yml +26 -0
  13. package/.github/workflows/npmpublish-beta.yml +18 -14
  14. package/.github/workflows/npmpublish-lts.yml +18 -14
  15. package/.github/workflows/npmpublish-main.yml +17 -13
  16. package/.github/workflows/open-pr-to-development.yml +70 -0
  17. package/.opencode/instructions/git-workflow.md +46 -0
  18. package/.pre-commit-config.yaml +9 -0
  19. package/AGENTS.md +59 -0
  20. package/CHANGELOG.md +0 -0
  21. package/README.md +75 -0
  22. package/VERSION +1 -1
  23. package/build-esbuild-esm.js +180 -0
  24. package/build-esbuild.js +182 -208
  25. package/deno.json +0 -0
  26. package/dev-requirements.txt +5 -0
  27. package/eslint.config.mjs +0 -0
  28. package/mod.ts +0 -0
  29. package/package.json +45 -44
  30. package/public/browser/api-client_services.js.map +1 -1
  31. package/public/browser/backend/backend-microservice-static.js +211 -219
  32. package/public/browser/backend/backend-microservice-static.js.map +2 -2
  33. package/public/browser/backend/backend-php.js +227 -231
  34. package/public/browser/backend/backend-php.js.map +3 -3
  35. package/public/browser/cli-commands-build-esbuild.js +326 -0
  36. package/public/browser/cli-commands-build-esbuild.js.map +7 -0
  37. package/public/browser/cli-commands-build-typescript.js +114 -0
  38. package/public/browser/cli-commands-build-typescript.js.map +7 -0
  39. package/public/browser/cli-commands-jira.js.map +1 -1
  40. package/public/browser/cli-commands-version.js.map +1 -1
  41. package/public/browser/cli-commands.js +4 -0
  42. package/public/browser/cli-commands.js.map +2 -2
  43. package/public/browser/cli-main.js.map +1 -1
  44. package/public/browser/client_services.js.map +1 -1
  45. package/public/browser/collab-server.js.map +1 -1
  46. package/public/browser/common-pipelog.js.map +1 -1
  47. package/public/browser/defaultsettings.js +68 -27
  48. package/public/browser/defaultsettings.js.map +3 -3
  49. package/public/browser/enterprise-commands.js.map +1 -1
  50. package/public/browser/main-file.js.map +1 -1
  51. package/public/browser/main-http-gae-server.js.map +1 -1
  52. package/public/browser/main-http-server.js.map +1 -1
  53. package/public/browser/main-http2-server.js.map +1 -1
  54. package/public/browser/qcobjects-cli.js.map +1 -1
  55. package/public/browser/qcobjects-collab.js +16 -24
  56. package/public/browser/qcobjects-collab.js.map +2 -2
  57. package/public/browser/qcobjects-createcert.js +46 -54
  58. package/public/browser/qcobjects-createcert.js.map +2 -2
  59. package/public/browser/qcobjects-gae-http-server.js +16 -24
  60. package/public/browser/qcobjects-gae-http-server.js.map +2 -2
  61. package/public/browser/qcobjects-http-server.js +16 -24
  62. package/public/browser/qcobjects-http-server.js.map +2 -2
  63. package/public/browser/qcobjects-http2-server.js +21 -30
  64. package/public/browser/qcobjects-http2-server.js.map +2 -2
  65. package/public/browser/qcobjects-shell.js.map +1 -1
  66. package/public/browser/templates/apps/spa-local.html +0 -0
  67. package/public/browser/templates/apps/spa-local.js +0 -0
  68. package/public/browser/templates/pwa/sw.js +0 -0
  69. package/public/browser/types/global/index.d.js +0 -9
  70. package/public/browser/types/global/index.d.js.map +3 -3
  71. package/public/cjs/api-client_services.js +74 -0
  72. package/public/cjs/api-client_services.js.map +1 -0
  73. package/public/cjs/backend/backend-microservice-static.js +255 -0
  74. package/public/cjs/backend/backend-microservice-static.js.map +1 -0
  75. package/public/cjs/backend/backend-php.js +317 -0
  76. package/public/cjs/backend/backend-php.js.map +1 -0
  77. package/public/cjs/cli-commands-build-esbuild.js +341 -0
  78. package/public/cjs/cli-commands-build-esbuild.js.map +1 -0
  79. package/public/cjs/cli-commands-build-typescript.js +127 -0
  80. package/public/cjs/cli-commands-build-typescript.js.map +1 -0
  81. package/public/cjs/cli-commands-jira.js +115 -0
  82. package/public/cjs/cli-commands-jira.js.map +1 -0
  83. package/public/cjs/cli-commands-publish-static.js +108 -0
  84. package/public/cjs/cli-commands-publish-static.js.map +1 -0
  85. package/public/cjs/cli-commands-version.js +250 -0
  86. package/public/cjs/cli-commands-version.js.map +1 -0
  87. package/public/cjs/cli-commands.js +73 -0
  88. package/public/cjs/cli-commands.js.map +1 -0
  89. package/public/cjs/cli-main.js +487 -0
  90. package/public/cjs/cli-main.js.map +1 -0
  91. package/public/cjs/client_services.js +80 -0
  92. package/public/cjs/client_services.js.map +1 -0
  93. package/public/cjs/collab-server.js +404 -0
  94. package/public/cjs/collab-server.js.map +1 -0
  95. package/public/cjs/common-pipelog.js +57 -0
  96. package/public/cjs/common-pipelog.js.map +1 -0
  97. package/public/cjs/defaultsettings.js +496 -0
  98. package/public/cjs/defaultsettings.js.map +1 -0
  99. package/public/cjs/enterprise-commands.js +173 -0
  100. package/public/cjs/enterprise-commands.js.map +1 -0
  101. package/public/cjs/index.js +38 -0
  102. package/public/cjs/index.js.map +1 -0
  103. package/public/cjs/main-file.js +161 -0
  104. package/public/cjs/main-file.js.map +1 -0
  105. package/public/cjs/main-http-gae-server.js +498 -0
  106. package/public/cjs/main-http-gae-server.js.map +1 -0
  107. package/public/cjs/main-http-server.js +540 -0
  108. package/public/cjs/main-http-server.js.map +1 -0
  109. package/public/cjs/main-http2-server.js +398 -0
  110. package/public/cjs/main-http2-server.js.map +1 -0
  111. package/public/cjs/qcobjects-cli.js +105 -0
  112. package/public/cjs/qcobjects-cli.js.map +1 -0
  113. package/public/cjs/qcobjects-collab.js +51 -0
  114. package/public/cjs/qcobjects-collab.js.map +1 -0
  115. package/public/cjs/qcobjects-createcert.js +89 -0
  116. package/public/cjs/qcobjects-createcert.js.map +1 -0
  117. package/public/cjs/qcobjects-gae-http-server.js +51 -0
  118. package/public/cjs/qcobjects-gae-http-server.js.map +1 -0
  119. package/public/cjs/qcobjects-http-server.js +51 -0
  120. package/public/cjs/qcobjects-http-server.js.map +1 -0
  121. package/public/cjs/qcobjects-http2-server.js +54 -0
  122. package/public/cjs/qcobjects-http2-server.js.map +1 -0
  123. package/public/cjs/qcobjects-shell.js +145 -0
  124. package/public/cjs/qcobjects-shell.js.map +1 -0
  125. package/public/cjs/templates/apps/spa-local.html +0 -0
  126. package/public/cjs/templates/apps/spa-local.js +0 -0
  127. package/public/cjs/templates/pwa/sw.js +0 -0
  128. package/public/esm/api-client_services.mjs.map +1 -1
  129. package/public/esm/backend/backend-microservice-static.mjs +207 -216
  130. package/public/esm/backend/backend-microservice-static.mjs.map +2 -2
  131. package/public/esm/backend/backend-php.mjs +228 -232
  132. package/public/esm/backend/backend-php.mjs.map +2 -2
  133. package/public/esm/cli-commands-build-esbuild.mjs +295 -0
  134. package/public/esm/cli-commands-build-esbuild.mjs.map +7 -0
  135. package/public/esm/cli-commands-build-typescript.mjs +83 -0
  136. package/public/esm/cli-commands-build-typescript.mjs.map +7 -0
  137. package/public/esm/cli-commands-jira.mjs +1 -1
  138. package/public/esm/cli-commands-jira.mjs.map +1 -1
  139. package/public/esm/cli-commands-version.mjs.map +1 -1
  140. package/public/esm/cli-commands.mjs +7 -3
  141. package/public/esm/cli-commands.mjs.map +2 -2
  142. package/public/esm/cli-main.mjs +6 -6
  143. package/public/esm/cli-main.mjs.map +1 -1
  144. package/public/esm/client_services.mjs.map +1 -1
  145. package/public/esm/collab-server.mjs.map +1 -1
  146. package/public/esm/common-pipelog.mjs.map +1 -1
  147. package/public/esm/defaultsettings.mjs +68 -27
  148. package/public/esm/defaultsettings.mjs.map +3 -3
  149. package/public/esm/enterprise-commands.mjs.map +1 -1
  150. package/public/esm/index.mjs +1 -1
  151. package/public/esm/main-file.mjs.map +1 -1
  152. package/public/esm/main-http-gae-server.mjs +2 -2
  153. package/public/esm/main-http-gae-server.mjs.map +1 -1
  154. package/public/esm/main-http-server.mjs +2 -2
  155. package/public/esm/main-http-server.mjs.map +1 -1
  156. package/public/esm/main-http2-server.mjs +2 -2
  157. package/public/esm/main-http2-server.mjs.map +1 -1
  158. package/public/esm/qcobjects-cli.mjs +2 -2
  159. package/public/esm/qcobjects-cli.mjs.map +1 -1
  160. package/public/esm/qcobjects-collab.mjs +14 -23
  161. package/public/esm/qcobjects-collab.mjs.map +2 -2
  162. package/public/esm/qcobjects-createcert.mjs +43 -52
  163. package/public/esm/qcobjects-createcert.mjs.map +2 -2
  164. package/public/esm/qcobjects-gae-http-server.mjs +14 -23
  165. package/public/esm/qcobjects-gae-http-server.mjs.map +2 -2
  166. package/public/esm/qcobjects-http-server.mjs +14 -23
  167. package/public/esm/qcobjects-http-server.mjs.map +2 -2
  168. package/public/esm/qcobjects-http2-server.mjs +21 -31
  169. package/public/esm/qcobjects-http2-server.mjs.map +2 -2
  170. package/public/esm/qcobjects-shell.mjs +1 -1
  171. package/public/esm/qcobjects-shell.mjs.map +1 -1
  172. package/public/esm/templates/apps/spa-local.html +0 -0
  173. package/public/esm/templates/apps/spa-local.js +0 -0
  174. package/public/esm/templates/pwa/sw.js +0 -0
  175. package/public/esm/types/global/index.d.mjs +0 -9
  176. package/public/esm/types/global/index.d.mjs.map +3 -3
  177. package/public/types/index.d.ts +29 -3
  178. package/spec/support/jasmine.json +0 -0
  179. package/spec/testsSpec.ts +0 -0
  180. package/src/api-client_services.ts +1 -1
  181. package/src/backend/backend-microservice-static.ts +196 -196
  182. package/src/backend/backend-php.ts +240 -245
  183. package/src/cli-commands-build-esbuild.ts +375 -0
  184. package/src/cli-commands-build-typescript.ts +139 -0
  185. package/src/cli-commands-jira.ts +1 -1
  186. package/src/cli-commands-publish-static.ts +0 -0
  187. package/src/cli-commands-version.ts +1 -1
  188. package/src/cli-commands.ts +3 -1
  189. package/src/cli-main.ts +1 -1
  190. package/src/client_services.ts +1 -1
  191. package/src/collab-server.ts +1 -1
  192. package/src/common-pipelog.ts +1 -1
  193. package/src/defaultsettings.ts +65 -19
  194. package/src/enterprise-commands.ts +1 -1
  195. package/src/index.ts +0 -0
  196. package/src/main-file.ts +1 -1
  197. package/src/main-http-gae-server.ts +1 -1
  198. package/src/main-http-server.ts +1 -1
  199. package/src/main-http2-server.ts +1 -1
  200. package/src/qcobjects-cli.ts +1 -1
  201. package/src/qcobjects-collab.ts +1 -1
  202. package/src/qcobjects-createcert.ts +1 -1
  203. package/src/qcobjects-gae-http-server.ts +1 -1
  204. package/src/qcobjects-http-server.ts +1 -1
  205. package/src/qcobjects-http2-server.ts +4 -5
  206. package/src/qcobjects-shell.ts +1 -1
  207. package/src/templates/apps/spa-local.html +0 -0
  208. package/src/templates/apps/spa-local.js +0 -0
  209. package/src/templates/pwa/sw.js +0 -0
  210. package/src/types/global/index.d.ts +0 -0
  211. package/transpile.js +0 -0
  212. package/tsconfig.d.json +0 -0
  213. package/tsconfig.jasmine.json +0 -0
  214. package/tsconfig.json +3 -3
  215. package/.gitlab-ci.yml +0 -16
  216. package/public/cjs/api-client_services.cjs +0 -79
  217. package/public/cjs/api-client_services.cjs.map +0 -7
  218. package/public/cjs/backend/backend-microservice-static.cjs +0 -245
  219. package/public/cjs/backend/backend-microservice-static.cjs.map +0 -7
  220. package/public/cjs/backend/backend-php.cjs +0 -301
  221. package/public/cjs/backend/backend-php.cjs.map +0 -7
  222. package/public/cjs/cli-commands-jira.cjs +0 -112
  223. package/public/cjs/cli-commands-jira.cjs.map +0 -7
  224. package/public/cjs/cli-commands-publish-static.cjs +0 -109
  225. package/public/cjs/cli-commands-publish-static.cjs.map +0 -7
  226. package/public/cjs/cli-commands-version.cjs +0 -252
  227. package/public/cjs/cli-commands-version.cjs.map +0 -7
  228. package/public/cjs/cli-commands.cjs +0 -45
  229. package/public/cjs/cli-commands.cjs.map +0 -7
  230. package/public/cjs/cli-main.cjs +0 -417
  231. package/public/cjs/cli-main.cjs.map +0 -7
  232. package/public/cjs/client_services.cjs +0 -86
  233. package/public/cjs/client_services.cjs.map +0 -7
  234. package/public/cjs/collab-server.cjs +0 -444
  235. package/public/cjs/collab-server.cjs.map +0 -7
  236. package/public/cjs/common-pipelog.cjs +0 -50
  237. package/public/cjs/common-pipelog.cjs.map +0 -7
  238. package/public/cjs/defaultsettings.cjs +0 -432
  239. package/public/cjs/defaultsettings.cjs.map +0 -7
  240. package/public/cjs/enterprise-commands.cjs +0 -175
  241. package/public/cjs/enterprise-commands.cjs.map +0 -7
  242. package/public/cjs/index.cjs +0 -36
  243. package/public/cjs/index.cjs.map +0 -7
  244. package/public/cjs/main-file.cjs +0 -194
  245. package/public/cjs/main-file.cjs.map +0 -7
  246. package/public/cjs/main-http-gae-server.cjs +0 -522
  247. package/public/cjs/main-http-gae-server.cjs.map +0 -7
  248. package/public/cjs/main-http-server.cjs +0 -588
  249. package/public/cjs/main-http-server.cjs.map +0 -7
  250. package/public/cjs/main-http2-server.cjs +0 -431
  251. package/public/cjs/main-http2-server.cjs.map +0 -7
  252. package/public/cjs/qcobjects-cli.cjs +0 -92
  253. package/public/cjs/qcobjects-cli.cjs.map +0 -7
  254. package/public/cjs/qcobjects-collab.cjs +0 -43
  255. package/public/cjs/qcobjects-collab.cjs.map +0 -7
  256. package/public/cjs/qcobjects-createcert.cjs +0 -75
  257. package/public/cjs/qcobjects-createcert.cjs.map +0 -7
  258. package/public/cjs/qcobjects-gae-http-server.cjs +0 -43
  259. package/public/cjs/qcobjects-gae-http-server.cjs.map +0 -7
  260. package/public/cjs/qcobjects-http-server.cjs +0 -43
  261. package/public/cjs/qcobjects-http-server.cjs.map +0 -7
  262. package/public/cjs/qcobjects-http2-server.cjs +0 -49
  263. package/public/cjs/qcobjects-http2-server.cjs.map +0 -7
  264. package/public/cjs/qcobjects-shell.cjs +0 -185
  265. package/public/cjs/qcobjects-shell.cjs.map +0 -7
  266. package/public/cjs/types/global/index.d.cjs +0 -2
  267. package/public/cjs/types/global/index.d.cjs.map +0 -7
  268. package/public/types/index.d.ts.map +0 -1
  269. package/src/index.cts +0 -2
  270. package/src/index.mts +0 -2
@@ -0,0 +1,326 @@
1
+ "use strict";
2
+ var global = (() => {
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ var __export = (target, all) => {
11
+ for (var name in all)
12
+ __defProp(target, name, { get: all[name], enumerable: true });
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
28
+ mod
29
+ ));
30
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
31
+ var cli_commands_build_esbuild_exports = {};
32
+ __export(cli_commands_build_esbuild_exports, {
33
+ CommandHandler: () => CommandHandler
34
+ });
35
+ var import_node_path = __toESM(require("node:path"));
36
+ var import_node_fs = require("node:fs");
37
+ var import_promises = __toESM(require("node:fs/promises"));
38
+ var import_glob = __toESM(require("glob"));
39
+ var import_esbuild = __toESM(require("esbuild"));
40
+ var import_esbuild_plugin_alias = __toESM(require("esbuild-plugin-alias"));
41
+ var import_qcobjects = require("qcobjects");
42
+ const externalPackages = [
43
+ "node:fs",
44
+ "node:path",
45
+ "node:os",
46
+ "node:util",
47
+ "node:events",
48
+ "node:stream",
49
+ "node:http",
50
+ "node:https",
51
+ "node:crypto",
52
+ "node:zlib",
53
+ "node:buffer",
54
+ "node:url",
55
+ "node:querystring",
56
+ "node:child_process",
57
+ "node:cluster",
58
+ "node:dgram",
59
+ "node:dns",
60
+ "node:net",
61
+ "node:readline",
62
+ "node:repl",
63
+ "node:tls",
64
+ "node:tty",
65
+ "node:vm",
66
+ "node:worker_threads"
67
+ ];
68
+ const nameToExtension = /* @__PURE__ */ __name((name, ext, settings) => {
69
+ function isPackage(name2) {
70
+ return !name2.startsWith(".") && !name2.startsWith("/") && !name2.includes("/");
71
+ }
72
+ __name(isPackage, "isPackage");
73
+ const hasExtension = /\.[^/\\]+$/.test(name);
74
+ const isExternalPackage = name.startsWith("qcobjects") || name.startsWith("qcobjects-sdk") || name.startsWith("node:") || name.startsWith("fs") || name.startsWith("path") || name.startsWith("os") || name.startsWith("util") || name.startsWith("events") || name.startsWith("stream") || name.startsWith("http") || name.startsWith("https") || name.startsWith("crypto") || name.startsWith("zlib") || name.startsWith("buffer") || name.startsWith("url") || name.startsWith("querystring") || name.startsWith("child_process") || name.startsWith("cluster") || name.startsWith("dgram") || name.startsWith("dns") || name.startsWith("net") || name.startsWith("readline") || name.startsWith("repl") || name.startsWith("tls") || name.startsWith("tty") || name.startsWith("vm") || name.startsWith("worker_threads") || externalPackages.includes(name);
75
+ if (!hasExtension && !isPackage(name) && !isExternalPackage) {
76
+ name += ext;
77
+ }
78
+ return name;
79
+ }, "nameToExtension");
80
+ const addExtensions = /* @__PURE__ */ __name((filePath, toExt, settings) => {
81
+ const content = (0, import_node_fs.readFileSync)(filePath, "utf8");
82
+ const updatedContent = content.replace(/(from\s+['"])(.*?)(['"])/g, (match, p1, p2, p3) => {
83
+ return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;
84
+ }).replace(/(import\s+['"])(.*?)(['"])/g, (match, p1, p2, p3) => {
85
+ return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;
86
+ }).replace(/(export\s+['"])(.*?)(['"])/g, (match, p1, p2, p3) => {
87
+ return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;
88
+ }).replace(/(require\s*\(\s*['"])(.*?)(['"]\s*\))/g, (match, p1, p2, p3) => {
89
+ return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;
90
+ });
91
+ (0, import_node_fs.writeFileSync)(filePath, updatedContent, "utf8");
92
+ }, "addExtensions");
93
+ const copyDir = /* @__PURE__ */ __name(async (source, dest, exclude) => {
94
+ source = import_node_path.default.resolve(source);
95
+ dest = import_node_path.default.resolve(dest);
96
+ const dname = import_node_path.default.basename(source);
97
+ const dirExcluded = exclude.includes(dname);
98
+ const isDir = /* @__PURE__ */ __name(async (d) => {
99
+ try {
100
+ const stat = await import_promises.default.stat(d);
101
+ return stat.isDirectory();
102
+ } catch {
103
+ return false;
104
+ }
105
+ }, "isDir");
106
+ const isFile = /* @__PURE__ */ __name(async (d) => {
107
+ try {
108
+ const stat = await import_promises.default.stat(d);
109
+ return stat.isFile();
110
+ } catch {
111
+ return false;
112
+ }
113
+ }, "isFile");
114
+ if (await isDir(source) && !dirExcluded) {
115
+ await import_promises.default.mkdir(dest, { recursive: true });
116
+ const paths = await import_promises.default.readdir(source, { withFileTypes: true });
117
+ const dirs = paths.filter((d) => d.isDirectory());
118
+ const files = paths.filter((f) => f.isFile());
119
+ for (const f of files) {
120
+ const sourceFile = import_node_path.default.resolve(source, f.name);
121
+ const destFile = import_node_path.default.resolve(dest, f.name);
122
+ const fileExcluded = exclude.includes(f.name);
123
+ if (await isFile(sourceFile) && !fileExcluded) {
124
+ import_qcobjects.logger.debug(`[build:esbuild] Copying files from ${sourceFile} to ${destFile} excluding ${exclude}...`);
125
+ await import_promises.default.copyFile(sourceFile, destFile);
126
+ import_qcobjects.logger.debug(`[build:esbuild] Copying files from ${sourceFile} to ${destFile} excluding ${exclude}...DONE!`);
127
+ }
128
+ }
129
+ for (const d of dirs) {
130
+ const sourceDir = import_node_path.default.resolve(source, d.name);
131
+ const destDir = import_node_path.default.resolve(dest, d.name);
132
+ await copyDir(sourceDir, destDir, exclude);
133
+ }
134
+ }
135
+ }, "copyDir");
136
+ const ignorePlugin = {
137
+ name: "transform-qcobjects-imports",
138
+ setup(build) {
139
+ build.onResolve({ filter: /^(qcobjects|qcobjects-sdk)$/ }, (args) => {
140
+ if (args.kind === "dynamic-import") {
141
+ return {
142
+ path: args.path,
143
+ namespace: "qcobjects-transform"
144
+ };
145
+ }
146
+ return {
147
+ external: true,
148
+ path: args.path
149
+ };
150
+ });
151
+ build.onResolve({ filter: /.*/, namespace: "file" }, (args) => {
152
+ if (args.kind === "dynamic-import") {
153
+ return {
154
+ external: true,
155
+ path: args.path
156
+ };
157
+ }
158
+ return null;
159
+ });
160
+ build.onLoad({ filter: /.*/, namespace: "qcobjects-transform" }, (args) => {
161
+ return {
162
+ contents: `
163
+ module.exports = __toESM(require("${args.path}"), true);
164
+ `,
165
+ loader: "js"
166
+ };
167
+ });
168
+ }
169
+ };
170
+ class CommandHandler extends import_qcobjects.InheritClass {
171
+ static {
172
+ __name(this, "CommandHandler");
173
+ }
174
+ choiceOption;
175
+ constructor({
176
+ switchCommander
177
+ }) {
178
+ super({ switchCommander });
179
+ this.choiceOption = {
180
+ async build_esbuild() {
181
+ try {
182
+ import_qcobjects.logger.info("[build:esbuild] Starting esbuild process...");
183
+ const entryPoints = import_glob.default.sync("src/**/*.ts");
184
+ await copyDir("./src/templates", "./build/templates", []);
185
+ await copyDir("./src/templates", "./public/cjs/templates", []);
186
+ await copyDir("./src/templates", "./public/esm/templates", []);
187
+ await copyDir("./src/templates", "./public/browser/templates", []);
188
+ const baseSettings = {
189
+ entryPoints,
190
+ bundle: false,
191
+ outdir: "public/cjs",
192
+ format: "cjs",
193
+ target: ["node22"],
194
+ tsconfig: "tsconfig.json",
195
+ globalName: "global",
196
+ minify: false,
197
+ keepNames: true,
198
+ sourcemap: true,
199
+ splitting: false,
200
+ chunkNames: "chunks/[name]-[hash]",
201
+ plugins: [
202
+ ignorePlugin,
203
+ (0, import_esbuild_plugin_alias.default)({
204
+ "types": import_node_path.default.join(process.cwd(), "src/types/global/index.d.ts")
205
+ })
206
+ ]
207
+ };
208
+ const cjsSettings = {
209
+ ...baseSettings,
210
+ outdir: "public/cjs",
211
+ format: "cjs",
212
+ platform: "node",
213
+ outExtension: {
214
+ ".js": ".cjs"
215
+ },
216
+ plugins: [
217
+ ignorePlugin,
218
+ {
219
+ name: "transform-dynamic-imports",
220
+ setup(build) {
221
+ build.onEnd(() => {
222
+ const files = import_glob.default.sync("public/cjs/**/*.cjs");
223
+ for (const file of files) {
224
+ let content = (0, import_node_fs.readFileSync)(file, "utf8");
225
+ content = content.replace(
226
+ /await\s+import\(['"]([^'"]+)['"]\)/g,
227
+ '__toESM(require("$1"), true)'
228
+ );
229
+ (0, import_node_fs.writeFileSync)(file, content, "utf8");
230
+ }
231
+ });
232
+ }
233
+ },
234
+ {
235
+ name: "add-extensions",
236
+ setup(build) {
237
+ build.onEnd(() => {
238
+ entryPoints.forEach((entry) => {
239
+ const outputFilePath = import_node_path.default.join("./public/cjs", entry.replace("src/", "").replace(".ts", ".cjs"));
240
+ addExtensions(outputFilePath, ".cjs", cjsSettings);
241
+ });
242
+ });
243
+ }
244
+ }
245
+ ]
246
+ };
247
+ const esmSettings = {
248
+ ...baseSettings,
249
+ outdir: "public/esm",
250
+ format: "esm",
251
+ platform: "browser",
252
+ outExtension: {
253
+ ".js": ".mjs"
254
+ },
255
+ plugins: [
256
+ {
257
+ name: "transform-requires",
258
+ setup(build) {
259
+ build.onEnd(() => {
260
+ const files = import_glob.default.sync("public/esm/**/*.mjs");
261
+ for (const file of files) {
262
+ let content = (0, import_node_fs.readFileSync)(file, "utf8");
263
+ content = content.replace(
264
+ /const\s+{([^}]+)}\s*=\s*require\(['"]([^'"]+)['"]\)/g,
265
+ 'import { $1 } from "$2"'
266
+ );
267
+ content = content.replace(
268
+ /const\s+([^=]+)\s*=\s*require\(['"]([^'"]+)['"]\)/g,
269
+ 'import $1 from "$2"'
270
+ );
271
+ (0, import_node_fs.writeFileSync)(file, content, "utf8");
272
+ }
273
+ });
274
+ }
275
+ },
276
+ {
277
+ name: "add-extensions",
278
+ setup(build) {
279
+ build.onEnd(() => {
280
+ entryPoints.forEach((entry) => {
281
+ const outputFilePath = import_node_path.default.join("./public/esm", entry.replace("src/", "").replace(".ts", ".mjs"));
282
+ addExtensions(outputFilePath, ".mjs", esmSettings);
283
+ });
284
+ });
285
+ }
286
+ }
287
+ ]
288
+ };
289
+ const browserSettings = {
290
+ ...baseSettings,
291
+ outdir: "public/browser",
292
+ format: "iife",
293
+ platform: "browser",
294
+ outExtension: {
295
+ ".js": ".js"
296
+ }
297
+ };
298
+ await Promise.all([
299
+ import_esbuild.default.build(cjsSettings),
300
+ import_esbuild.default.build(esmSettings),
301
+ import_esbuild.default.build(browserSettings)
302
+ ]);
303
+ import_qcobjects.logger.info("[build:esbuild] Build process completed successfully!");
304
+ } catch (e) {
305
+ import_qcobjects.logger.error(`[build:esbuild] Build process failed: ${e.message}`);
306
+ process.exit(1);
307
+ }
308
+ }
309
+ };
310
+ const commandHandler = this;
311
+ import_qcobjects.logger.debug("Loading command build:esbuild...");
312
+ switchCommander.program.command("build:esbuild").allowExcessArguments(false).description("Builds the project using esbuild for CJS, ESM, and browser formats").action(function() {
313
+ commandHandler.choiceOption.build_esbuild.call(commandHandler);
314
+ });
315
+ switchCommander.program.command("build:esb").allowExcessArguments(false).description("Alias for build:esbuild - Builds the project using esbuild").action(function() {
316
+ commandHandler.choiceOption.build_esbuild.call(commandHandler);
317
+ });
318
+ import_qcobjects.logger.debug("Loading command build:esbuild... DONE.");
319
+ }
320
+ }
321
+ (0, import_qcobjects.Package)("com.qcobjects.cli.commands.build.esbuild", [
322
+ CommandHandler
323
+ ]);
324
+ return __toCommonJS(cli_commands_build_esbuild_exports);
325
+ })();
326
+ //# sourceMappingURL=cli-commands-build-esbuild.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cli-commands-build-esbuild.ts"],
4
+ "sourcesContent": ["/**\n * QCObjects CLI 2.5\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n/*eslint no-unused-vars: \"off\"*/\n/*eslint no-redeclare: \"off\"*/\n/*eslint no-empty: \"off\"*/\n/*eslint strict: \"off\"*/\n/*eslint no-mixed-operators: \"off\"*/\n/*eslint no-undef: \"off\"*/\n\"use strict\";\nimport path from \"node:path\";\nimport { readFileSync, writeFileSync } from \"node:fs\";\nimport fs from \"node:fs/promises\";\nimport glob from \"glob\";\nimport esbuild, { BuildOptions, Format } from \"esbuild\";\nimport alias from \"esbuild-plugin-alias\";\nimport { Package, InheritClass, logger } from \"qcobjects\";\n\nconst externalPackages = [\n \"node:fs\", \"node:path\", \"node:os\", \"node:util\", \"node:events\", \n \"node:stream\", \"node:http\", \"node:https\", \"node:crypto\", \"node:zlib\", \n \"node:buffer\", \"node:url\", \"node:querystring\", \"node:child_process\", \n \"node:cluster\", \"node:dgram\", \"node:dns\", \"node:net\", \"node:readline\", \n \"node:repl\", \"node:tls\", \"node:tty\", \"node:vm\", \"node:worker_threads\"\n];\n\n// Function to detect and add the extension\nconst nameToExtension = (name: string, ext: string, settings: BuildOptions): string => {\n function isPackage(name: string): boolean {\n return !name.startsWith(\".\") && !name.startsWith(\"/\") && !name.includes(\"/\");\n }\n\n const hasExtension = /\\.[^/\\\\]+$/.test(name);\n const isExternalPackage = name.startsWith(\"qcobjects\") || \n name.startsWith(\"qcobjects-sdk\") ||\n name.startsWith(\"node:\") ||\n name.startsWith(\"fs\") ||\n name.startsWith(\"path\") ||\n name.startsWith(\"os\") ||\n name.startsWith(\"util\") ||\n name.startsWith(\"events\") ||\n name.startsWith(\"stream\") ||\n name.startsWith(\"http\") ||\n name.startsWith(\"https\") ||\n name.startsWith(\"crypto\") ||\n name.startsWith(\"zlib\") ||\n name.startsWith(\"buffer\") ||\n name.startsWith(\"url\") ||\n name.startsWith(\"querystring\") ||\n name.startsWith(\"child_process\") ||\n name.startsWith(\"cluster\") ||\n name.startsWith(\"dgram\") ||\n name.startsWith(\"dns\") ||\n name.startsWith(\"net\") ||\n name.startsWith(\"readline\") ||\n name.startsWith(\"repl\") ||\n name.startsWith(\"tls\") ||\n name.startsWith(\"tty\") ||\n name.startsWith(\"vm\") ||\n name.startsWith(\"worker_threads\")\n || externalPackages.includes(name);\n \n if (!hasExtension && !isPackage(name) && !isExternalPackage) {\n name += ext;\n }\n\n return name;\n};\n\n// Function to add .cjs and .mjs extensions to import/export/require statements\nconst addExtensions = (filePath: string, toExt: string, settings: BuildOptions): void => {\n const content = readFileSync(filePath, \"utf8\");\n const updatedContent = content\n .replace(/(from\\s+['\"])(.*?)(['\"])/g, (match, p1, p2, p3) => {\n return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;\n })\n .replace(/(import\\s+['\"])(.*?)(['\"])/g, (match, p1, p2, p3) => {\n return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;\n })\n .replace(/(export\\s+['\"])(.*?)(['\"])/g, (match, p1, p2, p3) => {\n return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;\n })\n .replace(/(require\\s*\\(\\s*['\"])(.*?)(['\"]\\s*\\))/g, (match, p1, p2, p3) => {\n return `${p1}${nameToExtension(p2, toExt, settings)}${p3}`;\n });\n writeFileSync(filePath, updatedContent, \"utf8\");\n};\n\nconst copyDir = async (source: string, dest: string, exclude: string[]): Promise<void> => {\n source = path.resolve(source);\n dest = path.resolve(dest);\n const dname = path.basename(source);\n const dirExcluded = exclude.includes(dname);\n\n const isDir = async (d: string): Promise<boolean> => {\n try {\n const stat = await fs.stat(d);\n return stat.isDirectory();\n } catch {\n return false;\n }\n };\n\n const isFile = async (d: string): Promise<boolean> => {\n try {\n const stat = await fs.stat(d);\n return stat.isFile();\n } catch {\n return false;\n }\n };\n\n if (await isDir(source) && !dirExcluded) {\n await fs.mkdir(dest, { recursive: true });\n const paths = await fs.readdir(source, { withFileTypes: true });\n const dirs = paths.filter(d => d.isDirectory());\n const files = paths.filter(f => f.isFile());\n\n for (const f of files) {\n const sourceFile = path.resolve(source, f.name);\n const destFile = path.resolve(dest, f.name);\n const fileExcluded = exclude.includes(f.name);\n if (await isFile(sourceFile) && !fileExcluded) {\n logger.debug(`[build:esbuild] Copying files from ${sourceFile} to ${destFile} excluding ${exclude}...`);\n await fs.copyFile(sourceFile, destFile);\n logger.debug(`[build:esbuild] Copying files from ${sourceFile} to ${destFile} excluding ${exclude}...DONE!`);\n }\n }\n\n for (const d of dirs) {\n const sourceDir = path.resolve(source, d.name);\n const destDir = path.resolve(dest, d.name);\n await copyDir(sourceDir, destDir, exclude);\n }\n }\n};\n\nconst ignorePlugin = {\n name: \"transform-qcobjects-imports\",\n setup(build: any) {\n build.onResolve({ filter: /^(qcobjects|qcobjects-sdk)$/ }, (args: any) => {\n if (args.kind === \"dynamic-import\") {\n return { \n path: args.path,\n namespace: \"qcobjects-transform\"\n };\n }\n return {\n external: true,\n path: args.path\n };\n });\n\n build.onResolve({ filter: /.*/, namespace: \"file\" }, (args: any) => {\n if (args.kind === \"dynamic-import\") {\n return {\n external: true,\n path: args.path\n };\n }\n return null;\n });\n\n build.onLoad({ filter: /.*/, namespace: \"qcobjects-transform\" }, (args: any) => {\n return {\n contents: `\n module.exports = __toESM(require(\"${args.path}\"), true);\n `,\n loader: \"js\"\n };\n });\n }\n};\n\nexport class CommandHandler extends InheritClass {\n choiceOption: {\n [x: string]: any;\n build_esbuild: () => Promise<void>;\n };\n\n constructor({\n switchCommander\n }: { switchCommander: any }) {\n super({ switchCommander });\n this.choiceOption = {\n async build_esbuild() {\n try {\n logger.info(\"[build:esbuild] Starting esbuild process...\");\n\n // Get all TypeScript entry points\n const entryPoints = glob.sync(\"src/**/*.ts\");\n\n // Copy templates\n await copyDir(\"./src/templates\", \"./build/templates\", []);\n await copyDir(\"./src/templates\", \"./public/cjs/templates\", []);\n await copyDir(\"./src/templates\", \"./public/esm/templates\", []);\n await copyDir(\"./src/templates\", \"./public/browser/templates\", []);\n\n const baseSettings: BuildOptions = {\n entryPoints,\n bundle: false,\n outdir: \"public/cjs\",\n format: \"cjs\" as Format, \n target: [\"node22\"],\n tsconfig: \"tsconfig.json\",\n globalName: \"global\",\n minify: false,\n keepNames: true,\n sourcemap: true,\n splitting: false,\n chunkNames: \"chunks/[name]-[hash]\",\n plugins: [\n ignorePlugin,\n alias({\n \"types\": path.join(process.cwd(), \"src/types/global/index.d.ts\")\n })\n ]\n };\n\n const cjsSettings: BuildOptions = {\n ...baseSettings,\n outdir: \"public/cjs\",\n format: \"cjs\" as Format,\n platform: \"node\",\n outExtension: {\n \".js\": \".cjs\"\n },\n plugins: [\n ignorePlugin,\n {\n name: \"transform-dynamic-imports\",\n setup(build: any) {\n build.onEnd(() => {\n const files = glob.sync(\"public/cjs/**/*.cjs\");\n for (const file of files) {\n let content = readFileSync(file, \"utf8\");\n content = content.replace(\n /await\\s+import\\(['\"]([^'\"]+)['\"]\\)/g,\n \"__toESM(require(\\\"$1\\\"), true)\"\n );\n writeFileSync(file, content, \"utf8\");\n }\n });\n }\n },\n {\n name: \"add-extensions\",\n setup(build: any) {\n build.onEnd(() => {\n entryPoints.forEach((entry: string) => {\n const outputFilePath = path.join(\"./public/cjs\", entry.replace(\"src/\", \"\").replace(\".ts\", \".cjs\"));\n addExtensions(outputFilePath, \".cjs\", cjsSettings);\n });\n });\n }\n }\n ]\n };\n\n const esmSettings: BuildOptions = {\n ...baseSettings,\n outdir: \"public/esm\",\n format: \"esm\" as Format,\n platform: \"browser\",\n outExtension: {\n \".js\": \".mjs\"\n },\n plugins: [\n {\n name: \"transform-requires\",\n setup(build: any) {\n build.onEnd(() => {\n const files = glob.sync(\"public/esm/**/*.mjs\");\n for (const file of files) {\n let content = readFileSync(file, \"utf8\");\n // Transform require statements to dynamic imports\n content = content.replace(\n /const\\s+{([^}]+)}\\s*=\\s*require\\(['\"]([^'\"]+)['\"]\\)/g,\n \"import { $1 } from \\\"$2\\\"\"\n );\n content = content.replace(\n /const\\s+([^=]+)\\s*=\\s*require\\(['\"]([^'\"]+)['\"]\\)/g,\n \"import $1 from \\\"$2\\\"\"\n );\n writeFileSync(file, content, \"utf8\");\n }\n });\n }\n },\n {\n name: \"add-extensions\",\n setup(build: any) {\n build.onEnd(() => {\n entryPoints.forEach((entry: string) => {\n const outputFilePath = path.join(\"./public/esm\", entry.replace(\"src/\", \"\").replace(\".ts\", \".mjs\"));\n addExtensions(outputFilePath, \".mjs\", esmSettings);\n });\n });\n }\n }\n ]\n };\n\n const browserSettings: BuildOptions = {\n ...baseSettings,\n outdir: \"public/browser\",\n format: \"iife\" as Format,\n platform: \"browser\",\n outExtension: {\n \".js\": \".js\"\n }\n };\n\n // Build all formats\n await Promise.all([\n esbuild.build(cjsSettings),\n esbuild.build(esmSettings),\n esbuild.build(browserSettings)\n ]);\n\n logger.info(\"[build:esbuild] Build process completed successfully!\");\n } catch (e: any) {\n logger.error(`[build:esbuild] Build process failed: ${e.message}`);\n process.exit(1);\n }\n }\n };\n\n const commandHandler = this;\n logger.debug(\"Loading command build:esbuild...\");\n\n // Register both commands\n switchCommander.program.command(\"build:esbuild\")\n .allowExcessArguments(false)\n .description(\"Builds the project using esbuild for CJS, ESM, and browser formats\")\n .action(function () {\n commandHandler.choiceOption.build_esbuild.call(commandHandler);\n });\n\n // Add alias\n switchCommander.program.command(\"build:esb\")\n .allowExcessArguments(false)\n .description(\"Alias for build:esbuild - Builds the project using esbuild\")\n .action(function () {\n commandHandler.choiceOption.build_esbuild.call(commandHandler);\n });\n\n logger.debug(\"Loading command build:esbuild... DONE.\");\n }\n}\n\nPackage(\"com.qcobjects.cli.commands.build.esbuild\", [\n CommandHandler\n]);"],
5
+ "mappings": "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",
6
+ "names": ["name", "path", "fs", "glob", "alias", "esbuild"]
7
+ }
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var global = (() => {
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ var __export = (target, all) => {
11
+ for (var name in all)
12
+ __defProp(target, name, { get: all[name], enumerable: true });
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
28
+ mod
29
+ ));
30
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
31
+ var cli_commands_build_typescript_exports = {};
32
+ __export(cli_commands_build_typescript_exports, {
33
+ CommandHandler: () => CommandHandler
34
+ });
35
+ var import_node_path = __toESM(require("node:path"));
36
+ var import_typescript = __toESM(require("typescript"));
37
+ var import_qcobjects = require("qcobjects");
38
+ class CommandHandler extends import_qcobjects.InheritClass {
39
+ static {
40
+ __name(this, "CommandHandler");
41
+ }
42
+ choiceOption;
43
+ constructor({
44
+ switchCommander
45
+ }) {
46
+ super({ switchCommander });
47
+ this.choiceOption = {
48
+ build_typescript(configFile) {
49
+ try {
50
+ import_qcobjects.logger.info(`[build:typescript] Building TypeScript with config file: ${configFile}...`);
51
+ const configPath = import_node_path.default.resolve(process.cwd(), configFile);
52
+ const parsedCommandLine = import_typescript.default.getParsedCommandLineOfConfigFile(configPath, {}, {
53
+ ...import_typescript.default.sys,
54
+ onUnRecoverableConfigFileDiagnostic: /* @__PURE__ */ __name((diagnostic) => {
55
+ import_qcobjects.logger.warn(import_typescript.default.formatDiagnostic(diagnostic, {
56
+ getCanonicalFileName: /* @__PURE__ */ __name((fileName) => fileName, "getCanonicalFileName"),
57
+ getCurrentDirectory: import_typescript.default.sys.getCurrentDirectory,
58
+ getNewLine: /* @__PURE__ */ __name(() => import_typescript.default.sys.newLine, "getNewLine")
59
+ }));
60
+ process.exit(1);
61
+ }, "onUnRecoverableConfigFileDiagnostic")
62
+ });
63
+ if (!parsedCommandLine) {
64
+ import_qcobjects.logger.warn("Failed to parse tsconfig file");
65
+ process.exit(1);
66
+ }
67
+ const program = import_typescript.default.createProgram({
68
+ rootNames: parsedCommandLine.fileNames,
69
+ options: parsedCommandLine.options
70
+ });
71
+ const emitResult = program.emit();
72
+ const allDiagnostics = import_typescript.default.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
73
+ allDiagnostics.forEach((diagnostic) => {
74
+ if (diagnostic.file && diagnostic.start) {
75
+ const { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
76
+ const message = import_typescript.default.flattenDiagnosticMessageText(diagnostic.messageText, "\n");
77
+ import_qcobjects.logger.warn(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
78
+ } else {
79
+ import_qcobjects.logger.warn(import_typescript.default.flattenDiagnosticMessageText(diagnostic.messageText, "\n"));
80
+ }
81
+ });
82
+ const emittedFiles = emitResult.emittedFiles || [];
83
+ if (emittedFiles.length > 0) {
84
+ import_qcobjects.logger.info("Emitted files:");
85
+ emittedFiles.forEach((file) => import_qcobjects.logger.info(file));
86
+ }
87
+ const exitCode = emitResult.emitSkipped ? 1 : 0;
88
+ import_qcobjects.logger.info(`Process completed with code '${exitCode}'.`);
89
+ if (exitCode !== 0) {
90
+ process.exit(exitCode);
91
+ }
92
+ } catch (e) {
93
+ import_qcobjects.logger.warn(`Something went wrong trying to build TypeScript: ${e.message}`);
94
+ process.exit(1);
95
+ }
96
+ }
97
+ };
98
+ const commandHandler = this;
99
+ import_qcobjects.logger.debug("Loading command build:typescript...");
100
+ const buildCommand = switchCommander.program.command("build:typescript <configFile>").allowExcessArguments(false).description("Builds TypeScript files using the specified config file").action(function(configFile) {
101
+ commandHandler.choiceOption.build_typescript.call(commandHandler, configFile);
102
+ });
103
+ switchCommander.program.command("build:ts <configFile>").allowExcessArguments(false).description("Alias for build:typescript - Builds TypeScript files using the specified config file").action(function(configFile) {
104
+ commandHandler.choiceOption.build_typescript.call(commandHandler, configFile);
105
+ });
106
+ import_qcobjects.logger.debug("Loading command build:typescript... DONE.");
107
+ }
108
+ }
109
+ (0, import_qcobjects.Package)("com.qcobjects.cli.commands.build.typescript", [
110
+ CommandHandler
111
+ ]);
112
+ return __toCommonJS(cli_commands_build_typescript_exports);
113
+ })();
114
+ //# sourceMappingURL=cli-commands-build-typescript.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cli-commands-build-typescript.ts"],
4
+ "sourcesContent": ["/**\n * QCObjects CLI 2.5\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n/*eslint no-unused-vars: \"off\"*/\n/*eslint no-redeclare: \"off\"*/\n/*eslint no-empty: \"off\"*/\n/*eslint strict: \"off\"*/\n/*eslint no-mixed-operators: \"off\"*/\n/*eslint no-undef: \"off\"*/\n\"use strict\";\nimport path from \"node:path\";\nimport ts from \"typescript\";\nimport { Package, InheritClass, logger } from \"qcobjects\";\n\nexport class CommandHandler extends InheritClass {\n choiceOption: {\n [x: string]: any;\n build_typescript: (configFile: string) => void;\n };\n\n constructor({\n switchCommander\n }: { switchCommander: any }) {\n super({ switchCommander });\n this.choiceOption = {\n build_typescript(configFile) {\n try {\n logger.info(`[build:typescript] Building TypeScript with config file: ${configFile}...`);\n \n // Resolve the path to the tsconfig file\n const configPath = path.resolve(process.cwd(), configFile);\n\n // Parse the tsconfig file\n const parsedCommandLine = ts.getParsedCommandLineOfConfigFile(configPath, {}, {\n ...ts.sys,\n onUnRecoverableConfigFileDiagnostic: diagnostic => {\n logger.warn(ts.formatDiagnostic(diagnostic, {\n getCanonicalFileName: (fileName) => fileName,\n getCurrentDirectory: ts.sys.getCurrentDirectory,\n getNewLine: () => ts.sys.newLine,\n }));\n process.exit(1);\n }\n });\n\n if (!parsedCommandLine) {\n logger.warn('Failed to parse tsconfig file');\n process.exit(1);\n }\n\n // Create a program with the parsed settings\n const program = ts.createProgram({\n rootNames: parsedCommandLine.fileNames,\n options: parsedCommandLine.options,\n });\n\n // Emit the compiled files\n const emitResult = program.emit();\n\n // Report any diagnostics (errors or warnings)\n const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);\n\n allDiagnostics.forEach(diagnostic => {\n if (diagnostic.file && diagnostic.start) {\n const { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);\n const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n');\n logger.warn(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);\n } else {\n logger.warn(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n'));\n }\n });\n\n // Check if any files were emitted\n const emittedFiles = emitResult.emittedFiles || [];\n if (emittedFiles.length > 0) {\n logger.info('Emitted files:');\n emittedFiles.forEach(file => logger.info(file));\n }\n\n // Exit with an appropriate code\n const exitCode = emitResult.emitSkipped ? 1 : 0;\n logger.info(`Process completed with code '${exitCode}'.`);\n if (exitCode !== 0) {\n process.exit(exitCode);\n }\n } catch (e: any) {\n logger.warn(`Something went wrong trying to build TypeScript: ${e.message}`);\n process.exit(1);\n }\n }\n };\n\n const commandHandler = this;\n logger.debug(\"Loading command build:typescript...\");\n\n // Register both commands\n const buildCommand = switchCommander.program.command(\"build:typescript <configFile>\")\n .allowExcessArguments(false)\n .description(\"Builds TypeScript files using the specified config file\")\n .action(function (configFile: string) {\n commandHandler.choiceOption.build_typescript.call(commandHandler, configFile);\n });\n\n // Add alias\n switchCommander.program.command(\"build:ts <configFile>\")\n .allowExcessArguments(false)\n .description(\"Alias for build:typescript - Builds TypeScript files using the specified config file\")\n .action(function (configFile: string) {\n commandHandler.choiceOption.build_typescript.call(commandHandler, configFile);\n });\n\n logger.debug(\"Loading command build:typescript... DONE.\");\n }\n}\n\nPackage(\"com.qcobjects.cli.commands.build.typescript\", [\n CommandHandler\n]); "],
5
+ "mappings": "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",
6
+ "names": ["path", "ts"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/cli-commands-jira.ts"],
4
- "sourcesContent": ["/**\n * QCObjects CLI 2.4.x\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n/*eslint no-unused-vars: \"off\"*/\n/*eslint no-redeclare: \"off\"*/\n/*eslint no-empty: \"off\"*/\n/*eslint strict: \"off\"*/\n/*eslint no-mixed-operators: \"off\"*/\n/*eslint no-undef: \"off\"*/\n\"use strict\";\nimport path from \"node:path\";\n\nimport { JiraCloud } from \"./client_services\";\nimport { Package, InheritClass, _DataStringify, New, CONFIG, logger } from \"qcobjects\";\nconst absolutePath = path.resolve(__dirname, \"./\");\n\nexport class CommandHandler extends InheritClass {\n choiceOption: {\n [x: string]: any; issues: () => void;\n };\n constructor({\n switchCommander\n }: { switchCommander: any }) {\n super({ switchCommander });\n this.choiceOption = {\n issues: function () {\n\n this.getIssueList().then(function (response: any) {\n console.log(_DataStringify(response));\n }).catch((e: any) => {\n console.log(e);\n process.exit(1);\n });\n\n }\n };\n\n const commandHandler = this;\n\n switchCommander.program.command(\"jira <subcommand>\")\n .option(\"-u, --from-user [username]\", \"User name\")\n .option(\"-fp,--from-project <projectName>\", \"Project name\")\n .option(\"-p, --pwd <password>\", \"Password\")\n .option(\"-f, --format <format>\", \"Format (json, table)\")\n .description(`Jira Integration:\n Sub-Commands can be:\n issues: To get the issues list from JIRA\n `)\n .action(function (subcommand: string | number, options: any) {\n if (commandHandler.choiceOption.hasOwnProperty.call(commandHandler.choiceOption, subcommand)) {\n commandHandler.choiceOption[subcommand].call(commandHandler, subcommand, options);\n } else {\n console.error(`Sub-Command (jira ${subcommand}... ) is not available`);\n process.exit(1);\n }\n });\n\n }\n\n getIssueList() {\n return new Promise<void>(function (resolve, reject) {\n logger.info(\"I'm going to get the issue list from the jira cloud...\");\n const jira_config = CONFIG.get(\"jira\", null);\n if (jira_config !== null) {\n const jira_username = jira_config.username;\n const jira_password = jira_config.auth_token;\n const jira_project = jira_config.project;\n const jira_domain = jira_config.domain;\n const jira_issue_fields = [\"id\", \"key\", \"summary\", \"timetracking\"];\n const cloudClient = New(JiraCloud, {\n domain: `${jira_domain}`,\n username: `${jira_username}`,\n password: `${jira_password}`,\n apiMethod: \"rest/api/latest/search\",\n data: {\n \"jql\": `project = ${jira_project}`,\n \"startAt\": 0,\n \"maxResults\": 5000,\n \"fields\": jira_issue_fields\n }\n });\n try {\n } catch (e) {\n console.error(\"\\u{1F926} Something went wrong \\u{1F926} when trying to get jira issues from the cloud\");\n reject(e as Error);\n }\n\n } else {\n console.error(\"\\u{1F926} Something went wrong \\u{1F926} You need to set the jira config settings\");\n reject(new Error(\"\\u{1F926} Something went wrong \\u{1F926} You need to set the jira config settings\"));\n }\n\n });\n }\n\n\n}\n\n\nPackage(\"com.qcobjects.cli.commands.jira\", [\n CommandHandler\n]);\n"],
4
+ "sourcesContent": ["/**\n * QCObjects CLI 2.5\n * ________________\n *\n * Author: Jean Machuca <correojean@gmail.com>\n *\n * Cross Browser Javascript Framework for MVC Patterns\n * QuickCorp/QCObjects is licensed under the\n * GNU Lesser General Public License v3.0\n * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)\n *\n * Permissions of this copyleft license are conditioned on making available\n * complete source code of licensed works and modifications under the same\n * license or the GNU GPLv3. Copyright and license notices must be preserved.\n * Contributors provide an express grant of patent rights. However, a larger\n * work using the licensed work through interfaces provided by the licensed\n * work may be distributed under different terms and without source code for\n * the larger work.\n *\n * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>\n *\n * Everyone is permitted to copy and distribute verbatim copies of this\n * license document, but changing it is not allowed.\n*/\n/*eslint no-unused-vars: \"off\"*/\n/*eslint no-redeclare: \"off\"*/\n/*eslint no-empty: \"off\"*/\n/*eslint strict: \"off\"*/\n/*eslint no-mixed-operators: \"off\"*/\n/*eslint no-undef: \"off\"*/\n\"use strict\";\nimport path from \"node:path\";\n\nimport { JiraCloud } from \"./client_services\";\nimport { Package, InheritClass, _DataStringify, New, CONFIG, logger } from \"qcobjects\";\nconst absolutePath = path.resolve(__dirname, \"./\");\n\nexport class CommandHandler extends InheritClass {\n choiceOption: {\n [x: string]: any; issues: () => void;\n };\n constructor({\n switchCommander\n }: { switchCommander: any }) {\n super({ switchCommander });\n this.choiceOption = {\n issues: function () {\n\n this.getIssueList().then(function (response: any) {\n console.log(_DataStringify(response));\n }).catch((e: any) => {\n console.log(e);\n process.exit(1);\n });\n\n }\n };\n\n const commandHandler = this;\n\n switchCommander.program.command(\"jira <subcommand>\")\n .option(\"-u, --from-user [username]\", \"User name\")\n .option(\"-fp,--from-project <projectName>\", \"Project name\")\n .option(\"-p, --pwd <password>\", \"Password\")\n .option(\"-f, --format <format>\", \"Format (json, table)\")\n .description(`Jira Integration:\n Sub-Commands can be:\n issues: To get the issues list from JIRA\n `)\n .action(function (subcommand: string | number, options: any) {\n if (commandHandler.choiceOption.hasOwnProperty.call(commandHandler.choiceOption, subcommand)) {\n commandHandler.choiceOption[subcommand].call(commandHandler, subcommand, options);\n } else {\n console.error(`Sub-Command (jira ${subcommand}... ) is not available`);\n process.exit(1);\n }\n });\n\n }\n\n getIssueList() {\n return new Promise<void>(function (resolve, reject) {\n logger.info(\"I'm going to get the issue list from the jira cloud...\");\n const jira_config = CONFIG.get(\"jira\", null);\n if (jira_config !== null) {\n const jira_username = jira_config.username;\n const jira_password = jira_config.auth_token;\n const jira_project = jira_config.project;\n const jira_domain = jira_config.domain;\n const jira_issue_fields = [\"id\", \"key\", \"summary\", \"timetracking\"];\n const cloudClient = New(JiraCloud, {\n domain: `${jira_domain}`,\n username: `${jira_username}`,\n password: `${jira_password}`,\n apiMethod: \"rest/api/latest/search\",\n data: {\n \"jql\": `project = ${jira_project}`,\n \"startAt\": 0,\n \"maxResults\": 5000,\n \"fields\": jira_issue_fields\n }\n });\n try {\n } catch (e) {\n console.error(\"\\u{1F926} Something went wrong \\u{1F926} when trying to get jira issues from the cloud\");\n reject(e as Error);\n }\n\n } else {\n console.error(\"\\u{1F926} Something went wrong \\u{1F926} You need to set the jira config settings\");\n reject(new Error(\"\\u{1F926} Something went wrong \\u{1F926} You need to set the jira config settings\"));\n }\n\n });\n }\n\n\n}\n\n\nPackage(\"com.qcobjects.cli.commands.jira\", [\n CommandHandler\n]);\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AA+BA,yBAAiB;AAEjB,+BAA0B;AAC1B,yBAA2E;AAC3E,QAAM,eAAe,iBAAAA,QAAK,QAAQ,WAAW,IAAI;AAAA,EAE1C,MAAM,uBAAuB,8BAAa;AAAA,IArCjD,OAqCiD;AAAA;AAAA;AAAA,IAC/C;AAAA,IAGA,YAAY;AAAA,MACV;AAAA,IACF,GAA6B;AAC3B,YAAM,EAAE,gBAAgB,CAAC;AACzB,WAAK,eAAe;AAAA,QAClB,QAAQ,kCAAY;AAElB,eAAK,aAAa,EAAE,KAAK,SAAU,UAAe;AAChD,oBAAQ,QAAI,iCAAe,QAAQ,CAAC;AAAA,UACtC,CAAC,EAAE,MAAM,CAAC,MAAW;AACnB,oBAAQ,IAAI,CAAC;AACb,oBAAQ,KAAK,CAAC;AAAA,UAChB,CAAC;AAAA,QAEH,GATQ;AAAA,MAUV;AAEA,YAAM,iBAAiB;AAEvB,sBAAgB,QAAQ,QAAQ,mBAAmB,EAChD,OAAO,8BAA8B,WAAW,EAChD,OAAO,oCAAoC,cAAc,EACzD,OAAO,wBAAwB,UAAU,EACzC,OAAO,yBAAyB,sBAAsB,EACtD,YAAY;AAAA;AAAA;AAAA,SAGV,EACF,OAAO,SAAU,YAA6B,SAAc;AAC3D,YAAI,eAAe,aAAa,eAAe,KAAK,eAAe,cAAc,UAAU,GAAG;AAC5F,yBAAe,aAAa,UAAU,EAAE,KAAK,gBAAgB,YAAY,OAAO;AAAA,QAClF,OAAO;AACL,kBAAQ,MAAM,qBAAqB,UAAU,wBAAwB;AACrE,kBAAQ,KAAK,CAAC;AAAA,QAChB;AAAA,MACF,CAAC;AAAA,IAEL;AAAA,IAEA,eAAe;AACb,aAAO,IAAI,QAAc,SAAU,SAAS,QAAQ;AAClD,gCAAO,KAAK,wDAAwD;AACpE,cAAM,cAAc,wBAAO,IAAI,QAAQ,IAAI;AAC3C,YAAI,gBAAgB,MAAM;AACxB,gBAAM,gBAAgB,YAAY;AAClC,gBAAM,gBAAgB,YAAY;AAClC,gBAAM,eAAe,YAAY;AACjC,gBAAM,cAAc,YAAY;AAChC,gBAAM,oBAAoB,CAAC,MAAM,OAAO,WAAW,cAAc;AACjE,gBAAM,kBAAc,sBAAI,kCAAW;AAAA,YACjC,QAAQ,GAAG,WAAW;AAAA,YACtB,UAAU,GAAG,aAAa;AAAA,YAC1B,UAAU,GAAG,aAAa;AAAA,YAC1B,WAAW;AAAA,YACX,MAAM;AAAA,cACJ,OAAO,aAAa,YAAY;AAAA,cAChC,WAAW;AAAA,cACX,cAAc;AAAA,cACd,UAAU;AAAA,YACZ;AAAA,UACF,CAAC;AACD,cAAI;AAAA,UACJ,SAAS,GAAG;AACV,oBAAQ,MAAM,wFAAwF;AACtG,mBAAO,CAAU;AAAA,UACnB;AAAA,QAEF,OAAO;AACL,kBAAQ,MAAM,mFAAmF;AACjG,iBAAO,IAAI,MAAM,mFAAmF,CAAC;AAAA,QACvG;AAAA,MAEF,CAAC;AAAA,IACH;AAAA,EAGF;AAGA,gCAAQ,mCAAmC;AAAA,IACzC;AAAA,EACF,CAAC;",
6
6
  "names": ["path"]
7
7
  }