qcobjects-cli 2.4.32 → 2.4.34
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/.dockerignore +2 -0
- package/.eslintignore +7 -0
- package/.eslintrc.cjs +22 -0
- package/VERSION +1 -1
- package/package.json +45 -24
- package/{backend → src/backend}/com.qcobjects.backend.microservice.static.js +26 -26
- package/{backend → src/backend}/org.qcobjects.backend.php.js +45 -38
- package/{com.qcobjects.cli.commands.jira.js → src/com.qcobjects.cli.commands.jira.js} +1 -1
- package/{com.qcobjects.cli.commands.js → src/com.qcobjects.cli.commands.js} +1 -1
- package/{com.qcobjects.cli.commands.version.js → src/com.qcobjects.cli.commands.version.js} +1 -1
- package/src/index.cjs +2 -0
- package/src/index.d.ts +2 -0
- package/src/index.mjs +2 -0
- package/src/index.ts +2 -0
- package/{org.qcobjects.enterprise.commands.js → src/org.qcobjects.enterprise.commands.js} +1 -1
- package/{org.quickcorp.qcobjects.cli.js → src/org.quickcorp.qcobjects.cli.js} +265 -252
- package/src/org.quickcorp.qcobjects.defaultsettings.js +293 -0
- package/{qcobjects-cli.js → src/qcobjects-cli.js} +5 -3
- package/.eslintrc.json +0 -15
- package/org.quickcorp.qcobjects.defaultsettings.js +0 -242
- /package/{com.qcobjects.cli.commands.jira.client_services.js → src/com.qcobjects.cli.commands.jira.client_services.js} +0 -0
- /package/{org.qcobjects.common.pipelog.js → src/org.qcobjects.common.pipelog.js} +0 -0
- /package/{org.quickcorp.qcobjects.api.client_services.js → src/org.quickcorp.qcobjects.api.client_services.js} +0 -0
- /package/{org.quickcorp.qcobjects.collab.server.js → src/org.quickcorp.qcobjects.collab.server.js} +0 -0
- /package/{org.quickcorp.qcobjects.main.file.js → src/org.quickcorp.qcobjects.main.file.js} +0 -0
- /package/{org.quickcorp.qcobjects.main.http.gae.server.js → src/org.quickcorp.qcobjects.main.http.gae.server.js} +0 -0
- /package/{org.quickcorp.qcobjects.main.http.server.js → src/org.quickcorp.qcobjects.main.http.server.js} +0 -0
- /package/{org.quickcorp.qcobjects.main.http2.server.js → src/org.quickcorp.qcobjects.main.http2.server.js} +0 -0
- /package/{qcobjects-collab.js → src/qcobjects-collab.js} +0 -0
- /package/{qcobjects-createcert.js → src/qcobjects-createcert.js} +0 -0
- /package/{qcobjects-gae-http-server.js → src/qcobjects-gae-http-server.js} +0 -0
- /package/{qcobjects-http-server.js → src/qcobjects-http-server.js} +0 -0
- /package/{qcobjects-http2-server.js → src/qcobjects-http2-server.js} +0 -0
- /package/{qcobjects-shell.js → src/qcobjects-shell.js} +0 -0
- /package/{templates → src/templates}/apps/spa-local.html +0 -0
- /package/{templates → src/templates}/apps/spa-local.js +0 -0
- /package/{templates → src/templates}/pwa/sw.js +0 -0
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QCObjects CLI 2.4.x
|
|
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
|
+
|
|
33
|
+
CONFIG.set("documentRootFileIndex", "index.html");
|
|
34
|
+
CONFIG.set("projectPath", `${process.cwd()}/`);
|
|
35
|
+
CONFIG.set("useConfigService", false); // this is only true useful for client web side
|
|
36
|
+
CONFIG.set("documentRoot", "./");
|
|
37
|
+
CONFIG.set("serverPortHTTP", 80);
|
|
38
|
+
CONFIG.set("serverPortHTTPS", 443);
|
|
39
|
+
CONFIG.set("private-key-pem", "localhost-privkey.pem");
|
|
40
|
+
CONFIG.set("private-cert-pem", "localhost-cert.pem");
|
|
41
|
+
CONFIG.set("allowHTTP1", true);
|
|
42
|
+
CONFIG.set("useTemplate", false);
|
|
43
|
+
CONFIG.set("domain", "localhost");
|
|
44
|
+
|
|
45
|
+
global.__get_version__ = function () {
|
|
46
|
+
const path = require("path");
|
|
47
|
+
|
|
48
|
+
const absolutePath = path.resolve(__dirname, "./");
|
|
49
|
+
const package_config = require(absolutePath + "/../package.json");
|
|
50
|
+
const qcobjects_pkg_config = require("qcobjects/package.json");
|
|
51
|
+
const qcobjects_sdk_pkg_config = require("qcobjects-sdk/package.json");
|
|
52
|
+
return {
|
|
53
|
+
"qcobjects": qcobjects_pkg_config.version,
|
|
54
|
+
"sdk": qcobjects_sdk_pkg_config.version,
|
|
55
|
+
"cli": package_config.version
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
global.__get_version_string__ = function () {
|
|
60
|
+
const version = global.__get_version__();
|
|
61
|
+
return "QCObjects: v" + version.qcobjects + ", SDK: v" + version.sdk + ", CLI: v" + version.cli;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
let setDevMode = function (devmode) {
|
|
66
|
+
if (typeof devmode !== "undefined") {
|
|
67
|
+
switch (true) {
|
|
68
|
+
case devmode == "debug":
|
|
69
|
+
logger.debugEnabled = true;
|
|
70
|
+
logger.warnEnabled = true;
|
|
71
|
+
logger.infoEnabled = true;
|
|
72
|
+
break;
|
|
73
|
+
case devmode == "warn":
|
|
74
|
+
logger.debugEnabled = false;
|
|
75
|
+
logger.warnEnabled = true;
|
|
76
|
+
logger.infoEnabled = true;
|
|
77
|
+
break;
|
|
78
|
+
case devmode == "info":
|
|
79
|
+
logger.debugEnabled = false;
|
|
80
|
+
logger.warnEnabled = false;
|
|
81
|
+
logger.infoEnabled = true;
|
|
82
|
+
break;
|
|
83
|
+
|
|
84
|
+
default:
|
|
85
|
+
logger.debugEnabled = false;
|
|
86
|
+
logger.warnEnabled = false;
|
|
87
|
+
logger.infoEnabled = false;
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
} else {
|
|
91
|
+
logger.debugEnabled = false;
|
|
92
|
+
logger.warnEnabled = false;
|
|
93
|
+
logger.infoEnabled = false;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
try {
|
|
99
|
+
var _config = require(CONFIG.get("projectPath") + "config.json");
|
|
100
|
+
logger.debug("Loading settings from your config.json");
|
|
101
|
+
|
|
102
|
+
let _secretKey = (_config.hasOwnProperty.call(_config, "domain")) ? (_config["domain"]) : ("_secret_");
|
|
103
|
+
|
|
104
|
+
if (_config.hasOwnProperty.call(_config, "__encoded__")) {
|
|
105
|
+
_config = JSON.parse(_Crypt.decrypt(_config.__encoded__, _secretKey));
|
|
106
|
+
}
|
|
107
|
+
for (var k in _config) {
|
|
108
|
+
CONFIG.set(k, _config[k]);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
setDevMode(CONFIG.get("devmode", ""));
|
|
112
|
+
|
|
113
|
+
if (typeof CONFIG.get("backend") !== "undefined") {
|
|
114
|
+
global.set("backendAvailable", true);
|
|
115
|
+
|
|
116
|
+
if (typeof CONFIG.get("basePath") !== "undefined") {
|
|
117
|
+
logger.debug(`Changing the current directory: ${process.cwd()}`);
|
|
118
|
+
try {
|
|
119
|
+
process.chdir(CONFIG.get("basePath"));
|
|
120
|
+
logger.debug(`New directory: ${process.cwd()}`);
|
|
121
|
+
} catch (err) {
|
|
122
|
+
logger.warn(`It was impossible to change the current chdir: ${err}`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
} catch (e) {
|
|
127
|
+
logger.debug(e);
|
|
128
|
+
logger.debug("Something went wrong trying to load config.json file in your project");
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
(async function () {
|
|
132
|
+
const path = require("path");
|
|
133
|
+
const projectPath = CONFIG.get("projectPath", `${process.cwd()}/`);
|
|
134
|
+
const loadDefaultRoutes = async () => {
|
|
135
|
+
let backend = CONFIG.get("backend");
|
|
136
|
+
if (typeof backend === "undefined") {
|
|
137
|
+
backend = {};
|
|
138
|
+
}
|
|
139
|
+
if (typeof backend.routes === "undefined") {
|
|
140
|
+
backend.routes = [];
|
|
141
|
+
}
|
|
142
|
+
backend.routes = backend.routes.concat([{
|
|
143
|
+
"name": "QCObjects.js",
|
|
144
|
+
"description": "Redirection of QCObjects.js",
|
|
145
|
+
"path": "^/QCObjects.js$",
|
|
146
|
+
"microservice": "com.qcobjects.backend.microservice.static",
|
|
147
|
+
"redirect_to": "./node_modules/qcobjects/QCObjects.js",
|
|
148
|
+
"responseHeaders": {},
|
|
149
|
+
"cors": {
|
|
150
|
+
"allow_origins": "*"
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"name": "QCObjects-SDK.js",
|
|
155
|
+
"description": "Redirection of QCObjects SDK",
|
|
156
|
+
"path": "^/js/packages/QCObjects-SDK.js$",
|
|
157
|
+
"microservice": "com.qcobjects.backend.microservice.static",
|
|
158
|
+
"redirect_to": "./node_modules/qcobjects-sdk/QCObjects-SDK.js",
|
|
159
|
+
"responseHeaders": {},
|
|
160
|
+
"cors": {
|
|
161
|
+
"allow_origins": "*"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"name": "QCObjects-SDK Components",
|
|
166
|
+
"description": "Redirection of QCObjects SDK",
|
|
167
|
+
"path": "^/qcobjects-sdk/(.*)$",
|
|
168
|
+
"microservice": "com.qcobjects.backend.microservice.static",
|
|
169
|
+
"redirect_to": "./node_modules/qcobjects-sdk/$1",
|
|
170
|
+
"responseHeaders": {},
|
|
171
|
+
"cors": {
|
|
172
|
+
"allow_origins": "*"
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
]);
|
|
177
|
+
CONFIG.set("backend", backend);
|
|
178
|
+
|
|
179
|
+
return;
|
|
180
|
+
};
|
|
181
|
+
await loadDefaultRoutes();
|
|
182
|
+
})().then(() => logger.info("Default routes loaded"));
|
|
183
|
+
|
|
184
|
+
(function () {
|
|
185
|
+
/* Auto Discover dependencies (lib, handlers, commands) */
|
|
186
|
+
const path = require("path");
|
|
187
|
+
const projectPath = CONFIG.get("projectPath", `${process.cwd()}/`);
|
|
188
|
+
logger.debug(`CONFIG.projectPath is set to ${projectPath}`);
|
|
189
|
+
const hasKeyword = (p, keyword) => {
|
|
190
|
+
if (typeof hasKeyword.keywords === "undefined"){
|
|
191
|
+
hasKeyword.keywords = {};
|
|
192
|
+
}
|
|
193
|
+
if (typeof hasKeyword.keywords[p] === "undefined"){
|
|
194
|
+
const {
|
|
195
|
+
keywords
|
|
196
|
+
} = require(`${findPackageNodePath(p)}/${p}/package.json`);
|
|
197
|
+
hasKeyword.keywords[p] = keywords;
|
|
198
|
+
}
|
|
199
|
+
return typeof hasKeyword.keywords[p] !== "undefined" && hasKeyword.keywords[p].includes(keyword);
|
|
200
|
+
};
|
|
201
|
+
|
|
202
|
+
const dependencies = () => {
|
|
203
|
+
if (typeof dependencies.deps === "undefined"){
|
|
204
|
+
dependencies.deps = Object.keys(require(`${projectPath}/package.json`).dependencies);
|
|
205
|
+
}
|
|
206
|
+
return dependencies.deps;
|
|
207
|
+
};
|
|
208
|
+
|
|
209
|
+
const loadLibs = () => {
|
|
210
|
+
let _ret_;
|
|
211
|
+
if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_libs", false)) {
|
|
212
|
+
const libs = dependencies().filter((p) => hasKeyword(p, "qcobjects-lib"));
|
|
213
|
+
if (libs.length>0){
|
|
214
|
+
logger.debug(`Plugin Libs found: ${libs}`);
|
|
215
|
+
_ret_ = Promise.all(libs.map((p) => {return Import(p);})).then(() => logger.info("Libs loaded"));
|
|
216
|
+
} else {
|
|
217
|
+
logger.debug("No Plugin Libs found.");
|
|
218
|
+
_ret_ = Promise.resolve();
|
|
219
|
+
}
|
|
220
|
+
} else {
|
|
221
|
+
logger.debug("To load libs, set autodiscover_libs to true in your config.json");
|
|
222
|
+
_ret_ = Promise.resolve();
|
|
223
|
+
}
|
|
224
|
+
return _ret_;
|
|
225
|
+
};
|
|
226
|
+
const loadHandlers = () => {
|
|
227
|
+
let _ret_;
|
|
228
|
+
if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_handlers", false)) {
|
|
229
|
+
const handlers = dependencies().filter((p) => hasKeyword(p, "qcobjects-handler"));
|
|
230
|
+
if (handlers.length>0){
|
|
231
|
+
logger.debug(`Plugin Handlers found: ${handlers}`);
|
|
232
|
+
_ret_ = Promise.all(handlers.map((p) => {return Import(p);})).then(() => logger.info("Handlers loaded"));
|
|
233
|
+
} else {
|
|
234
|
+
logger.debug("No Plugin Handlers found.");
|
|
235
|
+
_ret_ = Promise.resolve();
|
|
236
|
+
}
|
|
237
|
+
} else {
|
|
238
|
+
logger.debug("To load handlers, set autodiscover_handlers to true in your config.json");
|
|
239
|
+
_ret_ = Promise.resolve();
|
|
240
|
+
}
|
|
241
|
+
return _ret_;
|
|
242
|
+
};
|
|
243
|
+
const loadCommands = () => {
|
|
244
|
+
let _ret_;
|
|
245
|
+
logger.debug(`Looking for custom commands as dependencies in: ${projectPath}/package.json`);
|
|
246
|
+
if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_commands", false)) {
|
|
247
|
+
const commands = dependencies().filter((p) => hasKeyword(p, "qcobjects-command"));
|
|
248
|
+
if (commands.length>0){
|
|
249
|
+
logger.debug(`Plugin Commands found: ${commands}`);
|
|
250
|
+
_ret_ = Promise.all(commands.map((p) => {return Import(p);})).then(() => logger.info("Commands loaded"));
|
|
251
|
+
} else {
|
|
252
|
+
logger.debug("No Plugin Commands found.");
|
|
253
|
+
_ret_ = Promise.resolve();
|
|
254
|
+
}
|
|
255
|
+
} else {
|
|
256
|
+
logger.debug("To load commands, set autodiscover_commands to true in your config.json");
|
|
257
|
+
_ret_ = Promise.resolve();
|
|
258
|
+
}
|
|
259
|
+
return _ret_;
|
|
260
|
+
};
|
|
261
|
+
if (CONFIG.get("autodiscover", false) ||
|
|
262
|
+
CONFIG.get("autodiscover_libs", false) ||
|
|
263
|
+
CONFIG.get("autodiscover_handlers", false) ||
|
|
264
|
+
CONFIG.get("autodiscover_commands", false)
|
|
265
|
+
) {
|
|
266
|
+
logger.info("Auto discover is enabled");
|
|
267
|
+
} else if (!CONFIG.get("autodiscover", false)) {
|
|
268
|
+
logger.info("Auto discover is disabled");
|
|
269
|
+
logger.debug("To load all dependencies, set autodiscover to true in your config.json");
|
|
270
|
+
} else {
|
|
271
|
+
logger.info("Auto discover is disabled");
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
try {
|
|
275
|
+
logger.debug("Loading Libs...");
|
|
276
|
+
loadLibs();
|
|
277
|
+
} catch (e) {
|
|
278
|
+
throw Error(`Something went wrong trying to load libs: ${e.message}`);
|
|
279
|
+
}
|
|
280
|
+
try {
|
|
281
|
+
logger.debug("Loading Handlers...");
|
|
282
|
+
loadHandlers();
|
|
283
|
+
} catch (e) {
|
|
284
|
+
throw Error(`Something went wrong trying to load handler: ${e.message}`);
|
|
285
|
+
}
|
|
286
|
+
try {
|
|
287
|
+
logger.debug("Loading Commands...");
|
|
288
|
+
loadCommands();
|
|
289
|
+
} catch (e) {
|
|
290
|
+
throw Error(`Something went wrong trying to load commands: ${e.message}`);
|
|
291
|
+
}
|
|
292
|
+
logger.info("Dependencies loaded");
|
|
293
|
+
})();
|
|
@@ -33,13 +33,11 @@
|
|
|
33
33
|
const path = require("path");
|
|
34
34
|
const absolutePath = path.resolve( __dirname, "./" );
|
|
35
35
|
const templatePath = path.resolve( __dirname, "./templates/apps/" )+"/";
|
|
36
|
-
const package_config = require(absolutePath+"
|
|
36
|
+
const package_config = require(absolutePath+"/../package.json");
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
require("qcobjects");
|
|
40
40
|
|
|
41
|
-
require(absolutePath+"/org.quickcorp.qcobjects.defaultsettings.js");
|
|
42
|
-
|
|
43
41
|
logger.debugEnabled = false;
|
|
44
42
|
const welcometo = "Welcome to \n";
|
|
45
43
|
const instructions = `
|
|
@@ -59,6 +57,10 @@ if (process.argv.length<3 || process.argv[2] === "create"){
|
|
|
59
57
|
console.log(logo);
|
|
60
58
|
console.log(instructions);
|
|
61
59
|
}
|
|
60
|
+
logger.debugEnabled = false;
|
|
61
|
+
logger.warnEnabled = false;
|
|
62
|
+
logger.infoEnabled = false;
|
|
63
|
+
|
|
62
64
|
require(absolutePath+"/org.quickcorp.qcobjects.defaultsettings.js");
|
|
63
65
|
|
|
64
66
|
require(absolutePath+"/org.quickcorp.qcobjects.cli");
|
package/.eslintrc.json
DELETED
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* QCObjects CLI 2.4.x
|
|
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
|
-
|
|
33
|
-
CONFIG.set("documentRootFileIndex","index.html");
|
|
34
|
-
CONFIG.set("projectPath",`${process.cwd()}/`);
|
|
35
|
-
CONFIG.set("useConfigService",false); // this is only true useful for client web side
|
|
36
|
-
CONFIG.set("documentRoot","./");
|
|
37
|
-
CONFIG.set("serverPortHTTP",80);
|
|
38
|
-
CONFIG.set("serverPortHTTPS",443);
|
|
39
|
-
CONFIG.set("private-key-pem","localhost-privkey.pem");
|
|
40
|
-
CONFIG.set("private-cert-pem","localhost-cert.pem");
|
|
41
|
-
CONFIG.set("allowHTTP1",true);
|
|
42
|
-
CONFIG.set("useTemplate",false);
|
|
43
|
-
CONFIG.set("domain","localhost");
|
|
44
|
-
|
|
45
|
-
global.__get_version__ = function (){
|
|
46
|
-
const path = require("path");
|
|
47
|
-
|
|
48
|
-
const absolutePath = path.resolve( __dirname, "./" );
|
|
49
|
-
const package_config = require(absolutePath+"/package.json");
|
|
50
|
-
const qcobjects_pkg_config = require("qcobjects/package.json");
|
|
51
|
-
const qcobjects_sdk_pkg_config = require("qcobjects-sdk/package.json");
|
|
52
|
-
return {
|
|
53
|
-
"qcobjects":qcobjects_pkg_config.version,
|
|
54
|
-
"sdk":qcobjects_sdk_pkg_config.version,
|
|
55
|
-
"cli":package_config.version
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
global.__get_version_string__ = function (){
|
|
60
|
-
const version = global.__get_version__();
|
|
61
|
-
return "QCObjects: v"+version.qcobjects+", SDK: v"+version.sdk+", CLI: v"+version.cli;
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
let setDevMode = function (devmode){
|
|
66
|
-
if (typeof devmode !== "undefined"){
|
|
67
|
-
switch (true) {
|
|
68
|
-
case devmode=="debug":
|
|
69
|
-
logger.debugEnabled = true;
|
|
70
|
-
logger.warnEnabled = true;
|
|
71
|
-
logger.infoEnabled = true;
|
|
72
|
-
break;
|
|
73
|
-
case devmode=="warn":
|
|
74
|
-
logger.debugEnabled = false;
|
|
75
|
-
logger.warnEnabled = true;
|
|
76
|
-
logger.infoEnabled = true;
|
|
77
|
-
break;
|
|
78
|
-
case devmode=="info":
|
|
79
|
-
logger.debugEnabled = false;
|
|
80
|
-
logger.warnEnabled = false;
|
|
81
|
-
logger.infoEnabled = true;
|
|
82
|
-
break;
|
|
83
|
-
|
|
84
|
-
default:
|
|
85
|
-
logger.debugEnabled = false;
|
|
86
|
-
logger.warnEnabled = false;
|
|
87
|
-
logger.infoEnabled = false;
|
|
88
|
-
break;
|
|
89
|
-
}
|
|
90
|
-
} else {
|
|
91
|
-
logger.debugEnabled = false;
|
|
92
|
-
logger.warnEnabled = false;
|
|
93
|
-
logger.infoEnabled = false;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
try {
|
|
99
|
-
var _config = require(CONFIG.get("projectPath")+"config.json");
|
|
100
|
-
logger.debug("Loading settings from your config.json");
|
|
101
|
-
|
|
102
|
-
let _secretKey = (_config.hasOwnProperty.call(_config,"domain"))?(_config["domain"]):("_secret_");
|
|
103
|
-
|
|
104
|
-
if (_config.hasOwnProperty.call(_config,"__encoded__")) {
|
|
105
|
-
_config = JSON.parse(_Crypt.decrypt(_config.__encoded__, _secretKey));
|
|
106
|
-
}
|
|
107
|
-
for (var k in _config){
|
|
108
|
-
CONFIG.set(k,_config[k]);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
setDevMode(CONFIG.get("devmode",""));
|
|
112
|
-
|
|
113
|
-
if (typeof CONFIG.get("backend") !== "undefined"){
|
|
114
|
-
global.set("backendAvailable",true);
|
|
115
|
-
|
|
116
|
-
if (typeof CONFIG.get("basePath") !== "undefined"){
|
|
117
|
-
logger.debug(`Changing the current directory: ${process.cwd()}`);
|
|
118
|
-
try {
|
|
119
|
-
process.chdir(CONFIG.get("basePath"));
|
|
120
|
-
logger.debug(`New directory: ${process.cwd()}`);
|
|
121
|
-
} catch (err) {
|
|
122
|
-
logger.warn(`It was impossible to change the current chdir: ${err}`);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}catch (e){
|
|
127
|
-
logger.debug(e);
|
|
128
|
-
logger.debug("Something went wrong trying to load config.json file in your project");
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
(async function (){
|
|
132
|
-
const path = require("path");
|
|
133
|
-
const projectPath = CONFIG.get("projectPath", `${process.cwd()}/`);
|
|
134
|
-
const loadDefaultRoutes = async () => {
|
|
135
|
-
let backend = CONFIG.get("backend");
|
|
136
|
-
if (typeof backend === "undefined"){
|
|
137
|
-
backend = {};
|
|
138
|
-
}
|
|
139
|
-
if (typeof backend.routes === "undefined"){
|
|
140
|
-
backend.routes = [];
|
|
141
|
-
}
|
|
142
|
-
backend.routes = backend.routes.concat([
|
|
143
|
-
{
|
|
144
|
-
"name":"QCObjects.js",
|
|
145
|
-
"description":"Redirection of QCObjects.js",
|
|
146
|
-
"path":"^/QCObjects.js$",
|
|
147
|
-
"microservice":"com.qcobjects.backend.microservice.static",
|
|
148
|
-
"redirect_to": "./node_modules/qcobjects/QCObjects.js",
|
|
149
|
-
"responseHeaders":{
|
|
150
|
-
},
|
|
151
|
-
"cors":{
|
|
152
|
-
"allow_origins":"*"
|
|
153
|
-
}
|
|
154
|
-
},
|
|
155
|
-
{
|
|
156
|
-
"name":"QCObjects-SDK.js",
|
|
157
|
-
"description":"Redirection of QCObjects SDK",
|
|
158
|
-
"path":"^/js/packages/QCObjects-SDK.js$",
|
|
159
|
-
"microservice":"com.qcobjects.backend.microservice.static",
|
|
160
|
-
"redirect_to": "./node_modules/qcobjects-sdk/QCObjects-SDK.js",
|
|
161
|
-
"responseHeaders":{
|
|
162
|
-
},
|
|
163
|
-
"cors":{
|
|
164
|
-
"allow_origins":"*"
|
|
165
|
-
}
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
"name":"QCObjects-SDK Components",
|
|
169
|
-
"description":"Redirection of QCObjects SDK",
|
|
170
|
-
"path":"^/qcobjects-sdk/(.*)$",
|
|
171
|
-
"microservice":"com.qcobjects.backend.microservice.static",
|
|
172
|
-
"redirect_to": "./node_modules/qcobjects-sdk/$1",
|
|
173
|
-
"responseHeaders":{},
|
|
174
|
-
"cors":{
|
|
175
|
-
"allow_origins":"*"
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
]);
|
|
180
|
-
CONFIG.set("backend", backend);
|
|
181
|
-
|
|
182
|
-
return;
|
|
183
|
-
};
|
|
184
|
-
await loadDefaultRoutes();
|
|
185
|
-
})().then (()=>logger.info("Default routes loaded"));
|
|
186
|
-
|
|
187
|
-
(async function (){
|
|
188
|
-
/* Auto Discover dependencies (lib, handlers, commands) */
|
|
189
|
-
const path = require("path");
|
|
190
|
-
const projectPath = CONFIG.get("projectPath", `${process.cwd()}/`);
|
|
191
|
-
const hasKeyword = (p,keyword) => {
|
|
192
|
-
const {keywords} = require(`${findPackageNodePath(p)}/${p}/package.json`);
|
|
193
|
-
return typeof keywords !== "undefined" && keywords.includes(keyword);
|
|
194
|
-
};
|
|
195
|
-
|
|
196
|
-
const loadLibs = async () => {
|
|
197
|
-
let _ret_;
|
|
198
|
-
if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_libs",false)){
|
|
199
|
-
_ret_ = Promise.all(Object.keys(require(`${projectPath}/package.json`).dependencies).filter((p)=>hasKeyword(p,"qcobjects-lib")).map((p)=>Import(p))).then(()=>logger.info("Libs loaded"));
|
|
200
|
-
} else {
|
|
201
|
-
_ret_ = Promise.resolve();
|
|
202
|
-
logger.debug("To load libs, set autodiscover_libs to true in your config.json");
|
|
203
|
-
}
|
|
204
|
-
return _ret_;
|
|
205
|
-
};
|
|
206
|
-
const loadHandlers = async () => {
|
|
207
|
-
let _ret_;
|
|
208
|
-
if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_handlers",false)){
|
|
209
|
-
_ret_ = Promise.all(Object.keys(require(`${projectPath}/package.json`).dependencies).filter((p)=>hasKeyword(p,"qcobjects-handler")).map((p)=>Import(p))).then(()=>logger.info("Handlers loaded"));
|
|
210
|
-
} else {
|
|
211
|
-
_ret_ = Promise.resolve();
|
|
212
|
-
logger.debug("To load handlers, set autodiscover_handlers to true in your config.json");
|
|
213
|
-
}
|
|
214
|
-
return _ret_;
|
|
215
|
-
};
|
|
216
|
-
const loadCommands = async () => {
|
|
217
|
-
let _ret_;
|
|
218
|
-
if (CONFIG.get("autodiscover", false) || CONFIG.get("autodiscover_commands",false)){
|
|
219
|
-
_ret_ = Promise.all(Object.keys(require(`${projectPath}/package.json`).dependencies).filter((p)=>hasKeyword(p,"qcobjects-command")).map((p)=>Import(p))).then(()=>logger.info("Commands loaded"));
|
|
220
|
-
} else {
|
|
221
|
-
_ret_ = Promise.resolve();
|
|
222
|
-
logger.debug("To load commands, set autodiscover_commands to true in your config.json");
|
|
223
|
-
}
|
|
224
|
-
return _ret_;
|
|
225
|
-
};
|
|
226
|
-
if (CONFIG.get("autodiscover", false)
|
|
227
|
-
|| CONFIG.get("autodiscover_libs",false)
|
|
228
|
-
|| CONFIG.get("autodiscover_handlers",false)
|
|
229
|
-
|| CONFIG.get("autodiscover_commands",false)
|
|
230
|
-
){
|
|
231
|
-
logger.info("Auto discover is enabled");
|
|
232
|
-
} else if (!CONFIG.get("autodiscover", false)) {
|
|
233
|
-
logger.info("Auto discover is disabled");
|
|
234
|
-
logger.debug("To load all dependencies, set autodiscover to true in your config.json");
|
|
235
|
-
} else {
|
|
236
|
-
logger.info("Auto discover is disabled");
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
await loadLibs();
|
|
240
|
-
await loadHandlers();
|
|
241
|
-
await loadCommands();
|
|
242
|
-
})().then (()=>logger.info("Dependencies loaded"));
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{org.quickcorp.qcobjects.collab.server.js → src/org.quickcorp.qcobjects.collab.server.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|