akeyless-server-commons 1.0.75 → 1.0.76

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 (85) hide show
  1. package/dist/cjs/helpers/global_helpers.d.ts +1 -0
  2. package/dist/cjs/helpers/global_helpers.js +5 -1
  3. package/dist/cjs/helpers/global_helpers.js.map +1 -1
  4. package/dist/esm/helpers/global_helpers.d.ts +1 -0
  5. package/dist/esm/helpers/global_helpers.js +3 -0
  6. package/dist/esm/helpers/global_helpers.js.map +1 -1
  7. package/dist/helpers/boards_helpers.js +11 -0
  8. package/dist/helpers/email_helpers.js +69 -0
  9. package/dist/helpers/firebase_helpers.js +379 -0
  10. package/dist/helpers/global_helpers.js +123 -0
  11. package/dist/helpers/index.js +10 -0
  12. package/dist/helpers/login_helpers.js +18 -0
  13. package/dist/helpers/notification_helpers.js +230 -0
  14. package/dist/helpers/phone_number_helpers.js +88 -0
  15. package/dist/helpers/start.js +43 -0
  16. package/dist/helpers/tasks_helpers.js +125 -0
  17. package/dist/helpers/time_helpers.js +63 -0
  18. package/dist/index.js +5 -0
  19. package/dist/managers/cache_manager.js +27 -0
  20. package/dist/managers/index.js +3 -0
  21. package/dist/managers/logger_manager.js +51 -0
  22. package/dist/managers/translation_manager.js +38 -0
  23. package/dist/middlewares/auth_mw.js +49 -0
  24. package/dist/middlewares/error_handling.js +19 -0
  25. package/dist/middlewares/global_mw.js +50 -0
  26. package/dist/middlewares/index.js +3 -0
  27. package/dist/test.js +1 -0
  28. package/dist/types/enums/global.js +18 -0
  29. package/dist/types/enums/index.js +1 -0
  30. package/dist/types/helpers/boards_helpers.d.ts +7 -0
  31. package/dist/types/helpers/email_helpers.d.ts +2 -0
  32. package/dist/types/helpers/firebase_helpers.d.ts +37 -0
  33. package/dist/types/helpers/global_helpers.d.ts +14 -0
  34. package/dist/types/helpers/index.d.ts +10 -0
  35. package/dist/types/helpers/login_helpers.d.ts +4 -0
  36. package/dist/types/helpers/notification_helpers.d.ts +11 -0
  37. package/dist/types/helpers/phone_number_helpers.d.ts +13 -0
  38. package/dist/types/helpers/start.d.ts +5 -0
  39. package/dist/types/helpers/tasks_helpers.d.ts +20 -0
  40. package/dist/types/helpers/time_helpers.d.ts +26 -0
  41. package/dist/types/index.d.ts +5 -0
  42. package/dist/types/index.js +3 -0
  43. package/dist/types/interfaces/email.js +1 -0
  44. package/dist/types/interfaces/global.js +1 -0
  45. package/dist/types/interfaces/index.js +2 -0
  46. package/dist/types/managers/cache_manager.d.ts +11 -0
  47. package/dist/types/managers/index.d.ts +3 -0
  48. package/dist/types/managers/logger_manager.d.ts +12 -0
  49. package/dist/types/managers/translation_manager.d.ts +14 -0
  50. package/dist/types/middlewares/auth_mw.d.ts +4 -0
  51. package/dist/types/middlewares/error_handling.d.ts +11 -0
  52. package/dist/types/middlewares/global_mw.d.ts +2 -0
  53. package/dist/types/middlewares/index.d.ts +3 -0
  54. package/dist/types/test.d.ts +0 -0
  55. package/dist/types/types/enums/global.d.ts +16 -0
  56. package/dist/types/types/enums/index.d.ts +1 -0
  57. package/dist/types/types/firebase_types.js +1 -0
  58. package/dist/types/types/global.js +1 -0
  59. package/dist/types/types/index.d.ts +3 -0
  60. package/dist/types/types/index.js +2 -0
  61. package/dist/types/types/interfaces/email.d.ts +24 -0
  62. package/dist/types/types/interfaces/global.d.ts +12 -0
  63. package/dist/types/types/interfaces/index.d.ts +2 -0
  64. package/dist/types/types/types/firebase_types.d.ts +30 -0
  65. package/dist/types/types/types/global.d.ts +15 -0
  66. package/dist/types/types/types/index.d.ts +2 -0
  67. package/package.json +1 -1
  68. package/dist/cjs/helpers/tasks.d.ts +0 -12
  69. package/dist/cjs/helpers/tasks.js +0 -62
  70. package/dist/cjs/helpers/tasks.js.map +0 -1
  71. package/dist/cjs/managers/cacche_manager2.d.ts +0 -18
  72. package/dist/cjs/managers/cacche_manager2.js +0 -41
  73. package/dist/cjs/managers/cacche_manager2.js.map +0 -1
  74. package/dist/cjs/managers/socket_manager.d.ts +0 -34
  75. package/dist/cjs/managers/socket_manager.js +0 -222
  76. package/dist/cjs/managers/socket_manager.js.map +0 -1
  77. package/dist/esm/helpers/tasks.d.ts +0 -12
  78. package/dist/esm/helpers/tasks.js +0 -58
  79. package/dist/esm/helpers/tasks.js.map +0 -1
  80. package/dist/esm/managers/cacche_manager2.d.ts +0 -18
  81. package/dist/esm/managers/cacche_manager2.js +0 -37
  82. package/dist/esm/managers/cacche_manager2.js.map +0 -1
  83. package/dist/esm/managers/socket_manager.d.ts +0 -34
  84. package/dist/esm/managers/socket_manager.js +0 -219
  85. package/dist/esm/managers/socket_manager.js.map +0 -1
@@ -11,3 +11,4 @@ export declare const get_nx_service_urls: (env_name?: string) => TObject<string>
11
11
  export declare const get_address_by_geo: ({ lat, lng }: Geo, currentLanguage: LanguageOptions) => Promise<string>;
12
12
  export declare const validate_and_cast: <T extends unknown>(variable: any, condition: Boolean) => variable is T;
13
13
  export declare const get_or_default: <T>(value: T | undefined, default_value: T | (() => T)) => T;
14
+ export declare const remove_nulls_and_undefined: (obj: Record<string, any>) => Record<string, any>;
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.get_or_default = exports.validate_and_cast = exports.get_address_by_geo = exports.get_nx_service_urls = exports.add_audit_record = exports.sleep = exports.get_version = exports.parse_error = exports.json_failed = exports.json_ok = exports.init_env_variables = void 0;
15
+ exports.remove_nulls_and_undefined = exports.get_or_default = exports.validate_and_cast = exports.get_address_by_geo = exports.get_nx_service_urls = exports.add_audit_record = exports.sleep = exports.get_version = exports.parse_error = exports.json_failed = exports.json_ok = exports.init_env_variables = void 0;
16
16
  const types_1 = require("../types");
17
17
  const fs_1 = require("fs");
18
18
  const managers_1 = require("../managers");
@@ -145,4 +145,8 @@ const get_or_default = (value, default_value) => {
145
145
  return typeof default_value === "function" ? default_value() : default_value;
146
146
  };
147
147
  exports.get_or_default = get_or_default;
148
+ const remove_nulls_and_undefined = (obj) => {
149
+ return Object.fromEntries(Object.entries(obj).filter(([_, value]) => value !== undefined && value !== null));
150
+ };
151
+ exports.remove_nulls_and_undefined = remove_nulls_and_undefined;
148
152
  //# sourceMappingURL=global_helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global_helpers.js","sourceRoot":"","sources":["../../../src/helpers/global_helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"global_helpers.js","sourceRoot":"","sources":["../../../src/helpers/global_helpers.ts"],"names":[],"mappings":"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"}
@@ -11,3 +11,4 @@ export declare const get_nx_service_urls: (env_name?: string) => TObject<string>
11
11
  export declare const get_address_by_geo: ({ lat, lng }: Geo, currentLanguage: LanguageOptions) => Promise<string>;
12
12
  export declare const validate_and_cast: <T extends unknown>(variable: any, condition: Boolean) => variable is T;
13
13
  export declare const get_or_default: <T>(value: T | undefined, default_value: T | (() => T)) => T;
14
+ export declare const remove_nulls_and_undefined: (obj: Record<string, any>) => Record<string, any>;
@@ -128,4 +128,7 @@ export const get_or_default = (value, default_value) => {
128
128
  }
129
129
  return typeof default_value === "function" ? default_value() : default_value;
130
130
  };
131
+ export const remove_nulls_and_undefined = (obj) => {
132
+ return Object.fromEntries(Object.entries(obj).filter(([_, value]) => value !== undefined && value !== null));
133
+ };
131
134
  //# sourceMappingURL=global_helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global_helpers.js","sourceRoot":"","sources":["../../../src/helpers/global_helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"global_helpers.js","sourceRoot":"","sources":["../../../src/helpers/global_helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export const extract_board_types_from_settings = (settings) => {
2
+ const { erm_board_types, jimi_board_types, jimi_iothub_board_types, ruptela_board_types, servision_board_types } = settings;
3
+ const result = [
4
+ { board_provider: "erm", board_types: erm_board_types.values },
5
+ { board_provider: "jimi", board_types: jimi_board_types.values },
6
+ { board_provider: "ruptela", board_types: ruptela_board_types.values },
7
+ { board_provider: "servision", board_types: servision_board_types.values },
8
+ { board_provider: "jimi_iothub", board_types: jimi_iothub_board_types.values },
9
+ ];
10
+ return result;
11
+ };
@@ -0,0 +1,69 @@
1
+ import sendgrid from "@sendgrid/mail";
2
+ import { add_audit_record, get_document_by_id } from ".";
3
+ import { logger } from "../managers";
4
+ export const send_email = async (email_data) => {
5
+ try {
6
+ const emails_settings = (await get_document_by_id("nx-settings", "emails"));
7
+ const { sendgrid_api_key, groups, default_from } = emails_settings;
8
+ let { from, to, cc, group_name, body_html, body_plain_text, subject, entity_for_audit } = email_data;
9
+ /// validate data
10
+ if (!to?.length && !group_name?.length) {
11
+ throw "must supply a 'group_name' or 'to' value ";
12
+ }
13
+ if (!body_html?.length && !body_plain_text?.length) {
14
+ throw "must supply a 'body_plain_text' or 'html' value ";
15
+ }
16
+ /// merge to and cc
17
+ if (group_name) {
18
+ if (!groups[group_name]) {
19
+ throw "must supply a valid 'group_name'";
20
+ }
21
+ if (!to) {
22
+ to = groups[group_name].to;
23
+ }
24
+ else {
25
+ to = typeof to === "string" ? [...groups[group_name].to, to] : [...groups[group_name].to, ...to];
26
+ }
27
+ if (!cc) {
28
+ if (groups[group_name].cc?.length) {
29
+ cc = groups[group_name].cc;
30
+ }
31
+ }
32
+ else {
33
+ cc = typeof cc === "string" ? [...(groups[group_name].cc || []), cc] : [...(groups[group_name].cc || []), ...cc];
34
+ }
35
+ }
36
+ /// set sendgrid account
37
+ sendgrid.setApiKey(sendgrid_api_key);
38
+ /// prepare message
39
+ const msg = body_html
40
+ ? {
41
+ subject,
42
+ from: from || default_from,
43
+ to,
44
+ cc,
45
+ html: body_html,
46
+ }
47
+ : {
48
+ subject,
49
+ from: from || default_from,
50
+ to,
51
+ cc,
52
+ text: body_plain_text,
53
+ };
54
+ if (!msg.cc) {
55
+ delete msg.cc;
56
+ }
57
+ /// send email
58
+ const email_result = await sendgrid.send(msg);
59
+ if (email_result[0].statusCode !== 202) {
60
+ throw email_result[0].body;
61
+ }
62
+ /// add audit
63
+ logger.log("email send successfully", { ...email_data, ...msg });
64
+ await add_audit_record("send_email", entity_for_audit, { ...email_data, ...msg });
65
+ }
66
+ catch (error) {
67
+ logger.error("error sending email", { error, email_data });
68
+ }
69
+ };
@@ -0,0 +1,379 @@
1
+ import { performance } from "perf_hooks";
2
+ import firebase_admin from "firebase-admin";
3
+ import { cache_manager, logger, translation_manager } from "../managers";
4
+ import dotenv from "dotenv";
5
+ import { init_env_variables } from "./global_helpers";
6
+ dotenv.config();
7
+ // initial firebase
8
+ const required_env_vars = [
9
+ "type",
10
+ "project_id",
11
+ "private_key_id",
12
+ "private_key",
13
+ "client_email",
14
+ "client_id",
15
+ "auth_uri",
16
+ "token_uri",
17
+ "auth_provider_x509_cert_url",
18
+ "client_x509_cert_url",
19
+ "universe_domain",
20
+ ];
21
+ const env_data = init_env_variables(required_env_vars);
22
+ export const service_account_firebase = {
23
+ type: env_data.type,
24
+ project_id: env_data.project_id,
25
+ private_key_id: env_data.private_key_id,
26
+ private_key: env_data.private_key.replace(/\\n/g, "\n"),
27
+ client_email: env_data.client_email,
28
+ client_id: env_data.client_id,
29
+ auth_uri: env_data.auth_uri,
30
+ token_uri: env_data.token_uri,
31
+ auth_provider_x509_cert_url: env_data.auth_provider_x509_cert_url,
32
+ client_x509_cert_url: env_data.client_x509_cert_url,
33
+ universe_domain: env_data.universe_domain,
34
+ };
35
+ firebase_admin.initializeApp({
36
+ credential: firebase_admin.credential.cert(service_account_firebase),
37
+ storageBucket: `${service_account_firebase.project_id}.appspot.com`,
38
+ });
39
+ export const db = firebase_admin.firestore();
40
+ export const messaging = firebase_admin.messaging();
41
+ export const auth = firebase_admin.auth();
42
+ /// extract
43
+ export const simple_extract_data = (doc) => {
44
+ const doc_data = doc.data();
45
+ return {
46
+ ...doc_data,
47
+ id: doc.id,
48
+ };
49
+ };
50
+ /// documents
51
+ export const get_all_documents = async (collection_path) => {
52
+ try {
53
+ const snapshot = await db.collection(collection_path).get();
54
+ const documents = snapshot.docs.flatMap((doc) => {
55
+ return simple_extract_data(doc);
56
+ });
57
+ return documents;
58
+ }
59
+ catch (error) {
60
+ logger.error("Error fetching documents:", error);
61
+ throw error;
62
+ }
63
+ };
64
+ export const query_documents = async (collection_path, field_name, operator, value) => {
65
+ try {
66
+ const querySnapshot = await db.collection(collection_path).where(field_name, operator, value).get();
67
+ const documentsData = querySnapshot.docs;
68
+ const documents = documentsData.flatMap((doc) => simple_extract_data(doc));
69
+ return documents;
70
+ }
71
+ catch (error) {
72
+ logger.error(`Error querying documents: ${collection_path} - ${field_name} - ${operator} - ${value} `, error);
73
+ throw error;
74
+ }
75
+ };
76
+ export const query_documents_by_conditions = async (collection_path, where_conditions) => {
77
+ try {
78
+ let query = db.collection(collection_path);
79
+ where_conditions.forEach((condition) => {
80
+ query = query.where(condition.field_name, condition.operator, condition.value);
81
+ });
82
+ const querySnapshot = await query.get();
83
+ const documentsData = querySnapshot.docs;
84
+ const documents = documentsData.flatMap((doc) => simple_extract_data(doc));
85
+ return documents;
86
+ }
87
+ catch (error) {
88
+ logger.error(`Error querying documents: ${collection_path} - ${JSON.stringify(where_conditions)} `, error);
89
+ throw error;
90
+ }
91
+ };
92
+ export const query_document_by_conditions = async (collection_path, where_conditions, log = true) => {
93
+ try {
94
+ let query = db.collection(collection_path);
95
+ where_conditions.forEach((condition) => {
96
+ query = query.where(condition.field_name, condition.operator, condition.value);
97
+ });
98
+ const querySnapshot = await query.get();
99
+ const documentsData = querySnapshot.docs;
100
+ const documents = documentsData.flatMap((doc) => simple_extract_data(doc));
101
+ if (!documents[0]) {
102
+ throw "no data returned from DB";
103
+ }
104
+ return documents[0];
105
+ }
106
+ catch (error) {
107
+ if (log) {
108
+ logger.error(`Error querying documents: ${collection_path} - ${JSON.stringify(where_conditions)} `, error);
109
+ }
110
+ throw error;
111
+ }
112
+ };
113
+ /// document
114
+ export const query_document = async (collection_path, field_name, operator, value, ignore_log = false) => {
115
+ try {
116
+ const querySnapshot = await db.collection(collection_path).where(field_name, operator, value).get();
117
+ const documentsData = querySnapshot.docs;
118
+ const documents = documentsData.flatMap((doc) => simple_extract_data(doc));
119
+ if (documents.length < 1) {
120
+ throw `No data to return from: collection: ${collection_path}, field_name: ${field_name}, operator: ${operator}, value:${value}`;
121
+ }
122
+ return documents[0];
123
+ }
124
+ catch (error) {
125
+ if (!ignore_log) {
126
+ logger.error("Error querying document:", error);
127
+ }
128
+ throw error;
129
+ }
130
+ };
131
+ export const query_document_optional = async (collection_path, field_name, operator, value, ignore_log = false) => {
132
+ try {
133
+ const querySnapshot = await db.collection(collection_path).where(field_name, operator, value).get();
134
+ const documentsData = querySnapshot.docs;
135
+ const documents = documentsData.flatMap((doc) => simple_extract_data(doc));
136
+ return documents[0] || null;
137
+ }
138
+ catch (error) {
139
+ if (!ignore_log) {
140
+ logger.error("Error querying document:", error);
141
+ }
142
+ return null;
143
+ }
144
+ };
145
+ export const get_document_by_id = async (collection_path, doc_id) => {
146
+ try {
147
+ const docRef = db.collection(collection_path).doc(doc_id);
148
+ const doc = await docRef.get();
149
+ if (!doc.exists) {
150
+ throw "Document not found, document id: " + doc_id;
151
+ }
152
+ return simple_extract_data(doc);
153
+ }
154
+ catch (error) {
155
+ logger.error("error from get_document_by_id", error);
156
+ throw error;
157
+ }
158
+ };
159
+ export const get_document_by_id_optional = async (collection_path, doc_id) => {
160
+ try {
161
+ const docRef = db.collection(collection_path).doc(doc_id);
162
+ const doc = await docRef.get();
163
+ if (!doc.exists) {
164
+ throw "Document not found, document id: " + doc_id;
165
+ }
166
+ return simple_extract_data(doc);
167
+ }
168
+ catch (error) {
169
+ logger.error("error from get_document_by_id_optional", error);
170
+ return null;
171
+ }
172
+ };
173
+ export const set_document = async (collection_path, doc_id, data, merge = true) => {
174
+ try {
175
+ await db
176
+ .collection(collection_path)
177
+ .doc(doc_id)
178
+ .set({ ...data }, { merge });
179
+ }
180
+ catch (error) {
181
+ logger.error(`failed to create document by id: ${doc_id} in collection: ${collection_path}`, error);
182
+ throw `failed to create document by id ${doc_id} in collection ${collection_path}`;
183
+ }
184
+ };
185
+ export const add_document = async (collection_path, data, include_id = false, custom_id) => {
186
+ try {
187
+ const new_document = custom_id ? db.collection(collection_path).doc(custom_id) : db.collection(collection_path).doc();
188
+ const update = include_id ? { ...data, id: new_document.id } : data;
189
+ await new_document.set(update);
190
+ }
191
+ catch (error) {
192
+ logger.error(`failed to create document in collection: ${collection_path}`, error);
193
+ throw `failed to create document in collection ${collection_path}`;
194
+ }
195
+ };
196
+ export const delete_document = async (collection_path, doc_id) => {
197
+ try {
198
+ await db.collection(collection_path).doc(doc_id).delete();
199
+ }
200
+ catch (error) {
201
+ throw `Failed to delete document with id ${doc_id} from collection ${collection_path}`;
202
+ }
203
+ };
204
+ /// token
205
+ export const verify_token = async (authorization) => {
206
+ try {
207
+ if (!authorization) {
208
+ throw "Authorization token is required";
209
+ }
210
+ if (!authorization.toLowerCase().startsWith("bearer")) {
211
+ throw "Invalid authorization token";
212
+ }
213
+ const token = authorization.split(/bearer\s+(.+)/i)[1];
214
+ if (!token) {
215
+ throw "validation error: Token not found";
216
+ }
217
+ const res = await firebase_admin.auth().verifyIdToken(token);
218
+ if (!res) {
219
+ throw "User not found";
220
+ }
221
+ return res;
222
+ }
223
+ catch (error) {
224
+ logger.error("error from verify_token", error);
225
+ throw error;
226
+ }
227
+ };
228
+ /// parsers
229
+ const parse__add_update__translations = (documents) => {
230
+ const data = translation_manager.getTranslationData();
231
+ documents.forEach((doc) => {
232
+ data[doc.id] = doc;
233
+ delete data[doc.id].id;
234
+ });
235
+ translation_manager.setTranslationData(data);
236
+ };
237
+ const parse__delete__translations = (documents) => {
238
+ const data = translation_manager.getTranslationData();
239
+ documents.forEach((doc) => {
240
+ if (data[doc.id]) {
241
+ delete data[doc.id];
242
+ }
243
+ });
244
+ translation_manager.setTranslationData(data);
245
+ };
246
+ const parse__add_update__settings = (documents, name_for_cache) => {
247
+ const data = cache_manager.getObjectData(name_for_cache, {});
248
+ documents.forEach((doc) => {
249
+ data[doc.id] = doc;
250
+ });
251
+ cache_manager.setObjectData(name_for_cache, data);
252
+ };
253
+ const parse__delete__settings = (documents, name_for_cache) => {
254
+ const data = cache_manager.getObjectData(name_for_cache, {});
255
+ documents.forEach((doc) => {
256
+ if (data[doc.id]) {
257
+ delete data[doc.id];
258
+ }
259
+ });
260
+ cache_manager.setObjectData(name_for_cache, data);
261
+ };
262
+ const parse_add_update__as_object = (documents, config, doc_key_property) => {
263
+ const data = cache_manager.getObjectData(config.collection_name, {});
264
+ documents.forEach((doc) => {
265
+ data[doc[doc_key_property]] = doc;
266
+ });
267
+ cache_manager.setObjectData(doc_key_property, data);
268
+ };
269
+ const parse__delete__as_object = (documents, config, doc_key_property) => {
270
+ const data = cache_manager.getObjectData(config.collection_name, {});
271
+ documents.forEach((doc) => {
272
+ if (data[doc[doc_key_property]]) {
273
+ delete data[doc[doc_key_property]];
274
+ }
275
+ });
276
+ cache_manager.setObjectData(doc_key_property, data);
277
+ };
278
+ const parse__add_update__as_array = (documents, config) => {
279
+ config.on_remove?.(documents, config);
280
+ const existing_array = cache_manager.getArrayData(config.collection_name);
281
+ const updated_array = [...existing_array, ...documents];
282
+ cache_manager.setArrayData(config.collection_name, updated_array);
283
+ };
284
+ const parse__delete__as_array = (documents, config) => {
285
+ const existing_array = cache_manager.getArrayData(config.collection_name);
286
+ const keys_to_delete = documents.map((doc) => doc.id);
287
+ const updated_array = existing_array.filter((doc) => !keys_to_delete.includes(doc.id));
288
+ cache_manager.setArrayData(config.collection_name, updated_array);
289
+ };
290
+ /// snapshots
291
+ let snapshots_first_time = [];
292
+ export const snapshot = (config) => {
293
+ return new Promise((resolve) => {
294
+ db.collection(config.collection_name).onSnapshot((snapshot) => {
295
+ if (!snapshots_first_time.includes(config.collection_name)) {
296
+ snapshots_first_time.push(config.collection_name);
297
+ const documents = snapshot.docs.flatMap((doc) => simple_extract_data(doc));
298
+ config.on_first_time?.(documents, config);
299
+ config.extra_parsers?.forEach((extra_parser) => {
300
+ extra_parser.on_first_time?.(documents, config);
301
+ });
302
+ resolve();
303
+ }
304
+ else {
305
+ const get_docs_from_snapshot = (action) => {
306
+ return snapshot
307
+ .docChanges()
308
+ .filter((change) => change.type === action)
309
+ .map((change) => simple_extract_data(change.doc));
310
+ };
311
+ config.on_add?.(get_docs_from_snapshot("added"), config);
312
+ config.on_modify?.(get_docs_from_snapshot("modified"), config);
313
+ config.on_remove?.(get_docs_from_snapshot("removed"), config);
314
+ config.extra_parsers?.forEach((extra_parser) => {
315
+ extra_parser.on_add?.(get_docs_from_snapshot("added"), config);
316
+ extra_parser.on_modify?.(get_docs_from_snapshot("modified"), config);
317
+ extra_parser.on_remove?.(get_docs_from_snapshot("removed"), config);
318
+ });
319
+ }
320
+ }, (error) => {
321
+ logger.error(`Error listening to collection: ${config.collection_name}`, error);
322
+ });
323
+ });
324
+ };
325
+ export const init_snapshots = async () => {
326
+ await snapshot_bulk([
327
+ snapshot({
328
+ collection_name: "nx-translations",
329
+ on_first_time: parse__add_update__translations,
330
+ on_add: parse__add_update__translations,
331
+ on_modify: parse__add_update__translations,
332
+ on_remove: parse__delete__translations,
333
+ }),
334
+ snapshot({
335
+ collection_name: "nx-settings",
336
+ on_first_time: (docs) => parse__add_update__settings(docs, "nx-settings"),
337
+ on_add: (docs) => parse__add_update__settings(docs, "nx-settings"),
338
+ on_modify: (docs) => parse__add_update__settings(docs, "nx-settings"),
339
+ on_remove: (docs) => parse__delete__settings(docs, "nx-settings"),
340
+ }),
341
+ snapshot({
342
+ collection_name: "settings",
343
+ on_first_time: (docs) => parse__add_update__settings(docs, "settings"),
344
+ on_add: (docs) => parse__add_update__settings(docs, "settings"),
345
+ on_modify: (docs) => parse__add_update__settings(docs, "settings"),
346
+ on_remove: (docs) => parse__delete__settings(docs, "settings"),
347
+ }),
348
+ ], "Common snapshots");
349
+ };
350
+ export const snapshot_bulk = async (snapshots, label) => {
351
+ const start = performance.now();
352
+ logger.log(`==> ${label || "custom snapshots"} started... `);
353
+ await Promise.all(snapshots);
354
+ logger.log(`==> ${label || "custom snapshots"} ended. It took ${(performance.now() - start).toFixed(2)} ms`);
355
+ };
356
+ export const snapshot_bulk_by_names = async (params) => {
357
+ const start = performance.now();
358
+ logger.log(`==> snapshot_bulk_by_names started... `);
359
+ const snapshots = params.map((param) => {
360
+ return typeof param === "string"
361
+ ? snapshot({
362
+ collection_name: param,
363
+ on_first_time: (docs, config) => parse__add_update__as_array(docs, config),
364
+ on_add: (docs, config) => parse__add_update__as_array(docs, config),
365
+ on_modify: (docs, config) => parse__add_update__as_array(docs, config),
366
+ on_remove: (docs, config) => parse__delete__as_array(docs, config),
367
+ })
368
+ : snapshot({
369
+ collection_name: param.collection_name,
370
+ extra_parsers: param.extra_parsers,
371
+ on_first_time: (docs, config) => parse__add_update__as_array(docs, config),
372
+ on_add: (docs, config) => parse__add_update__as_array(docs, config),
373
+ on_modify: (docs, config) => parse__add_update__as_array(docs, config),
374
+ on_remove: (docs, config) => parse__delete__as_array(docs, config),
375
+ });
376
+ });
377
+ await Promise.all(snapshots);
378
+ logger.log(`==> snapshot_bulk_by_names ended. It took ${(performance.now() - start).toFixed(2)} ms`);
379
+ };