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.
Files changed (273) 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 +20 -13
  14. package/.github/workflows/npmpublish-lts.yml +20 -13
  15. package/.github/workflows/npmpublish-main.yml +19 -12
  16. package/.github/workflows/open-pr-to-development.yml +70 -0
  17. package/.gitlab-ci.yml +0 -0
  18. package/.opencode/instructions/git-workflow.md +46 -0
  19. package/.pre-commit-config.yaml +9 -0
  20. package/AGENTS.md +59 -0
  21. package/CHANGELOG.md +0 -0
  22. package/README.md +75 -0
  23. package/VERSION +1 -1
  24. package/build-esbuild-esm.js +180 -0
  25. package/build-esbuild.js +182 -208
  26. package/deno.json +0 -0
  27. package/dev-requirements.txt +5 -0
  28. package/eslint.config.mjs +0 -0
  29. package/mod.ts +0 -0
  30. package/package.json +48 -47
  31. package/public/browser/api-client_services.js.map +1 -1
  32. package/public/browser/backend/backend-microservice-static.js +211 -219
  33. package/public/browser/backend/backend-microservice-static.js.map +2 -2
  34. package/public/browser/backend/backend-php.js +227 -231
  35. package/public/browser/backend/backend-php.js.map +3 -3
  36. package/public/browser/cli-commands-build-esbuild.js +326 -0
  37. package/public/browser/cli-commands-build-esbuild.js.map +7 -0
  38. package/public/browser/cli-commands-build-typescript.js +114 -0
  39. package/public/browser/cli-commands-build-typescript.js.map +7 -0
  40. package/public/browser/cli-commands-jira.js.map +1 -1
  41. package/public/browser/cli-commands-version.js.map +1 -1
  42. package/public/browser/cli-commands.js +4 -0
  43. package/public/browser/cli-commands.js.map +2 -2
  44. package/public/browser/cli-main.js.map +1 -1
  45. package/public/browser/client_services.js.map +1 -1
  46. package/public/browser/collab-server.js.map +1 -1
  47. package/public/browser/common-pipelog.js.map +1 -1
  48. package/public/browser/defaultsettings.js +68 -27
  49. package/public/browser/defaultsettings.js.map +3 -3
  50. package/public/browser/enterprise-commands.js.map +1 -1
  51. package/public/browser/main-file.js.map +1 -1
  52. package/public/browser/main-http-gae-server.js +3 -0
  53. package/public/browser/main-http-gae-server.js.map +2 -2
  54. package/public/browser/main-http-server.js +3 -0
  55. package/public/browser/main-http-server.js.map +2 -2
  56. package/public/browser/main-http2-server.js +3 -0
  57. package/public/browser/main-http2-server.js.map +2 -2
  58. package/public/browser/qcobjects-cli.js.map +1 -1
  59. package/public/browser/qcobjects-collab.js +16 -24
  60. package/public/browser/qcobjects-collab.js.map +2 -2
  61. package/public/browser/qcobjects-createcert.js +46 -54
  62. package/public/browser/qcobjects-createcert.js.map +2 -2
  63. package/public/browser/qcobjects-gae-http-server.js +16 -24
  64. package/public/browser/qcobjects-gae-http-server.js.map +2 -2
  65. package/public/browser/qcobjects-http-server.js +16 -24
  66. package/public/browser/qcobjects-http-server.js.map +2 -2
  67. package/public/browser/qcobjects-http2-server.js +21 -30
  68. package/public/browser/qcobjects-http2-server.js.map +2 -2
  69. package/public/browser/qcobjects-shell.js.map +1 -1
  70. package/public/browser/templates/apps/spa-local.html +0 -0
  71. package/public/browser/templates/apps/spa-local.js +0 -0
  72. package/public/browser/templates/pwa/sw.js +0 -0
  73. package/public/browser/types/global/index.d.js +0 -9
  74. package/public/browser/types/global/index.d.js.map +3 -3
  75. package/public/cjs/api-client_services.js +74 -0
  76. package/public/cjs/api-client_services.js.map +1 -0
  77. package/public/cjs/backend/backend-microservice-static.js +255 -0
  78. package/public/cjs/backend/backend-microservice-static.js.map +1 -0
  79. package/public/cjs/backend/backend-php.js +317 -0
  80. package/public/cjs/backend/backend-php.js.map +1 -0
  81. package/public/cjs/cli-commands-build-esbuild.js +341 -0
  82. package/public/cjs/cli-commands-build-esbuild.js.map +1 -0
  83. package/public/cjs/cli-commands-build-typescript.js +127 -0
  84. package/public/cjs/cli-commands-build-typescript.js.map +1 -0
  85. package/public/cjs/cli-commands-jira.js +115 -0
  86. package/public/cjs/cli-commands-jira.js.map +1 -0
  87. package/public/cjs/cli-commands-publish-static.js +108 -0
  88. package/public/cjs/cli-commands-publish-static.js.map +1 -0
  89. package/public/cjs/cli-commands-version.js +250 -0
  90. package/public/cjs/cli-commands-version.js.map +1 -0
  91. package/public/cjs/cli-commands.js +73 -0
  92. package/public/cjs/cli-commands.js.map +1 -0
  93. package/public/cjs/cli-main.js +487 -0
  94. package/public/cjs/cli-main.js.map +1 -0
  95. package/public/cjs/client_services.js +80 -0
  96. package/public/cjs/client_services.js.map +1 -0
  97. package/public/cjs/collab-server.js +404 -0
  98. package/public/cjs/collab-server.js.map +1 -0
  99. package/public/cjs/common-pipelog.js +57 -0
  100. package/public/cjs/common-pipelog.js.map +1 -0
  101. package/public/cjs/defaultsettings.js +496 -0
  102. package/public/cjs/defaultsettings.js.map +1 -0
  103. package/public/cjs/enterprise-commands.js +173 -0
  104. package/public/cjs/enterprise-commands.js.map +1 -0
  105. package/public/cjs/index.js +38 -0
  106. package/public/cjs/index.js.map +1 -0
  107. package/public/cjs/main-file.js +161 -0
  108. package/public/cjs/main-file.js.map +1 -0
  109. package/public/cjs/main-http-gae-server.js +498 -0
  110. package/public/cjs/main-http-gae-server.js.map +1 -0
  111. package/public/cjs/main-http-server.js +540 -0
  112. package/public/cjs/main-http-server.js.map +1 -0
  113. package/public/cjs/main-http2-server.js +398 -0
  114. package/public/cjs/main-http2-server.js.map +1 -0
  115. package/public/cjs/qcobjects-cli.js +105 -0
  116. package/public/cjs/qcobjects-cli.js.map +1 -0
  117. package/public/cjs/qcobjects-collab.js +51 -0
  118. package/public/cjs/qcobjects-collab.js.map +1 -0
  119. package/public/cjs/qcobjects-createcert.js +89 -0
  120. package/public/cjs/qcobjects-createcert.js.map +1 -0
  121. package/public/cjs/qcobjects-gae-http-server.js +51 -0
  122. package/public/cjs/qcobjects-gae-http-server.js.map +1 -0
  123. package/public/cjs/qcobjects-http-server.js +51 -0
  124. package/public/cjs/qcobjects-http-server.js.map +1 -0
  125. package/public/cjs/qcobjects-http2-server.js +54 -0
  126. package/public/cjs/qcobjects-http2-server.js.map +1 -0
  127. package/public/cjs/qcobjects-shell.js +145 -0
  128. package/public/cjs/qcobjects-shell.js.map +1 -0
  129. package/public/cjs/templates/apps/spa-local.html +0 -0
  130. package/public/cjs/templates/apps/spa-local.js +0 -0
  131. package/public/cjs/templates/pwa/sw.js +0 -0
  132. package/public/esm/api-client_services.mjs.map +1 -1
  133. package/public/esm/backend/backend-microservice-static.mjs +207 -216
  134. package/public/esm/backend/backend-microservice-static.mjs.map +2 -2
  135. package/public/esm/backend/backend-php.mjs +228 -232
  136. package/public/esm/backend/backend-php.mjs.map +2 -2
  137. package/public/esm/cli-commands-build-esbuild.mjs +295 -0
  138. package/public/esm/cli-commands-build-esbuild.mjs.map +7 -0
  139. package/public/esm/cli-commands-build-typescript.mjs +83 -0
  140. package/public/esm/cli-commands-build-typescript.mjs.map +7 -0
  141. package/public/esm/cli-commands-jira.mjs +1 -1
  142. package/public/esm/cli-commands-jira.mjs.map +1 -1
  143. package/public/esm/cli-commands-version.mjs.map +1 -1
  144. package/public/esm/cli-commands.mjs +7 -3
  145. package/public/esm/cli-commands.mjs.map +2 -2
  146. package/public/esm/cli-main.mjs +6 -6
  147. package/public/esm/cli-main.mjs.map +1 -1
  148. package/public/esm/client_services.mjs.map +1 -1
  149. package/public/esm/collab-server.mjs.map +1 -1
  150. package/public/esm/common-pipelog.mjs.map +1 -1
  151. package/public/esm/defaultsettings.mjs +68 -27
  152. package/public/esm/defaultsettings.mjs.map +3 -3
  153. package/public/esm/enterprise-commands.mjs.map +1 -1
  154. package/public/esm/index.mjs +1 -1
  155. package/public/esm/main-file.mjs.map +1 -1
  156. package/public/esm/main-http-gae-server.mjs +5 -2
  157. package/public/esm/main-http-gae-server.mjs.map +2 -2
  158. package/public/esm/main-http-server.mjs +5 -2
  159. package/public/esm/main-http-server.mjs.map +2 -2
  160. package/public/esm/main-http2-server.mjs +5 -2
  161. package/public/esm/main-http2-server.mjs.map +2 -2
  162. package/public/esm/qcobjects-cli.mjs +2 -2
  163. package/public/esm/qcobjects-cli.mjs.map +1 -1
  164. package/public/esm/qcobjects-collab.mjs +14 -23
  165. package/public/esm/qcobjects-collab.mjs.map +2 -2
  166. package/public/esm/qcobjects-createcert.mjs +43 -52
  167. package/public/esm/qcobjects-createcert.mjs.map +2 -2
  168. package/public/esm/qcobjects-gae-http-server.mjs +14 -23
  169. package/public/esm/qcobjects-gae-http-server.mjs.map +2 -2
  170. package/public/esm/qcobjects-http-server.mjs +14 -23
  171. package/public/esm/qcobjects-http-server.mjs.map +2 -2
  172. package/public/esm/qcobjects-http2-server.mjs +21 -31
  173. package/public/esm/qcobjects-http2-server.mjs.map +2 -2
  174. package/public/esm/qcobjects-shell.mjs +1 -1
  175. package/public/esm/qcobjects-shell.mjs.map +1 -1
  176. package/public/esm/templates/apps/spa-local.html +0 -0
  177. package/public/esm/templates/apps/spa-local.js +0 -0
  178. package/public/esm/templates/pwa/sw.js +0 -0
  179. package/public/esm/types/global/index.d.mjs +0 -9
  180. package/public/esm/types/global/index.d.mjs.map +3 -3
  181. package/public/types/index.d.ts +29 -3
  182. package/spec/support/jasmine.json +0 -0
  183. package/spec/testsSpec.ts +0 -0
  184. package/src/api-client_services.ts +1 -1
  185. package/src/backend/backend-microservice-static.ts +196 -196
  186. package/src/backend/backend-php.ts +240 -245
  187. package/src/cli-commands-build-esbuild.ts +375 -0
  188. package/src/cli-commands-build-typescript.ts +139 -0
  189. package/src/cli-commands-jira.ts +1 -1
  190. package/src/cli-commands-publish-static.ts +0 -0
  191. package/src/cli-commands-version.ts +1 -1
  192. package/src/cli-commands.ts +3 -1
  193. package/src/cli-main.ts +1 -1
  194. package/src/client_services.ts +1 -1
  195. package/src/collab-server.ts +1 -1
  196. package/src/common-pipelog.ts +1 -1
  197. package/src/defaultsettings.ts +65 -19
  198. package/src/enterprise-commands.ts +1 -1
  199. package/src/index.ts +0 -0
  200. package/src/main-file.ts +1 -1
  201. package/src/main-http-gae-server.ts +6 -1
  202. package/src/main-http-server.ts +6 -1
  203. package/src/main-http2-server.ts +6 -1
  204. package/src/qcobjects-cli.ts +1 -1
  205. package/src/qcobjects-collab.ts +1 -1
  206. package/src/qcobjects-createcert.ts +1 -1
  207. package/src/qcobjects-gae-http-server.ts +1 -1
  208. package/src/qcobjects-http-server.ts +1 -1
  209. package/src/qcobjects-http2-server.ts +4 -5
  210. package/src/qcobjects-shell.ts +1 -1
  211. package/src/templates/apps/spa-local.html +0 -0
  212. package/src/templates/apps/spa-local.js +0 -0
  213. package/src/templates/pwa/sw.js +0 -0
  214. package/src/types/global/index.d.ts +0 -0
  215. package/transpile.js +0 -0
  216. package/tsconfig.d.json +0 -0
  217. package/tsconfig.jasmine.json +0 -0
  218. package/tsconfig.json +3 -3
  219. package/public/cjs/api-client_services.cjs +0 -79
  220. package/public/cjs/api-client_services.cjs.map +0 -7
  221. package/public/cjs/backend/backend-microservice-static.cjs +0 -245
  222. package/public/cjs/backend/backend-microservice-static.cjs.map +0 -7
  223. package/public/cjs/backend/backend-php.cjs +0 -301
  224. package/public/cjs/backend/backend-php.cjs.map +0 -7
  225. package/public/cjs/cli-commands-jira.cjs +0 -112
  226. package/public/cjs/cli-commands-jira.cjs.map +0 -7
  227. package/public/cjs/cli-commands-publish-static.cjs +0 -109
  228. package/public/cjs/cli-commands-publish-static.cjs.map +0 -7
  229. package/public/cjs/cli-commands-version.cjs +0 -252
  230. package/public/cjs/cli-commands-version.cjs.map +0 -7
  231. package/public/cjs/cli-commands.cjs +0 -45
  232. package/public/cjs/cli-commands.cjs.map +0 -7
  233. package/public/cjs/cli-main.cjs +0 -417
  234. package/public/cjs/cli-main.cjs.map +0 -7
  235. package/public/cjs/client_services.cjs +0 -86
  236. package/public/cjs/client_services.cjs.map +0 -7
  237. package/public/cjs/collab-server.cjs +0 -444
  238. package/public/cjs/collab-server.cjs.map +0 -7
  239. package/public/cjs/common-pipelog.cjs +0 -50
  240. package/public/cjs/common-pipelog.cjs.map +0 -7
  241. package/public/cjs/defaultsettings.cjs +0 -432
  242. package/public/cjs/defaultsettings.cjs.map +0 -7
  243. package/public/cjs/enterprise-commands.cjs +0 -175
  244. package/public/cjs/enterprise-commands.cjs.map +0 -7
  245. package/public/cjs/index.cjs +0 -36
  246. package/public/cjs/index.cjs.map +0 -7
  247. package/public/cjs/main-file.cjs +0 -194
  248. package/public/cjs/main-file.cjs.map +0 -7
  249. package/public/cjs/main-http-gae-server.cjs +0 -519
  250. package/public/cjs/main-http-gae-server.cjs.map +0 -7
  251. package/public/cjs/main-http-server.cjs +0 -585
  252. package/public/cjs/main-http-server.cjs.map +0 -7
  253. package/public/cjs/main-http2-server.cjs +0 -428
  254. package/public/cjs/main-http2-server.cjs.map +0 -7
  255. package/public/cjs/qcobjects-cli.cjs +0 -92
  256. package/public/cjs/qcobjects-cli.cjs.map +0 -7
  257. package/public/cjs/qcobjects-collab.cjs +0 -43
  258. package/public/cjs/qcobjects-collab.cjs.map +0 -7
  259. package/public/cjs/qcobjects-createcert.cjs +0 -75
  260. package/public/cjs/qcobjects-createcert.cjs.map +0 -7
  261. package/public/cjs/qcobjects-gae-http-server.cjs +0 -43
  262. package/public/cjs/qcobjects-gae-http-server.cjs.map +0 -7
  263. package/public/cjs/qcobjects-http-server.cjs +0 -43
  264. package/public/cjs/qcobjects-http-server.cjs.map +0 -7
  265. package/public/cjs/qcobjects-http2-server.cjs +0 -49
  266. package/public/cjs/qcobjects-http2-server.cjs.map +0 -7
  267. package/public/cjs/qcobjects-shell.cjs +0 -185
  268. package/public/cjs/qcobjects-shell.cjs.map +0 -7
  269. package/public/cjs/types/global/index.d.cjs +0 -2
  270. package/public/cjs/types/global/index.d.cjs.map +0 -7
  271. package/public/types/index.d.ts.map +0 -1
  272. package/src/index.cts +0 -2
  273. package/src/index.mts +0 -2
@@ -0,0 +1,173 @@
1
+ /**
2
+ * QCObjects CLI 2.5
3
+ * ________________
4
+ *
5
+ * Author: Jean Machuca <correojean@gmail.com>
6
+ *
7
+ * Cross Browser Javascript Framework for MVC Patterns
8
+ * QuickCorp/QCObjects is licensed under the
9
+ * GNU Lesser General Public License v3.0
10
+ * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)
11
+ *
12
+ * Permissions of this copyleft license are conditioned on making available
13
+ * complete source code of licensed works and modifications under the same
14
+ * license or the GNU GPLv3. Copyright and license notices must be preserved.
15
+ * Contributors provide an express grant of patent rights. However, a larger
16
+ * work using the licensed work through interfaces provided by the licensed
17
+ * work may be distributed under different terms and without source code for
18
+ * the larger work.
19
+ *
20
+ * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>
21
+ *
22
+ * Everyone is permitted to copy and distribute verbatim copies of this
23
+ * license document, but changing it is not allowed.
24
+ */
25
+ /*eslint no-unused-vars: "off"*/
26
+ /*eslint no-redeclare: "off"*/
27
+ /*eslint no-empty: "off"*/
28
+ /*eslint strict: "off"*/
29
+ /*eslint no-mixed-operators: "off"*/
30
+ /*eslint no-undef: "off"*/
31
+ "use strict";
32
+ var __importDefault = (this && this.__importDefault) || function (mod) {
33
+ return (mod && mod.__esModule) ? mod : { "default": mod };
34
+ };
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.QCObjectsEnterprise = void 0;
37
+ const node_child_process_1 = require("node:child_process");
38
+ const readline_1 = __importDefault(require("readline"));
39
+ const qcobjects_1 = require("qcobjects");
40
+ const license = qcobjects_1.CONFIG.get("enterprise-license", "1234");
41
+ const email = qcobjects_1.CONFIG.get("enterprise-email", "a@b.com");
42
+ const MESSAGES = {
43
+ NOTE: "[NOTE: No information will be sent to a server until I got your consent]",
44
+ EMAIL_PROMPT: "Please tell me your e-Mail (💌):",
45
+ PHONE_PROMPT: "Please tell me your phone number (🤙): \n",
46
+ OPTION_PROMPT: `
47
+ Please select one of the following options (type a number):
48
+
49
+ 1.- 🙀 This is your first interaction 😍 with QCObjects Enterprise Edition 🏢,
50
+ you want to send your email and phone number to one of our executives to process your
51
+ inquiry, pay the license (when aplies) and receive a new fresh license number
52
+ that will free up to you the most advanced features for large companies
53
+
54
+ 2.- ✔ Your assigned executive 🧑 has given to you a new fresh QCObjects Enterprise Edition License Number
55
+ and you want to enter it to follow up with the next steps.
56
+
57
+ 3.- 🏃 You want to quit this form, as you got here accidentally
58
+ (You should think about it. It's not a coincidence, It's destiny 😀).
59
+
60
+ Please enter the number of the option and press [enter]: `,
61
+ REGISTRATION_SUCCESS: `👏 Congrats! You have been successfully registered to the cloud! 👏
62
+ One of our executives will be in touch with you as soon as possible to give you the next steps
63
+ to get a new License Number and start using QCObjects Entrprise Edition!
64
+
65
+ (In the meantime, you can continue using all the features of the QCObjects Community Edition)
66
+ `,
67
+ LICENSE_PROMPT: "Please tell me the number of license that your executive has given to you: \n",
68
+ COMMUNITY_EDITION: "🤷 You can continue to use QCObjects Community Edition, see you! 🙋 ",
69
+ PHONE_REQUIRED: `You need to enter a Phone Number if you want to be contacted.
70
+ If you want to quit, press Ctrl-C.
71
+ `,
72
+ EMAIL_REQUIRED: `You need to enter a real e-Mail address if you want to be contacted.
73
+ If you want to quit, press Ctrl-C.
74
+ `,
75
+ INSTALLING: "Now, I'm installing QCObjects Enterprise Edition in your computer...",
76
+ INSTALL_SUCCESS: `👏 Congrats! Now you have installed QCObjects Enterprise Edition! 👏
77
+ You can test it using:
78
+ > qcobjects --version
79
+
80
+ To find more help, type the command:
81
+
82
+ > qcobjects --help
83
+
84
+ Enjoy!
85
+ `,
86
+ INSTALL_FAILURE: "🤦 Something went wrong 🤦 when trying to update your license to QCObjects Enterprise Edition. Ask your executive to help."
87
+ };
88
+ const OPTIONS = {
89
+ FIRST_INTERACTION: "1",
90
+ ENTER_LICENSE: "2",
91
+ QUIT: "3"
92
+ };
93
+ class QCObjectsEnterprise extends qcobjects_1.InheritClass {
94
+ install() {
95
+ const instance = this;
96
+ instance.installEnterprise(license, email);
97
+ }
98
+ static async upgrade(switchCommander) {
99
+ const instance = new QCObjectsEnterprise();
100
+ const rl = readline_1.default.createInterface({
101
+ input: process.stdin,
102
+ output: process.stdout
103
+ });
104
+ const question = (query) => {
105
+ return new Promise(resolve => rl.question(query, resolve));
106
+ };
107
+ const emailQuestion = async () => {
108
+ const email = await question(`${MESSAGES.NOTE}\n\n${MESSAGES.EMAIL_PROMPT}`);
109
+ if (email !== "") {
110
+ const phoneNumberQuestion = async () => {
111
+ const phonenumber = await question(MESSAGES.PHONE_PROMPT);
112
+ if (phonenumber !== "") {
113
+ const interaction_option = await question(MESSAGES.OPTION_PROMPT);
114
+ qcobjects_1.logger.infoEnabled = true;
115
+ switch (interaction_option) {
116
+ case OPTIONS.FIRST_INTERACTION: {
117
+ try {
118
+ await switchCommander.register(email, phonenumber);
119
+ qcobjects_1.logger.info(MESSAGES.REGISTRATION_SUCCESS);
120
+ }
121
+ finally {
122
+ rl.close();
123
+ }
124
+ break;
125
+ }
126
+ case OPTIONS.ENTER_LICENSE: {
127
+ const license = await question(MESSAGES.LICENSE_PROMPT);
128
+ instance.installEnterprise(license, email);
129
+ rl.close();
130
+ break;
131
+ }
132
+ case OPTIONS.QUIT:
133
+ default: {
134
+ qcobjects_1.logger.info(MESSAGES.COMMUNITY_EDITION);
135
+ rl.close();
136
+ break;
137
+ }
138
+ }
139
+ }
140
+ else {
141
+ console.log(MESSAGES.PHONE_REQUIRED);
142
+ await phoneNumberQuestion();
143
+ }
144
+ };
145
+ await phoneNumberQuestion();
146
+ }
147
+ else {
148
+ console.log(MESSAGES.EMAIL_REQUIRED);
149
+ await emailQuestion();
150
+ }
151
+ };
152
+ await emailQuestion();
153
+ }
154
+ installEnterprise(license, email) {
155
+ const asterisk = "*";
156
+ qcobjects_1.logger.info(`Your entered license number is ${asterisk.repeat(license.length)} and the email that you have entered is ${email}`);
157
+ qcobjects_1.logger.info(MESSAGES.INSTALLING);
158
+ const cmdDownloadGit = `npm i --force -g git+https://license:${license}@software.qcobjects.io/qcobjects-enterprise/qcobjects-enterprise.git`;
159
+ (0, node_child_process_1.execSync)(cmdDownloadGit);
160
+ const stdout = (0, node_child_process_1.execSync)("qcobjects --version");
161
+ if (stdout.toString().includes("Enterprise Edition")) {
162
+ qcobjects_1.logger.info(MESSAGES.INSTALL_SUCCESS);
163
+ }
164
+ else {
165
+ console.log(MESSAGES.INSTALL_FAILURE);
166
+ }
167
+ }
168
+ }
169
+ exports.QCObjectsEnterprise = QCObjectsEnterprise;
170
+ (0, qcobjects_1.Package)("org.qcobjects.enterprise.commands", [
171
+ QCObjectsEnterprise
172
+ ]);
173
+ //# sourceMappingURL=enterprise-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enterprise-commands.js","sourceRoot":"","sources":["../../src/enterprise-commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const cli = __importStar(require("./qcobjects-cli"));
37
+ exports.default = cli;
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAuC;AACvC,kBAAe,GAAG,CAAC"}
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FileDispatcher = void 0;
7
+ /**
8
+ * QCObjects CLI 2.5
9
+ * ________________
10
+ *
11
+ * Author: Jean Machuca <correojean@gmail.com>
12
+ *
13
+ * Cross Browser Javascript Framework for MVC Patterns
14
+ * QuickCorp/QCObjects is licensed under the
15
+ * GNU Lesser General Public License v3.0
16
+ * [LICENSE] (https://github.com/QuickCorp/QCObjects/blob/master/LICENSE.txt)
17
+ *
18
+ * Permissions of this copyleft license are conditioned on making available
19
+ * complete source code of licensed works and modifications under the same
20
+ * license or the GNU GPLv3. Copyright and license notices must be preserved.
21
+ * Contributors provide an express grant of patent rights. However, a larger
22
+ * work using the licensed work through interfaces provided by the licensed
23
+ * work may be distributed under different terms and without source code for
24
+ * the larger work.
25
+ *
26
+ * Copyright (C) 2015 Jean Machuca,<correojean@gmail.com>
27
+ *
28
+ * Everyone is permitted to copy and distribute verbatim copies of this
29
+ * license document, but changing it is not allowed.
30
+ */
31
+ /*eslint no-unused-vars: "off"*/
32
+ /*eslint no-redeclare: "off"*/
33
+ /*eslint no-empty: "off"*/
34
+ /*eslint strict: "off"*/
35
+ /*eslint no-mixed-operators: "off"*/
36
+ /*eslint no-undef: "off"*/
37
+ const path_1 = __importDefault(require("path"));
38
+ const fs_1 = __importDefault(require("fs"));
39
+ const mime_1 = __importDefault(require("mime"));
40
+ const qcobjects_1 = require("qcobjects");
41
+ class FileDispatcher extends qcobjects_1.InheritClass {
42
+ scriptname;
43
+ filename;
44
+ pathname;
45
+ headers;
46
+ templateURI;
47
+ template;
48
+ body;
49
+ constructor({ name = qcobjects_1.CONFIG.get("documentRootFileIndex"), template = "", templateURI = qcobjects_1.CONFIG.get("documentRootFileIndex"), headers = {}, body = "", filename = "", done }) {
50
+ super({
51
+ name,
52
+ template,
53
+ templateURI,
54
+ headers,
55
+ body,
56
+ filename,
57
+ done
58
+ });
59
+ var o = this;
60
+ var scriptname = o.scriptname;
61
+ this.filename = scriptname;
62
+ var pathname = (o.pathname !== "") ? (o.pathname + "/") : ("");
63
+ var appTemplateInstance = this;
64
+ if (typeof appTemplateInstance.headers === "undefined") {
65
+ appTemplateInstance.headers = {
66
+ ":status": 500,
67
+ "content-type": "text/html"
68
+ };
69
+ }
70
+ appTemplateInstance.done = o.done.bind(appTemplateInstance);
71
+ appTemplateInstance.templateURI = qcobjects_1.CONFIG.get("documentRoot") + pathname + scriptname;
72
+ appTemplateInstance.templateURI = appTemplateInstance.templateURI.replace("//", "/");
73
+ if (appTemplateInstance.isTemplate()) {
74
+ fs_1.default.readFile(appTemplateInstance.templateURI, function (err, data) {
75
+ qcobjects_1.logger.debug("reading data from " + appTemplateInstance.templateURI);
76
+ if (typeof data !== "undefined") {
77
+ appTemplateInstance.template = data.toString();
78
+ appTemplateInstance._done();
79
+ }
80
+ else {
81
+ appTemplateInstance.headers = {
82
+ ":status": 404,
83
+ "content-type": "text/html"
84
+ };
85
+ appTemplateInstance.done(appTemplateInstance.headers, "FILE NOT FOUND", "notfound.html", false);
86
+ qcobjects_1.logger.debug("file not found");
87
+ }
88
+ });
89
+ }
90
+ else {
91
+ appTemplateInstance.headers[":status"] = 200;
92
+ appTemplateInstance.headers["content-type"] = mime_1.default.getType(appTemplateInstance.templateURI);
93
+ appTemplateInstance.done(appTemplateInstance.headers, "", appTemplateInstance.templateURI, false);
94
+ }
95
+ qcobjects_1.logger.info("FileDispatcher initialized");
96
+ }
97
+ file_extension() {
98
+ return this.filename.substr(this.filename.indexOf("."));
99
+ }
100
+ isTemplate() {
101
+ return qcobjects_1.CONFIG.get("useTemplate") && (this.file_extension() == ".html" || this.file_extension() == ".tpl.html");
102
+ }
103
+ _done() {
104
+ var appTemplateInstance = this;
105
+ const source = appTemplateInstance.template;
106
+ if (appTemplateInstance.isTemplate()) {
107
+ ((0, qcobjects_1.New)(qcobjects_1.Component, {
108
+ name: "static_source",
109
+ template: source,
110
+ cached: false,
111
+ tplsource: "inline",
112
+ data: {
113
+ title: "QCObjects"
114
+ },
115
+ done({ request, component }) {
116
+ appTemplateInstance.body = component.parsedAssignmentText;
117
+ return Promise.resolve({
118
+ request,
119
+ component
120
+ });
121
+ }
122
+ }));
123
+ }
124
+ else {
125
+ appTemplateInstance.body = source;
126
+ }
127
+ if ([".png",
128
+ ".jpg",
129
+ ".jpeg",
130
+ ".json",
131
+ ".html",
132
+ ".tpl.html",
133
+ ".css",
134
+ ".js",
135
+ ".svg"
136
+ ].includes(appTemplateInstance.file_extension())) {
137
+ appTemplateInstance.headers["content-type"] = mime_1.default.getType(appTemplateInstance.templateURI);
138
+ appTemplateInstance.headers["cache-control"] = qcobjects_1.CONFIG.get("cacheControl", "max-age=31536000");
139
+ appTemplateInstance.done(appTemplateInstance.headers, appTemplateInstance.body, appTemplateInstance.templateURI, appTemplateInstance.isTemplate());
140
+ }
141
+ else {
142
+ appTemplateInstance.done({
143
+ ":status": 403,
144
+ "content-type": "text/plain"
145
+ }, "FORBIDDEN", "notfound.html", false);
146
+ }
147
+ }
148
+ done(headers, body, templateURI = "", isTemplate = false) { }
149
+ }
150
+ exports.FileDispatcher = FileDispatcher;
151
+ (() => {
152
+ "use strict";
153
+ const absolutePath = path_1.default.resolve(__dirname, "./");
154
+ (0, qcobjects_1.Package)("org.quickcorp.qcobjects.main.file", [
155
+ FileDispatcher
156
+ ]);
157
+ exports = {
158
+ FileDispatcher
159
+ };
160
+ })();
161
+ //# sourceMappingURL=main-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-file.js","sourceRoot":"","sources":["../../src/main-file.ts"],"names":[],"mappings":"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"}