akeyless-client-commons 1.0.226 → 1.0.228

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.
@@ -939,6 +939,278 @@ var biDomain = isLocal ? "http://localhost:9002/api/bi" : baseDomain + "/bi";
939
939
  var notificationsDomain = isLocal ? "http://localhost:9006/api/notifications" : baseDomain + "/notifications";
940
940
  var callCenterGeoDomain = isLocal ? "http://localhost:9007/api/call-center/geo" : baseDomain + "/call-center/geo";
941
941
  var callCenterEventsDomain = isLocal ? "http://localhost:9008/api/call-center/events" : baseDomain + "/call-center/events";
942
+ // src/helpers/socket.ts
943
+ import { io } from "socket.io-client";
944
+ var SocketService = /*#__PURE__*/ function() {
945
+ "use strict";
946
+ function _SocketService() {
947
+ _class_call_check(this, _SocketService);
948
+ this.socket = null;
949
+ this.connectCallbacks = [];
950
+ this.disconnectCallbacks = [];
951
+ this.initSocket();
952
+ }
953
+ _create_class(_SocketService, [
954
+ {
955
+ /// Initialize the socket connection
956
+ key: "initSocket",
957
+ value: function initSocket() {
958
+ var _this = this;
959
+ if (!this.socket) {
960
+ var SOCKET_SERVER_URL = "http://localhost:9009";
961
+ var SOCKET_PATH = "/api/data-socket/connect";
962
+ this.socket = io(SOCKET_SERVER_URL, {
963
+ path: SOCKET_PATH,
964
+ transports: [
965
+ "websocket"
966
+ ]
967
+ });
968
+ this.socket.on("connect", function() {
969
+ var _this_socket;
970
+ console.log("Socket connected:", (_this_socket = _this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.id);
971
+ _this.connectCallbacks.forEach(function(cb) {
972
+ return cb();
973
+ });
974
+ });
975
+ this.socket.on("disconnect", function(reason) {
976
+ console.log("Socket disconnected:", reason);
977
+ _this.disconnectCallbacks.forEach(function(cb) {
978
+ return cb();
979
+ });
980
+ });
981
+ this.socket.on("connect_error", function(error) {
982
+ console.error("Socket connection error:", error);
983
+ });
984
+ }
985
+ }
986
+ },
987
+ {
988
+ /// get socket instance
989
+ key: "getSocketInstance",
990
+ value: function getSocketInstance() {
991
+ if (!this.socket) {
992
+ this.initSocket();
993
+ }
994
+ if (!this.socket) {
995
+ throw new Error("Socket not initialized");
996
+ }
997
+ if (!this.socket.connected) {
998
+ this.socket.connect();
999
+ }
1000
+ return this.socket;
1001
+ }
1002
+ },
1003
+ {
1004
+ /// subscribe to collections
1005
+ key: "subscribeToCollections",
1006
+ value: function subscribeToCollections(config) {
1007
+ var s = this.getSocketInstance();
1008
+ var collectionsNames = config.map(function(c) {
1009
+ return c.collectionName;
1010
+ });
1011
+ s.emit("subscribe_collections", collectionsNames, function(callback) {
1012
+ if (callback.success) {
1013
+ console.log("Successfully subscribed to: ".concat(collectionsNames.join(", ")));
1014
+ } else {
1015
+ console.error("Failed to subscribe to ".concat(config.join(", "), ": ").concat(callback.message));
1016
+ }
1017
+ });
1018
+ var eventHandlers = [];
1019
+ config.forEach(function(configuration) {
1020
+ 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;
1021
+ s.on("initial:".concat(collectionName), onFirstTime);
1022
+ eventHandlers.push({
1023
+ eventName: "initial:".concat(collectionName),
1024
+ handler: onFirstTime
1025
+ });
1026
+ s.on("add:".concat(collectionName), onAdd);
1027
+ eventHandlers.push({
1028
+ eventName: "add:".concat(collectionName),
1029
+ handler: onAdd
1030
+ });
1031
+ s.on("update:".concat(collectionName), onModify);
1032
+ eventHandlers.push({
1033
+ eventName: "update:".concat(collectionName),
1034
+ handler: onModify
1035
+ });
1036
+ s.on("delete:".concat(collectionName), onRemove);
1037
+ eventHandlers.push({
1038
+ eventName: "delete:".concat(collectionName),
1039
+ handler: onRemove
1040
+ });
1041
+ extraParsers === null || extraParsers === void 0 ? void 0 : extraParsers.forEach(function(parsers) {
1042
+ var extraOnAdd = parsers.onAdd, extraOnFirstTime = parsers.onFirstTime, extraOnModify = parsers.onModify, extraOnRemove = parsers.onRemove;
1043
+ s.on("initial:".concat(collectionName), extraOnFirstTime);
1044
+ eventHandlers.push({
1045
+ eventName: "initial:".concat(collectionName),
1046
+ handler: extraOnFirstTime
1047
+ });
1048
+ s.on("add:".concat(collectionName), extraOnAdd);
1049
+ eventHandlers.push({
1050
+ eventName: "add:".concat(collectionName),
1051
+ handler: extraOnAdd
1052
+ });
1053
+ s.on("update:".concat(collectionName), extraOnModify);
1054
+ eventHandlers.push({
1055
+ eventName: "update:".concat(collectionName),
1056
+ handler: extraOnModify
1057
+ });
1058
+ s.on("delete:".concat(collectionName), extraOnRemove);
1059
+ eventHandlers.push({
1060
+ eventName: "delete:".concat(collectionName),
1061
+ handler: extraOnRemove
1062
+ });
1063
+ });
1064
+ });
1065
+ return function() {
1066
+ console.log("Cleaning up subscriptions for: ".concat(collectionsNames.join(", ")));
1067
+ s.emit("unsubscribe_collections", collectionsNames);
1068
+ eventHandlers.forEach(function(eh) {
1069
+ s.off(eh.eventName, eh.handler);
1070
+ });
1071
+ };
1072
+ }
1073
+ },
1074
+ {
1075
+ /// set data
1076
+ key: "setData",
1077
+ value: function setData(payload) {
1078
+ var s = this.getSocketInstance();
1079
+ return new Promise(function(resolve, reject) {
1080
+ s.emit("set_data", payload, function(callback) {
1081
+ if (callback.success) {
1082
+ console.log("Data saved successfully:", payload);
1083
+ console.log("ack", callback);
1084
+ resolve(callback);
1085
+ } else {
1086
+ reject(new Error(callback.message || "Save operation failed"));
1087
+ }
1088
+ });
1089
+ });
1090
+ }
1091
+ },
1092
+ {
1093
+ /// get data
1094
+ key: "getCollectionData",
1095
+ value: function getCollectionData(payload) {
1096
+ var s = this.getSocketInstance();
1097
+ s.emit("get_data", {
1098
+ collection_name: payload.collection_name
1099
+ }, function(socketCallback) {
1100
+ if (socketCallback.success && socketCallback.data) {
1101
+ payload.callback(socketCallback.data);
1102
+ } else {
1103
+ payload.callback(payload.defaultValue);
1104
+ }
1105
+ });
1106
+ }
1107
+ },
1108
+ {
1109
+ key: "getDocumentData",
1110
+ value: function getDocumentData(payload) {
1111
+ var s = this.getSocketInstance();
1112
+ s.emit("get_data", {
1113
+ collection_name: payload.collection_name,
1114
+ key: payload.key
1115
+ }, function(socketCallback) {
1116
+ if (socketCallback.success && socketCallback.data) {
1117
+ payload.callback(socketCallback.data);
1118
+ } else {
1119
+ payload.callback(payload.defaultValue);
1120
+ }
1121
+ });
1122
+ }
1123
+ },
1124
+ {
1125
+ /// delete data
1126
+ key: "deleteData",
1127
+ value: function deleteData(payload) {
1128
+ var s = this.getSocketInstance();
1129
+ return new Promise(function(resolve, reject) {
1130
+ s.emit("delete_data", payload, function(callback) {
1131
+ if (callback.success) {
1132
+ console.log("Data deleted successfully:", payload);
1133
+ console.log("delete ack", callback);
1134
+ resolve(callback);
1135
+ } else {
1136
+ reject(new Error(callback.message || "Delete operation failed"));
1137
+ }
1138
+ });
1139
+ });
1140
+ }
1141
+ },
1142
+ {
1143
+ key: "clearAllRedisData",
1144
+ value: function clearAllRedisData() {
1145
+ var s = this.getSocketInstance();
1146
+ return new Promise(function(resolve, reject) {
1147
+ s.emit("clear_all_redis_data", function(ack) {
1148
+ if (ack.success) {
1149
+ resolve(ack);
1150
+ } else {
1151
+ reject(new Error(ack.message || "Clear all Redis data operation failed"));
1152
+ }
1153
+ });
1154
+ });
1155
+ }
1156
+ },
1157
+ {
1158
+ /// connection management methods
1159
+ key: "onConnect",
1160
+ value: function onConnect(callback) {
1161
+ var _this_socket;
1162
+ this.connectCallbacks.push(callback);
1163
+ if ((_this_socket = this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.connected) {
1164
+ callback();
1165
+ }
1166
+ }
1167
+ },
1168
+ {
1169
+ key: "offConnect",
1170
+ value: function offConnect(callback) {
1171
+ this.connectCallbacks = this.connectCallbacks.filter(function(cb) {
1172
+ return cb !== callback;
1173
+ });
1174
+ }
1175
+ },
1176
+ {
1177
+ key: "onDisconnect",
1178
+ value: function onDisconnect(callback) {
1179
+ this.disconnectCallbacks.push(callback);
1180
+ if (this.socket && !this.socket.connected) {
1181
+ callback();
1182
+ }
1183
+ }
1184
+ },
1185
+ {
1186
+ key: "offDisconnect",
1187
+ value: function offDisconnect(callback) {
1188
+ this.disconnectCallbacks = this.disconnectCallbacks.filter(function(cb) {
1189
+ return cb !== callback;
1190
+ });
1191
+ }
1192
+ },
1193
+ {
1194
+ key: "isConnected",
1195
+ value: function isConnected() {
1196
+ var _this_socket;
1197
+ return ((_this_socket = this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.connected) || false;
1198
+ }
1199
+ }
1200
+ ], [
1201
+ {
1202
+ key: "getInstance",
1203
+ value: function getInstance() {
1204
+ if (!_SocketService.instance) {
1205
+ _SocketService.instance = new _SocketService();
1206
+ }
1207
+ return _SocketService.instance;
1208
+ }
1209
+ }
1210
+ ]);
1211
+ return _SocketService;
1212
+ }();
1213
+ var socketServiceInstance = SocketService.getInstance();
942
1214
  // src/components/utils/Checkboxes.tsx
943
1215
  import { useEffect, useState } from "react";
944
1216
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1483,7 +1755,6 @@ var TableProvider = function(props) {
1483
1755
  exportToExcelKeys = props.exportToExcelKeys, dataToAddToExcelTable = props.dataToAddToExcelTable, _props_exportExcelTitle = props.exportExcelTitle, exportExcelTitle = _props_exportExcelTitle === void 0 ? "Export to excel" : _props_exportExcelTitle, excelFileName = props.excelFileName, // summary
1484
1756
  sumColumns = props.sumColumns, _props_summaryLabel = props.summaryLabel, summaryLabel = _props_summaryLabel === void 0 ? "" : _props_summaryLabel, _props_summaryContainerStyle = props.summaryContainerStyle, summaryContainerStyle = _props_summaryContainerStyle === void 0 ? {} : _props_summaryContainerStyle, _props_summaryLabelStyle = props.summaryLabelStyle, summaryLabelStyle = _props_summaryLabelStyle === void 0 ? {} : _props_summaryLabelStyle, _props_summaryRowStyle = props.summaryRowStyle, summaryRowStyle = _props_summaryRowStyle === void 0 ? {} : _props_summaryRowStyle, _props_maxRows = props.// max rows
1485
1757
  maxRows, maxRows = _props_maxRows === void 0 ? data.length : _props_maxRows, _props_noneSearchKeys = props.noneSearchKeys, noneSearchKeys = _props_noneSearchKeys === void 0 ? [] : _props_noneSearchKeys, showDisplayAllRowsButton = props.showDisplayAllRowsButton;
1486
- var normalizedNoneSearchKeys = noneSearchKeys || [];
1487
1758
  var _useSort = useSort(), sortColumn = _useSort.sortColumn, sortOrder = _useSort.sortOrder, handleSort = _useSort.handleSort, clearSort = _useSort.clearSort;
1488
1759
  var _useDisplayToggle = useDisplayToggle(), displayAllRows = _useDisplayToggle.displayAllRows, setDisplayAllRows = _useDisplayToggle.setDisplayAllRows;
1489
1760
  var _useSearch = useSearch(), searchQuery = _useSearch.searchQuery, handleSearch = _useSearch.handleSearch, debouncedSearchQuery = _useSearch.debouncedSearchQuery;
@@ -1509,7 +1780,7 @@ var TableProvider = function(props) {
1509
1780
  };
1510
1781
  var normalizedSearchQuery = cleanString(debouncedSearchQuery);
1511
1782
  var keys = allKeys.filter(function(val) {
1512
- return !normalizedNoneSearchKeys.includes(val);
1783
+ return !noneSearchKeys.includes(val);
1513
1784
  });
1514
1785
  filtered = data.filter(function(item) {
1515
1786
  return keys.some(function(key) {
@@ -1517,8 +1788,9 @@ var TableProvider = function(props) {
1517
1788
  });
1518
1789
  });
1519
1790
  }
1520
- if (filterableColumns.length > 0 && filterPopupsDisplay !== "") {
1521
- console.log("filtering ...");
1791
+ if (filterableColumns.length > 0 && Object.values(filters).some(function(arr) {
1792
+ return Array.isArray(arr) && arr.length > 0;
1793
+ })) {
1522
1794
  Object.keys(filters).forEach(function(key) {
1523
1795
  if (filters[key].length > 0) {
1524
1796
  filtered = filtered.filter(function(item) {
@@ -1549,7 +1821,7 @@ var TableProvider = function(props) {
1549
1821
  filters,
1550
1822
  data,
1551
1823
  displayAllRows,
1552
- normalizedNoneSearchKeys,
1824
+ noneSearchKeys,
1553
1825
  filterableColumns,
1554
1826
  filterPopupsDisplay
1555
1827
  ]);
@@ -3481,14 +3753,14 @@ function rectsAreEqual(a, b) {
3481
3753
  return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
3482
3754
  }
3483
3755
  function observeMove(element, onMove) {
3484
- var io = null;
3756
+ var io2 = null;
3485
3757
  var timeoutId;
3486
3758
  var root = getDocumentElement(element);
3487
3759
  function cleanup() {
3488
3760
  var _io;
3489
3761
  clearTimeout(timeoutId);
3490
- (_io = io) == null || _io.disconnect();
3491
- io = null;
3762
+ (_io = io2) == null || _io.disconnect();
3763
+ io2 = null;
3492
3764
  }
3493
3765
  function refresh(skip, threshold) {
3494
3766
  if (skip === void 0) {
@@ -3536,14 +3808,14 @@ function observeMove(element, onMove) {
3536
3808
  isFirstUpdate = false;
3537
3809
  }
3538
3810
  try {
3539
- io = new IntersectionObserver(handleObserve, _object_spread_props(_object_spread({}, options), {
3811
+ io2 = new IntersectionObserver(handleObserve, _object_spread_props(_object_spread({}, options), {
3540
3812
  // Handle <iframe>s
3541
3813
  root: root.ownerDocument
3542
3814
  }));
3543
3815
  } catch (e) {
3544
- io = new IntersectionObserver(handleObserve, options);
3816
+ io2 = new IntersectionObserver(handleObserve, options);
3545
3817
  }
3546
- io.observe(element);
3818
+ io2.observe(element);
3547
3819
  }
3548
3820
  refresh(true);
3549
3821
  return cleanup;
@@ -3,7 +3,7 @@ import { FirebaseStorage } from 'firebase/storage';
3
3
  import { Auth, GoogleAuthProvider, User } from 'firebase/auth';
4
4
  import { AppCheck } from 'firebase/app-check';
5
5
  import { WhereFilterOp, Unsubscribe, Firestore, CollectionReference, DocumentData, Timestamp, DocumentSnapshot } from 'firebase/firestore';
6
- import { TObject, NxUser, CountryOptions, LanguageOptions, UserPermissionsObject, userPermissionsObjectValue, Client } from 'akeyless-types-commons';
6
+ import { TObject, NxUser, CountryOptions, LanguageOptions, UserPermissionsObject, userPermissionsObjectValue, Client, RedisUpdateType, RedisUpdatePayload, SocketCallbackResponse } from 'akeyless-types-commons';
7
7
  import React, { Dispatch, SetStateAction } from 'react';
8
8
  import { ClassValue } from 'clsx';
9
9
 
@@ -249,4 +249,36 @@ declare const initializeUserPermissions: ({ phoneNumber, email, firstTimeArray,
249
249
  permissions: TObject<TObject<boolean>>;
250
250
  }>;
251
251
 
252
- export { type ValidationType, addAuditRecord, addLoginAudit, add_document, addressRegex, akeylessOnlineDomain, app, appCheck, auth, baseDomain, biDomain, calculateBearing, callCenterEventsDomain, callCenterGeoDomain, carsRegex, chartsRegex, checkUserPermissions, cleanNxSites, cn, collections, colorRegex, createSelectors, db, delete_document, devicesDomain, displayFormatPhoneNumber, emailRegex, extractAlertsData, extractBoardsData, extractCanbusData, extractCarsData, extractClientData, extractLocationData, extractSiteData, fire_base_TIME_TEMP, formatCarNumber, getAddressByGeo, getFixedNumber, getFormCheckboxValue, getFormElementValue, getLocationUrl, getUserByEmail, getUserByIdentifier, getUserByPhone, getUserCountryByIp, get_all_documents, get_document_by_id, get_international_phone_number, googleLoginProvider, handleChange, handleInvalid, handlePaste, initializeUserPermissions, international_israel_phone_format, isInternational, isInternationalIsraelPhone, isLocal, isNodeEnv, is_iccid, local_israel_phone_format, mode, multiStringFormat, notificationsDomain, numbersOnlyRegex, numbersRegex, nxApiCall, parseMultiSelectInput, parsePermissions, parseSnapshotAsArray, priceRegex, propsAreEqual, query_document, query_document_by_conditions, query_documents, query_documents_by_conditions, renderOnce, setFormElementValue, setState, set_document, simpleExtractData, snapshot, snapshotDocument, sort_by_timestamp, storage, textNumbersRegex, textRegex, timestamp_to_millis, timestamp_to_string, useLoginWithGoogle, useStoreValues, useValidation, userNameFormat, validateAndCast, validateUserStatusAndPermissions };
252
+ interface GetDataPayload<T = any> {
253
+ key: string;
254
+ collection_name: string;
255
+ callback: (value: T) => void;
256
+ defaultValue: T;
257
+ }
258
+ declare class SocketService {
259
+ private static instance;
260
+ private socket;
261
+ private connectCallbacks;
262
+ private disconnectCallbacks;
263
+ private initSocket;
264
+ private constructor();
265
+ static getInstance(): SocketService;
266
+ private getSocketInstance;
267
+ subscribeToCollections(config: OnSnapshotConfig[]): () => void;
268
+ setData<UpdateType extends RedisUpdateType, DataType = any>(payload: RedisUpdatePayload<UpdateType, DataType>): Promise<SocketCallbackResponse>;
269
+ getCollectionData<T>(payload: Omit<GetDataPayload<T>, "key">): void;
270
+ getDocumentData<T>(payload: GetDataPayload<T>): void;
271
+ deleteData(payload: {
272
+ key: string;
273
+ collection_name: string;
274
+ }): Promise<SocketCallbackResponse>;
275
+ clearAllRedisData(): Promise<SocketCallbackResponse>;
276
+ onConnect(callback: () => void): void;
277
+ offConnect(callback: () => void): void;
278
+ onDisconnect(callback: () => void): void;
279
+ offDisconnect(callback: () => void): void;
280
+ isConnected(): boolean;
281
+ }
282
+ declare const socketServiceInstance: SocketService;
283
+
284
+ export { type ValidationType, addAuditRecord, addLoginAudit, add_document, addressRegex, akeylessOnlineDomain, app, appCheck, auth, baseDomain, biDomain, calculateBearing, callCenterEventsDomain, callCenterGeoDomain, carsRegex, chartsRegex, checkUserPermissions, cleanNxSites, cn, collections, colorRegex, createSelectors, db, delete_document, devicesDomain, displayFormatPhoneNumber, emailRegex, extractAlertsData, extractBoardsData, extractCanbusData, extractCarsData, extractClientData, extractLocationData, extractSiteData, fire_base_TIME_TEMP, formatCarNumber, getAddressByGeo, getFixedNumber, getFormCheckboxValue, getFormElementValue, getLocationUrl, getUserByEmail, getUserByIdentifier, getUserByPhone, getUserCountryByIp, get_all_documents, get_document_by_id, get_international_phone_number, googleLoginProvider, handleChange, handleInvalid, handlePaste, initializeUserPermissions, international_israel_phone_format, isInternational, isInternationalIsraelPhone, isLocal, isNodeEnv, is_iccid, local_israel_phone_format, mode, multiStringFormat, notificationsDomain, numbersOnlyRegex, numbersRegex, nxApiCall, parseMultiSelectInput, parsePermissions, parseSnapshotAsArray, priceRegex, propsAreEqual, query_document, query_document_by_conditions, query_documents, query_documents_by_conditions, renderOnce, setFormElementValue, setState, set_document, simpleExtractData, snapshot, snapshotDocument, socketServiceInstance, sort_by_timestamp, storage, textNumbersRegex, textRegex, timestamp_to_millis, timestamp_to_string, useLoginWithGoogle, useStoreValues, useValidation, userNameFormat, validateAndCast, validateUserStatusAndPermissions };
@@ -3,7 +3,7 @@ import { FirebaseStorage } from 'firebase/storage';
3
3
  import { Auth, GoogleAuthProvider, User } from 'firebase/auth';
4
4
  import { AppCheck } from 'firebase/app-check';
5
5
  import { WhereFilterOp, Unsubscribe, Firestore, CollectionReference, DocumentData, Timestamp, DocumentSnapshot } from 'firebase/firestore';
6
- import { TObject, NxUser, CountryOptions, LanguageOptions, UserPermissionsObject, userPermissionsObjectValue, Client } from 'akeyless-types-commons';
6
+ import { TObject, NxUser, CountryOptions, LanguageOptions, UserPermissionsObject, userPermissionsObjectValue, Client, RedisUpdateType, RedisUpdatePayload, SocketCallbackResponse } from 'akeyless-types-commons';
7
7
  import React, { Dispatch, SetStateAction } from 'react';
8
8
  import { ClassValue } from 'clsx';
9
9
 
@@ -249,4 +249,36 @@ declare const initializeUserPermissions: ({ phoneNumber, email, firstTimeArray,
249
249
  permissions: TObject<TObject<boolean>>;
250
250
  }>;
251
251
 
252
- export { type ValidationType, addAuditRecord, addLoginAudit, add_document, addressRegex, akeylessOnlineDomain, app, appCheck, auth, baseDomain, biDomain, calculateBearing, callCenterEventsDomain, callCenterGeoDomain, carsRegex, chartsRegex, checkUserPermissions, cleanNxSites, cn, collections, colorRegex, createSelectors, db, delete_document, devicesDomain, displayFormatPhoneNumber, emailRegex, extractAlertsData, extractBoardsData, extractCanbusData, extractCarsData, extractClientData, extractLocationData, extractSiteData, fire_base_TIME_TEMP, formatCarNumber, getAddressByGeo, getFixedNumber, getFormCheckboxValue, getFormElementValue, getLocationUrl, getUserByEmail, getUserByIdentifier, getUserByPhone, getUserCountryByIp, get_all_documents, get_document_by_id, get_international_phone_number, googleLoginProvider, handleChange, handleInvalid, handlePaste, initializeUserPermissions, international_israel_phone_format, isInternational, isInternationalIsraelPhone, isLocal, isNodeEnv, is_iccid, local_israel_phone_format, mode, multiStringFormat, notificationsDomain, numbersOnlyRegex, numbersRegex, nxApiCall, parseMultiSelectInput, parsePermissions, parseSnapshotAsArray, priceRegex, propsAreEqual, query_document, query_document_by_conditions, query_documents, query_documents_by_conditions, renderOnce, setFormElementValue, setState, set_document, simpleExtractData, snapshot, snapshotDocument, sort_by_timestamp, storage, textNumbersRegex, textRegex, timestamp_to_millis, timestamp_to_string, useLoginWithGoogle, useStoreValues, useValidation, userNameFormat, validateAndCast, validateUserStatusAndPermissions };
252
+ interface GetDataPayload<T = any> {
253
+ key: string;
254
+ collection_name: string;
255
+ callback: (value: T) => void;
256
+ defaultValue: T;
257
+ }
258
+ declare class SocketService {
259
+ private static instance;
260
+ private socket;
261
+ private connectCallbacks;
262
+ private disconnectCallbacks;
263
+ private initSocket;
264
+ private constructor();
265
+ static getInstance(): SocketService;
266
+ private getSocketInstance;
267
+ subscribeToCollections(config: OnSnapshotConfig[]): () => void;
268
+ setData<UpdateType extends RedisUpdateType, DataType = any>(payload: RedisUpdatePayload<UpdateType, DataType>): Promise<SocketCallbackResponse>;
269
+ getCollectionData<T>(payload: Omit<GetDataPayload<T>, "key">): void;
270
+ getDocumentData<T>(payload: GetDataPayload<T>): void;
271
+ deleteData(payload: {
272
+ key: string;
273
+ collection_name: string;
274
+ }): Promise<SocketCallbackResponse>;
275
+ clearAllRedisData(): Promise<SocketCallbackResponse>;
276
+ onConnect(callback: () => void): void;
277
+ offConnect(callback: () => void): void;
278
+ onDisconnect(callback: () => void): void;
279
+ offDisconnect(callback: () => void): void;
280
+ isConnected(): boolean;
281
+ }
282
+ declare const socketServiceInstance: SocketService;
283
+
284
+ export { type ValidationType, addAuditRecord, addLoginAudit, add_document, addressRegex, akeylessOnlineDomain, app, appCheck, auth, baseDomain, biDomain, calculateBearing, callCenterEventsDomain, callCenterGeoDomain, carsRegex, chartsRegex, checkUserPermissions, cleanNxSites, cn, collections, colorRegex, createSelectors, db, delete_document, devicesDomain, displayFormatPhoneNumber, emailRegex, extractAlertsData, extractBoardsData, extractCanbusData, extractCarsData, extractClientData, extractLocationData, extractSiteData, fire_base_TIME_TEMP, formatCarNumber, getAddressByGeo, getFixedNumber, getFormCheckboxValue, getFormElementValue, getLocationUrl, getUserByEmail, getUserByIdentifier, getUserByPhone, getUserCountryByIp, get_all_documents, get_document_by_id, get_international_phone_number, googleLoginProvider, handleChange, handleInvalid, handlePaste, initializeUserPermissions, international_israel_phone_format, isInternational, isInternationalIsraelPhone, isLocal, isNodeEnv, is_iccid, local_israel_phone_format, mode, multiStringFormat, notificationsDomain, numbersOnlyRegex, numbersRegex, nxApiCall, parseMultiSelectInput, parsePermissions, parseSnapshotAsArray, priceRegex, propsAreEqual, query_document, query_document_by_conditions, query_documents, query_documents_by_conditions, renderOnce, setFormElementValue, setState, set_document, simpleExtractData, snapshot, snapshotDocument, socketServiceInstance, sort_by_timestamp, storage, textNumbersRegex, textRegex, timestamp_to_millis, timestamp_to_string, useLoginWithGoogle, useStoreValues, useValidation, userNameFormat, validateAndCast, validateUserStatusAndPermissions };