opticore-webapp 1.0.33 → 1.0.35
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/dist/index.cjs
CHANGED
|
@@ -48,7 +48,7 @@ var import_cors = __toESM(require("cors"), 1);
|
|
|
48
48
|
var import_opticore_catch_exception_error4 = require("opticore-catch-exception-error");
|
|
49
49
|
var import_opticore_express2 = require("opticore-express");
|
|
50
50
|
var import_opticore_env_access4 = require("opticore-env-access");
|
|
51
|
-
var
|
|
51
|
+
var import_opticore_translator4 = require("opticore-translator");
|
|
52
52
|
|
|
53
53
|
// src/core/handlers/eventProcess.handler.ts
|
|
54
54
|
var import_node_process = __toESM(require("process"), 1);
|
|
@@ -111,10 +111,10 @@ var import_chalk = __toESM(require("chalk"), 1);
|
|
|
111
111
|
var path2 = __toESM(require("path"), 1);
|
|
112
112
|
var fs = __toESM(require("fs"), 1);
|
|
113
113
|
var import_ansi_colors3 = __toESM(require("ansi-colors"), 1);
|
|
114
|
-
var
|
|
114
|
+
var import_opticore_http_response2 = require("opticore-http-response");
|
|
115
115
|
var import_opticore_translator3 = require("opticore-translator");
|
|
116
116
|
var import_opticore_env_access2 = require("opticore-env-access");
|
|
117
|
-
var
|
|
117
|
+
var import_opticore_logger2 = require("opticore-logger");
|
|
118
118
|
|
|
119
119
|
// src/core/helpers/modulesLoaded.utils.ts
|
|
120
120
|
var import_ansi_colors2 = __toESM(require("ansi-colors"), 1);
|
|
@@ -196,11 +196,30 @@ var loggerConfig = (envDir) => {
|
|
|
196
196
|
var import_path = __toESM(require("path"), 1);
|
|
197
197
|
var import_module = require("module");
|
|
198
198
|
var import_opticore_translator2 = require("opticore-translator");
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
199
|
+
|
|
200
|
+
// src/application/service/logger.service.ts
|
|
201
|
+
var import_opticore_logger = require("opticore-logger");
|
|
202
|
+
var SLogger = () => {
|
|
203
|
+
return new import_opticore_logger.LoggerCore();
|
|
204
|
+
};
|
|
205
|
+
|
|
206
|
+
// src/core/config/loaders/translateLanguage.loader.ts
|
|
207
|
+
var import_opticore_http_response = require("opticore-http-response");
|
|
208
|
+
var translateWebAppCoreLanguageLoader = (localLang) => {
|
|
209
|
+
try {
|
|
210
|
+
const require2 = (0, import_module.createRequire)(importMetaUrl);
|
|
211
|
+
const packagePath = import_path.default.dirname(require2.resolve("opticore-webapp"));
|
|
212
|
+
const translateMsgJsonFilePath = import_path.default.join(packagePath, "utils", "translations");
|
|
213
|
+
import_opticore_translator2.TranslationLoader.loadTranslations(translateMsgJsonFilePath);
|
|
214
|
+
} catch (error) {
|
|
215
|
+
SLogger().error(
|
|
216
|
+
import_opticore_translator2.TranslationLoader.t(error.message, localLang),
|
|
217
|
+
import_opticore_translator2.TranslationLoader.t("readdir", localLang),
|
|
218
|
+
import_opticore_translator2.TranslationLoader.t("ENOENT:NoSuchFileOrDir", localLang),
|
|
219
|
+
error.stack,
|
|
220
|
+
import_opticore_http_response.HttpStatusCode.INTERNAL_SERVER_ERROR
|
|
221
|
+
);
|
|
222
|
+
}
|
|
204
223
|
};
|
|
205
224
|
|
|
206
225
|
// src/application/service/core.service.ts
|
|
@@ -209,10 +228,10 @@ var CoreService = class {
|
|
|
209
228
|
localLanguage;
|
|
210
229
|
environnementPath;
|
|
211
230
|
constructor(localLang, environnementPath) {
|
|
212
|
-
|
|
231
|
+
translateWebAppCoreLanguageLoader(localLang);
|
|
232
|
+
this.loggerConfig = new import_opticore_logger2.LoggerCore(loggerConfig(environnementPath));
|
|
213
233
|
this.environnementPath = environnementPath;
|
|
214
234
|
this.localLanguage = localLang;
|
|
215
|
-
translateWebAppCoreLanguageLoader();
|
|
216
235
|
}
|
|
217
236
|
/**
|
|
218
237
|
*
|
|
@@ -354,7 +373,7 @@ var CoreService = class {
|
|
|
354
373
|
const stackTrace = STraceError(
|
|
355
374
|
import_opticore_translator3.TranslationLoader.t("loadedModulesError", this.localLanguage),
|
|
356
375
|
import_opticore_translator3.TranslationLoader.t("loadedModules", this.localLanguage),
|
|
357
|
-
|
|
376
|
+
import_opticore_http_response2.HttpStatusCode.NOT_ACCEPTABLE,
|
|
358
377
|
true
|
|
359
378
|
);
|
|
360
379
|
throw new Error(stackTrace.message);
|
|
@@ -363,132 +382,29 @@ var CoreService = class {
|
|
|
363
382
|
};
|
|
364
383
|
|
|
365
384
|
// src/application/service/serverStartError.service.ts
|
|
366
|
-
var import_assert = __toESM(require("assert"), 1);
|
|
367
385
|
var import_opticore_catch_exception_error3 = require("opticore-catch-exception-error");
|
|
368
|
-
var
|
|
369
|
-
var
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
case import_opticore_catch_exception_error3.CErrorName.rangeError:
|
|
385
|
-
javaScriptErrors.rangeError(err);
|
|
386
|
-
break;
|
|
387
|
-
case import_opticore_catch_exception_error3.CErrorName.syntaxError:
|
|
388
|
-
javaScriptErrors.syntaxError(err);
|
|
389
|
-
break;
|
|
390
|
-
case import_opticore_catch_exception_error3.CErrorName.uriError:
|
|
391
|
-
javaScriptErrors.uRIError(err);
|
|
392
|
-
break;
|
|
393
|
-
case import_opticore_catch_exception_error3.CErrorName.eacces:
|
|
394
|
-
systemErrors.eAcces(err);
|
|
395
|
-
break;
|
|
396
|
-
case import_opticore_catch_exception_error3.CErrorName.eaddrinuse:
|
|
397
|
-
systemErrors.eAddrInUse(err);
|
|
398
|
-
break;
|
|
399
|
-
case import_opticore_catch_exception_error3.CErrorName.econnrefused:
|
|
400
|
-
systemErrors.eConnRefused(err);
|
|
401
|
-
break;
|
|
402
|
-
case import_opticore_catch_exception_error3.CErrorName.econnreset:
|
|
403
|
-
systemErrors.eConnReset(err);
|
|
404
|
-
break;
|
|
405
|
-
case import_opticore_catch_exception_error3.CErrorName.eexist:
|
|
406
|
-
systemErrors.eExist(err);
|
|
407
|
-
break;
|
|
408
|
-
case import_opticore_catch_exception_error3.CErrorName.eisdir:
|
|
409
|
-
systemErrors.eIsDir(err);
|
|
410
|
-
break;
|
|
411
|
-
case import_opticore_catch_exception_error3.CErrorName.emfile:
|
|
412
|
-
systemErrors.eMFile(err);
|
|
413
|
-
break;
|
|
414
|
-
case import_opticore_catch_exception_error3.CErrorName.enoent:
|
|
415
|
-
systemErrors.eNoEnt(err);
|
|
416
|
-
break;
|
|
417
|
-
case import_opticore_catch_exception_error3.CErrorName.enotdir:
|
|
418
|
-
systemErrors.eNotDir(err);
|
|
419
|
-
break;
|
|
420
|
-
case import_opticore_catch_exception_error3.CErrorName.enotEmpty:
|
|
421
|
-
systemErrors.eNotEmpty(err);
|
|
422
|
-
break;
|
|
423
|
-
case import_opticore_catch_exception_error3.CErrorName.eperm:
|
|
424
|
-
systemErrors.ePerm(err);
|
|
425
|
-
break;
|
|
426
|
-
case import_opticore_catch_exception_error3.CErrorName.epipe:
|
|
427
|
-
systemErrors.ePipe(err);
|
|
428
|
-
break;
|
|
429
|
-
case import_opticore_catch_exception_error3.CErrorName.etimedout:
|
|
430
|
-
systemErrors.eTimedOut(err);
|
|
431
|
-
break;
|
|
432
|
-
case import_opticore_catch_exception_error3.CErrorName.assertionError:
|
|
433
|
-
const stackTrace = STraceError(
|
|
434
|
-
err.message,
|
|
435
|
-
err.name,
|
|
436
|
-
import_opticore_http_response2.HttpStatusCode.NOT_ACCEPTABLE,
|
|
437
|
-
true
|
|
438
|
-
);
|
|
439
|
-
err instanceof import_assert.default.AssertionError ? logger.error(
|
|
440
|
-
import_opticore_translator4.TranslationLoader.t(stackTrace.name, localLanguage),
|
|
441
|
-
"AssertionError",
|
|
442
|
-
stackTrace.name,
|
|
443
|
-
stackTrace.stack,
|
|
444
|
-
import_opticore_http_response2.HttpStatusCode.INTERNAL_SERVER_ERROR
|
|
445
|
-
) : logger.error(
|
|
446
|
-
import_opticore_translator4.TranslationLoader.t(stackTrace.name, localLanguage),
|
|
447
|
-
"Another Error",
|
|
448
|
-
stackTrace.name,
|
|
449
|
-
stackTrace.stack,
|
|
450
|
-
import_opticore_http_response2.HttpStatusCode.INTERNAL_SERVER_ERROR
|
|
451
|
-
);
|
|
452
|
-
break;
|
|
453
|
-
case import_opticore_catch_exception_error3.CErrorName.errOsslEvpUnsupported:
|
|
454
|
-
openSSLErrors.errOsSLEvpUnsupported(err);
|
|
455
|
-
break;
|
|
456
|
-
case import_opticore_catch_exception_error3.CErrorName.errOsslBadDecrypt:
|
|
457
|
-
openSSLErrors.errOsSLBadDecrypt(err);
|
|
458
|
-
break;
|
|
459
|
-
case import_opticore_catch_exception_error3.CErrorName.errOsslWrongFinalBlockLength:
|
|
460
|
-
openSSLErrors.errOsSLWrongFinalBlockLength(err);
|
|
461
|
-
break;
|
|
462
|
-
case import_opticore_catch_exception_error3.CErrorName.errInvalidArgType:
|
|
463
|
-
internalErrors.errInvalidArgType(err);
|
|
464
|
-
break;
|
|
465
|
-
case import_opticore_catch_exception_error3.CErrorName.errInvalidCallback:
|
|
466
|
-
internalErrors.errInvalidCallback(err);
|
|
467
|
-
break;
|
|
468
|
-
case import_opticore_catch_exception_error3.CErrorName.errHttpHeadersSent:
|
|
469
|
-
internalErrors.errHttpHeadersSent(err);
|
|
470
|
-
break;
|
|
471
|
-
case import_opticore_catch_exception_error3.CErrorName.errStreamDestroyed:
|
|
472
|
-
internalErrors.errStreamDestroyed(err);
|
|
473
|
-
break;
|
|
474
|
-
case import_opticore_catch_exception_error3.CErrorName.errTlsCertAltnameInvalid:
|
|
475
|
-
internalErrors.errTlsCertAltNameInvalid(err);
|
|
476
|
-
break;
|
|
477
|
-
case import_opticore_catch_exception_error3.CErrorName.errUnsupportedEsmUrlScheme:
|
|
478
|
-
internalErrors.errUnsupportedEsmUrlScheme(err);
|
|
479
|
-
break;
|
|
386
|
+
var import_opticore_http_response3 = require("opticore-http-response");
|
|
387
|
+
var SServerStartError = (err) => {
|
|
388
|
+
if (err.name) {
|
|
389
|
+
for (const [key, code] of Object.entries(import_opticore_catch_exception_error3.CErrorName)) {
|
|
390
|
+
if (err.name === code) {
|
|
391
|
+
SLogger().error(err.message, code, code, err.stack, import_opticore_http_response3.HttpStatusCode.INTERNAL_SERVER_ERROR);
|
|
392
|
+
break;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
} else {
|
|
396
|
+
for (const [key, code] of Object.entries(import_opticore_catch_exception_error3.CCodeError)) {
|
|
397
|
+
if (err.code === code) {
|
|
398
|
+
SLogger().error(err.message, code, key, err.stack, import_opticore_http_response3.HttpStatusCode.INTERNAL_SERVER_ERROR);
|
|
399
|
+
break;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
480
402
|
}
|
|
481
403
|
};
|
|
482
404
|
|
|
483
405
|
// src/core/webServer.core.ts
|
|
484
406
|
var import_opticore_request_call_event = require("opticore-request-call-event");
|
|
485
407
|
|
|
486
|
-
// src/application/service/logger.service.ts
|
|
487
|
-
var import_opticore_logger2 = require("opticore-logger");
|
|
488
|
-
var SLogger = () => {
|
|
489
|
-
return new import_opticore_logger2.LoggerCore();
|
|
490
|
-
};
|
|
491
|
-
|
|
492
408
|
// src/application/service/dependenciesContainer.service.ts
|
|
493
409
|
var import_opticore_inject_dependency = require("opticore-inject-dependency");
|
|
494
410
|
var import_opticore_env_access3 = require("opticore-env-access");
|
|
@@ -503,6 +419,7 @@ var SDependenciesContainer = (dependenciesProvider) => {
|
|
|
503
419
|
};
|
|
504
420
|
|
|
505
421
|
// src/core/webServer.core.ts
|
|
422
|
+
var import_opticore_http_response4 = require("opticore-http-response");
|
|
506
423
|
var WebServerCore = class {
|
|
507
424
|
serverUtility;
|
|
508
425
|
expressApp = (0, import_opticore_express2.express)();
|
|
@@ -518,6 +435,7 @@ var WebServerCore = class {
|
|
|
518
435
|
openSSLErrors;
|
|
519
436
|
systemErrors;
|
|
520
437
|
constructor(app, loggerConfig2, localLanguage, environnementPath, corsOriginOptions) {
|
|
438
|
+
this.translationWebAppLoader();
|
|
521
439
|
this.getEnvironnement = (0, import_opticore_env_access4.getEnvironnementValue)(environnementPath);
|
|
522
440
|
this.routerExpressApp = app;
|
|
523
441
|
this.loggerConfig = loggerConfig2;
|
|
@@ -536,7 +454,6 @@ var WebServerCore = class {
|
|
|
536
454
|
this.systemErrors = new import_opticore_catch_exception_error4.SystemErrors(localLanguage);
|
|
537
455
|
this.serverUtility = new CoreService(localLanguage, environnementPath);
|
|
538
456
|
this.stackTraceErrorHandling(localLanguage);
|
|
539
|
-
this.translationWebAppLoader();
|
|
540
457
|
}
|
|
541
458
|
onStartServer(routers, dbConnexion, dependenciesProvider) {
|
|
542
459
|
if (this.getEnvironnement.appHost === "" && Number(this.getEnvironnement.appPort) === 0) {
|
|
@@ -547,7 +464,11 @@ var WebServerCore = class {
|
|
|
547
464
|
this.serverListenEvent.portUndefined();
|
|
548
465
|
} else if (this.localLanguage === "") {
|
|
549
466
|
SLogger().error(
|
|
550
|
-
|
|
467
|
+
"A default local language is not define. Please define it into .env file at the key : DEFAULT_LOCAL_LANG",
|
|
468
|
+
"Local lang missing",
|
|
469
|
+
"DEFAULT_LOCAL_LANG missing",
|
|
470
|
+
void 0,
|
|
471
|
+
import_opticore_http_response4.HttpStatusCode.NOT_FOUND
|
|
551
472
|
);
|
|
552
473
|
} else {
|
|
553
474
|
return this.expressApp.listen(
|
|
@@ -559,15 +480,7 @@ var WebServerCore = class {
|
|
|
559
480
|
this.expressApp.use(import_opticore_express2.express.static(path3.join(import_node_process3.default.cwd(), "public/template")));
|
|
560
481
|
this.registerRoutes(routers);
|
|
561
482
|
} catch (err) {
|
|
562
|
-
SServerStartError(
|
|
563
|
-
err,
|
|
564
|
-
this.javaScriptErrors,
|
|
565
|
-
this.systemErrors,
|
|
566
|
-
this.openSSLErrors,
|
|
567
|
-
this.internalErrors,
|
|
568
|
-
this.loggerConfig,
|
|
569
|
-
this.localLanguage
|
|
570
|
-
);
|
|
483
|
+
SServerStartError(err);
|
|
571
484
|
}
|
|
572
485
|
}
|
|
573
486
|
);
|
|
@@ -598,10 +511,19 @@ var WebServerCore = class {
|
|
|
598
511
|
});
|
|
599
512
|
}
|
|
600
513
|
translationWebAppLoader() {
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
514
|
+
try {
|
|
515
|
+
const require2 = (0, import_module2.createRequire)(importMetaUrl);
|
|
516
|
+
const packagePath = path3.dirname(require2.resolve("opticore-webapp"));
|
|
517
|
+
const translateMsgJsonFilePath = path3.join(packagePath, "utils", "translations");
|
|
518
|
+
import_opticore_translator4.TranslationLoader.loadTranslations(translateMsgJsonFilePath);
|
|
519
|
+
} catch (error) {
|
|
520
|
+
SLogger().error(
|
|
521
|
+
import_opticore_translator4.TranslationLoader.t(error.message, this.localLanguage),
|
|
522
|
+
import_opticore_translator4.TranslationLoader.t("", this.localLanguage),
|
|
523
|
+
void 0,
|
|
524
|
+
import_opticore_http_response4.HttpStatusCode.NOT_FOUND
|
|
525
|
+
);
|
|
526
|
+
}
|
|
605
527
|
}
|
|
606
528
|
registerRoutes(allFeatureRoutes) {
|
|
607
529
|
allFeatureRoutes.map((router) => {
|
|
@@ -626,7 +548,7 @@ var WebServerCore = class {
|
|
|
626
548
|
// src/utils/stopServer.utils.ts
|
|
627
549
|
var import_dotenv = __toESM(require("dotenv"), 1);
|
|
628
550
|
var import_child_process = require("child_process");
|
|
629
|
-
var
|
|
551
|
+
var import_opticore_translator5 = require("opticore-translator");
|
|
630
552
|
var UStopServer = () => {
|
|
631
553
|
import_dotenv.default.config();
|
|
632
554
|
const port = process.env.PORT;
|
|
@@ -634,12 +556,12 @@ var UStopServer = () => {
|
|
|
634
556
|
const pid = (0, import_child_process.execSync)(`lsof -i :${port} -t`, { encoding: "utf-8" }).trim();
|
|
635
557
|
if (pid) {
|
|
636
558
|
(0, import_child_process.execSync)(`kill ${pid}`);
|
|
637
|
-
SLogger().success("serverPortKill",
|
|
559
|
+
SLogger().success("serverPortKill", import_opticore_translator5.TranslationLoader.t("serverPortKill", "en", { port }));
|
|
638
560
|
} else {
|
|
639
|
-
SLogger().warn("pidOnPortNotFound",
|
|
561
|
+
SLogger().warn("pidOnPortNotFound", import_opticore_translator5.TranslationLoader.t("pidOnPortNotFound", "en", { port }));
|
|
640
562
|
}
|
|
641
563
|
} catch (error) {
|
|
642
|
-
SLogger().error("noProcessRunningOnPort",
|
|
564
|
+
SLogger().error("noProcessRunningOnPort", import_opticore_translator5.TranslationLoader.t("noProcessRunningOnPort", "en", { port }));
|
|
643
565
|
}
|
|
644
566
|
};
|
|
645
567
|
// Annotate the CommonJS export names for ESM import in node:
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "opticore-catch-exception-error";
|
|
15
15
|
import { express as express2 } from "opticore-express";
|
|
16
16
|
import { getEnvironnementValue as getEnvironnementValue4 } from "opticore-env-access";
|
|
17
|
-
import { TranslationLoader as
|
|
17
|
+
import { TranslationLoader as TranslationLoader4 } from "opticore-translator";
|
|
18
18
|
|
|
19
19
|
// src/core/handlers/eventProcess.handler.ts
|
|
20
20
|
import process2 from "node:process";
|
|
@@ -84,7 +84,7 @@ import colors3 from "ansi-colors";
|
|
|
84
84
|
import { HttpStatusCode as status } from "opticore-http-response";
|
|
85
85
|
import { TranslationLoader as TranslationLoader3 } from "opticore-translator";
|
|
86
86
|
import { getEnvironnementValue as getEnvironnementValue2 } from "opticore-env-access";
|
|
87
|
-
import { LoggerCore } from "opticore-logger";
|
|
87
|
+
import { LoggerCore as LoggerCore2 } from "opticore-logger";
|
|
88
88
|
|
|
89
89
|
// src/core/helpers/modulesLoaded.utils.ts
|
|
90
90
|
import colors2 from "ansi-colors";
|
|
@@ -166,11 +166,30 @@ var loggerConfig = (envDir) => {
|
|
|
166
166
|
import path from "path";
|
|
167
167
|
import { createRequire } from "module";
|
|
168
168
|
import { TranslationLoader as TranslationLoader2 } from "opticore-translator";
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
169
|
+
|
|
170
|
+
// src/application/service/logger.service.ts
|
|
171
|
+
import { LoggerCore } from "opticore-logger";
|
|
172
|
+
var SLogger = () => {
|
|
173
|
+
return new LoggerCore();
|
|
174
|
+
};
|
|
175
|
+
|
|
176
|
+
// src/core/config/loaders/translateLanguage.loader.ts
|
|
177
|
+
import { HttpStatusCode } from "opticore-http-response";
|
|
178
|
+
var translateWebAppCoreLanguageLoader = (localLang) => {
|
|
179
|
+
try {
|
|
180
|
+
const require2 = createRequire(import.meta.url);
|
|
181
|
+
const packagePath = path.dirname(require2.resolve("opticore-webapp"));
|
|
182
|
+
const translateMsgJsonFilePath = path.join(packagePath, "utils", "translations");
|
|
183
|
+
TranslationLoader2.loadTranslations(translateMsgJsonFilePath);
|
|
184
|
+
} catch (error) {
|
|
185
|
+
SLogger().error(
|
|
186
|
+
TranslationLoader2.t(error.message, localLang),
|
|
187
|
+
TranslationLoader2.t("readdir", localLang),
|
|
188
|
+
TranslationLoader2.t("ENOENT:NoSuchFileOrDir", localLang),
|
|
189
|
+
error.stack,
|
|
190
|
+
HttpStatusCode.INTERNAL_SERVER_ERROR
|
|
191
|
+
);
|
|
192
|
+
}
|
|
174
193
|
};
|
|
175
194
|
|
|
176
195
|
// src/application/service/core.service.ts
|
|
@@ -179,10 +198,10 @@ var CoreService = class {
|
|
|
179
198
|
localLanguage;
|
|
180
199
|
environnementPath;
|
|
181
200
|
constructor(localLang, environnementPath) {
|
|
182
|
-
|
|
201
|
+
translateWebAppCoreLanguageLoader(localLang);
|
|
202
|
+
this.loggerConfig = new LoggerCore2(loggerConfig(environnementPath));
|
|
183
203
|
this.environnementPath = environnementPath;
|
|
184
204
|
this.localLanguage = localLang;
|
|
185
|
-
translateWebAppCoreLanguageLoader();
|
|
186
205
|
}
|
|
187
206
|
/**
|
|
188
207
|
*
|
|
@@ -333,132 +352,32 @@ var CoreService = class {
|
|
|
333
352
|
};
|
|
334
353
|
|
|
335
354
|
// src/application/service/serverStartError.service.ts
|
|
336
|
-
import
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
break;
|
|
357
|
-
case CErrorName.syntaxError:
|
|
358
|
-
javaScriptErrors.syntaxError(err);
|
|
359
|
-
break;
|
|
360
|
-
case CErrorName.uriError:
|
|
361
|
-
javaScriptErrors.uRIError(err);
|
|
362
|
-
break;
|
|
363
|
-
case CErrorName.eacces:
|
|
364
|
-
systemErrors.eAcces(err);
|
|
365
|
-
break;
|
|
366
|
-
case CErrorName.eaddrinuse:
|
|
367
|
-
systemErrors.eAddrInUse(err);
|
|
368
|
-
break;
|
|
369
|
-
case CErrorName.econnrefused:
|
|
370
|
-
systemErrors.eConnRefused(err);
|
|
371
|
-
break;
|
|
372
|
-
case CErrorName.econnreset:
|
|
373
|
-
systemErrors.eConnReset(err);
|
|
374
|
-
break;
|
|
375
|
-
case CErrorName.eexist:
|
|
376
|
-
systemErrors.eExist(err);
|
|
377
|
-
break;
|
|
378
|
-
case CErrorName.eisdir:
|
|
379
|
-
systemErrors.eIsDir(err);
|
|
380
|
-
break;
|
|
381
|
-
case CErrorName.emfile:
|
|
382
|
-
systemErrors.eMFile(err);
|
|
383
|
-
break;
|
|
384
|
-
case CErrorName.enoent:
|
|
385
|
-
systemErrors.eNoEnt(err);
|
|
386
|
-
break;
|
|
387
|
-
case CErrorName.enotdir:
|
|
388
|
-
systemErrors.eNotDir(err);
|
|
389
|
-
break;
|
|
390
|
-
case CErrorName.enotEmpty:
|
|
391
|
-
systemErrors.eNotEmpty(err);
|
|
392
|
-
break;
|
|
393
|
-
case CErrorName.eperm:
|
|
394
|
-
systemErrors.ePerm(err);
|
|
395
|
-
break;
|
|
396
|
-
case CErrorName.epipe:
|
|
397
|
-
systemErrors.ePipe(err);
|
|
398
|
-
break;
|
|
399
|
-
case CErrorName.etimedout:
|
|
400
|
-
systemErrors.eTimedOut(err);
|
|
401
|
-
break;
|
|
402
|
-
case CErrorName.assertionError:
|
|
403
|
-
const stackTrace = STraceError(
|
|
404
|
-
err.message,
|
|
405
|
-
err.name,
|
|
406
|
-
HttpStatusCode.NOT_ACCEPTABLE,
|
|
407
|
-
true
|
|
408
|
-
);
|
|
409
|
-
err instanceof assert.AssertionError ? logger.error(
|
|
410
|
-
TranslationLoader4.t(stackTrace.name, localLanguage),
|
|
411
|
-
"AssertionError",
|
|
412
|
-
stackTrace.name,
|
|
413
|
-
stackTrace.stack,
|
|
414
|
-
HttpStatusCode.INTERNAL_SERVER_ERROR
|
|
415
|
-
) : logger.error(
|
|
416
|
-
TranslationLoader4.t(stackTrace.name, localLanguage),
|
|
417
|
-
"Another Error",
|
|
418
|
-
stackTrace.name,
|
|
419
|
-
stackTrace.stack,
|
|
420
|
-
HttpStatusCode.INTERNAL_SERVER_ERROR
|
|
421
|
-
);
|
|
422
|
-
break;
|
|
423
|
-
case CErrorName.errOsslEvpUnsupported:
|
|
424
|
-
openSSLErrors.errOsSLEvpUnsupported(err);
|
|
425
|
-
break;
|
|
426
|
-
case CErrorName.errOsslBadDecrypt:
|
|
427
|
-
openSSLErrors.errOsSLBadDecrypt(err);
|
|
428
|
-
break;
|
|
429
|
-
case CErrorName.errOsslWrongFinalBlockLength:
|
|
430
|
-
openSSLErrors.errOsSLWrongFinalBlockLength(err);
|
|
431
|
-
break;
|
|
432
|
-
case CErrorName.errInvalidArgType:
|
|
433
|
-
internalErrors.errInvalidArgType(err);
|
|
434
|
-
break;
|
|
435
|
-
case CErrorName.errInvalidCallback:
|
|
436
|
-
internalErrors.errInvalidCallback(err);
|
|
437
|
-
break;
|
|
438
|
-
case CErrorName.errHttpHeadersSent:
|
|
439
|
-
internalErrors.errHttpHeadersSent(err);
|
|
440
|
-
break;
|
|
441
|
-
case CErrorName.errStreamDestroyed:
|
|
442
|
-
internalErrors.errStreamDestroyed(err);
|
|
443
|
-
break;
|
|
444
|
-
case CErrorName.errTlsCertAltnameInvalid:
|
|
445
|
-
internalErrors.errTlsCertAltNameInvalid(err);
|
|
446
|
-
break;
|
|
447
|
-
case CErrorName.errUnsupportedEsmUrlScheme:
|
|
448
|
-
internalErrors.errUnsupportedEsmUrlScheme(err);
|
|
449
|
-
break;
|
|
355
|
+
import {
|
|
356
|
+
CCodeError,
|
|
357
|
+
CErrorName
|
|
358
|
+
} from "opticore-catch-exception-error";
|
|
359
|
+
import { HttpStatusCode as HttpStatusCode2 } from "opticore-http-response";
|
|
360
|
+
var SServerStartError = (err) => {
|
|
361
|
+
if (err.name) {
|
|
362
|
+
for (const [key, code] of Object.entries(CErrorName)) {
|
|
363
|
+
if (err.name === code) {
|
|
364
|
+
SLogger().error(err.message, code, code, err.stack, HttpStatusCode2.INTERNAL_SERVER_ERROR);
|
|
365
|
+
break;
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
} else {
|
|
369
|
+
for (const [key, code] of Object.entries(CCodeError)) {
|
|
370
|
+
if (err.code === code) {
|
|
371
|
+
SLogger().error(err.message, code, key, err.stack, HttpStatusCode2.INTERNAL_SERVER_ERROR);
|
|
372
|
+
break;
|
|
373
|
+
}
|
|
374
|
+
}
|
|
450
375
|
}
|
|
451
376
|
};
|
|
452
377
|
|
|
453
378
|
// src/core/webServer.core.ts
|
|
454
379
|
import { requestCallsEvent } from "opticore-request-call-event";
|
|
455
380
|
|
|
456
|
-
// src/application/service/logger.service.ts
|
|
457
|
-
import { LoggerCore as LoggerCore2 } from "opticore-logger";
|
|
458
|
-
var SLogger = () => {
|
|
459
|
-
return new LoggerCore2();
|
|
460
|
-
};
|
|
461
|
-
|
|
462
381
|
// src/application/service/dependenciesContainer.service.ts
|
|
463
382
|
import { SContainer } from "opticore-inject-dependency";
|
|
464
383
|
import { getEnvironnementValue as getEnvironnementValue3 } from "opticore-env-access";
|
|
@@ -473,6 +392,7 @@ var SDependenciesContainer = (dependenciesProvider) => {
|
|
|
473
392
|
};
|
|
474
393
|
|
|
475
394
|
// src/core/webServer.core.ts
|
|
395
|
+
import { HttpStatusCode as HttpStatusCode3 } from "opticore-http-response";
|
|
476
396
|
var WebServerCore = class {
|
|
477
397
|
serverUtility;
|
|
478
398
|
expressApp = express2();
|
|
@@ -488,6 +408,7 @@ var WebServerCore = class {
|
|
|
488
408
|
openSSLErrors;
|
|
489
409
|
systemErrors;
|
|
490
410
|
constructor(app, loggerConfig2, localLanguage, environnementPath, corsOriginOptions) {
|
|
411
|
+
this.translationWebAppLoader();
|
|
491
412
|
this.getEnvironnement = getEnvironnementValue4(environnementPath);
|
|
492
413
|
this.routerExpressApp = app;
|
|
493
414
|
this.loggerConfig = loggerConfig2;
|
|
@@ -506,7 +427,6 @@ var WebServerCore = class {
|
|
|
506
427
|
this.systemErrors = new SystemErrors(localLanguage);
|
|
507
428
|
this.serverUtility = new CoreService(localLanguage, environnementPath);
|
|
508
429
|
this.stackTraceErrorHandling(localLanguage);
|
|
509
|
-
this.translationWebAppLoader();
|
|
510
430
|
}
|
|
511
431
|
onStartServer(routers, dbConnexion, dependenciesProvider) {
|
|
512
432
|
if (this.getEnvironnement.appHost === "" && Number(this.getEnvironnement.appPort) === 0) {
|
|
@@ -517,7 +437,11 @@ var WebServerCore = class {
|
|
|
517
437
|
this.serverListenEvent.portUndefined();
|
|
518
438
|
} else if (this.localLanguage === "") {
|
|
519
439
|
SLogger().error(
|
|
520
|
-
|
|
440
|
+
"A default local language is not define. Please define it into .env file at the key : DEFAULT_LOCAL_LANG",
|
|
441
|
+
"Local lang missing",
|
|
442
|
+
"DEFAULT_LOCAL_LANG missing",
|
|
443
|
+
void 0,
|
|
444
|
+
HttpStatusCode3.NOT_FOUND
|
|
521
445
|
);
|
|
522
446
|
} else {
|
|
523
447
|
return this.expressApp.listen(
|
|
@@ -529,15 +453,7 @@ var WebServerCore = class {
|
|
|
529
453
|
this.expressApp.use(express2.static(path3.join(process5.cwd(), "public/template")));
|
|
530
454
|
this.registerRoutes(routers);
|
|
531
455
|
} catch (err) {
|
|
532
|
-
SServerStartError(
|
|
533
|
-
err,
|
|
534
|
-
this.javaScriptErrors,
|
|
535
|
-
this.systemErrors,
|
|
536
|
-
this.openSSLErrors,
|
|
537
|
-
this.internalErrors,
|
|
538
|
-
this.loggerConfig,
|
|
539
|
-
this.localLanguage
|
|
540
|
-
);
|
|
456
|
+
SServerStartError(err);
|
|
541
457
|
}
|
|
542
458
|
}
|
|
543
459
|
);
|
|
@@ -568,10 +484,19 @@ var WebServerCore = class {
|
|
|
568
484
|
});
|
|
569
485
|
}
|
|
570
486
|
translationWebAppLoader() {
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
487
|
+
try {
|
|
488
|
+
const require2 = createRequire2(import.meta.url);
|
|
489
|
+
const packagePath = path3.dirname(require2.resolve("opticore-webapp"));
|
|
490
|
+
const translateMsgJsonFilePath = path3.join(packagePath, "utils", "translations");
|
|
491
|
+
TranslationLoader4.loadTranslations(translateMsgJsonFilePath);
|
|
492
|
+
} catch (error) {
|
|
493
|
+
SLogger().error(
|
|
494
|
+
TranslationLoader4.t(error.message, this.localLanguage),
|
|
495
|
+
TranslationLoader4.t("", this.localLanguage),
|
|
496
|
+
void 0,
|
|
497
|
+
HttpStatusCode3.NOT_FOUND
|
|
498
|
+
);
|
|
499
|
+
}
|
|
575
500
|
}
|
|
576
501
|
registerRoutes(allFeatureRoutes) {
|
|
577
502
|
allFeatureRoutes.map((router) => {
|
|
@@ -596,7 +521,7 @@ var WebServerCore = class {
|
|
|
596
521
|
// src/utils/stopServer.utils.ts
|
|
597
522
|
import dotenv from "dotenv";
|
|
598
523
|
import { execSync } from "child_process";
|
|
599
|
-
import { TranslationLoader as
|
|
524
|
+
import { TranslationLoader as TranslationLoader5 } from "opticore-translator";
|
|
600
525
|
var UStopServer = () => {
|
|
601
526
|
dotenv.config();
|
|
602
527
|
const port = process.env.PORT;
|
|
@@ -604,12 +529,12 @@ var UStopServer = () => {
|
|
|
604
529
|
const pid = execSync(`lsof -i :${port} -t`, { encoding: "utf-8" }).trim();
|
|
605
530
|
if (pid) {
|
|
606
531
|
execSync(`kill ${pid}`);
|
|
607
|
-
SLogger().success("serverPortKill",
|
|
532
|
+
SLogger().success("serverPortKill", TranslationLoader5.t("serverPortKill", "en", { port }));
|
|
608
533
|
} else {
|
|
609
|
-
SLogger().warn("pidOnPortNotFound",
|
|
534
|
+
SLogger().warn("pidOnPortNotFound", TranslationLoader5.t("pidOnPortNotFound", "en", { port }));
|
|
610
535
|
}
|
|
611
536
|
} catch (error) {
|
|
612
|
-
SLogger().error("noProcessRunningOnPort",
|
|
537
|
+
SLogger().error("noProcessRunningOnPort", TranslationLoader5.t("noProcessRunningOnPort", "en", { port }));
|
|
613
538
|
}
|
|
614
539
|
};
|
|
615
540
|
export {
|
|
@@ -89,5 +89,8 @@
|
|
|
89
89
|
"errorDBHost": "A database host {host} does not allow connection. Please either set the host like this: {localhost} in your .env file",
|
|
90
90
|
"serverPortKill": "Server which started on port {port} has been stopped successfully.",
|
|
91
91
|
"pidOnPortNotFound": "No process found on port {port}.",
|
|
92
|
-
"noProcessRunningOnPort": "Error: No process running on port {port}"
|
|
92
|
+
"noProcessRunningOnPort": "Error: No process running on port {port}",
|
|
93
|
+
"noDefaultLocalLang": "A default local language is not define. Please define it into .env file at the key : DEFAULT_LOCAL_LANG",
|
|
94
|
+
"noLocalLang": "Local lang missing",
|
|
95
|
+
"localLangMissing": "DEFAULT_LOCAL_LANG missing"
|
|
93
96
|
}
|
|
@@ -89,5 +89,8 @@
|
|
|
89
89
|
"errorDBHost": "L'hôte de la base de données {host} n'autorise pas la connexion. Veuillez définir l'hôte comme suit : {localhost} dans votre fichier .env",
|
|
90
90
|
"serverPortKill": "Serveur qui a démarré sur le port {port} a été arrêté avec succès.",
|
|
91
91
|
"pidOnPortNotFound": "Aucun processus trouvé sur le port {port}.",
|
|
92
|
-
"noProcessRunningOnPort": "Erreur : Aucun processus en cours sur le port {port}."
|
|
92
|
+
"noProcessRunningOnPort": "Erreur : Aucun processus en cours sur le port {port}.",
|
|
93
|
+
"noDefaultLocalLang": "La langue locale par défaut n'est pas définie. Veuillez le définir dans le fichier .env a la clé: DEFAULT_LOCAL_LANG",
|
|
94
|
+
"noLocalLang": "Langue local manquante",
|
|
95
|
+
"localLangMissing": "DEFAULT_LOCAL_LANG manquante"
|
|
93
96
|
}
|