akeyless-client-commons 1.1.22 → 1.1.23
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/components/index.css.map +1 -1
- package/dist/components/index.js +313 -6
- package/dist/components/index.mjs +313 -6
- package/dist/helpers/index.d.mts +43 -3
- package/dist/helpers/index.d.ts +43 -3
- package/dist/helpers/index.js +344 -0
- package/dist/helpers/index.mjs +333 -1
- package/dist/hooks/index.d.mts +27 -8
- package/dist/hooks/index.d.ts +27 -8
- package/dist/hooks/index.js +619 -66
- package/dist/hooks/index.mjs +609 -64
- package/dist/types/index.d.mts +2 -0
- package/dist/types/index.d.ts +2 -0
- package/package.json +5 -2
package/dist/hooks/index.mjs
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
// src/hooks/global.ts
|
|
2
|
+
function _array_like_to_array(arr, len) {
|
|
3
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
4
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5
|
+
return arr2;
|
|
6
|
+
}
|
|
7
|
+
function _array_with_holes(arr) {
|
|
8
|
+
if (Array.isArray(arr)) return arr;
|
|
9
|
+
}
|
|
10
|
+
function _array_without_holes(arr) {
|
|
11
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
12
|
+
}
|
|
2
13
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
3
14
|
try {
|
|
4
15
|
var info = gen[key](arg);
|
|
@@ -28,6 +39,25 @@ function _async_to_generator(fn) {
|
|
|
28
39
|
});
|
|
29
40
|
};
|
|
30
41
|
}
|
|
42
|
+
function _class_call_check(instance, Constructor) {
|
|
43
|
+
if (!(instance instanceof Constructor)) {
|
|
44
|
+
throw new TypeError("Cannot call a class as a function");
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function _defineProperties(target, props) {
|
|
48
|
+
for(var i = 0; i < props.length; i++){
|
|
49
|
+
var descriptor = props[i];
|
|
50
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
51
|
+
descriptor.configurable = true;
|
|
52
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
53
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
57
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
58
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
59
|
+
return Constructor;
|
|
60
|
+
}
|
|
31
61
|
function _define_property(obj, key, value) {
|
|
32
62
|
if (key in obj) {
|
|
33
63
|
Object.defineProperty(obj, key, {
|
|
@@ -41,6 +71,39 @@ function _define_property(obj, key, value) {
|
|
|
41
71
|
}
|
|
42
72
|
return obj;
|
|
43
73
|
}
|
|
74
|
+
function _iterable_to_array(iter) {
|
|
75
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
76
|
+
}
|
|
77
|
+
function _iterable_to_array_limit(arr, i) {
|
|
78
|
+
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
79
|
+
if (_i == null) return;
|
|
80
|
+
var _arr = [];
|
|
81
|
+
var _n = true;
|
|
82
|
+
var _d = false;
|
|
83
|
+
var _s, _e;
|
|
84
|
+
try {
|
|
85
|
+
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
86
|
+
_arr.push(_s.value);
|
|
87
|
+
if (i && _arr.length === i) break;
|
|
88
|
+
}
|
|
89
|
+
} catch (err) {
|
|
90
|
+
_d = true;
|
|
91
|
+
_e = err;
|
|
92
|
+
} finally{
|
|
93
|
+
try {
|
|
94
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
|
95
|
+
} finally{
|
|
96
|
+
if (_d) throw _e;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return _arr;
|
|
100
|
+
}
|
|
101
|
+
function _non_iterable_rest() {
|
|
102
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
103
|
+
}
|
|
104
|
+
function _non_iterable_spread() {
|
|
105
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
106
|
+
}
|
|
44
107
|
function _object_spread(target) {
|
|
45
108
|
for(var i = 1; i < arguments.length; i++){
|
|
46
109
|
var source = arguments[i] != null ? arguments[i] : {};
|
|
@@ -80,6 +143,20 @@ function _object_spread_props(target, source) {
|
|
|
80
143
|
}
|
|
81
144
|
return target;
|
|
82
145
|
}
|
|
146
|
+
function _sliced_to_array(arr, i) {
|
|
147
|
+
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
148
|
+
}
|
|
149
|
+
function _to_consumable_array(arr) {
|
|
150
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
151
|
+
}
|
|
152
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
153
|
+
if (!o) return;
|
|
154
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
155
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
156
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
157
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
158
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
159
|
+
}
|
|
83
160
|
function _ts_generator(thisArg, body) {
|
|
84
161
|
var f, y, t, g, _ = {
|
|
85
162
|
label: 0,
|
|
@@ -176,7 +253,7 @@ function _ts_generator(thisArg, body) {
|
|
|
176
253
|
}
|
|
177
254
|
}
|
|
178
255
|
import { CountryOptions as CountryOptions2 } from "akeyless-types-commons";
|
|
179
|
-
import { useEffect
|
|
256
|
+
import { useEffect, useLayoutEffect } from "react";
|
|
180
257
|
// src/helpers/firebase.ts
|
|
181
258
|
import moment from "moment";
|
|
182
259
|
import { initializeApp } from "firebase/app";
|
|
@@ -280,6 +357,50 @@ var simpleExtractData = function(doc2) {
|
|
|
280
357
|
id: doc2.id
|
|
281
358
|
});
|
|
282
359
|
};
|
|
360
|
+
var get_document_by_id = /*#__PURE__*/ function() {
|
|
361
|
+
var _ref = _async_to_generator(function(collection_path, doc_id) {
|
|
362
|
+
var doc_ref, doc_snap, error;
|
|
363
|
+
return _ts_generator(this, function(_state) {
|
|
364
|
+
switch(_state.label){
|
|
365
|
+
case 0:
|
|
366
|
+
_state.trys.push([
|
|
367
|
+
0,
|
|
368
|
+
2,
|
|
369
|
+
,
|
|
370
|
+
3
|
|
371
|
+
]);
|
|
372
|
+
doc_ref = doc(db, collection_path, doc_id);
|
|
373
|
+
return [
|
|
374
|
+
4,
|
|
375
|
+
getDoc(doc_ref)
|
|
376
|
+
];
|
|
377
|
+
case 1:
|
|
378
|
+
doc_snap = _state.sent();
|
|
379
|
+
if (!doc_snap.exists()) {
|
|
380
|
+
throw new Error("Document not found, document id: " + doc_id);
|
|
381
|
+
}
|
|
382
|
+
return [
|
|
383
|
+
2,
|
|
384
|
+
simpleExtractData(doc_snap)
|
|
385
|
+
];
|
|
386
|
+
case 2:
|
|
387
|
+
error = _state.sent();
|
|
388
|
+
console.error("Error from get_document_by_id", error);
|
|
389
|
+
return [
|
|
390
|
+
2,
|
|
391
|
+
null
|
|
392
|
+
];
|
|
393
|
+
case 3:
|
|
394
|
+
return [
|
|
395
|
+
2
|
|
396
|
+
];
|
|
397
|
+
}
|
|
398
|
+
});
|
|
399
|
+
});
|
|
400
|
+
return function get_document_by_id(collection_path, doc_id) {
|
|
401
|
+
return _ref.apply(this, arguments);
|
|
402
|
+
};
|
|
403
|
+
}();
|
|
283
404
|
var snapshot = function(config, snapshotsFirstTime, settings) {
|
|
284
405
|
var resolvePromise;
|
|
285
406
|
var isResolved = false;
|
|
@@ -305,11 +426,11 @@ var snapshot = function(config, snapshotsFirstTime, settings) {
|
|
|
305
426
|
collectionRef = query(collectionRef, orderBy(order.fieldName, order.direction));
|
|
306
427
|
});
|
|
307
428
|
}
|
|
308
|
-
var unsubscribe = onSnapshot(collectionRef, function(
|
|
429
|
+
var unsubscribe = onSnapshot(collectionRef, function(snapshot3) {
|
|
309
430
|
if (!snapshotsFirstTime.includes(config.collectionName)) {
|
|
310
431
|
var _config_onFirstTime, _config_extraParsers;
|
|
311
432
|
snapshotsFirstTime.push(config.collectionName);
|
|
312
|
-
var documents =
|
|
433
|
+
var documents = snapshot3.docs.map(function(doc2) {
|
|
313
434
|
return simpleExtractData(doc2);
|
|
314
435
|
});
|
|
315
436
|
(_config_onFirstTime = config.onFirstTime) === null || _config_onFirstTime === void 0 ? void 0 : _config_onFirstTime.call(config, documents, config);
|
|
@@ -323,7 +444,7 @@ var snapshot = function(config, snapshotsFirstTime, settings) {
|
|
|
323
444
|
var addedDocs = [];
|
|
324
445
|
var modifiedDocs = [];
|
|
325
446
|
var removedDocs = [];
|
|
326
|
-
|
|
447
|
+
snapshot3.docChanges().forEach(function(change) {
|
|
327
448
|
if (change.type === "added") {
|
|
328
449
|
addedDocs.push(simpleExtractData(change.doc));
|
|
329
450
|
} else if (change.type === "modified") {
|
|
@@ -426,13 +547,363 @@ var biDomain = isLocal ? "http://localhost:9002/api/bi" : baseDomain + "/bi";
|
|
|
426
547
|
var notificationsDomain = isLocal ? "http://localhost:9006/api/notifications" : baseDomain + "/notifications";
|
|
427
548
|
var callCenterGeoDomain = isLocal ? "http://localhost:9007/api/call-center/geo" : baseDomain + "/call-center/geo";
|
|
428
549
|
var callCenterEventsDomain = isLocal ? "http://localhost:9008/api/call-center/events" : baseDomain + "/call-center/events";
|
|
550
|
+
var dataSocketDomain = isLocal ? "http://localhost:9009/api/data-socket" : baseDomain + "/data-socket";
|
|
551
|
+
var dataSyncDomain = isLocal ? "http://localhost:9010/api/data-sync" : baseDomain + "/data-sync";
|
|
429
552
|
// src/helpers/emails.ts
|
|
430
553
|
import axios3 from "axios";
|
|
554
|
+
// src/helpers/socket.ts
|
|
555
|
+
import { io } from "socket.io-client";
|
|
556
|
+
var SESSION_STORAGE_KEY = "sessionId";
|
|
557
|
+
var SocketService = /*#__PURE__*/ function() {
|
|
558
|
+
"use strict";
|
|
559
|
+
function _SocketService() {
|
|
560
|
+
_class_call_check(this, _SocketService);
|
|
561
|
+
this.socket = null;
|
|
562
|
+
this.connectCallbacks = [];
|
|
563
|
+
this.disconnectCallbacks = [];
|
|
564
|
+
this.authToken = null;
|
|
565
|
+
}
|
|
566
|
+
_create_class(_SocketService, [
|
|
567
|
+
{
|
|
568
|
+
/// Initialize the socket connection
|
|
569
|
+
key: "initSocket",
|
|
570
|
+
value: function initSocket() {
|
|
571
|
+
var _this = this;
|
|
572
|
+
if (!this.socket) {
|
|
573
|
+
var socketUrl = isLocal ? "http://localhost:9009" : mode === "qa" ? "https://nx-api.xyz" : "https://nx-api.info";
|
|
574
|
+
this.socket = io(socketUrl, {
|
|
575
|
+
path: "/api/data-socket/connect",
|
|
576
|
+
auth: function(cb) {
|
|
577
|
+
var sessionId = localStorage.getItem(SESSION_STORAGE_KEY) || void 0;
|
|
578
|
+
var token = _this.authToken;
|
|
579
|
+
var authPayload = {};
|
|
580
|
+
if (token) authPayload.token = token;
|
|
581
|
+
if (sessionId) authPayload.sessionId = sessionId;
|
|
582
|
+
cb(authPayload);
|
|
583
|
+
},
|
|
584
|
+
transports: [
|
|
585
|
+
"websocket"
|
|
586
|
+
],
|
|
587
|
+
reconnection: true,
|
|
588
|
+
reconnectionAttempts: 30,
|
|
589
|
+
reconnectionDelay: 2 * 1e3
|
|
590
|
+
});
|
|
591
|
+
this.socket.on("connect", function() {
|
|
592
|
+
var _this_socket, _this_socket1;
|
|
593
|
+
console.log("\uD83D\uDFE2 Socket connected: ".concat((_this_socket = _this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.id, " (recovered - ").concat((_this_socket1 = _this.socket) === null || _this_socket1 === void 0 ? void 0 : _this_socket1.recovered, ")"));
|
|
594
|
+
_this.connectCallbacks.forEach(function(cb) {
|
|
595
|
+
return cb();
|
|
596
|
+
});
|
|
597
|
+
});
|
|
598
|
+
this.socket.on("disconnect", function(reason) {
|
|
599
|
+
console.log("Socket disconnected:", reason);
|
|
600
|
+
_this.disconnectCallbacks.forEach(function(cb) {
|
|
601
|
+
return cb();
|
|
602
|
+
});
|
|
603
|
+
});
|
|
604
|
+
this.socket.on("session", function(param) {
|
|
605
|
+
var session_id = param.session_id;
|
|
606
|
+
if (session_id) {
|
|
607
|
+
localStorage.setItem(SESSION_STORAGE_KEY, session_id);
|
|
608
|
+
}
|
|
609
|
+
});
|
|
610
|
+
this.socket.on("connect_error", function(error) {
|
|
611
|
+
console.error("Socket connection error:", error);
|
|
612
|
+
});
|
|
613
|
+
}
|
|
614
|
+
}
|
|
615
|
+
},
|
|
616
|
+
{
|
|
617
|
+
/// get socket instance
|
|
618
|
+
key: "getSocketInstance",
|
|
619
|
+
value: function getSocketInstance() {
|
|
620
|
+
if (!this.socket) {
|
|
621
|
+
this.initSocket();
|
|
622
|
+
}
|
|
623
|
+
if (!this.socket) {
|
|
624
|
+
throw new Error("Socket not initialized");
|
|
625
|
+
}
|
|
626
|
+
if (!this.socket.connected) {
|
|
627
|
+
this.socket.connect();
|
|
628
|
+
}
|
|
629
|
+
return this.socket;
|
|
630
|
+
}
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
/// connection management methods
|
|
634
|
+
key: "startSession",
|
|
635
|
+
value: function startSession(token) {
|
|
636
|
+
this.setAuthToken(token);
|
|
637
|
+
this.initSocket();
|
|
638
|
+
}
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
key: "onConnect",
|
|
642
|
+
value: function onConnect(callback) {
|
|
643
|
+
var _this = this;
|
|
644
|
+
var _this_socket;
|
|
645
|
+
if (!this.connectCallbacks.includes(callback)) {
|
|
646
|
+
this.connectCallbacks.push(callback);
|
|
647
|
+
}
|
|
648
|
+
if ((_this_socket = this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.connected) {
|
|
649
|
+
callback();
|
|
650
|
+
}
|
|
651
|
+
return function() {
|
|
652
|
+
return _this.offConnect(callback);
|
|
653
|
+
};
|
|
654
|
+
}
|
|
655
|
+
},
|
|
656
|
+
{
|
|
657
|
+
key: "offConnect",
|
|
658
|
+
value: function offConnect(callback) {
|
|
659
|
+
this.connectCallbacks = this.connectCallbacks.filter(function(cb) {
|
|
660
|
+
return cb !== callback;
|
|
661
|
+
});
|
|
662
|
+
}
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
key: "onDisconnect",
|
|
666
|
+
value: function onDisconnect(callback) {
|
|
667
|
+
var _this = this;
|
|
668
|
+
if (!this.disconnectCallbacks.includes(callback)) {
|
|
669
|
+
this.disconnectCallbacks.push(callback);
|
|
670
|
+
}
|
|
671
|
+
if (this.socket && !this.socket.connected) {
|
|
672
|
+
callback();
|
|
673
|
+
}
|
|
674
|
+
return function() {
|
|
675
|
+
return _this.offDisconnect(callback);
|
|
676
|
+
};
|
|
677
|
+
}
|
|
678
|
+
},
|
|
679
|
+
{
|
|
680
|
+
key: "offDisconnect",
|
|
681
|
+
value: function offDisconnect(callback) {
|
|
682
|
+
this.disconnectCallbacks = this.disconnectCallbacks.filter(function(cb) {
|
|
683
|
+
return cb !== callback;
|
|
684
|
+
});
|
|
685
|
+
}
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
key: "isConnected",
|
|
689
|
+
value: function isConnected() {
|
|
690
|
+
var _this_socket;
|
|
691
|
+
return ((_this_socket = this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.connected) || false;
|
|
692
|
+
}
|
|
693
|
+
},
|
|
694
|
+
{
|
|
695
|
+
key: "setAuthToken",
|
|
696
|
+
value: function setAuthToken(token) {
|
|
697
|
+
this.authToken = token;
|
|
698
|
+
if (this.socket) {
|
|
699
|
+
this.socket.connect();
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
},
|
|
703
|
+
{
|
|
704
|
+
key: "disconnectSocket",
|
|
705
|
+
value: function disconnectSocket() {
|
|
706
|
+
if (this.socket) {
|
|
707
|
+
this.socket.io.engine.close();
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
},
|
|
711
|
+
{
|
|
712
|
+
/// subscribe to collections
|
|
713
|
+
key: "subscribeToCollections",
|
|
714
|
+
value: function subscribeToCollections(config) {
|
|
715
|
+
var _this = this;
|
|
716
|
+
if (config.length === 0) {
|
|
717
|
+
return function() {};
|
|
718
|
+
}
|
|
719
|
+
var s = this.getSocketInstance();
|
|
720
|
+
var collectionsNames = config.map(function(c) {
|
|
721
|
+
return c.collectionName;
|
|
722
|
+
});
|
|
723
|
+
var eventHandlers = [];
|
|
724
|
+
config.forEach(function(configuration) {
|
|
725
|
+
var collectionName = configuration.collectionName, onAdd = configuration.onAdd, onFirstTime = configuration.onFirstTime, onModify = configuration.onModify, onRemove = configuration.onRemove, extraParsers = configuration.extraParsers, conditions = configuration.conditions, orderBy2 = configuration.orderBy;
|
|
726
|
+
var attach = function(eventName, handler) {
|
|
727
|
+
_this.socket.off(eventName, handler);
|
|
728
|
+
_this.socket.on(eventName, handler);
|
|
729
|
+
eventHandlers.push({
|
|
730
|
+
eventName: eventName,
|
|
731
|
+
handler: handler
|
|
732
|
+
});
|
|
733
|
+
};
|
|
734
|
+
attach("initial:".concat(collectionName), onFirstTime);
|
|
735
|
+
attach("add:".concat(collectionName), onAdd);
|
|
736
|
+
attach("update:".concat(collectionName), onModify);
|
|
737
|
+
attach("delete:".concat(collectionName), onRemove);
|
|
738
|
+
extraParsers === null || extraParsers === void 0 ? void 0 : extraParsers.forEach(function(parsers) {
|
|
739
|
+
var extraOnAdd = parsers.onAdd, extraOnFirstTime = parsers.onFirstTime, extraOnModify = parsers.onModify, extraOnRemove = parsers.onRemove;
|
|
740
|
+
attach("initial:".concat(collectionName), extraOnFirstTime);
|
|
741
|
+
attach("add:".concat(collectionName), extraOnAdd);
|
|
742
|
+
attach("update:".concat(collectionName), extraOnModify);
|
|
743
|
+
attach("delete:".concat(collectionName), extraOnRemove);
|
|
744
|
+
});
|
|
745
|
+
});
|
|
746
|
+
s.emit("subscribe_collections", collectionsNames, function(callback) {
|
|
747
|
+
if (callback.success) {
|
|
748
|
+
console.log("Successfully subscribed to: ".concat(collectionsNames.join(", ")));
|
|
749
|
+
} else {
|
|
750
|
+
console.error("Failed to subscribe to ".concat(config.join(", "), ": ").concat(callback.message));
|
|
751
|
+
}
|
|
752
|
+
});
|
|
753
|
+
return function() {
|
|
754
|
+
console.log("Cleaning up subscriptions for: ".concat(collectionsNames.join(", ")));
|
|
755
|
+
s.emit("unsubscribe_collections", collectionsNames);
|
|
756
|
+
eventHandlers.forEach(function(eh) {
|
|
757
|
+
s.off(eh.eventName, eh.handler);
|
|
758
|
+
});
|
|
759
|
+
};
|
|
760
|
+
}
|
|
761
|
+
},
|
|
762
|
+
{
|
|
763
|
+
/// set data
|
|
764
|
+
key: "setData",
|
|
765
|
+
value: function setData(payload) {
|
|
766
|
+
var s = this.getSocketInstance();
|
|
767
|
+
return new Promise(function(resolve, reject) {
|
|
768
|
+
s.emit("set_data", payload, function(callback) {
|
|
769
|
+
if (callback.success) {
|
|
770
|
+
console.log("Data saved successfully:", payload);
|
|
771
|
+
console.log("ack", callback);
|
|
772
|
+
resolve(callback);
|
|
773
|
+
} else {
|
|
774
|
+
reject(new Error(callback.message || "Save operation failed"));
|
|
775
|
+
}
|
|
776
|
+
});
|
|
777
|
+
});
|
|
778
|
+
}
|
|
779
|
+
},
|
|
780
|
+
{
|
|
781
|
+
/// get data
|
|
782
|
+
key: "getCollectionData",
|
|
783
|
+
value: function getCollectionData(payload) {
|
|
784
|
+
var s = this.getSocketInstance();
|
|
785
|
+
s.emit("get_data", {
|
|
786
|
+
collection_name: payload.collection_name
|
|
787
|
+
}, function(socketCallback) {
|
|
788
|
+
if (socketCallback.success && socketCallback.data) {
|
|
789
|
+
payload.callback(socketCallback.data);
|
|
790
|
+
} else {
|
|
791
|
+
payload.callback(payload.defaultValue);
|
|
792
|
+
}
|
|
793
|
+
});
|
|
794
|
+
}
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
key: "getDocumentData",
|
|
798
|
+
value: function getDocumentData(payload) {
|
|
799
|
+
var s = this.getSocketInstance();
|
|
800
|
+
s.emit("get_data", {
|
|
801
|
+
collection_name: payload.collection_name,
|
|
802
|
+
key: payload.key
|
|
803
|
+
}, function(socketCallback) {
|
|
804
|
+
if (socketCallback.success && socketCallback.data) {
|
|
805
|
+
payload.callback(socketCallback.data);
|
|
806
|
+
} else {
|
|
807
|
+
payload.callback(payload.defaultValue);
|
|
808
|
+
}
|
|
809
|
+
});
|
|
810
|
+
}
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
/// delete data
|
|
814
|
+
key: "deleteData",
|
|
815
|
+
value: function deleteData(payload) {
|
|
816
|
+
var s = this.getSocketInstance();
|
|
817
|
+
return new Promise(function(resolve, reject) {
|
|
818
|
+
s.emit("delete_data", payload, function(callback) {
|
|
819
|
+
if (callback.success) {
|
|
820
|
+
console.log("Data deleted successfully:", payload);
|
|
821
|
+
console.log("delete ack", callback);
|
|
822
|
+
resolve(callback);
|
|
823
|
+
} else {
|
|
824
|
+
reject(new Error(callback.message || "Delete operation failed"));
|
|
825
|
+
}
|
|
826
|
+
});
|
|
827
|
+
});
|
|
828
|
+
}
|
|
829
|
+
},
|
|
830
|
+
{
|
|
831
|
+
key: "clearAllRedisData",
|
|
832
|
+
value: function clearAllRedisData() {
|
|
833
|
+
var s = this.getSocketInstance();
|
|
834
|
+
return new Promise(function(resolve, reject) {
|
|
835
|
+
s.emit("clear_all_redis_data", function(ack) {
|
|
836
|
+
if (ack.success) {
|
|
837
|
+
resolve(ack);
|
|
838
|
+
} else {
|
|
839
|
+
reject(new Error(ack.message || "Clear all Redis data operation failed"));
|
|
840
|
+
}
|
|
841
|
+
});
|
|
842
|
+
});
|
|
843
|
+
}
|
|
844
|
+
}
|
|
845
|
+
], [
|
|
846
|
+
{
|
|
847
|
+
key: "getInstance",
|
|
848
|
+
value: function getInstance() {
|
|
849
|
+
if (!_SocketService.instance) {
|
|
850
|
+
_SocketService.instance = new _SocketService();
|
|
851
|
+
}
|
|
852
|
+
return _SocketService.instance;
|
|
853
|
+
}
|
|
854
|
+
}
|
|
855
|
+
]);
|
|
856
|
+
return _SocketService;
|
|
857
|
+
}();
|
|
858
|
+
var socketServiceInstance = SocketService.getInstance();
|
|
859
|
+
// src/hooks/global.ts
|
|
860
|
+
var useDocumentTitle = function(title) {
|
|
861
|
+
useEffect(function() {
|
|
862
|
+
document.title = title;
|
|
863
|
+
}, [
|
|
864
|
+
title
|
|
865
|
+
]);
|
|
866
|
+
return null;
|
|
867
|
+
};
|
|
868
|
+
var useSetUserCountry = function(setUserCountry, changLang) {
|
|
869
|
+
useLayoutEffect(function() {
|
|
870
|
+
var currentCountry = localStorage.getItem("userCountry");
|
|
871
|
+
if (!currentCountry) {
|
|
872
|
+
var updateCountry = /*#__PURE__*/ function() {
|
|
873
|
+
var _ref = _async_to_generator(function() {
|
|
874
|
+
var country;
|
|
875
|
+
return _ts_generator(this, function(_state) {
|
|
876
|
+
switch(_state.label){
|
|
877
|
+
case 0:
|
|
878
|
+
return [
|
|
879
|
+
4,
|
|
880
|
+
getUserCountryByIp()
|
|
881
|
+
];
|
|
882
|
+
case 1:
|
|
883
|
+
country = _state.sent();
|
|
884
|
+
changLang(country === CountryOptions2.IL ? "he" : "en");
|
|
885
|
+
setUserCountry(country);
|
|
886
|
+
localStorage.setItem("userCountry", country);
|
|
887
|
+
return [
|
|
888
|
+
2
|
|
889
|
+
];
|
|
890
|
+
}
|
|
891
|
+
});
|
|
892
|
+
});
|
|
893
|
+
return function updateCountry() {
|
|
894
|
+
return _ref.apply(this, arguments);
|
|
895
|
+
};
|
|
896
|
+
}();
|
|
897
|
+
updateCountry();
|
|
898
|
+
}
|
|
899
|
+
}, []);
|
|
900
|
+
return null;
|
|
901
|
+
};
|
|
431
902
|
// src/hooks/react.ts
|
|
432
903
|
import { isEqual as isEqual2 } from "lodash";
|
|
433
|
-
import { useEffect, useMemo, useRef } from "react";
|
|
904
|
+
import { useEffect as useEffect2, useMemo as useMemo2, useRef as useRef2 } from "react";
|
|
434
905
|
function useSafeEffect(callback, dependencies, error_message) {
|
|
435
|
-
|
|
906
|
+
useEffect2(function() {
|
|
436
907
|
try {
|
|
437
908
|
callback();
|
|
438
909
|
} catch (error) {
|
|
@@ -441,37 +912,32 @@ function useSafeEffect(callback, dependencies, error_message) {
|
|
|
441
912
|
}, dependencies);
|
|
442
913
|
}
|
|
443
914
|
var useDeepCompareMemo = function(factory, dependencies) {
|
|
444
|
-
var previousDepsRef =
|
|
915
|
+
var previousDepsRef = useRef2([]);
|
|
445
916
|
if (!isEqual2(dependencies, previousDepsRef.current)) {
|
|
446
917
|
previousDepsRef.current = dependencies;
|
|
447
918
|
}
|
|
448
|
-
return
|
|
919
|
+
return useMemo2(factory, previousDepsRef.current);
|
|
449
920
|
};
|
|
450
921
|
function useDeepCompareEffect(effect, dependencies) {
|
|
451
|
-
var previousDepsRef =
|
|
922
|
+
var previousDepsRef = useRef2();
|
|
452
923
|
if (!isEqual2(previousDepsRef.current, dependencies)) {
|
|
453
924
|
previousDepsRef.current = dependencies;
|
|
454
925
|
}
|
|
455
|
-
|
|
926
|
+
useEffect2(effect, [
|
|
456
927
|
previousDepsRef.current
|
|
457
928
|
]);
|
|
458
929
|
}
|
|
459
|
-
// src/hooks/
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
]);
|
|
466
|
-
return null;
|
|
467
|
-
};
|
|
468
|
-
var useSnapshotBulk = function(configs, label, settings) {
|
|
469
|
-
var snapshotsFirstTime = useRef2([]);
|
|
470
|
-
var unsubscribeFunctions = useRef2([]);
|
|
930
|
+
// src/hooks/WebWorker.ts
|
|
931
|
+
import { useCallback as useCallback2, useEffect as useEffect3, useRef as useRef3 } from "react";
|
|
932
|
+
// src/hooks/snapshots.ts
|
|
933
|
+
import { useEffect as useEffect4, useMemo as useMemo3, useRef as useRef4, useState as useState2 } from "react";
|
|
934
|
+
var useDbSnapshots = function(configs, label, settings) {
|
|
935
|
+
var snapshotsFirstTime = useRef4([]);
|
|
936
|
+
var unsubscribeFunctions = useRef4([]);
|
|
471
937
|
useDeepCompareEffect(function() {
|
|
472
938
|
var start = performance.now();
|
|
473
|
-
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs)) {
|
|
474
|
-
console.log("==> ".concat(label || "
|
|
939
|
+
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs) && configs.length > 0) {
|
|
940
|
+
console.log("==> ".concat(label || "DB snapshots", " started from db... "));
|
|
475
941
|
}
|
|
476
942
|
var snapshotResults = configs.map(function(config) {
|
|
477
943
|
return snapshot(config, snapshotsFirstTime.current, settings);
|
|
@@ -482,8 +948,8 @@ var useSnapshotBulk = function(configs, label, settings) {
|
|
|
482
948
|
Promise.all(snapshotResults.map(function(result) {
|
|
483
949
|
return result.promise;
|
|
484
950
|
})).then(function() {
|
|
485
|
-
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs)) {
|
|
486
|
-
console.log("==> ".concat(label || "
|
|
951
|
+
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs) && configs.length > 0) {
|
|
952
|
+
console.log("==> ".concat(label || "DB snapshots", " ended from db. It took ").concat((performance.now() - start).toFixed(2), " ms"));
|
|
487
953
|
}
|
|
488
954
|
});
|
|
489
955
|
if (settings === null || settings === void 0 ? void 0 : settings.cleanupForConfigChange) {
|
|
@@ -493,8 +959,8 @@ var useSnapshotBulk = function(configs, label, settings) {
|
|
|
493
959
|
unsubscribe();
|
|
494
960
|
}
|
|
495
961
|
});
|
|
496
|
-
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs)) {
|
|
497
|
-
console.log("==> ".concat(label || "
|
|
962
|
+
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs) && configs.length > 0) {
|
|
963
|
+
console.log("==> ".concat(label || "DB snapshots", " unsubscribed from db"));
|
|
498
964
|
}
|
|
499
965
|
};
|
|
500
966
|
}
|
|
@@ -503,7 +969,7 @@ var useSnapshotBulk = function(configs, label, settings) {
|
|
|
503
969
|
label,
|
|
504
970
|
settings
|
|
505
971
|
]);
|
|
506
|
-
|
|
972
|
+
useEffect4(function() {
|
|
507
973
|
return function() {
|
|
508
974
|
unsubscribeFunctions.current.forEach(function(unsubscribe) {
|
|
509
975
|
if (unsubscribe) {
|
|
@@ -511,46 +977,125 @@ var useSnapshotBulk = function(configs, label, settings) {
|
|
|
511
977
|
}
|
|
512
978
|
});
|
|
513
979
|
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs)) {
|
|
514
|
-
console.log("==> ".concat(label || "
|
|
980
|
+
console.log("==> ".concat(label || "DB snapshots", " unsubscribed"));
|
|
515
981
|
}
|
|
516
982
|
};
|
|
517
983
|
}, []);
|
|
518
984
|
};
|
|
519
|
-
var
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
985
|
+
var useSmartSnapshots = function(configs, label, settings) {
|
|
986
|
+
var _useState2 = _sliced_to_array(useState2(null), 2), cacheCollectionsConfig = _useState2[0], setCacheCollectionsConfig = _useState2[1];
|
|
987
|
+
useEffect4(function() {
|
|
988
|
+
get_document_by_id("nx-settings", "cache_collections_config").then(function(res) {
|
|
989
|
+
return setCacheCollectionsConfig(res);
|
|
990
|
+
});
|
|
991
|
+
return function() {
|
|
992
|
+
return setCacheCollectionsConfig(null);
|
|
993
|
+
};
|
|
994
|
+
}, []);
|
|
995
|
+
var groupedConfig = useMemo3(function() {
|
|
996
|
+
if (!cacheCollectionsConfig) {
|
|
997
|
+
return {
|
|
998
|
+
configForDb: [],
|
|
999
|
+
configForCache: []
|
|
1000
|
+
};
|
|
1001
|
+
}
|
|
1002
|
+
var configForDb = [];
|
|
1003
|
+
var configForCache = [];
|
|
1004
|
+
configs.forEach(function(cfg) {
|
|
1005
|
+
var collectionName = cfg.collectionName, _cfg_subscribeTo = cfg.subscribeTo, subscribeTo = _cfg_subscribeTo === void 0 ? "cache" : _cfg_subscribeTo;
|
|
1006
|
+
if (subscribeTo === "cache" && cacheCollectionsConfig[collectionName]) {
|
|
1007
|
+
configForCache.push(cfg);
|
|
1008
|
+
} else {
|
|
1009
|
+
configForDb.push(cfg);
|
|
1010
|
+
}
|
|
1011
|
+
});
|
|
1012
|
+
return {
|
|
1013
|
+
configForDb: configForDb,
|
|
1014
|
+
configForCache: configForCache
|
|
1015
|
+
};
|
|
1016
|
+
}, [
|
|
1017
|
+
configs,
|
|
1018
|
+
cacheCollectionsConfig
|
|
1019
|
+
]);
|
|
1020
|
+
useDbSnapshots(groupedConfig.configForDb, label, settings);
|
|
1021
|
+
var socketConnected = useSocketSnapshots(groupedConfig.configForCache, label, settings).socketConnected;
|
|
1022
|
+
return {
|
|
1023
|
+
groupedConfig: groupedConfig,
|
|
1024
|
+
socketConnected: socketConnected
|
|
1025
|
+
};
|
|
1026
|
+
};
|
|
1027
|
+
var useSocketSnapshots = function(configs, label, settings) {
|
|
1028
|
+
var _auth_currentUser;
|
|
1029
|
+
var _useState2 = _sliced_to_array(useState2(socketServiceInstance.isConnected()), 2), socketConnected = _useState2[0], setSocketConnected = _useState2[1];
|
|
1030
|
+
var _useState21 = _sliced_to_array(useState2([]), 2), cleanupSubscriptions = _useState21[0], setCleanupSubscriptions = _useState21[1];
|
|
1031
|
+
var socketStarted = useRef4(false);
|
|
1032
|
+
useDeepCompareEffect(function() {
|
|
1033
|
+
if (!auth.currentUser) {
|
|
1034
|
+
return;
|
|
549
1035
|
}
|
|
1036
|
+
var subscribe = function() {
|
|
1037
|
+
if (configs.length === 0) {
|
|
1038
|
+
return;
|
|
1039
|
+
}
|
|
1040
|
+
var disposer = socketServiceInstance.subscribeToCollections(configs);
|
|
1041
|
+
setCleanupSubscriptions(function(prev) {
|
|
1042
|
+
return _to_consumable_array(prev).concat([
|
|
1043
|
+
disposer
|
|
1044
|
+
]);
|
|
1045
|
+
});
|
|
1046
|
+
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs)) {
|
|
1047
|
+
console.log("==> ".concat(label || "Cache snapshots", " subscribed to ").concat(configs.map(function(c) {
|
|
1048
|
+
return c.collectionName;
|
|
1049
|
+
}).join(", ")));
|
|
1050
|
+
}
|
|
1051
|
+
};
|
|
1052
|
+
if (socketServiceInstance.isConnected()) {
|
|
1053
|
+
setSocketConnected(true);
|
|
1054
|
+
subscribe();
|
|
1055
|
+
} else if (!socketStarted.current) {
|
|
1056
|
+
socketStarted.current = true;
|
|
1057
|
+
auth.currentUser.getIdToken().then(function(token) {
|
|
1058
|
+
socketServiceInstance.startSession(token);
|
|
1059
|
+
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs)) {
|
|
1060
|
+
console.log("==> ".concat(label || "Cache snapshots", " started... "));
|
|
1061
|
+
}
|
|
1062
|
+
});
|
|
1063
|
+
}
|
|
1064
|
+
var offConnect = socketServiceInstance.onConnect(function() {
|
|
1065
|
+
setSocketConnected(true);
|
|
1066
|
+
socketStarted.current = false;
|
|
1067
|
+
subscribe();
|
|
1068
|
+
});
|
|
1069
|
+
var offDisconnect = socketServiceInstance.onDisconnect(function() {
|
|
1070
|
+
setSocketConnected(false);
|
|
1071
|
+
cleanupSubscriptions.forEach(function(cleanup) {
|
|
1072
|
+
return cleanup();
|
|
1073
|
+
});
|
|
1074
|
+
});
|
|
1075
|
+
return function() {
|
|
1076
|
+
cleanupSubscriptions.forEach(function(cleanup) {
|
|
1077
|
+
return cleanup();
|
|
1078
|
+
});
|
|
1079
|
+
offConnect === null || offConnect === void 0 ? void 0 : offConnect();
|
|
1080
|
+
offDisconnect === null || offDisconnect === void 0 ? void 0 : offDisconnect();
|
|
1081
|
+
if (!(settings === null || settings === void 0 ? void 0 : settings.disableLogs) && configs.length > 0) {
|
|
1082
|
+
console.log("==> ".concat(label || "Cache snapshots", " unsubscribed. "));
|
|
1083
|
+
}
|
|
1084
|
+
};
|
|
1085
|
+
}, [
|
|
1086
|
+
configs,
|
|
1087
|
+
(_auth_currentUser = auth.currentUser) === null || _auth_currentUser === void 0 ? void 0 : _auth_currentUser.uid
|
|
1088
|
+
]);
|
|
1089
|
+
useEffect4(function() {
|
|
1090
|
+
return function() {
|
|
1091
|
+
cleanupSubscriptions.forEach(function(cleanup) {
|
|
1092
|
+
return cleanup();
|
|
1093
|
+
});
|
|
1094
|
+
};
|
|
550
1095
|
}, []);
|
|
551
|
-
return
|
|
1096
|
+
return {
|
|
1097
|
+
socketConnected: socketConnected
|
|
1098
|
+
};
|
|
552
1099
|
};
|
|
553
|
-
|
|
554
|
-
import { useCallback as useCallback2, useEffect as useEffect3, useRef as useRef3 } from "react";
|
|
555
|
-
export { useDeepCompareEffect, useDeepCompareMemo, useDocumentTitle, useSafeEffect, useSetUserCountry, useSnapshotBulk };
|
|
1100
|
+
export { useDbSnapshots, useDeepCompareEffect, useDeepCompareMemo, useDocumentTitle, useSafeEffect, useSetUserCountry, useSmartSnapshots, useSocketSnapshots };
|
|
556
1101
|
//# sourceMappingURL=index.mjs.map
|