qcobjects-cli 2.5.141-beta → 2.5.144-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.
- package/.cursor/rules/collaboration-features.mdc +25 -0
- package/.cursor/rules/development-guidelines.mdc +37 -0
- package/.cursor/rules/project-structure.mdc +36 -0
- package/.dockerignore +0 -0
- package/.github/FUNDING.yml +0 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- package/.github/ISSUE_TEMPLATE/custom.md +0 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- package/.github/ISSUE_TEMPLATE/issue-template.md +0 -0
- package/.github/workflows/ci.yml +26 -0
- package/.github/workflows/codeql-analysis.yml +0 -0
- package/.github/workflows/main-pr-source.yml +26 -0
- package/.github/workflows/npmpublish-beta.yml +20 -13
- package/.github/workflows/npmpublish-lts.yml +20 -13
- package/.github/workflows/npmpublish-main.yml +19 -12
- package/.github/workflows/open-pr-to-development.yml +70 -0
- package/.gitlab-ci.yml +0 -0
- package/.opencode/instructions/git-workflow.md +46 -0
- package/.pre-commit-config.yaml +9 -0
- package/AGENTS.md +59 -0
- package/CHANGELOG.md +0 -0
- package/README.md +75 -0
- package/VERSION +1 -1
- package/build-esbuild-esm.js +180 -0
- package/build-esbuild.js +182 -208
- package/deno.json +0 -0
- package/dev-requirements.txt +5 -0
- package/eslint.config.mjs +0 -0
- package/mod.ts +0 -0
- package/package.json +48 -47
- package/public/browser/api-client_services.js.map +1 -1
- package/public/browser/backend/backend-microservice-static.js +211 -219
- package/public/browser/backend/backend-microservice-static.js.map +2 -2
- package/public/browser/backend/backend-php.js +227 -231
- package/public/browser/backend/backend-php.js.map +3 -3
- package/public/browser/cli-commands-build-esbuild.js +326 -0
- package/public/browser/cli-commands-build-esbuild.js.map +7 -0
- package/public/browser/cli-commands-build-typescript.js +114 -0
- package/public/browser/cli-commands-build-typescript.js.map +7 -0
- package/public/browser/cli-commands-jira.js.map +1 -1
- package/public/browser/cli-commands-version.js.map +1 -1
- package/public/browser/cli-commands.js +4 -0
- package/public/browser/cli-commands.js.map +2 -2
- package/public/browser/cli-main.js.map +1 -1
- package/public/browser/client_services.js.map +1 -1
- package/public/browser/collab-server.js.map +1 -1
- package/public/browser/common-pipelog.js.map +1 -1
- package/public/browser/defaultsettings.js +68 -27
- package/public/browser/defaultsettings.js.map +3 -3
- package/public/browser/enterprise-commands.js.map +1 -1
- package/public/browser/main-file.js.map +1 -1
- package/public/browser/main-http-gae-server.js +3 -0
- package/public/browser/main-http-gae-server.js.map +2 -2
- package/public/browser/main-http-server.js +3 -0
- package/public/browser/main-http-server.js.map +2 -2
- package/public/browser/main-http2-server.js +3 -0
- package/public/browser/main-http2-server.js.map +2 -2
- package/public/browser/qcobjects-cli.js.map +1 -1
- package/public/browser/qcobjects-collab.js +16 -24
- package/public/browser/qcobjects-collab.js.map +2 -2
- package/public/browser/qcobjects-createcert.js +46 -54
- package/public/browser/qcobjects-createcert.js.map +2 -2
- package/public/browser/qcobjects-gae-http-server.js +16 -24
- package/public/browser/qcobjects-gae-http-server.js.map +2 -2
- package/public/browser/qcobjects-http-server.js +16 -24
- package/public/browser/qcobjects-http-server.js.map +2 -2
- package/public/browser/qcobjects-http2-server.js +21 -30
- package/public/browser/qcobjects-http2-server.js.map +2 -2
- package/public/browser/qcobjects-shell.js.map +1 -1
- package/public/browser/templates/apps/spa-local.html +0 -0
- package/public/browser/templates/apps/spa-local.js +0 -0
- package/public/browser/templates/pwa/sw.js +0 -0
- package/public/browser/types/global/index.d.js +0 -9
- package/public/browser/types/global/index.d.js.map +3 -3
- package/public/cjs/api-client_services.js +74 -0
- package/public/cjs/api-client_services.js.map +1 -0
- package/public/cjs/backend/backend-microservice-static.js +255 -0
- package/public/cjs/backend/backend-microservice-static.js.map +1 -0
- package/public/cjs/backend/backend-php.js +317 -0
- package/public/cjs/backend/backend-php.js.map +1 -0
- package/public/cjs/cli-commands-build-esbuild.js +341 -0
- package/public/cjs/cli-commands-build-esbuild.js.map +1 -0
- package/public/cjs/cli-commands-build-typescript.js +127 -0
- package/public/cjs/cli-commands-build-typescript.js.map +1 -0
- package/public/cjs/cli-commands-jira.js +115 -0
- package/public/cjs/cli-commands-jira.js.map +1 -0
- package/public/cjs/cli-commands-publish-static.js +108 -0
- package/public/cjs/cli-commands-publish-static.js.map +1 -0
- package/public/cjs/cli-commands-version.js +250 -0
- package/public/cjs/cli-commands-version.js.map +1 -0
- package/public/cjs/cli-commands.js +73 -0
- package/public/cjs/cli-commands.js.map +1 -0
- package/public/cjs/cli-main.js +487 -0
- package/public/cjs/cli-main.js.map +1 -0
- package/public/cjs/client_services.js +80 -0
- package/public/cjs/client_services.js.map +1 -0
- package/public/cjs/collab-server.js +404 -0
- package/public/cjs/collab-server.js.map +1 -0
- package/public/cjs/common-pipelog.js +57 -0
- package/public/cjs/common-pipelog.js.map +1 -0
- package/public/cjs/defaultsettings.js +496 -0
- package/public/cjs/defaultsettings.js.map +1 -0
- package/public/cjs/enterprise-commands.js +173 -0
- package/public/cjs/enterprise-commands.js.map +1 -0
- package/public/cjs/index.js +38 -0
- package/public/cjs/index.js.map +1 -0
- package/public/cjs/main-file.js +161 -0
- package/public/cjs/main-file.js.map +1 -0
- package/public/cjs/main-http-gae-server.js +498 -0
- package/public/cjs/main-http-gae-server.js.map +1 -0
- package/public/cjs/main-http-server.js +540 -0
- package/public/cjs/main-http-server.js.map +1 -0
- package/public/cjs/main-http2-server.js +398 -0
- package/public/cjs/main-http2-server.js.map +1 -0
- package/public/cjs/qcobjects-cli.js +105 -0
- package/public/cjs/qcobjects-cli.js.map +1 -0
- package/public/cjs/qcobjects-collab.js +51 -0
- package/public/cjs/qcobjects-collab.js.map +1 -0
- package/public/cjs/qcobjects-createcert.js +89 -0
- package/public/cjs/qcobjects-createcert.js.map +1 -0
- package/public/cjs/qcobjects-gae-http-server.js +51 -0
- package/public/cjs/qcobjects-gae-http-server.js.map +1 -0
- package/public/cjs/qcobjects-http-server.js +51 -0
- package/public/cjs/qcobjects-http-server.js.map +1 -0
- package/public/cjs/qcobjects-http2-server.js +54 -0
- package/public/cjs/qcobjects-http2-server.js.map +1 -0
- package/public/cjs/qcobjects-shell.js +145 -0
- package/public/cjs/qcobjects-shell.js.map +1 -0
- package/public/cjs/templates/apps/spa-local.html +0 -0
- package/public/cjs/templates/apps/spa-local.js +0 -0
- package/public/cjs/templates/pwa/sw.js +0 -0
- package/public/esm/api-client_services.mjs.map +1 -1
- package/public/esm/backend/backend-microservice-static.mjs +207 -216
- package/public/esm/backend/backend-microservice-static.mjs.map +2 -2
- package/public/esm/backend/backend-php.mjs +228 -232
- package/public/esm/backend/backend-php.mjs.map +2 -2
- package/public/esm/cli-commands-build-esbuild.mjs +295 -0
- package/public/esm/cli-commands-build-esbuild.mjs.map +7 -0
- package/public/esm/cli-commands-build-typescript.mjs +83 -0
- package/public/esm/cli-commands-build-typescript.mjs.map +7 -0
- package/public/esm/cli-commands-jira.mjs +1 -1
- package/public/esm/cli-commands-jira.mjs.map +1 -1
- package/public/esm/cli-commands-version.mjs.map +1 -1
- package/public/esm/cli-commands.mjs +7 -3
- package/public/esm/cli-commands.mjs.map +2 -2
- package/public/esm/cli-main.mjs +6 -6
- package/public/esm/cli-main.mjs.map +1 -1
- package/public/esm/client_services.mjs.map +1 -1
- package/public/esm/collab-server.mjs.map +1 -1
- package/public/esm/common-pipelog.mjs.map +1 -1
- package/public/esm/defaultsettings.mjs +68 -27
- package/public/esm/defaultsettings.mjs.map +3 -3
- package/public/esm/enterprise-commands.mjs.map +1 -1
- package/public/esm/index.mjs +1 -1
- package/public/esm/main-file.mjs.map +1 -1
- package/public/esm/main-http-gae-server.mjs +5 -2
- package/public/esm/main-http-gae-server.mjs.map +2 -2
- package/public/esm/main-http-server.mjs +5 -2
- package/public/esm/main-http-server.mjs.map +2 -2
- package/public/esm/main-http2-server.mjs +5 -2
- package/public/esm/main-http2-server.mjs.map +2 -2
- package/public/esm/qcobjects-cli.mjs +2 -2
- package/public/esm/qcobjects-cli.mjs.map +1 -1
- package/public/esm/qcobjects-collab.mjs +14 -23
- package/public/esm/qcobjects-collab.mjs.map +2 -2
- package/public/esm/qcobjects-createcert.mjs +43 -52
- package/public/esm/qcobjects-createcert.mjs.map +2 -2
- package/public/esm/qcobjects-gae-http-server.mjs +14 -23
- package/public/esm/qcobjects-gae-http-server.mjs.map +2 -2
- package/public/esm/qcobjects-http-server.mjs +14 -23
- package/public/esm/qcobjects-http-server.mjs.map +2 -2
- package/public/esm/qcobjects-http2-server.mjs +21 -31
- package/public/esm/qcobjects-http2-server.mjs.map +2 -2
- package/public/esm/qcobjects-shell.mjs +1 -1
- package/public/esm/qcobjects-shell.mjs.map +1 -1
- package/public/esm/templates/apps/spa-local.html +0 -0
- package/public/esm/templates/apps/spa-local.js +0 -0
- package/public/esm/templates/pwa/sw.js +0 -0
- package/public/esm/types/global/index.d.mjs +0 -9
- package/public/esm/types/global/index.d.mjs.map +3 -3
- package/public/types/index.d.ts +29 -3
- package/spec/support/jasmine.json +0 -0
- package/spec/testsSpec.ts +0 -0
- package/src/api-client_services.ts +1 -1
- package/src/backend/backend-microservice-static.ts +196 -196
- package/src/backend/backend-php.ts +240 -245
- package/src/cli-commands-build-esbuild.ts +375 -0
- package/src/cli-commands-build-typescript.ts +139 -0
- package/src/cli-commands-jira.ts +1 -1
- package/src/cli-commands-publish-static.ts +0 -0
- package/src/cli-commands-version.ts +1 -1
- package/src/cli-commands.ts +3 -1
- package/src/cli-main.ts +1 -1
- package/src/client_services.ts +1 -1
- package/src/collab-server.ts +1 -1
- package/src/common-pipelog.ts +1 -1
- package/src/defaultsettings.ts +65 -19
- package/src/enterprise-commands.ts +1 -1
- package/src/index.ts +0 -0
- package/src/main-file.ts +1 -1
- package/src/main-http-gae-server.ts +6 -1
- package/src/main-http-server.ts +6 -1
- package/src/main-http2-server.ts +6 -1
- package/src/qcobjects-cli.ts +1 -1
- package/src/qcobjects-collab.ts +1 -1
- package/src/qcobjects-createcert.ts +1 -1
- package/src/qcobjects-gae-http-server.ts +1 -1
- package/src/qcobjects-http-server.ts +1 -1
- package/src/qcobjects-http2-server.ts +4 -5
- package/src/qcobjects-shell.ts +1 -1
- package/src/templates/apps/spa-local.html +0 -0
- package/src/templates/apps/spa-local.js +0 -0
- package/src/templates/pwa/sw.js +0 -0
- package/src/types/global/index.d.ts +0 -0
- package/transpile.js +0 -0
- package/tsconfig.d.json +0 -0
- package/tsconfig.jasmine.json +0 -0
- package/tsconfig.json +3 -3
- package/public/cjs/api-client_services.cjs +0 -79
- package/public/cjs/api-client_services.cjs.map +0 -7
- package/public/cjs/backend/backend-microservice-static.cjs +0 -245
- package/public/cjs/backend/backend-microservice-static.cjs.map +0 -7
- package/public/cjs/backend/backend-php.cjs +0 -301
- package/public/cjs/backend/backend-php.cjs.map +0 -7
- package/public/cjs/cli-commands-jira.cjs +0 -112
- package/public/cjs/cli-commands-jira.cjs.map +0 -7
- package/public/cjs/cli-commands-publish-static.cjs +0 -109
- package/public/cjs/cli-commands-publish-static.cjs.map +0 -7
- package/public/cjs/cli-commands-version.cjs +0 -252
- package/public/cjs/cli-commands-version.cjs.map +0 -7
- package/public/cjs/cli-commands.cjs +0 -45
- package/public/cjs/cli-commands.cjs.map +0 -7
- package/public/cjs/cli-main.cjs +0 -417
- package/public/cjs/cli-main.cjs.map +0 -7
- package/public/cjs/client_services.cjs +0 -86
- package/public/cjs/client_services.cjs.map +0 -7
- package/public/cjs/collab-server.cjs +0 -444
- package/public/cjs/collab-server.cjs.map +0 -7
- package/public/cjs/common-pipelog.cjs +0 -50
- package/public/cjs/common-pipelog.cjs.map +0 -7
- package/public/cjs/defaultsettings.cjs +0 -432
- package/public/cjs/defaultsettings.cjs.map +0 -7
- package/public/cjs/enterprise-commands.cjs +0 -175
- package/public/cjs/enterprise-commands.cjs.map +0 -7
- package/public/cjs/index.cjs +0 -36
- package/public/cjs/index.cjs.map +0 -7
- package/public/cjs/main-file.cjs +0 -194
- package/public/cjs/main-file.cjs.map +0 -7
- package/public/cjs/main-http-gae-server.cjs +0 -519
- package/public/cjs/main-http-gae-server.cjs.map +0 -7
- package/public/cjs/main-http-server.cjs +0 -585
- package/public/cjs/main-http-server.cjs.map +0 -7
- package/public/cjs/main-http2-server.cjs +0 -428
- package/public/cjs/main-http2-server.cjs.map +0 -7
- package/public/cjs/qcobjects-cli.cjs +0 -92
- package/public/cjs/qcobjects-cli.cjs.map +0 -7
- package/public/cjs/qcobjects-collab.cjs +0 -43
- package/public/cjs/qcobjects-collab.cjs.map +0 -7
- package/public/cjs/qcobjects-createcert.cjs +0 -75
- package/public/cjs/qcobjects-createcert.cjs.map +0 -7
- package/public/cjs/qcobjects-gae-http-server.cjs +0 -43
- package/public/cjs/qcobjects-gae-http-server.cjs.map +0 -7
- package/public/cjs/qcobjects-http-server.cjs +0 -43
- package/public/cjs/qcobjects-http-server.cjs.map +0 -7
- package/public/cjs/qcobjects-http2-server.cjs +0 -49
- package/public/cjs/qcobjects-http2-server.cjs.map +0 -7
- package/public/cjs/qcobjects-shell.cjs +0 -185
- package/public/cjs/qcobjects-shell.cjs.map +0 -7
- package/public/cjs/types/global/index.d.cjs +0 -2
- package/public/cjs/types/global/index.d.cjs.map +0 -7
- package/public/types/index.d.ts.map +0 -1
- package/src/index.cts +0 -2
- 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
|
+
"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
|
}
|