@mgarlik/datastore 0.1.17 → 0.1.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +7 -83
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +7 -83
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -932,34 +932,27 @@ var DataStoreProvider = forwardRef(
|
|
|
932
932
|
if (resolvedLocale) {
|
|
933
933
|
axios2.defaults.headers.common["Accept-Language"] = resolvedLocale;
|
|
934
934
|
}
|
|
935
|
-
systemLog("dsp", "[INIT] Axios baseURL:", restServer);
|
|
936
935
|
async function checkServer() {
|
|
937
936
|
try {
|
|
938
937
|
const response = await axios2.head("/", {
|
|
939
938
|
timeout: 7e3,
|
|
940
939
|
validateStatus: () => true
|
|
941
940
|
});
|
|
942
|
-
systemLog("dsp", "[INIT] Axios Success, status:", response.status);
|
|
943
941
|
} catch (e) {
|
|
944
942
|
if (axios2.isAxiosError(e)) {
|
|
945
|
-
systemLog("dsp", "[INIT] Axios Error:", e.code ?? "UNKNOWN", e.message);
|
|
946
943
|
} else {
|
|
947
|
-
systemLog("dsp", "[INIT] Axios Error:", String(e));
|
|
948
944
|
}
|
|
949
945
|
} finally {
|
|
950
|
-
systemLog("dsp", "[INIT] Axios check done");
|
|
951
946
|
}
|
|
952
947
|
}
|
|
953
948
|
checkServer();
|
|
954
949
|
}, [locale, restServer]);
|
|
955
950
|
useEffect(() => {
|
|
956
951
|
if (usePersistentStorage && !storage) {
|
|
957
|
-
systemLog("dsp", "[INIT] Persistence is enabled but no storage adapter was provided.");
|
|
958
952
|
}
|
|
959
953
|
}, [persistenceStorage, storage, usePersistentStorage]);
|
|
960
954
|
const socketRoomHandlersRef = useRef({});
|
|
961
955
|
const socketActionHandlersRef = useRef({});
|
|
962
|
-
systemLog("dsp", "START");
|
|
963
956
|
const socket = useMemo(() => ioSockets(socketServer?.url, socketServer?.params), [socketServer?.url, socketServer.params]);
|
|
964
957
|
const handleSocketConnect = useCallback(() => setIsLive(true), []);
|
|
965
958
|
const handleSocketDisconnect = useCallback(() => setIsLive(false), []);
|
|
@@ -1061,21 +1054,17 @@ var DataStoreProvider = forwardRef(
|
|
|
1061
1054
|
}
|
|
1062
1055
|
} finally {
|
|
1063
1056
|
setIsSynchronizing(false);
|
|
1064
|
-
systemLog("dsp", "[synchronizeDataStore] Hotovo:", stats);
|
|
1065
1057
|
}
|
|
1066
1058
|
}, [providers]);
|
|
1067
1059
|
useEffect(() => {
|
|
1068
1060
|
if (isLive) {
|
|
1069
|
-
systemLog("dsp", "useEffect[isLive] Sockets: ", JSON.stringify(sockets, null, 2));
|
|
1070
1061
|
const roomsToJoin = Object.entries(sockets).flatMap(
|
|
1071
1062
|
([roomName, socketItem]) => socketItem.filters.map(({ filter }) => ({ room: roomName, filter }))
|
|
1072
1063
|
);
|
|
1073
1064
|
console.log("Sokety pro p\u0159ipojen\xED:", roomsToJoin);
|
|
1074
|
-
systemLog("dsp", "useEffect[isLive] registruji", roomsToJoin);
|
|
1075
1065
|
if (roomsToJoin.length > 0) socket.emit("joinRooms", roomsToJoin);
|
|
1076
1066
|
if (!didInitialLiveSyncRef.current) {
|
|
1077
1067
|
didInitialLiveSyncRef.current = true;
|
|
1078
|
-
systemLog("dsp", "useEffect[isLive] Zacinam synchronizovat");
|
|
1079
1068
|
synchronizeDataStore();
|
|
1080
1069
|
}
|
|
1081
1070
|
} else {
|
|
@@ -1110,7 +1099,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1110
1099
|
socket.connect();
|
|
1111
1100
|
}, [socket, socketServer?.params?.auth, getSocketAuthToken]);
|
|
1112
1101
|
const stopSockets = useCallback(() => {
|
|
1113
|
-
systemLog("dsp", "[DSP] ODPOJUJI LIVE SOCKETS");
|
|
1114
1102
|
socket.disconnect();
|
|
1115
1103
|
}, [socket]);
|
|
1116
1104
|
const resetDataStore = useCallback(async () => {
|
|
@@ -1146,7 +1134,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1146
1134
|
[persistenceStorage, presetProviders, usePersistentStorage]
|
|
1147
1135
|
);
|
|
1148
1136
|
const dispatch = useCallback((action, data, callback) => {
|
|
1149
|
-
systemLog("dsp", "[DSP] DISPATCH Ukladam akci", action, ",", data);
|
|
1150
1137
|
setDispatcher((prev) => ({
|
|
1151
1138
|
isBussy: prev.isBussy,
|
|
1152
1139
|
actions: [...prev.actions, { action, data, callback }]
|
|
@@ -1173,7 +1160,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1173
1160
|
async function processDispatcher() {
|
|
1174
1161
|
if (dispatcher.actions.length > 0) {
|
|
1175
1162
|
let result;
|
|
1176
|
-
systemLog("dsp", "[DSP] DISPATCHER Zpracovavam", dispatcher.actions[0].action);
|
|
1177
1163
|
const timeCode = uuid();
|
|
1178
1164
|
console.time(`Dispatcher ${dispatcher.actions[0].action} ${timeCode}`);
|
|
1179
1165
|
setDispatcher((prev) => ({ ...prev, isBussy: true }));
|
|
@@ -1229,10 +1215,8 @@ var DataStoreProvider = forwardRef(
|
|
|
1229
1215
|
documents: uDocuments,
|
|
1230
1216
|
mode = "update"
|
|
1231
1217
|
}) => {
|
|
1232
|
-
systemLog("dsp", "[DSP] updateDocuments updatuji model:", model, "Documents:", Object.keys(uDocuments).length);
|
|
1233
1218
|
const modelProvider = providers[model];
|
|
1234
1219
|
if (!modelProvider) {
|
|
1235
|
-
systemLog("dsp", "[DSP] updateDocuments - provider neexistuje:", model);
|
|
1236
1220
|
return;
|
|
1237
1221
|
}
|
|
1238
1222
|
let data = [...modelProvider.data || []];
|
|
@@ -1246,7 +1230,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1246
1230
|
const { id, ...doc } = document;
|
|
1247
1231
|
switch (mode) {
|
|
1248
1232
|
case "replace":
|
|
1249
|
-
systemLog("dsp", "updateDocuments - replace", id);
|
|
1250
1233
|
newDocs[id] = doc;
|
|
1251
1234
|
if (doc._deleted) {
|
|
1252
1235
|
data = data.filter((d) => d !== id);
|
|
@@ -1260,17 +1243,14 @@ var DataStoreProvider = forwardRef(
|
|
|
1260
1243
|
case "update":
|
|
1261
1244
|
default:
|
|
1262
1245
|
if (!newDocs[id]) {
|
|
1263
|
-
systemLog("dsp", "updateDocuments - vytvarim", id);
|
|
1264
1246
|
data.push(id);
|
|
1265
1247
|
newDocs[id] = mergeWithNullDeletion(void 0, doc);
|
|
1266
1248
|
documentsToPersist.push({ id, data: newDocs[id] });
|
|
1267
1249
|
} else if (doc._deleted) {
|
|
1268
|
-
systemLog("dsp", "updateDocuments - mazu", id);
|
|
1269
1250
|
data = data.filter((d) => d !== id);
|
|
1270
1251
|
documentIdsToDelete.push(id);
|
|
1271
1252
|
delete newDocs[id];
|
|
1272
1253
|
} else {
|
|
1273
|
-
systemLog("dsp", "updateDocuments - updatuji", id);
|
|
1274
1254
|
newDocs[id] = mergeWithNullDeletion(newDocs[id], doc);
|
|
1275
1255
|
documentsToPersist.push({ id, data: newDocs[id] });
|
|
1276
1256
|
}
|
|
@@ -1337,15 +1317,11 @@ var DataStoreProvider = forwardRef(
|
|
|
1337
1317
|
);
|
|
1338
1318
|
const updateDocument = useCallback(
|
|
1339
1319
|
async ({ documentId, model, fields, data: pData }) => {
|
|
1340
|
-
systemLog("dsp", "[updateDocument]:", documentId, ", model:", model);
|
|
1341
1320
|
let data = pData;
|
|
1342
1321
|
if (typeof pData === "function") data = pData(documents[documentId]);
|
|
1343
1322
|
const dataWithDocumentId = data && typeof data === "object" && !Array.isArray(data) ? { ...data, id: data.id ?? documentId } : { id: documentId };
|
|
1344
1323
|
if (fields) {
|
|
1345
|
-
systemLog("dsp", "[updateDocument] Stahovani ", model, ", document: ", documentId, ", fields: ", fields);
|
|
1346
|
-
systemLog("dsp", "[updateDocument] Providers: ", Object.keys(providers));
|
|
1347
1324
|
const provider = presetProviders[model];
|
|
1348
|
-
systemLog("dsp", "[updateDocument]", provider);
|
|
1349
1325
|
let dP = renderJSONTemplate(presetProviders[model], buildDocumentTemplateParams(model, documentId));
|
|
1350
1326
|
if (dP) {
|
|
1351
1327
|
const dataFromSource = await getData({
|
|
@@ -1355,7 +1331,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1355
1331
|
schema: dP.schema,
|
|
1356
1332
|
SQLite: persistenceStorage || void 0
|
|
1357
1333
|
});
|
|
1358
|
-
systemLog("dsp", "[updateDocument] DATA: ", dataFromSource);
|
|
1359
1334
|
data = dataFromSource;
|
|
1360
1335
|
}
|
|
1361
1336
|
}
|
|
@@ -1366,7 +1341,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1366
1341
|
var isProvidersUpdated = false;
|
|
1367
1342
|
const rand = uuid();
|
|
1368
1343
|
setProviders((prev) => {
|
|
1369
|
-
systemLog("dsp", "[updateDocument] setProviders", rand);
|
|
1370
1344
|
console.time("[DSP UPDATE PROVIDERS INSIDE]");
|
|
1371
1345
|
var newProviders = { ...prev };
|
|
1372
1346
|
Object.keys(newProviders).forEach((key) => {
|
|
@@ -1379,7 +1353,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1379
1353
|
if (socketListeners.length === 0) {
|
|
1380
1354
|
if (providerNext.data.includes(documentId)) {
|
|
1381
1355
|
if (!providerNext.dataSource?.filter || filterDocuments(documentForFilter, providerNext.dataSource?.filter)) {
|
|
1382
|
-
systemLog("dsp", "[updateDocument] - zustava v Provider bez Listeners:", key);
|
|
1383
1356
|
listeningProviders++;
|
|
1384
1357
|
providerNext.lastUpdate = {
|
|
1385
1358
|
id: uuid(),
|
|
@@ -1411,7 +1384,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1411
1384
|
}
|
|
1412
1385
|
} else {
|
|
1413
1386
|
if (providerNext.data.includes(documentId)) {
|
|
1414
|
-
systemLog("dsp", "[updateDocument] - mazu:", key);
|
|
1415
1387
|
providerNext.data = providerNext.data.filter((item) => item !== documentId);
|
|
1416
1388
|
isProvidersUpdated = true;
|
|
1417
1389
|
providerNext.lastUpdate = {
|
|
@@ -1449,12 +1421,9 @@ var DataStoreProvider = forwardRef(
|
|
|
1449
1421
|
return prev2;
|
|
1450
1422
|
});
|
|
1451
1423
|
console.timeEnd("[DSP UPDATE DOCUMENTS OUTSIDE]");
|
|
1452
|
-
systemLog("dsp", "OUTSIDE", documentId);
|
|
1453
1424
|
return newProviders;
|
|
1454
1425
|
});
|
|
1455
|
-
systemLog("dsp", "updateDocument - meni se pocet naslouchajicich Provideru ?", isProvidersUpdated ? "true" : "false");
|
|
1456
1426
|
if (isProvidersUpdated) {
|
|
1457
|
-
systemLog("dsp", "updateDocument - menim counterDocuments pro", listeningProviders, "Providers");
|
|
1458
1427
|
setCounterDocuments((prev) => {
|
|
1459
1428
|
if (listeningProviders === 0) {
|
|
1460
1429
|
const newD = { ...prev };
|
|
@@ -1465,7 +1434,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1465
1434
|
}
|
|
1466
1435
|
});
|
|
1467
1436
|
} else {
|
|
1468
|
-
systemLog("dsp", "updateDocument - nemenim counterDocuments. Dokument zustava v", listeningProviders, "Providers");
|
|
1469
1437
|
}
|
|
1470
1438
|
if (providers[model]?.isPersisting && persistenceStorage) {
|
|
1471
1439
|
if (listeningProviders > 0) {
|
|
@@ -1495,7 +1463,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1495
1463
|
const updateDataStore = useCallback(
|
|
1496
1464
|
async ({ id, documentId, params, variant, data }) => {
|
|
1497
1465
|
if (!providers[id]) {
|
|
1498
|
-
systemLog("dsp", "[updateDataStore] Provider neexistuje:", id);
|
|
1499
1466
|
return;
|
|
1500
1467
|
}
|
|
1501
1468
|
if (!providers[id].dataSource?.uri && !providers[id].dataSource?.crud) {
|
|
@@ -1504,15 +1471,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1504
1471
|
} else updateDocument({ documentId, model: id, data });
|
|
1505
1472
|
return true;
|
|
1506
1473
|
}
|
|
1507
|
-
systemLog(
|
|
1508
|
-
"dsp",
|
|
1509
|
-
"[updateDataStore] Posilam patchData: ",
|
|
1510
|
-
id,
|
|
1511
|
-
",\n params: ",
|
|
1512
|
-
JSON.stringify(params, null, 2),
|
|
1513
|
-
"\n data: ",
|
|
1514
|
-
JSON.stringify(data, null, 2)
|
|
1515
|
-
);
|
|
1516
1474
|
const result = await patchData({
|
|
1517
1475
|
dataSource: renderJSONTemplate(providers[id].dataSource, params),
|
|
1518
1476
|
variant,
|
|
@@ -1521,10 +1479,8 @@ var DataStoreProvider = forwardRef(
|
|
|
1521
1479
|
if (typeof result === "object") {
|
|
1522
1480
|
const { id: rDocumentId, ...document } = result;
|
|
1523
1481
|
if (!isLive) {
|
|
1524
|
-
systemLog("dsp", "[updateDataStore] UPDATE DATA STORE RESULT: ", result);
|
|
1525
1482
|
updateDocument({ documentId: rDocumentId, model: id, data: document });
|
|
1526
1483
|
} else {
|
|
1527
|
-
systemLog("dsp", "[updateDataStore] Updatuje Socket");
|
|
1528
1484
|
}
|
|
1529
1485
|
}
|
|
1530
1486
|
return result;
|
|
@@ -1586,13 +1542,10 @@ var DataStoreProvider = forwardRef(
|
|
|
1586
1542
|
const deleteDocument = useCallback(
|
|
1587
1543
|
async ({ documentId }) => {
|
|
1588
1544
|
console.log("Mazani dokumentu ", documentId);
|
|
1589
|
-
systemLog("dsp", `[deleteDocument] Mazu document ${documentId}}`);
|
|
1590
1545
|
await removePersistedDocument(documentId);
|
|
1591
1546
|
setDocuments((prev) => {
|
|
1592
1547
|
const newDocs = { ...prev };
|
|
1593
|
-
systemLog("dsp", "[deleteDocument] MAZU ", documentId, " z ", newDocs);
|
|
1594
1548
|
delete newDocs[documentId];
|
|
1595
|
-
systemLog("dsp", "[deleteDocument] NEW DOCS: ", newDocs);
|
|
1596
1549
|
return newDocs;
|
|
1597
1550
|
});
|
|
1598
1551
|
setCounterDocuments((prev) => {
|
|
@@ -1608,7 +1561,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1608
1561
|
updatedDataObj[key].data = updatedDataObj[key].data.filter((element) => element !== documentId);
|
|
1609
1562
|
updatedDataObj[key].lastUpdate = { id: uuid(), time: /* @__PURE__ */ new Date() };
|
|
1610
1563
|
deletedCount += initialLength - updatedDataObj[key].data.length;
|
|
1611
|
-
if (initialLength - updatedDataObj[key].data.length > 0) systemLog("dsp", "[deleteDocument] Smazan zaznam...", deletedCount);
|
|
1612
1564
|
}
|
|
1613
1565
|
return updatedDataObj;
|
|
1614
1566
|
});
|
|
@@ -1618,7 +1570,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1618
1570
|
const createProviderItem = useCallback(
|
|
1619
1571
|
async ({ id, data, variant }) => {
|
|
1620
1572
|
if (!providers[id]) {
|
|
1621
|
-
systemLog("dsp", "[createProviderItem] Provider neexistuje:", id);
|
|
1622
1573
|
return;
|
|
1623
1574
|
}
|
|
1624
1575
|
if (!providers[id].dataSource) {
|
|
@@ -1640,7 +1591,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1640
1591
|
const deleteProviderItem = useCallback(
|
|
1641
1592
|
async ({ providerId, data, params }) => {
|
|
1642
1593
|
if (!providers[providerId]) {
|
|
1643
|
-
systemLog("dsp", "[deleteProviderItem] Provider neexistuje:", providerId);
|
|
1644
1594
|
return;
|
|
1645
1595
|
}
|
|
1646
1596
|
const response = await deleteData({
|
|
@@ -1656,7 +1606,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1656
1606
|
(sockets2, filter) => {
|
|
1657
1607
|
if (!sockets2) return;
|
|
1658
1608
|
const normalizedFilter = filter ?? {};
|
|
1659
|
-
systemLog("dsp", "[registerProviderSockets]", sockets2, `filter: ${JSON.stringify(normalizedFilter)}`);
|
|
1660
1609
|
const d = Array.isArray(sockets2) ? sockets2 : [sockets2];
|
|
1661
1610
|
setSockets((prev) => {
|
|
1662
1611
|
const newS = { ...prev };
|
|
@@ -1665,14 +1614,9 @@ var DataStoreProvider = forwardRef(
|
|
|
1665
1614
|
const existingFilter = newS[item].filters.find((f) => isEqual(f.filter, normalizedFilter));
|
|
1666
1615
|
if (existingFilter) {
|
|
1667
1616
|
existingFilter.listeners++;
|
|
1668
|
-
systemLog("dsp", `[registerProviderSockets] Filter uz existuje, navysuji listeners na ${existingFilter.listeners}`);
|
|
1669
1617
|
} else {
|
|
1670
1618
|
newS[item].filters = [...newS[item].filters, { filter: normalizedFilter, listeners: 1 }];
|
|
1671
1619
|
socket.emit("joinRoom", { room: item, filter: normalizedFilter });
|
|
1672
|
-
systemLog(
|
|
1673
|
-
"dsp",
|
|
1674
|
-
`[registerProviderSockets] Novy filter, registruji room ${item} s filterem ${JSON.stringify(normalizedFilter)}`
|
|
1675
|
-
);
|
|
1676
1620
|
}
|
|
1677
1621
|
} else {
|
|
1678
1622
|
newS[item] = {
|
|
@@ -1680,7 +1624,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1680
1624
|
data: []
|
|
1681
1625
|
};
|
|
1682
1626
|
socket.emit("joinRoom", { room: item, filter: normalizedFilter });
|
|
1683
|
-
systemLog("dsp", `[registerProviderSockets] Nova room ${item}, filter: ${JSON.stringify(normalizedFilter)}`);
|
|
1684
1627
|
}
|
|
1685
1628
|
});
|
|
1686
1629
|
return newS;
|
|
@@ -1691,12 +1634,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1691
1634
|
const unregisterProviderSockets = useCallback(
|
|
1692
1635
|
(sockets2, filter) => {
|
|
1693
1636
|
const normalizedFilter = filter ?? {};
|
|
1694
|
-
systemLog(
|
|
1695
|
-
"dsp",
|
|
1696
|
-
"[unregisterProviderSockets] Mazu sockety",
|
|
1697
|
-
JSON.stringify(sockets2, null, 2),
|
|
1698
|
-
`filter: ${JSON.stringify(normalizedFilter)}`
|
|
1699
|
-
);
|
|
1700
1637
|
const d = Array.isArray(sockets2) ? sockets2 : [sockets2];
|
|
1701
1638
|
setSockets((prev) => {
|
|
1702
1639
|
const newS = { ...prev };
|
|
@@ -1708,18 +1645,12 @@ var DataStoreProvider = forwardRef(
|
|
|
1708
1645
|
if (existingFilter.listeners <= 1) {
|
|
1709
1646
|
newS[item].filters = newS[item].filters.filter((f) => !isEqual(f.filter, normalizedFilter));
|
|
1710
1647
|
socket.emit("leaveRoom", { room: item, filter: normalizedFilter });
|
|
1711
|
-
systemLog(
|
|
1712
|
-
"dsp",
|
|
1713
|
-
`[unregisterProviderSockets] Filter smazan, odhlaseni room ${item} s filterem ${JSON.stringify(normalizedFilter)}`
|
|
1714
|
-
);
|
|
1715
1648
|
} else {
|
|
1716
1649
|
existingFilter.listeners--;
|
|
1717
|
-
systemLog("dsp", `[unregisterProviderSockets] Filter listeners snizen na ${existingFilter.listeners}`);
|
|
1718
1650
|
}
|
|
1719
1651
|
if (newS[item].filters.length === 0) {
|
|
1720
1652
|
removeSocketListeners.push(item);
|
|
1721
1653
|
delete newS[item];
|
|
1722
|
-
systemLog("dsp", `[unregisterProviderSockets] Room ${item} uplne smazana`);
|
|
1723
1654
|
}
|
|
1724
1655
|
});
|
|
1725
1656
|
if (removeSocketListeners.length > 0) {
|
|
@@ -1732,14 +1663,12 @@ var DataStoreProvider = forwardRef(
|
|
|
1732
1663
|
);
|
|
1733
1664
|
const updateProviderListeners = useCallback(
|
|
1734
1665
|
async (id, val) => {
|
|
1735
|
-
systemLog("dsp", `[updateProviderListeners] provider:`, id, "menim o", val);
|
|
1736
1666
|
setCounterProviders((prev) => {
|
|
1737
1667
|
if (!prev[id]) return prev;
|
|
1738
1668
|
if (prev[id] + val > 0) {
|
|
1739
1669
|
return { ...prev, [id]: prev[id] + val };
|
|
1740
1670
|
}
|
|
1741
1671
|
setProviders((prevP) => {
|
|
1742
|
-
systemLog("dsp", "[DSP] UPDATE PROVIDER - mazu sockets ", id);
|
|
1743
1672
|
setSockets((prevS) => {
|
|
1744
1673
|
const newS = { ...prevS };
|
|
1745
1674
|
const removeSocketListeners = [];
|
|
@@ -1753,15 +1682,12 @@ var DataStoreProvider = forwardRef(
|
|
|
1753
1682
|
if (existingFilter.listeners + val <= 0) {
|
|
1754
1683
|
newS[socketName].filters = newS[socketName].filters.filter((f) => !isEqual(f.filter, normalizedFilter));
|
|
1755
1684
|
socket.emit("leaveRoom", { room: socketName, filter: normalizedFilter });
|
|
1756
|
-
systemLog("dsp", `[updateProviderListeners] Filter smazan pro room ${socketName}`);
|
|
1757
1685
|
} else {
|
|
1758
1686
|
existingFilter.listeners = existingFilter.listeners + val;
|
|
1759
|
-
systemLog("dsp", `[updateProviderListeners] Filter listeners snizen na ${existingFilter.listeners}`);
|
|
1760
1687
|
}
|
|
1761
1688
|
if (newS[socketName].filters.length === 0) {
|
|
1762
1689
|
removeSocketListeners.push(socketName);
|
|
1763
1690
|
delete newS[socketName];
|
|
1764
|
-
systemLog("dsp", `[updateProviderListeners] Room ${socketName} uplne smazana`);
|
|
1765
1691
|
}
|
|
1766
1692
|
});
|
|
1767
1693
|
if (removeSocketListeners.length > 0) {
|
|
@@ -1799,12 +1725,10 @@ var DataStoreProvider = forwardRef(
|
|
|
1799
1725
|
const registerProvider = useCallback(
|
|
1800
1726
|
async (newItem) => {
|
|
1801
1727
|
console.log("Registruji provider ", newItem.id, " se schema ", newItem.schema);
|
|
1802
|
-
systemLog("dsp", "[registerProvider]", newItem.id);
|
|
1803
1728
|
let result;
|
|
1804
1729
|
const { id, ...provider } = newItem;
|
|
1805
1730
|
if (providers[id]) {
|
|
1806
1731
|
setCounterProviders((prev) => {
|
|
1807
|
-
systemLog("dsp", "[registerProvider] Pouze navysuji ", id, " ", prev[id], " -> ", prev[id] + 1);
|
|
1808
1732
|
return {
|
|
1809
1733
|
...prev,
|
|
1810
1734
|
[id]: prev[id] + 1
|
|
@@ -1820,10 +1744,11 @@ var DataStoreProvider = forwardRef(
|
|
|
1820
1744
|
isPersisting: !!newItem.isPersisting && !!persistenceStorage,
|
|
1821
1745
|
SQLite: persistenceStorage || void 0
|
|
1822
1746
|
});
|
|
1823
|
-
console.
|
|
1747
|
+
console.error("[DataStoreProvider] registerProvider:dataFromSource ", { id: newItem.id, dataFromSource });
|
|
1824
1748
|
var dataList = [];
|
|
1825
1749
|
var items = {};
|
|
1826
1750
|
const dataS = Array.isArray(dataFromSource) ? dataFromSource : [dataFromSource];
|
|
1751
|
+
console.error("[DataStoreProvider] registerProvider:dataS ", { id: newItem.id, dataS });
|
|
1827
1752
|
dataS.forEach((item) => {
|
|
1828
1753
|
if (!item) return;
|
|
1829
1754
|
const { id: itId, ...data } = item;
|
|
@@ -1838,6 +1763,7 @@ var DataStoreProvider = forwardRef(
|
|
|
1838
1763
|
items[normalizedId] = data;
|
|
1839
1764
|
}
|
|
1840
1765
|
});
|
|
1766
|
+
console.error("[DataStoreProvider] registerProvider:dataList ", { id: newItem.id, dataList });
|
|
1841
1767
|
setCounterDocuments((prev) => {
|
|
1842
1768
|
const newC = { ...prev };
|
|
1843
1769
|
dataList.forEach((itemId) => {
|
|
@@ -1866,10 +1792,12 @@ var DataStoreProvider = forwardRef(
|
|
|
1866
1792
|
[id]: 1
|
|
1867
1793
|
}));
|
|
1868
1794
|
if (provider.dataSource?.socketListeners) {
|
|
1869
|
-
console.
|
|
1795
|
+
console.error("[DataStoreProvider] registerProvider:registering sockets ", {
|
|
1796
|
+
id: newItem.id,
|
|
1797
|
+
socketListeners: provider.dataSource.socketListeners
|
|
1798
|
+
});
|
|
1870
1799
|
registerProviderSockets(provider.dataSource.socketListeners, provider.dataSource.filter);
|
|
1871
1800
|
}
|
|
1872
|
-
console.timeEnd(`[DSP] VYTVARENI PROVIDERA ${id}`);
|
|
1873
1801
|
} catch (error) {
|
|
1874
1802
|
console.error("[DataStoreProvider] registerProvider:error", { id: newItem.id, error });
|
|
1875
1803
|
throw error;
|
|
@@ -1884,15 +1812,12 @@ var DataStoreProvider = forwardRef(
|
|
|
1884
1812
|
setCounterProviders((prev) => {
|
|
1885
1813
|
if (prev[itemId]) {
|
|
1886
1814
|
if (prev[itemId] > 1) {
|
|
1887
|
-
systemLog("dsp", "[unregisterProvider] snizuji ", itemId, "z ", prev[itemId], " na ", prev[itemId] - 1);
|
|
1888
1815
|
return {
|
|
1889
1816
|
...prev,
|
|
1890
1817
|
[itemId]: prev[itemId] - 1
|
|
1891
1818
|
};
|
|
1892
1819
|
} else {
|
|
1893
|
-
systemLog("dsp", "[unregisterProvider] mazu ", Object.keys(providers));
|
|
1894
1820
|
unregisterProviderSockets(providers[itemId]?.dataSource.socketListeners, providers[itemId]?.dataSource.filter);
|
|
1895
|
-
systemLog("dsp", "[unregisterProvider] Mazu dokumenty providera ", itemId);
|
|
1896
1821
|
setCounterDocuments((cd) => {
|
|
1897
1822
|
const newC = { ...cd };
|
|
1898
1823
|
const deleteDocumentIds = [];
|
|
@@ -1984,7 +1909,6 @@ var DataStoreProvider = forwardRef(
|
|
|
1984
1909
|
]
|
|
1985
1910
|
);
|
|
1986
1911
|
useImperativeHandle(ref, () => actionsValue, [actionsValue]);
|
|
1987
|
-
systemLog("dsp", "END");
|
|
1988
1912
|
return (
|
|
1989
1913
|
// <DatabaseProvider>
|
|
1990
1914
|
/* @__PURE__ */ jsx(DataStoreStableContext.Provider, { value: stableValue, children: /* @__PURE__ */ jsx(DataStoreActionsContext.Provider, { value: actionsValue, children: /* @__PURE__ */ jsx(DataStoreProvidersContext.Provider, { value: providers, children: /* @__PURE__ */ jsx(DataStoreDocumentsContext.Provider, { value: documents, children: /* @__PURE__ */ jsx(DataStoreContext.Provider, { value: metaValue, children: props.children }) }) }) }) })
|