akeyless-server-commons 1.0.1

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 (170) hide show
  1. package/README.md +3 -0
  2. package/dist/cjs/helpers/email_helpers.d.ts +2 -0
  3. package/dist/cjs/helpers/email_helpers.js +87 -0
  4. package/dist/cjs/helpers/email_helpers.js.map +1 -0
  5. package/dist/cjs/helpers/firebase_helpers.d.ts +24 -0
  6. package/dist/cjs/helpers/firebase_helpers.js +404 -0
  7. package/dist/cjs/helpers/firebase_helpers.js.map +1 -0
  8. package/dist/cjs/helpers/global_helpers.d.ts +10 -0
  9. package/dist/cjs/helpers/global_helpers.js +107 -0
  10. package/dist/cjs/helpers/global_helpers.js.map +1 -0
  11. package/dist/cjs/helpers/index.d.ts +8 -0
  12. package/dist/cjs/helpers/index.js +25 -0
  13. package/dist/cjs/helpers/index.js.map +1 -0
  14. package/dist/cjs/helpers/login_helpers.d.ts +8 -0
  15. package/dist/cjs/helpers/login_helpers.js +36 -0
  16. package/dist/cjs/helpers/login_helpers.js.map +1 -0
  17. package/dist/cjs/helpers/notification_helpers.d.ts +11 -0
  18. package/dist/cjs/helpers/notification_helpers.js +248 -0
  19. package/dist/cjs/helpers/notification_helpers.js.map +1 -0
  20. package/dist/cjs/helpers/phone_number_helpers.d.ts +13 -0
  21. package/dist/cjs/helpers/phone_number_helpers.js +103 -0
  22. package/dist/cjs/helpers/phone_number_helpers.js.map +1 -0
  23. package/dist/cjs/helpers/start.d.ts +5 -0
  24. package/dist/cjs/helpers/start.js +61 -0
  25. package/dist/cjs/helpers/start.js.map +1 -0
  26. package/dist/cjs/helpers/time_helpers.d.ts +17 -0
  27. package/dist/cjs/helpers/time_helpers.js +35 -0
  28. package/dist/cjs/helpers/time_helpers.js.map +1 -0
  29. package/dist/cjs/index.d.ts +5 -0
  30. package/dist/cjs/index.js +35 -0
  31. package/dist/cjs/index.js.map +1 -0
  32. package/dist/cjs/managers/cache_manager.d.ts +11 -0
  33. package/dist/cjs/managers/cache_manager.js +32 -0
  34. package/dist/cjs/managers/cache_manager.js.map +1 -0
  35. package/dist/cjs/managers/index.d.ts +3 -0
  36. package/dist/cjs/managers/index.js +20 -0
  37. package/dist/cjs/managers/index.js.map +1 -0
  38. package/dist/cjs/managers/logger_manager.d.ts +12 -0
  39. package/dist/cjs/managers/logger_manager.js +57 -0
  40. package/dist/cjs/managers/logger_manager.js.map +1 -0
  41. package/dist/cjs/managers/translation_manager.d.ts +14 -0
  42. package/dist/cjs/managers/translation_manager.js +43 -0
  43. package/dist/cjs/managers/translation_manager.js.map +1 -0
  44. package/dist/cjs/middlewares/auth_mw.d.ts +5 -0
  45. package/dist/cjs/middlewares/auth_mw.js +80 -0
  46. package/dist/cjs/middlewares/auth_mw.js.map +1 -0
  47. package/dist/cjs/middlewares/error_handling.d.ts +11 -0
  48. package/dist/cjs/middlewares/error_handling.js +24 -0
  49. package/dist/cjs/middlewares/error_handling.js.map +1 -0
  50. package/dist/cjs/middlewares/global_mw.d.ts +2 -0
  51. package/dist/cjs/middlewares/global_mw.js +55 -0
  52. package/dist/cjs/middlewares/global_mw.js.map +1 -0
  53. package/dist/cjs/middlewares/index.d.ts +3 -0
  54. package/dist/cjs/middlewares/index.js +20 -0
  55. package/dist/cjs/middlewares/index.js.map +1 -0
  56. package/dist/cjs/test.d.ts +1 -0
  57. package/dist/cjs/test.js +18 -0
  58. package/dist/cjs/test.js.map +1 -0
  59. package/dist/cjs/types/enums/global.d.ts +16 -0
  60. package/dist/cjs/types/enums/global.js +22 -0
  61. package/dist/cjs/types/enums/global.js.map +1 -0
  62. package/dist/cjs/types/enums/index.d.ts +1 -0
  63. package/dist/cjs/types/enums/index.js +18 -0
  64. package/dist/cjs/types/enums/index.js.map +1 -0
  65. package/dist/cjs/types/index.d.ts +3 -0
  66. package/dist/cjs/types/index.js +20 -0
  67. package/dist/cjs/types/index.js.map +1 -0
  68. package/dist/cjs/types/interfaces/email.d.ts +24 -0
  69. package/dist/cjs/types/interfaces/email.js +3 -0
  70. package/dist/cjs/types/interfaces/email.js.map +1 -0
  71. package/dist/cjs/types/interfaces/global.d.ts +12 -0
  72. package/dist/cjs/types/interfaces/global.js +3 -0
  73. package/dist/cjs/types/interfaces/global.js.map +1 -0
  74. package/dist/cjs/types/interfaces/index.d.ts +2 -0
  75. package/dist/cjs/types/interfaces/index.js +19 -0
  76. package/dist/cjs/types/interfaces/index.js.map +1 -0
  77. package/dist/cjs/types/types/firebase_types.d.ts +30 -0
  78. package/dist/cjs/types/types/firebase_types.js +3 -0
  79. package/dist/cjs/types/types/firebase_types.js.map +1 -0
  80. package/dist/cjs/types/types/global.d.ts +15 -0
  81. package/dist/cjs/types/types/global.js +3 -0
  82. package/dist/cjs/types/types/global.js.map +1 -0
  83. package/dist/cjs/types/types/index.d.ts +2 -0
  84. package/dist/cjs/types/types/index.js +19 -0
  85. package/dist/cjs/types/types/index.js.map +1 -0
  86. package/dist/esm/helpers/email_helpers.d.ts +2 -0
  87. package/dist/esm/helpers/email_helpers.js +80 -0
  88. package/dist/esm/helpers/email_helpers.js.map +1 -0
  89. package/dist/esm/helpers/firebase_helpers.d.ts +24 -0
  90. package/dist/esm/helpers/firebase_helpers.js +381 -0
  91. package/dist/esm/helpers/firebase_helpers.js.map +1 -0
  92. package/dist/esm/helpers/global_helpers.d.ts +10 -0
  93. package/dist/esm/helpers/global_helpers.js +96 -0
  94. package/dist/esm/helpers/global_helpers.js.map +1 -0
  95. package/dist/esm/helpers/index.d.ts +8 -0
  96. package/dist/esm/helpers/index.js +9 -0
  97. package/dist/esm/helpers/index.js.map +1 -0
  98. package/dist/esm/helpers/login_helpers.d.ts +8 -0
  99. package/dist/esm/helpers/login_helpers.js +31 -0
  100. package/dist/esm/helpers/login_helpers.js.map +1 -0
  101. package/dist/esm/helpers/notification_helpers.d.ts +11 -0
  102. package/dist/esm/helpers/notification_helpers.js +239 -0
  103. package/dist/esm/helpers/notification_helpers.js.map +1 -0
  104. package/dist/esm/helpers/phone_number_helpers.d.ts +13 -0
  105. package/dist/esm/helpers/phone_number_helpers.js +89 -0
  106. package/dist/esm/helpers/phone_number_helpers.js.map +1 -0
  107. package/dist/esm/helpers/start.d.ts +5 -0
  108. package/dist/esm/helpers/start.js +52 -0
  109. package/dist/esm/helpers/start.js.map +1 -0
  110. package/dist/esm/helpers/time_helpers.d.ts +17 -0
  111. package/dist/esm/helpers/time_helpers.js +27 -0
  112. package/dist/esm/helpers/time_helpers.js.map +1 -0
  113. package/dist/esm/index.d.ts +5 -0
  114. package/dist/esm/index.js +6 -0
  115. package/dist/esm/index.js.map +1 -0
  116. package/dist/esm/managers/cache_manager.d.ts +11 -0
  117. package/dist/esm/managers/cache_manager.js +28 -0
  118. package/dist/esm/managers/cache_manager.js.map +1 -0
  119. package/dist/esm/managers/index.d.ts +3 -0
  120. package/dist/esm/managers/index.js +4 -0
  121. package/dist/esm/managers/index.js.map +1 -0
  122. package/dist/esm/managers/logger_manager.d.ts +12 -0
  123. package/dist/esm/managers/logger_manager.js +51 -0
  124. package/dist/esm/managers/logger_manager.js.map +1 -0
  125. package/dist/esm/managers/translation_manager.d.ts +14 -0
  126. package/dist/esm/managers/translation_manager.js +39 -0
  127. package/dist/esm/managers/translation_manager.js.map +1 -0
  128. package/dist/esm/middlewares/auth_mw.d.ts +5 -0
  129. package/dist/esm/middlewares/auth_mw.js +73 -0
  130. package/dist/esm/middlewares/auth_mw.js.map +1 -0
  131. package/dist/esm/middlewares/error_handling.d.ts +11 -0
  132. package/dist/esm/middlewares/error_handling.js +20 -0
  133. package/dist/esm/middlewares/error_handling.js.map +1 -0
  134. package/dist/esm/middlewares/global_mw.d.ts +2 -0
  135. package/dist/esm/middlewares/global_mw.js +51 -0
  136. package/dist/esm/middlewares/global_mw.js.map +1 -0
  137. package/dist/esm/middlewares/index.d.ts +3 -0
  138. package/dist/esm/middlewares/index.js +4 -0
  139. package/dist/esm/middlewares/index.js.map +1 -0
  140. package/dist/esm/test.d.ts +1 -0
  141. package/dist/esm/test.js +16 -0
  142. package/dist/esm/test.js.map +1 -0
  143. package/dist/esm/types/enums/global.d.ts +16 -0
  144. package/dist/esm/types/enums/global.js +19 -0
  145. package/dist/esm/types/enums/global.js.map +1 -0
  146. package/dist/esm/types/enums/index.d.ts +1 -0
  147. package/dist/esm/types/enums/index.js +2 -0
  148. package/dist/esm/types/enums/index.js.map +1 -0
  149. package/dist/esm/types/index.d.ts +3 -0
  150. package/dist/esm/types/index.js +4 -0
  151. package/dist/esm/types/index.js.map +1 -0
  152. package/dist/esm/types/interfaces/email.d.ts +24 -0
  153. package/dist/esm/types/interfaces/email.js +2 -0
  154. package/dist/esm/types/interfaces/email.js.map +1 -0
  155. package/dist/esm/types/interfaces/global.d.ts +12 -0
  156. package/dist/esm/types/interfaces/global.js +2 -0
  157. package/dist/esm/types/interfaces/global.js.map +1 -0
  158. package/dist/esm/types/interfaces/index.d.ts +2 -0
  159. package/dist/esm/types/interfaces/index.js +3 -0
  160. package/dist/esm/types/interfaces/index.js.map +1 -0
  161. package/dist/esm/types/types/firebase_types.d.ts +30 -0
  162. package/dist/esm/types/types/firebase_types.js +2 -0
  163. package/dist/esm/types/types/firebase_types.js.map +1 -0
  164. package/dist/esm/types/types/global.d.ts +15 -0
  165. package/dist/esm/types/types/global.js +2 -0
  166. package/dist/esm/types/types/global.js.map +1 -0
  167. package/dist/esm/types/types/index.d.ts +2 -0
  168. package/dist/esm/types/types/index.js +3 -0
  169. package/dist/esm/types/types/index.js.map +1 -0
  170. package/package.json +83 -0
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.nextjs_init = exports.basic_init = exports.start_server = void 0;
16
+ const express_1 = __importDefault(require("express"));
17
+ const cors_1 = __importDefault(require("cors"));
18
+ const managers_1 = require("../managers");
19
+ const _1 = require("./");
20
+ const error_handling_1 = require("../middlewares/error_handling");
21
+ const start_server = (main_router, project_name, version) => __awaiter(void 0, void 0, void 0, function* () {
22
+ const app = (0, express_1.default)();
23
+ const env_data = (0, _1.init_env_variables)(["port", "mode"]);
24
+ app.use((0, cors_1.default)());
25
+ app.use(express_1.default.json());
26
+ main_router(app);
27
+ app.use(error_handling_1.error_handler);
28
+ return new Promise((resolve, reject) => {
29
+ app.listen(Number(env_data.port), () => {
30
+ managers_1.logger.log(`Server is running at http://localhost:${env_data.port}`);
31
+ managers_1.logger.log("project status", { project_name, version, environment: env_data.mode });
32
+ resolve(app);
33
+ });
34
+ });
35
+ });
36
+ exports.start_server = start_server;
37
+ const basic_init = (main_router, project_name, version) => __awaiter(void 0, void 0, void 0, function* () {
38
+ try {
39
+ yield (0, _1.init_snapshots)();
40
+ const app = yield (0, exports.start_server)(main_router, project_name, version);
41
+ return app;
42
+ }
43
+ catch (error) {
44
+ managers_1.logger.error("Error from init function: ", error);
45
+ process.exit(1);
46
+ }
47
+ });
48
+ exports.basic_init = basic_init;
49
+ const nextjs_init = (project_name, version) => __awaiter(void 0, void 0, void 0, function* () {
50
+ try {
51
+ yield (0, _1.init_snapshots)();
52
+ console.log("project name:", project_name);
53
+ console.log("version :", version);
54
+ }
55
+ catch (error) {
56
+ managers_1.logger.error("Error from nextjs init function: ", error);
57
+ process.exit(1);
58
+ }
59
+ });
60
+ exports.nextjs_init = nextjs_init;
61
+ //# sourceMappingURL=start.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/helpers/start.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sDAA2C;AAC3C,gDAAwB;AACxB,0CAAqC;AACrC,yBAAwD;AAExD,kEAA8D;AAEvD,MAAM,YAAY,GAAG,CAAO,WAAuB,EAAE,YAAoB,EAAE,OAAe,EAAoB,EAAE;IACnH,MAAM,GAAG,GAAY,IAAA,iBAAO,GAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAA,qBAAkB,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,GAAG,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;IAChB,GAAG,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACxB,WAAW,CAAC,GAAG,CAAC,CAAC;IACjB,GAAG,CAAC,GAAG,CAAC,8BAAa,CAAC,CAAC;IAEvB,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5C,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE;YACnC,iBAAM,CAAC,GAAG,CAAC,yCAAyC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,iBAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACpF,OAAO,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAA,CAAC;AAfW,QAAA,YAAY,gBAevB;AAEK,MAAM,UAAU,GAAG,CAAO,WAAuB,EAAE,YAAoB,EAAE,OAAe,EAAoB,EAAE;IACjH,IAAI,CAAC;QACD,MAAM,IAAA,iBAAc,GAAE,CAAC;QACvB,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAY,EAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QACnE,OAAO,GAAG,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAA,CAAC;AATW,QAAA,UAAU,cASrB;AACK,MAAM,WAAW,GAAG,CAAO,YAAoB,EAAE,OAAe,EAAE,EAAE;IACvE,IAAI,CAAC;QACD,MAAM,IAAA,iBAAc,GAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAA,CAAC;AATW,QAAA,WAAW,eAStB"}
@@ -0,0 +1,17 @@
1
+ import { firebase_timestamp } from "akeyless-types-commons";
2
+ /**
3
+ * Converts a Firebase Timestamp object into a formatted string.
4
+ *
5
+ * @param {firebase_timestamp} firebaseTimestamp - The Firebase timestamp object containing _seconds and _nanoseconds.
6
+ * @param {string} [format="DD-MM-YYYY HH:mm:ss"] - Optional the format string used to format the date. Default is "DD-MM-YYYY HH:mm:ss".
7
+ * @returns {string} - A formatted date string according to the specified format or the default format.
8
+ */
9
+ export declare function timestamp_to_string(firebaseTimestamp: firebase_timestamp, format?: string): string;
10
+ /**
11
+ * Converts a Firebase Timestamp object into milliseconds since the Unix epoch.
12
+ *
13
+ * @param {firebase_timestamp} firebaseTimestamp - The Firebase timestamp object containing _seconds and _nanoseconds.
14
+ * @returns {number} - Time in milliseconds
15
+ */
16
+ export declare function timestamp_to_millis(firebaseTimestamp: firebase_timestamp): number;
17
+ export declare function sort_by_timestamp(a: firebase_timestamp, b: firebase_timestamp, reverse?: boolean): number;
@@ -0,0 +1,35 @@
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.timestamp_to_string = timestamp_to_string;
7
+ exports.timestamp_to_millis = timestamp_to_millis;
8
+ exports.sort_by_timestamp = sort_by_timestamp;
9
+ const firestore_1 = require("firebase-admin/firestore");
10
+ const moment_1 = __importDefault(require("moment"));
11
+ /**
12
+ * Converts a Firebase Timestamp object into a formatted string.
13
+ *
14
+ * @param {firebase_timestamp} firebaseTimestamp - The Firebase timestamp object containing _seconds and _nanoseconds.
15
+ * @param {string} [format="DD-MM-YYYY HH:mm:ss"] - Optional the format string used to format the date. Default is "DD-MM-YYYY HH:mm:ss".
16
+ * @returns {string} - A formatted date string according to the specified format or the default format.
17
+ */
18
+ function timestamp_to_string(firebaseTimestamp, format = "DD-MM-YYYY HH:mm:ss") {
19
+ const timestamp = new firestore_1.Timestamp(firebaseTimestamp._seconds, firebaseTimestamp._nanoseconds);
20
+ return (0, moment_1.default)(timestamp.toDate()).utc().format(format);
21
+ }
22
+ /**
23
+ * Converts a Firebase Timestamp object into milliseconds since the Unix epoch.
24
+ *
25
+ * @param {firebase_timestamp} firebaseTimestamp - The Firebase timestamp object containing _seconds and _nanoseconds.
26
+ * @returns {number} - Time in milliseconds
27
+ */
28
+ function timestamp_to_millis(firebaseTimestamp) {
29
+ const timestamp = new firestore_1.Timestamp(firebaseTimestamp._seconds, firebaseTimestamp._nanoseconds);
30
+ return timestamp.toMillis();
31
+ }
32
+ function sort_by_timestamp(a, b, reverse = false) {
33
+ return reverse ? timestamp_to_millis(b) - timestamp_to_millis(a) : timestamp_to_millis(a) - timestamp_to_millis(b);
34
+ }
35
+ //# sourceMappingURL=time_helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time_helpers.js","sourceRoot":"","sources":["../../../src/helpers/time_helpers.ts"],"names":[],"mappings":";;;;;AAWA,kDAGC;AAOD,kDAGC;AACD,8CAEC;AA3BD,wDAAqD;AACrD,oDAA4B;AAG5B;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAC,iBAAqC,EAAE,SAAiB,qBAAqB;IAC7G,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC5F,OAAO,IAAA,gBAAM,EAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC3D,CAAC;AACD;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,iBAAqC;IACrE,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC5F,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAC;AAChC,CAAC;AACD,SAAgB,iBAAiB,CAAC,CAAqB,EAAE,CAAqB,EAAE,UAAmB,KAAK;IACpG,OAAO,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;AACvH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import * as helpers from "./helpers";
2
+ import * as managers from "./managers";
3
+ import * as middlewares from "./middlewares";
4
+ import * as types from "./types";
5
+ export { helpers, managers, middlewares, types };
@@ -0,0 +1,35 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.types = exports.middlewares = exports.managers = exports.helpers = void 0;
27
+ const helpers = __importStar(require("./helpers"));
28
+ exports.helpers = helpers;
29
+ const managers = __importStar(require("./managers"));
30
+ exports.managers = managers;
31
+ const middlewares = __importStar(require("./middlewares"));
32
+ exports.middlewares = middlewares;
33
+ const types = __importStar(require("./types"));
34
+ exports.types = types;
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;AAK5B,0BAAO;AAJhB,qDAAuC;AAIrB,4BAAQ;AAH1B,2DAA6C;AAGjB,kCAAW;AAFvC,+CAAiC;AAEQ,sBAAK"}
@@ -0,0 +1,11 @@
1
+ export declare class CacheManager {
2
+ private static instance;
3
+ private data;
4
+ private constructor();
5
+ static getInstance(): CacheManager;
6
+ setArrayData(key: string, data: any[]): void;
7
+ getArrayData(key: string): any[];
8
+ setObjectData(key: string, data: any): void;
9
+ getObjectData(key: string, default_value?: any): any;
10
+ }
11
+ export declare const cache_manager: CacheManager;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cache_manager = exports.CacheManager = void 0;
4
+ class CacheManager {
5
+ constructor() {
6
+ this.data = {};
7
+ }
8
+ static getInstance() {
9
+ if (!CacheManager.instance) {
10
+ CacheManager.instance = new CacheManager();
11
+ }
12
+ return CacheManager.instance;
13
+ }
14
+ setArrayData(key, data) {
15
+ this.data[key] = data;
16
+ }
17
+ getArrayData(key) {
18
+ if (!this.data[key]) {
19
+ return [];
20
+ }
21
+ return this.data[key];
22
+ }
23
+ setObjectData(key, data) {
24
+ this.data[key] = data;
25
+ }
26
+ getObjectData(key, default_value = null) {
27
+ return this.data[key] || default_value;
28
+ }
29
+ }
30
+ exports.CacheManager = CacheManager;
31
+ exports.cache_manager = CacheManager.getInstance();
32
+ //# sourceMappingURL=cache_manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache_manager.js","sourceRoot":"","sources":["../../../src/managers/cache_manager.ts"],"names":[],"mappings":";;;AAEA,MAAa,YAAY;IAIrB;QAFQ,SAAI,GAAkC,EAAE,CAAC;IAE1B,CAAC;IAEjB,MAAM,CAAC,WAAW;QACrB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YACzB,YAAY,CAAC,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,YAAY,CAAC,QAAQ,CAAC;IACjC,CAAC;IAEM,YAAY,CAAC,GAAW,EAAE,IAAW;QACxC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEM,YAAY,CAAC,GAAW;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,EAAE,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAW,EAAE,IAAS;QACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAW,EAAE,gBAAqB,IAAI;QACvD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC;IAC3C,CAAC;CACJ;AAhCD,oCAgCC;AAEY,QAAA,aAAa,GAAiB,YAAY,CAAC,WAAW,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./cache_manager";
2
+ export * from "./translation_manager";
3
+ export * from "./logger_manager";
@@ -0,0 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cache_manager"), exports);
18
+ __exportStar(require("./translation_manager"), exports);
19
+ __exportStar(require("./logger_manager"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/managers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,wDAAsC;AACtC,mDAAiC"}
@@ -0,0 +1,12 @@
1
+ import { TObject } from "akeyless-types-commons";
2
+ declare class LoggerManager {
3
+ private static instance;
4
+ private constructor();
5
+ static getInstance(): LoggerManager;
6
+ private get_date;
7
+ log(msg: string, data?: TObject<any> | any[]): void;
8
+ error(msg: string, data?: any): void;
9
+ warn(msg: string, data?: any): void;
10
+ }
11
+ export declare const logger: LoggerManager;
12
+ export {};
@@ -0,0 +1,57 @@
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.logger = void 0;
7
+ const moment_timezone_1 = __importDefault(require("moment-timezone"));
8
+ const axios_1 = __importDefault(require("axios"));
9
+ const lodash_1 = require("lodash");
10
+ const helpers_1 = require("../helpers");
11
+ class LoggerManager {
12
+ constructor() { }
13
+ static getInstance() {
14
+ if (!LoggerManager.instance) {
15
+ LoggerManager.instance = new LoggerManager();
16
+ }
17
+ return LoggerManager.instance;
18
+ }
19
+ get_date() {
20
+ return (0, moment_timezone_1.default)().tz("Asia/Jerusalem").format("DD/MM/YYYY HH:mm:ss.SS");
21
+ }
22
+ log(msg, data) {
23
+ const is_table = !process.env.KUBERNETES_SERVICE_HOST &&
24
+ Array.isArray(data) &&
25
+ data.length > 1 &&
26
+ data.every((val) => {
27
+ if (typeof val === "object" && !Array.isArray(val)) {
28
+ return Object.values(val).every((v) => ["string", "number", "boolean"].includes(typeof v) || v === null);
29
+ }
30
+ return false;
31
+ }) &&
32
+ data.some((val) => Object.values(val).length > 1);
33
+ if (is_table) {
34
+ console.log(`${this.get_date()} - `, msg, ": ");
35
+ console.table(data);
36
+ return;
37
+ }
38
+ console.log(`${this.get_date()} - ${msg}`, data === undefined ? "" : `: ${(0, lodash_1.isObject)(data) || Array.isArray(data) ? JSON.stringify(data) : data}`);
39
+ }
40
+ error(msg, data) {
41
+ var _a;
42
+ if (axios_1.default.isAxiosError(data)) {
43
+ console.error(`${this.get_date()} - ${msg}, axios error message: ${data.message}`);
44
+ if ((_a = data.response) === null || _a === void 0 ? void 0 : _a.data) {
45
+ this.error("axios error data", data.response.data);
46
+ console.error(`axios error data`, data === undefined ? "" : `: ${JSON.stringify(data)}`);
47
+ }
48
+ return;
49
+ }
50
+ console.error(`${this.get_date()} - ${msg}`, data === undefined ? "" : `: ${JSON.stringify((0, helpers_1.parse_error)(data))}`);
51
+ }
52
+ warn(msg, data) {
53
+ console.warn(`${this.get_date()} - ${msg}`, data === undefined ? "" : `: ${JSON.stringify(data)}`);
54
+ }
55
+ }
56
+ exports.logger = LoggerManager.getInstance();
57
+ //# sourceMappingURL=logger_manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger_manager.js","sourceRoot":"","sources":["../../../src/managers/logger_manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { TObject } from "akeyless-types-commons";
2
+ import { EntityOptions, LangOptions } from "../types";
3
+ export declare class TranslationManager {
4
+ private static instance;
5
+ private data;
6
+ private constructor();
7
+ static getInstance(): TranslationManager;
8
+ setTranslationData(data: TObject<any>): void;
9
+ getTranslationData(): TObject<any>;
10
+ get_translation(scope: string, lang: string, entity: string, key: string): string;
11
+ get_sms(lang: LangOptions, entity: EntityOptions, key: string): string;
12
+ get_email(lang: LangOptions, entity: EntityOptions, key: string): string;
13
+ }
14
+ export declare const translation_manager: TranslationManager;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.translation_manager = exports.TranslationManager = void 0;
4
+ class TranslationManager {
5
+ constructor() {
6
+ this.data = {};
7
+ }
8
+ static getInstance() {
9
+ if (!TranslationManager.instance) {
10
+ TranslationManager.instance = new TranslationManager();
11
+ }
12
+ return TranslationManager.instance;
13
+ }
14
+ setTranslationData(data) {
15
+ this.data = data;
16
+ }
17
+ getTranslationData() {
18
+ return this.data;
19
+ }
20
+ get_translation(scope, lang, entity, key) {
21
+ key = entity + (entity === "" ? "" : "__") + key;
22
+ return this.data[scope][lang][key] || key;
23
+ }
24
+ get_sms(lang, entity, key) {
25
+ try {
26
+ return this.data["sms"][lang][entity + "__" + key];
27
+ }
28
+ catch (error) {
29
+ return "N/A";
30
+ }
31
+ }
32
+ get_email(lang, entity, key) {
33
+ try {
34
+ return this.data["email"][lang][entity + "__" + key];
35
+ }
36
+ catch (error) {
37
+ return "N/A";
38
+ }
39
+ }
40
+ }
41
+ exports.TranslationManager = TranslationManager;
42
+ exports.translation_manager = TranslationManager.getInstance();
43
+ //# sourceMappingURL=translation_manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translation_manager.js","sourceRoot":"","sources":["../../../src/managers/translation_manager.ts"],"names":[],"mappings":";;;AAGA,MAAa,kBAAkB;IAG3B;QADQ,SAAI,GAAiB,EAAE,CAAC;IACT,CAAC;IACjB,MAAM,CAAC,WAAW;QACrB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YAC/B,kBAAkB,CAAC,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAC3D,CAAC;QACD,OAAO,kBAAkB,CAAC,QAAQ,CAAC;IACvC,CAAC;IACM,kBAAkB,CAAC,IAAkB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IACM,kBAAkB;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IACM,eAAe,CAAC,KAAa,EAAE,IAAY,EAAE,MAAc,EAAE,GAAW;QAC3E,GAAG,GAAG,MAAM,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;IAC9C,CAAC;IACM,OAAO,CAAC,IAAiB,EAAE,MAAqB,EAAE,GAAW;QAChE,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IACM,SAAS,CAAC,IAAiB,EAAE,MAAqB,EAAE,GAAW;QAClE,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;CACJ;AAlCD,gDAkCC;AAEY,QAAA,mBAAmB,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { MW } from "../types";
2
+ export declare const verify_user_auth: MW;
3
+ export declare const get_users_login: MW;
4
+ export declare const nx_user_login: MW;
5
+ export declare const client_login: MW;
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.client_login = exports.nx_user_login = exports.get_users_login = exports.verify_user_auth = void 0;
13
+ const helpers_1 = require("../helpers");
14
+ const managers_1 = require("../managers");
15
+ const verify_user_auth = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
16
+ try {
17
+ const authorization = req.headers.authorization;
18
+ yield (0, helpers_1.verify_token)(authorization);
19
+ next();
20
+ }
21
+ catch (error) {
22
+ managers_1.logger.error("error from verify user auth", error);
23
+ res.status(403).send((0, helpers_1.json_failed)(error));
24
+ }
25
+ });
26
+ exports.verify_user_auth = verify_user_auth;
27
+ const get_users_login = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
28
+ try {
29
+ const authorization = req.headers.authorization;
30
+ const user_data = yield (0, helpers_1.verify_token)(authorization);
31
+ const { phone_number } = user_data;
32
+ if (!phone_number) {
33
+ return next();
34
+ }
35
+ const users = yield (0, helpers_1.get_users_by_phone)(phone_number);
36
+ req.body = Object.assign(Object.assign({}, req.body), users);
37
+ next();
38
+ }
39
+ catch (error) {
40
+ managers_1.logger.error("error from verify user auth", error);
41
+ res.status(403).send((0, helpers_1.json_failed)(error));
42
+ }
43
+ });
44
+ exports.get_users_login = get_users_login;
45
+ const nx_user_login = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
46
+ try {
47
+ const authorization = req.headers.authorization;
48
+ const user_data = yield (0, helpers_1.verify_token)(authorization);
49
+ const { phone_number } = user_data;
50
+ if (!phone_number) {
51
+ throw "Invalid authorization token";
52
+ }
53
+ const nx_user = yield (0, helpers_1.query_document)("nx-users", "phone_number", "in", [(0, helpers_1.convert_to_short_phone_number)(phone_number), phone_number]);
54
+ req.body.nx_user = nx_user;
55
+ next();
56
+ }
57
+ catch (error) {
58
+ res.status(403).send((0, helpers_1.json_failed)(error));
59
+ }
60
+ });
61
+ exports.nx_user_login = nx_user_login;
62
+ const client_login = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
63
+ try {
64
+ const token = req.headers.authorization;
65
+ if (!token) {
66
+ throw new Error("Authorization token not found.");
67
+ }
68
+ const client_data = (yield (0, helpers_1.query_document_optional)("nx-clients", "api_token", "==", token));
69
+ if (!client_data) {
70
+ throw new Error(`No client found with token: ${token} .`);
71
+ }
72
+ req.body.client = client_data;
73
+ next();
74
+ }
75
+ catch (error) {
76
+ res.status(403).send((0, helpers_1.json_failed)(error.message || error));
77
+ }
78
+ });
79
+ exports.client_login = client_login;
80
+ //# sourceMappingURL=auth_mw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth_mw.js","sourceRoot":"","sources":["../../../src/middlewares/auth_mw.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { Request, Response, NextFunction } from "express";
2
+ import { Service } from "../types";
3
+ /**
4
+ * Utility to handle async errors
5
+ */
6
+ declare const async_error_handler: (service: Service) => (req: Request, res: Response, next: NextFunction) => void;
7
+ /**
8
+ * Global error-handling middleware.
9
+ */
10
+ declare const error_handler: (err: Error, req: Request, res: Response, next: NextFunction) => void;
11
+ export { error_handler, async_error_handler };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.async_error_handler = exports.error_handler = void 0;
4
+ /**
5
+ * Utility to handle async errors
6
+ */
7
+ const async_error_handler = (service) => {
8
+ return (req, res, next) => {
9
+ Promise.resolve(service(req, res)).catch(next);
10
+ };
11
+ };
12
+ exports.async_error_handler = async_error_handler;
13
+ /**
14
+ * Global error-handling middleware.
15
+ */
16
+ const error_handler = (err, req, res, next) => {
17
+ console.error("Global Error Handler:", err.stack);
18
+ res.status(500).json({
19
+ status: "error",
20
+ message: err.message || "Internal Server Error",
21
+ });
22
+ };
23
+ exports.error_handler = error_handler;
24
+ //# sourceMappingURL=error_handling.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error_handling.js","sourceRoot":"","sources":["../../../src/middlewares/error_handling.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC7C,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;QACvD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC;AACN,CAAC,CAAC;AAcsB,kDAAmB;AAZ3C;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC,GAAU,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;IAClF,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAElD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACjB,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,uBAAuB;KAClD,CAAC,CAAC;AACP,CAAC,CAAC;AAEO,sCAAa"}
@@ -0,0 +1,2 @@
1
+ import { MandatoryParams, MW } from "../types";
2
+ export declare const mandatory: ({ body, headers }: MandatoryParams) => MW;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mandatory = void 0;
4
+ const helpers_1 = require("../helpers");
5
+ const validateParameter = (data, parameter) => {
6
+ if (data[parameter.key] === undefined) {
7
+ throw `missing mandatory parameter: ${parameter.key}`;
8
+ }
9
+ if (parameter.type === "array" && !Array.isArray(data[parameter.key])) {
10
+ throw `parameter ${parameter.key} must be of type: Array`;
11
+ }
12
+ if (typeof data[parameter.key] !== parameter.type && parameter.type !== "array") {
13
+ throw `parameter ${parameter.key} must be of type: ${parameter.type}`;
14
+ }
15
+ if ((Array.isArray(data[parameter.key]) && parameter.length && data[parameter.key].length < parameter.length) ||
16
+ (parameter.type === "string" && parameter.length && data[parameter.key].length < parameter.length)) {
17
+ throw `parameter ${parameter.key} must have minimum length: ${parameter.length}`;
18
+ }
19
+ if (parameter.type === "object" && parameter.required_keys) {
20
+ const missingKeys = parameter.required_keys.filter((key) => data[parameter.key][key] === undefined);
21
+ if (missingKeys.length > 0) {
22
+ throw `parameter ${parameter.key} is missing required keys: ${missingKeys.join(", ")}`;
23
+ }
24
+ parameter.required_keys.forEach((key) => {
25
+ const value = data[parameter.key][key];
26
+ if ((typeof value === "string" || Array.isArray(value)) && value.length === 0) {
27
+ throw `parameter ${key} in ${parameter.key} must have some length `;
28
+ }
29
+ });
30
+ }
31
+ };
32
+ const mandatory = ({ body, headers }) => {
33
+ return (req, res, next) => {
34
+ try {
35
+ const body_data = req.body;
36
+ const headers_data = req.headers;
37
+ if (body) {
38
+ body.forEach((parameter) => {
39
+ validateParameter(body_data, parameter);
40
+ });
41
+ }
42
+ if (headers) {
43
+ headers.forEach((parameter) => {
44
+ validateParameter(headers_data, parameter);
45
+ });
46
+ }
47
+ next();
48
+ }
49
+ catch (error) {
50
+ return res.status(500).send((0, helpers_1.json_failed)(error));
51
+ }
52
+ };
53
+ };
54
+ exports.mandatory = mandatory;
55
+ //# sourceMappingURL=global_mw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global_mw.js","sourceRoot":"","sources":["../../../src/middlewares/global_mw.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from "./global_mw";
2
+ export * from "./auth_mw";
3
+ export * from "./error_handling";
@@ -0,0 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./global_mw"), exports);
18
+ __exportStar(require("./auth_mw"), exports);
19
+ __exportStar(require("./error_handling"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/middlewares/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,4CAA0B;AAC1B,mDAAiC"}
@@ -0,0 +1 @@
1
+ export {};