tinybase 9.0.0-beta.0 → 9.0.0
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/@types/mergeable-store/index.d.ts +4 -4
- package/@types/mergeable-store/with-schemas/index.d.ts +41 -17
- package/@types/persisters/index.d.ts +2 -1
- package/@types/persisters/with-schemas/index.d.ts +16 -10
- package/@types/queries/index.d.ts +4 -0
- package/@types/queries/with-schemas/index.d.ts +4 -0
- package/@types/ui-react-dom/index.d.ts +10 -10
- package/@types/ui-react-dom/with-schemas/index.d.ts +10 -10
- package/@types/ui-react-dom-charts/index.d.ts +7 -7
- package/@types/ui-react-dom-charts/with-schemas/index.d.ts +7 -7
- package/@types/ui-react-inspector/index.d.ts +1 -1
- package/@types/ui-react-inspector/with-schemas/index.d.ts +1 -1
- package/@types/ui-solid-dom/index.d.ts +10 -10
- package/@types/ui-solid-dom/with-schemas/index.d.ts +10 -10
- package/@types/ui-solid-inspector/index.d.ts +1 -1
- package/@types/ui-solid-inspector/with-schemas/index.d.ts +1 -1
- package/@types/ui-svelte-dom/index.d.ts +10 -10
- package/@types/ui-svelte-dom/with-schemas/index.d.ts +10 -10
- package/@types/ui-svelte-inspector/index.d.ts +1 -1
- package/@types/ui-svelte-inspector/with-schemas/index.d.ts +1 -1
- package/index.js +46 -6
- package/mergeable-store/index.js +46 -6
- package/mergeable-store/with-schemas/index.js +46 -6
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/mergeable-store/index.js +1 -1
- package/min/mergeable-store/index.js.gz +0 -0
- package/min/mergeable-store/with-schemas/index.js +1 -1
- package/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/min/omni/index.js +1 -1
- package/min/omni/index.js.gz +0 -0
- package/min/omni/with-schemas/index.js +1 -1
- package/min/omni/with-schemas/index.js.gz +0 -0
- package/min/persisters/index.js +1 -1
- package/min/persisters/index.js.gz +0 -0
- package/min/persisters/persister-automerge/index.js +1 -1
- package/min/persisters/persister-automerge/index.js.gz +0 -0
- package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-browser/index.js +1 -1
- package/min/persisters/persister-browser/index.js.gz +0 -0
- package/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-sql-storage/index.js +1 -1
- package/min/persisters/persister-durable-object-sql-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1 -1
- package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/index.js +1 -1
- package/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-file/index.js +1 -1
- package/min/persisters/persister-file/index.js.gz +0 -0
- package/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/index.js +1 -1
- package/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-libsql/index.js +1 -1
- package/min/persisters/persister-libsql/index.js.gz +0 -0
- package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/index.js +1 -1
- package/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-pglite/index.js +1 -1
- package/min/persisters/persister-pglite/index.js.gz +0 -0
- package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-postgres/index.js +1 -1
- package/min/persisters/persister-postgres/index.js.gz +0 -0
- package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-powersync/index.js +1 -1
- package/min/persisters/persister-powersync/index.js.gz +0 -0
- package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-react-native-mmkv/index.js +1 -1
- package/min/persisters/persister-react-native-mmkv/index.js.gz +0 -0
- package/min/persisters/persister-react-native-mmkv/with-schemas/index.js +1 -1
- package/min/persisters/persister-react-native-mmkv/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-react-native-sqlite/index.js +1 -1
- package/min/persisters/persister-react-native-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-react-native-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-react-native-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-remote/index.js +1 -1
- package/min/persisters/persister-remote/index.js.gz +0 -0
- package/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-bun/index.js +1 -1
- package/min/persisters/persister-sqlite-bun/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-bun/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-bun/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/index.js +1 -1
- package/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-yjs/index.js +1 -1
- package/min/persisters/persister-yjs/index.js.gz +0 -0
- package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/min/persisters/with-schemas/index.js +1 -1
- package/min/persisters/with-schemas/index.js.gz +0 -0
- package/min/store/index.js +1 -1
- package/min/store/index.js.gz +0 -0
- package/min/store/with-schemas/index.js +1 -1
- package/min/store/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/index.js +1 -1
- package/min/synchronizers/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/index.js +1 -1
- package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/with-schemas/index.js +1 -1
- package/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/min/ui-react-inspector/index.js +1 -1
- package/min/ui-react-inspector/index.js.gz +0 -0
- package/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/min/ui-solid-inspector/index.js +1 -1
- package/min/ui-solid-inspector/index.js.gz +0 -0
- package/min/ui-solid-inspector/with-schemas/index.js +1 -1
- package/min/ui-solid-inspector/with-schemas/index.js.gz +0 -0
- package/min/ui-svelte-inspector/index.js +1 -1
- package/min/ui-svelte-inspector/index.js.gz +0 -0
- package/min/ui-svelte-inspector/with-schemas/index.js +1 -1
- package/min/ui-svelte-inspector/with-schemas/index.js.gz +0 -0
- package/min/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/omni/index.js +53 -14
- package/omni/with-schemas/index.js +53 -14
- package/package.json +7 -7
- package/persisters/index.js +4 -3
- package/persisters/persister-automerge/index.js +4 -3
- package/persisters/persister-automerge/with-schemas/index.js +4 -3
- package/persisters/persister-browser/index.js +4 -3
- package/persisters/persister-browser/with-schemas/index.js +4 -3
- package/persisters/persister-cr-sqlite-wasm/index.js +4 -3
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +4 -3
- package/persisters/persister-durable-object-sql-storage/index.js +4 -3
- package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +4 -3
- package/persisters/persister-durable-object-storage/index.js +4 -3
- package/persisters/persister-durable-object-storage/with-schemas/index.js +4 -3
- package/persisters/persister-electric-sql/index.js +4 -3
- package/persisters/persister-electric-sql/with-schemas/index.js +4 -3
- package/persisters/persister-expo-sqlite/index.js +4 -3
- package/persisters/persister-expo-sqlite/with-schemas/index.js +4 -3
- package/persisters/persister-file/index.js +4 -3
- package/persisters/persister-file/with-schemas/index.js +4 -3
- package/persisters/persister-indexed-db/index.js +4 -3
- package/persisters/persister-indexed-db/with-schemas/index.js +4 -3
- package/persisters/persister-libsql/index.js +4 -3
- package/persisters/persister-libsql/with-schemas/index.js +4 -3
- package/persisters/persister-partykit-client/index.js +4 -3
- package/persisters/persister-partykit-client/with-schemas/index.js +4 -3
- package/persisters/persister-pglite/index.js +4 -3
- package/persisters/persister-pglite/with-schemas/index.js +4 -3
- package/persisters/persister-postgres/index.js +4 -3
- package/persisters/persister-postgres/with-schemas/index.js +4 -3
- package/persisters/persister-powersync/index.js +4 -3
- package/persisters/persister-powersync/with-schemas/index.js +4 -3
- package/persisters/persister-react-native-mmkv/index.js +4 -3
- package/persisters/persister-react-native-mmkv/with-schemas/index.js +4 -3
- package/persisters/persister-react-native-sqlite/index.js +4 -3
- package/persisters/persister-react-native-sqlite/with-schemas/index.js +4 -3
- package/persisters/persister-remote/index.js +4 -3
- package/persisters/persister-remote/with-schemas/index.js +4 -3
- package/persisters/persister-sqlite-bun/index.js +4 -3
- package/persisters/persister-sqlite-bun/with-schemas/index.js +4 -3
- package/persisters/persister-sqlite-wasm/index.js +4 -3
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +4 -3
- package/persisters/persister-sqlite3/index.js +4 -3
- package/persisters/persister-sqlite3/with-schemas/index.js +4 -3
- package/persisters/persister-yjs/index.js +4 -3
- package/persisters/persister-yjs/with-schemas/index.js +4 -3
- package/persisters/with-schemas/index.js +4 -3
- package/readme.md +3 -3
- package/releases.md +17 -1
- package/store/index.js +33 -2
- package/store/with-schemas/index.js +33 -2
- package/synchronizers/index.js +4 -3
- package/synchronizers/synchronizer-broadcast-channel/index.js +4 -3
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +4 -3
- package/synchronizers/synchronizer-local/index.js +4 -3
- package/synchronizers/synchronizer-local/with-schemas/index.js +4 -3
- package/synchronizers/synchronizer-ws-client/index.js +4 -3
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +4 -3
- package/synchronizers/synchronizer-ws-server/index.js +7 -8
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +7 -8
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +3 -3
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +3 -3
- package/synchronizers/with-schemas/index.js +4 -3
- package/ui-react-inspector/index.js +36 -5
- package/ui-react-inspector/with-schemas/index.js +36 -5
- package/ui-solid-inspector/index.js +36 -5
- package/ui-solid-inspector/with-schemas/index.js +36 -5
- package/ui-svelte-inspector/index.js +36 -5
- package/ui-svelte-inspector/with-schemas/index.js +36 -5
- package/with-schemas/index.js +46 -6
package/omni/index.js
CHANGED
|
@@ -1278,8 +1278,10 @@ const createStore = () => {
|
|
|
1278
1278
|
const changedRowIds = mapNew();
|
|
1279
1279
|
const changedCellIds = mapNew();
|
|
1280
1280
|
const changedCells = mapNew();
|
|
1281
|
+
const defaultedCells = mapNew();
|
|
1281
1282
|
const changedValueIds = mapNew();
|
|
1282
1283
|
const changedValues = mapNew();
|
|
1284
|
+
const defaultedValues = setNew();
|
|
1283
1285
|
const invalidCells = mapNew();
|
|
1284
1286
|
const invalidValues = mapNew();
|
|
1285
1287
|
const tablesSchemaMap = mapNew();
|
|
@@ -1453,6 +1455,16 @@ const createStore = () => {
|
|
|
1453
1455
|
collForEach(rowDefaulted, (cell, cellId) => {
|
|
1454
1456
|
if (!objHas(row, cellId)) {
|
|
1455
1457
|
row[cellId] = cell;
|
|
1458
|
+
ifNotUndefined(rowId, (rowId2) =>
|
|
1459
|
+
setAdd(
|
|
1460
|
+
mapEnsure(
|
|
1461
|
+
mapEnsure(defaultedCells, tableId, mapNew),
|
|
1462
|
+
rowId2,
|
|
1463
|
+
setNew,
|
|
1464
|
+
),
|
|
1465
|
+
cellId,
|
|
1466
|
+
),
|
|
1467
|
+
);
|
|
1456
1468
|
}
|
|
1457
1469
|
});
|
|
1458
1470
|
collForEach(rowNonDefaulted, (cellId) => {
|
|
@@ -1469,6 +1481,7 @@ const createStore = () => {
|
|
|
1469
1481
|
collForEach(valuesDefaulted, (value, valueId) => {
|
|
1470
1482
|
if (!objHas(values, valueId)) {
|
|
1471
1483
|
values[valueId] = value;
|
|
1484
|
+
setAdd(defaultedValues, valueId);
|
|
1472
1485
|
}
|
|
1473
1486
|
});
|
|
1474
1487
|
collForEach(valuesNonDefaulted, (valueId) => {
|
|
@@ -1872,18 +1885,34 @@ const createStore = () => {
|
|
|
1872
1885
|
);
|
|
1873
1886
|
};
|
|
1874
1887
|
const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
|
|
1888
|
+
const defaulted =
|
|
1889
|
+
collHas(mapGet(mapGet(defaultedCells, tableId), rowId), cellId) &&
|
|
1890
|
+
isUndefined(oldCell)
|
|
1891
|
+
? 1
|
|
1892
|
+
: 0;
|
|
1875
1893
|
mapEnsure(
|
|
1876
1894
|
mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
|
|
1877
1895
|
cellId,
|
|
1878
1896
|
() => [oldCell, 0],
|
|
1879
1897
|
)[1] = newCell;
|
|
1880
|
-
internalListeners[3]?.(
|
|
1898
|
+
internalListeners[3]?.(
|
|
1899
|
+
tableId,
|
|
1900
|
+
rowId,
|
|
1901
|
+
cellId,
|
|
1902
|
+
newCell,
|
|
1903
|
+
mutating,
|
|
1904
|
+
defaulted,
|
|
1905
|
+
);
|
|
1906
|
+
collDel(mapGet(mapGet(defaultedCells, tableId), rowId), cellId);
|
|
1881
1907
|
};
|
|
1882
1908
|
const valueIdsChanged = (valueId, addedOrRemoved) =>
|
|
1883
1909
|
idsChanged(changedValueIds, valueId, addedOrRemoved);
|
|
1884
1910
|
const valueChanged = (valueId, oldValue, newValue) => {
|
|
1911
|
+
const defaulted =
|
|
1912
|
+
collHas(defaultedValues, valueId) && isUndefined(oldValue) ? 1 : 0;
|
|
1885
1913
|
mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
|
|
1886
|
-
internalListeners[4]?.(valueId, newValue, mutating);
|
|
1914
|
+
internalListeners[4]?.(valueId, newValue, mutating, defaulted);
|
|
1915
|
+
collDel(defaultedValues, valueId);
|
|
1887
1916
|
};
|
|
1888
1917
|
const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
|
|
1889
1918
|
arrayPush(
|
|
@@ -2671,9 +2700,11 @@ const createStore = () => {
|
|
|
2671
2700
|
changedRowIds,
|
|
2672
2701
|
changedCellIds,
|
|
2673
2702
|
changedCells,
|
|
2703
|
+
defaultedCells,
|
|
2674
2704
|
invalidCells,
|
|
2675
2705
|
changedValueIds,
|
|
2676
2706
|
changedValues,
|
|
2707
|
+
defaultedValues,
|
|
2677
2708
|
invalidValues,
|
|
2678
2709
|
],
|
|
2679
2710
|
collClear,
|
|
@@ -3178,7 +3209,14 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3178
3209
|
collClear(touchedCells);
|
|
3179
3210
|
collClear(touchedValues);
|
|
3180
3211
|
};
|
|
3181
|
-
const cellChanged = (
|
|
3212
|
+
const cellChanged = (
|
|
3213
|
+
tableId,
|
|
3214
|
+
rowId,
|
|
3215
|
+
cellId,
|
|
3216
|
+
newCell,
|
|
3217
|
+
mutating,
|
|
3218
|
+
defaulted,
|
|
3219
|
+
) => {
|
|
3182
3220
|
setAdd(
|
|
3183
3221
|
mapEnsure(mapEnsure(touchedCells, tableId, mapNew), rowId, setNew),
|
|
3184
3222
|
cellId,
|
|
@@ -3196,7 +3234,9 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3196
3234
|
{
|
|
3197
3235
|
[cellId]: [
|
|
3198
3236
|
newCell,
|
|
3199
|
-
defaultingContent
|
|
3237
|
+
defaultingContent || defaulted
|
|
3238
|
+
? EMPTY_STRING
|
|
3239
|
+
: getNextHlc(),
|
|
3200
3240
|
],
|
|
3201
3241
|
},
|
|
3202
3242
|
],
|
|
@@ -3209,7 +3249,7 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3209
3249
|
]);
|
|
3210
3250
|
}
|
|
3211
3251
|
};
|
|
3212
|
-
const valueChanged = (valueId, newValue, mutating) => {
|
|
3252
|
+
const valueChanged = (valueId, newValue, mutating, defaulted) => {
|
|
3213
3253
|
setAdd(touchedValues, valueId);
|
|
3214
3254
|
if (listeningToRawStoreChanges || mutating) {
|
|
3215
3255
|
if (mutating) {
|
|
@@ -3221,7 +3261,7 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3221
3261
|
{
|
|
3222
3262
|
[valueId]: [
|
|
3223
3263
|
newValue,
|
|
3224
|
-
defaultingContent ? EMPTY_STRING : getNextHlc(),
|
|
3264
|
+
defaultingContent || defaulted ? EMPTY_STRING : getNextHlc(),
|
|
3225
3265
|
],
|
|
3226
3266
|
},
|
|
3227
3267
|
],
|
|
@@ -3910,13 +3950,14 @@ const createCustomPersister = (
|
|
|
3910
3950
|
const content = await getPersisted();
|
|
3911
3951
|
if (isArray(content)) {
|
|
3912
3952
|
setContentOrChanges(content);
|
|
3913
|
-
} else if (initialContent) {
|
|
3953
|
+
} else if (isUndefined(content) && initialContent) {
|
|
3914
3954
|
setDefaultContent(initialContent);
|
|
3915
|
-
} else {
|
|
3955
|
+
} else if (!isUndefined(content)) {
|
|
3916
3956
|
errorNew(`Content is not an array: ${content}`);
|
|
3917
3957
|
}
|
|
3918
3958
|
},
|
|
3919
|
-
() => {
|
|
3959
|
+
(error) => {
|
|
3960
|
+
onIgnoredError?.(error);
|
|
3920
3961
|
if (initialContent) {
|
|
3921
3962
|
setDefaultContent(initialContent);
|
|
3922
3963
|
}
|
|
@@ -7974,11 +8015,9 @@ const createWsServer = (
|
|
|
7974
8015
|
);
|
|
7975
8016
|
const startServerClient = async (serverClient) => {
|
|
7976
8017
|
serverClient[0 /* State */] = 2; /* Starting */
|
|
7977
|
-
await serverClient[1 /* Persister */].
|
|
7978
|
-
|
|
7979
|
-
|
|
7980
|
-
serverClient[2 /* Synchronizer */].startSync,
|
|
7981
|
-
);
|
|
8018
|
+
await serverClient[1 /* Persister */].startAutoLoad();
|
|
8019
|
+
await serverClient[1 /* Persister */].startAutoSave();
|
|
8020
|
+
await serverClient[2 /* Synchronizer */].startSync();
|
|
7982
8021
|
serverClient[5 /* Then */](serverClient[1 /* Persister */].getStore());
|
|
7983
8022
|
serverClient[0 /* State */] = 0; /* Ready */
|
|
7984
8023
|
};
|
|
@@ -1278,8 +1278,10 @@ const createStore = () => {
|
|
|
1278
1278
|
const changedRowIds = mapNew();
|
|
1279
1279
|
const changedCellIds = mapNew();
|
|
1280
1280
|
const changedCells = mapNew();
|
|
1281
|
+
const defaultedCells = mapNew();
|
|
1281
1282
|
const changedValueIds = mapNew();
|
|
1282
1283
|
const changedValues = mapNew();
|
|
1284
|
+
const defaultedValues = setNew();
|
|
1283
1285
|
const invalidCells = mapNew();
|
|
1284
1286
|
const invalidValues = mapNew();
|
|
1285
1287
|
const tablesSchemaMap = mapNew();
|
|
@@ -1453,6 +1455,16 @@ const createStore = () => {
|
|
|
1453
1455
|
collForEach(rowDefaulted, (cell, cellId) => {
|
|
1454
1456
|
if (!objHas(row, cellId)) {
|
|
1455
1457
|
row[cellId] = cell;
|
|
1458
|
+
ifNotUndefined(rowId, (rowId2) =>
|
|
1459
|
+
setAdd(
|
|
1460
|
+
mapEnsure(
|
|
1461
|
+
mapEnsure(defaultedCells, tableId, mapNew),
|
|
1462
|
+
rowId2,
|
|
1463
|
+
setNew,
|
|
1464
|
+
),
|
|
1465
|
+
cellId,
|
|
1466
|
+
),
|
|
1467
|
+
);
|
|
1456
1468
|
}
|
|
1457
1469
|
});
|
|
1458
1470
|
collForEach(rowNonDefaulted, (cellId) => {
|
|
@@ -1469,6 +1481,7 @@ const createStore = () => {
|
|
|
1469
1481
|
collForEach(valuesDefaulted, (value, valueId) => {
|
|
1470
1482
|
if (!objHas(values, valueId)) {
|
|
1471
1483
|
values[valueId] = value;
|
|
1484
|
+
setAdd(defaultedValues, valueId);
|
|
1472
1485
|
}
|
|
1473
1486
|
});
|
|
1474
1487
|
collForEach(valuesNonDefaulted, (valueId) => {
|
|
@@ -1872,18 +1885,34 @@ const createStore = () => {
|
|
|
1872
1885
|
);
|
|
1873
1886
|
};
|
|
1874
1887
|
const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
|
|
1888
|
+
const defaulted =
|
|
1889
|
+
collHas(mapGet(mapGet(defaultedCells, tableId), rowId), cellId) &&
|
|
1890
|
+
isUndefined(oldCell)
|
|
1891
|
+
? 1
|
|
1892
|
+
: 0;
|
|
1875
1893
|
mapEnsure(
|
|
1876
1894
|
mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
|
|
1877
1895
|
cellId,
|
|
1878
1896
|
() => [oldCell, 0],
|
|
1879
1897
|
)[1] = newCell;
|
|
1880
|
-
internalListeners[3]?.(
|
|
1898
|
+
internalListeners[3]?.(
|
|
1899
|
+
tableId,
|
|
1900
|
+
rowId,
|
|
1901
|
+
cellId,
|
|
1902
|
+
newCell,
|
|
1903
|
+
mutating,
|
|
1904
|
+
defaulted,
|
|
1905
|
+
);
|
|
1906
|
+
collDel(mapGet(mapGet(defaultedCells, tableId), rowId), cellId);
|
|
1881
1907
|
};
|
|
1882
1908
|
const valueIdsChanged = (valueId, addedOrRemoved) =>
|
|
1883
1909
|
idsChanged(changedValueIds, valueId, addedOrRemoved);
|
|
1884
1910
|
const valueChanged = (valueId, oldValue, newValue) => {
|
|
1911
|
+
const defaulted =
|
|
1912
|
+
collHas(defaultedValues, valueId) && isUndefined(oldValue) ? 1 : 0;
|
|
1885
1913
|
mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
|
|
1886
|
-
internalListeners[4]?.(valueId, newValue, mutating);
|
|
1914
|
+
internalListeners[4]?.(valueId, newValue, mutating, defaulted);
|
|
1915
|
+
collDel(defaultedValues, valueId);
|
|
1887
1916
|
};
|
|
1888
1917
|
const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
|
|
1889
1918
|
arrayPush(
|
|
@@ -2671,9 +2700,11 @@ const createStore = () => {
|
|
|
2671
2700
|
changedRowIds,
|
|
2672
2701
|
changedCellIds,
|
|
2673
2702
|
changedCells,
|
|
2703
|
+
defaultedCells,
|
|
2674
2704
|
invalidCells,
|
|
2675
2705
|
changedValueIds,
|
|
2676
2706
|
changedValues,
|
|
2707
|
+
defaultedValues,
|
|
2677
2708
|
invalidValues,
|
|
2678
2709
|
],
|
|
2679
2710
|
collClear,
|
|
@@ -3178,7 +3209,14 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3178
3209
|
collClear(touchedCells);
|
|
3179
3210
|
collClear(touchedValues);
|
|
3180
3211
|
};
|
|
3181
|
-
const cellChanged = (
|
|
3212
|
+
const cellChanged = (
|
|
3213
|
+
tableId,
|
|
3214
|
+
rowId,
|
|
3215
|
+
cellId,
|
|
3216
|
+
newCell,
|
|
3217
|
+
mutating,
|
|
3218
|
+
defaulted,
|
|
3219
|
+
) => {
|
|
3182
3220
|
setAdd(
|
|
3183
3221
|
mapEnsure(mapEnsure(touchedCells, tableId, mapNew), rowId, setNew),
|
|
3184
3222
|
cellId,
|
|
@@ -3196,7 +3234,9 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3196
3234
|
{
|
|
3197
3235
|
[cellId]: [
|
|
3198
3236
|
newCell,
|
|
3199
|
-
defaultingContent
|
|
3237
|
+
defaultingContent || defaulted
|
|
3238
|
+
? EMPTY_STRING
|
|
3239
|
+
: getNextHlc(),
|
|
3200
3240
|
],
|
|
3201
3241
|
},
|
|
3202
3242
|
],
|
|
@@ -3209,7 +3249,7 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3209
3249
|
]);
|
|
3210
3250
|
}
|
|
3211
3251
|
};
|
|
3212
|
-
const valueChanged = (valueId, newValue, mutating) => {
|
|
3252
|
+
const valueChanged = (valueId, newValue, mutating, defaulted) => {
|
|
3213
3253
|
setAdd(touchedValues, valueId);
|
|
3214
3254
|
if (listeningToRawStoreChanges || mutating) {
|
|
3215
3255
|
if (mutating) {
|
|
@@ -3221,7 +3261,7 @@ const createMergeableStore = (uniqueId, getNow) => {
|
|
|
3221
3261
|
{
|
|
3222
3262
|
[valueId]: [
|
|
3223
3263
|
newValue,
|
|
3224
|
-
defaultingContent ? EMPTY_STRING : getNextHlc(),
|
|
3264
|
+
defaultingContent || defaulted ? EMPTY_STRING : getNextHlc(),
|
|
3225
3265
|
],
|
|
3226
3266
|
},
|
|
3227
3267
|
],
|
|
@@ -3910,13 +3950,14 @@ const createCustomPersister = (
|
|
|
3910
3950
|
const content = await getPersisted();
|
|
3911
3951
|
if (isArray(content)) {
|
|
3912
3952
|
setContentOrChanges(content);
|
|
3913
|
-
} else if (initialContent) {
|
|
3953
|
+
} else if (isUndefined(content) && initialContent) {
|
|
3914
3954
|
setDefaultContent(initialContent);
|
|
3915
|
-
} else {
|
|
3955
|
+
} else if (!isUndefined(content)) {
|
|
3916
3956
|
errorNew(`Content is not an array: ${content}`);
|
|
3917
3957
|
}
|
|
3918
3958
|
},
|
|
3919
|
-
() => {
|
|
3959
|
+
(error) => {
|
|
3960
|
+
onIgnoredError?.(error);
|
|
3920
3961
|
if (initialContent) {
|
|
3921
3962
|
setDefaultContent(initialContent);
|
|
3922
3963
|
}
|
|
@@ -7974,11 +8015,9 @@ const createWsServer = (
|
|
|
7974
8015
|
);
|
|
7975
8016
|
const startServerClient = async (serverClient) => {
|
|
7976
8017
|
serverClient[0 /* State */] = 2; /* Starting */
|
|
7977
|
-
await serverClient[1 /* Persister */].
|
|
7978
|
-
|
|
7979
|
-
|
|
7980
|
-
serverClient[2 /* Synchronizer */].startSync,
|
|
7981
|
-
);
|
|
8018
|
+
await serverClient[1 /* Persister */].startAutoLoad();
|
|
8019
|
+
await serverClient[1 /* Persister */].startAutoSave();
|
|
8020
|
+
await serverClient[2 /* Synchronizer */].startSync();
|
|
7982
8021
|
serverClient[5 /* Then */](serverClient[1 /* Persister */].getStore());
|
|
7983
8022
|
serverClient[0 /* State */] = 0; /* Ready */
|
|
7984
8023
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tinybase",
|
|
3
|
-
"version": "9.0.0
|
|
3
|
+
"version": "9.0.0",
|
|
4
4
|
"author": "jamesgpearce",
|
|
5
5
|
"repository": "github:tinyplex/tinybase",
|
|
6
6
|
"license": "MIT",
|
|
@@ -24,19 +24,19 @@
|
|
|
24
24
|
"sideEffects": false,
|
|
25
25
|
"peerDependencies": {
|
|
26
26
|
"@automerge/automerge-repo": "^2.5.6",
|
|
27
|
-
"@cloudflare/workers-types": "^
|
|
28
|
-
"@electric-sql/pglite": "^0.5.
|
|
27
|
+
"@cloudflare/workers-types": "^5.20260703.1",
|
|
28
|
+
"@electric-sql/pglite": "^0.5.4",
|
|
29
29
|
"@libsql/client": "^0.17.4",
|
|
30
30
|
"@powersync/common": "^1.57.0",
|
|
31
31
|
"@sinclair/typebox": "^0.34.49",
|
|
32
32
|
"@sqlite.org/sqlite-wasm": "^3.53.0-build1",
|
|
33
33
|
"@vlcn.io/crsqlite-wasm": "^0.16.0",
|
|
34
|
-
"arktype": "^2.2.
|
|
34
|
+
"arktype": "^2.2.2",
|
|
35
35
|
"bun": "^1.3.14",
|
|
36
36
|
"effect": "^3.21.4",
|
|
37
37
|
"electric-sql": "^0.12.1",
|
|
38
|
-
"expo": "^
|
|
39
|
-
"expo-sqlite": "^
|
|
38
|
+
"expo": "^57.0.1",
|
|
39
|
+
"expo-sqlite": "^57.0.0",
|
|
40
40
|
"partykit": "^0.0.115",
|
|
41
41
|
"partysocket": "^1.3.0",
|
|
42
42
|
"postgres": "^3.4.9",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"react-dom": "^19.2.7",
|
|
45
45
|
"react-native-mmkv": "4.3.2",
|
|
46
46
|
"react-native-sqlite-storage": "^6.0.1",
|
|
47
|
-
"solid-js": "^1.9.
|
|
47
|
+
"solid-js": "^1.9.14",
|
|
48
48
|
"sqlite3": "^5.1.7",
|
|
49
49
|
"svelte": "^5.56.4",
|
|
50
50
|
"valibot": "^1.4.2",
|
package/persisters/index.js
CHANGED
|
@@ -341,13 +341,14 @@ const createCustomPersister = (
|
|
|
341
341
|
const content = await getPersisted();
|
|
342
342
|
if (isArray(content)) {
|
|
343
343
|
setContentOrChanges(content);
|
|
344
|
-
} else if (initialContent) {
|
|
344
|
+
} else if (isUndefined(content) && initialContent) {
|
|
345
345
|
setDefaultContent(initialContent);
|
|
346
|
-
} else {
|
|
346
|
+
} else if (!isUndefined(content)) {
|
|
347
347
|
errorNew(`Content is not an array: ${content}`);
|
|
348
348
|
}
|
|
349
349
|
},
|
|
350
|
-
() => {
|
|
350
|
+
(error) => {
|
|
351
|
+
onIgnoredError?.(error);
|
|
351
352
|
if (initialContent) {
|
|
352
353
|
setDefaultContent(initialContent);
|
|
353
354
|
}
|
|
@@ -303,13 +303,14 @@ const createCustomPersister = (
|
|
|
303
303
|
const content = await getPersisted();
|
|
304
304
|
if (isArray(content)) {
|
|
305
305
|
setContentOrChanges(content);
|
|
306
|
-
} else if (initialContent) {
|
|
306
|
+
} else if (isUndefined(content) && initialContent) {
|
|
307
307
|
setDefaultContent(initialContent);
|
|
308
|
-
} else {
|
|
308
|
+
} else if (!isUndefined(content)) {
|
|
309
309
|
errorNew(`Content is not an array: ${content}`);
|
|
310
310
|
}
|
|
311
311
|
},
|
|
312
|
-
() => {
|
|
312
|
+
(error) => {
|
|
313
|
+
onIgnoredError?.(error);
|
|
313
314
|
if (initialContent) {
|
|
314
315
|
setDefaultContent(initialContent);
|
|
315
316
|
}
|
|
@@ -303,13 +303,14 @@ const createCustomPersister = (
|
|
|
303
303
|
const content = await getPersisted();
|
|
304
304
|
if (isArray(content)) {
|
|
305
305
|
setContentOrChanges(content);
|
|
306
|
-
} else if (initialContent) {
|
|
306
|
+
} else if (isUndefined(content) && initialContent) {
|
|
307
307
|
setDefaultContent(initialContent);
|
|
308
|
-
} else {
|
|
308
|
+
} else if (!isUndefined(content)) {
|
|
309
309
|
errorNew(`Content is not an array: ${content}`);
|
|
310
310
|
}
|
|
311
311
|
},
|
|
312
|
-
() => {
|
|
312
|
+
(error) => {
|
|
313
|
+
onIgnoredError?.(error);
|
|
313
314
|
if (initialContent) {
|
|
314
315
|
setDefaultContent(initialContent);
|
|
315
316
|
}
|
|
@@ -309,13 +309,14 @@ const createCustomPersister = (
|
|
|
309
309
|
const content = await getPersisted();
|
|
310
310
|
if (isArray(content)) {
|
|
311
311
|
setContentOrChanges(content);
|
|
312
|
-
} else if (initialContent) {
|
|
312
|
+
} else if (isUndefined(content) && initialContent) {
|
|
313
313
|
setDefaultContent(initialContent);
|
|
314
|
-
} else {
|
|
314
|
+
} else if (!isUndefined(content)) {
|
|
315
315
|
errorNew(`Content is not an array: ${content}`);
|
|
316
316
|
}
|
|
317
317
|
},
|
|
318
|
-
() => {
|
|
318
|
+
(error) => {
|
|
319
|
+
onIgnoredError?.(error);
|
|
319
320
|
if (initialContent) {
|
|
320
321
|
setDefaultContent(initialContent);
|
|
321
322
|
}
|
|
@@ -309,13 +309,14 @@ const createCustomPersister = (
|
|
|
309
309
|
const content = await getPersisted();
|
|
310
310
|
if (isArray(content)) {
|
|
311
311
|
setContentOrChanges(content);
|
|
312
|
-
} else if (initialContent) {
|
|
312
|
+
} else if (isUndefined(content) && initialContent) {
|
|
313
313
|
setDefaultContent(initialContent);
|
|
314
|
-
} else {
|
|
314
|
+
} else if (!isUndefined(content)) {
|
|
315
315
|
errorNew(`Content is not an array: ${content}`);
|
|
316
316
|
}
|
|
317
317
|
},
|
|
318
|
-
() => {
|
|
318
|
+
(error) => {
|
|
319
|
+
onIgnoredError?.(error);
|
|
319
320
|
if (initialContent) {
|
|
320
321
|
setDefaultContent(initialContent);
|
|
321
322
|
}
|
|
@@ -512,13 +512,14 @@ const createCustomPersister = (
|
|
|
512
512
|
const content = await getPersisted();
|
|
513
513
|
if (isArray(content)) {
|
|
514
514
|
setContentOrChanges(content);
|
|
515
|
-
} else if (initialContent) {
|
|
515
|
+
} else if (isUndefined(content) && initialContent) {
|
|
516
516
|
setDefaultContent(initialContent);
|
|
517
|
-
} else {
|
|
517
|
+
} else if (!isUndefined(content)) {
|
|
518
518
|
errorNew(`Content is not an array: ${content}`);
|
|
519
519
|
}
|
|
520
520
|
},
|
|
521
|
-
() => {
|
|
521
|
+
(error) => {
|
|
522
|
+
onIgnoredError?.(error);
|
|
522
523
|
if (initialContent) {
|
|
523
524
|
setDefaultContent(initialContent);
|
|
524
525
|
}
|
|
@@ -512,13 +512,14 @@ const createCustomPersister = (
|
|
|
512
512
|
const content = await getPersisted();
|
|
513
513
|
if (isArray(content)) {
|
|
514
514
|
setContentOrChanges(content);
|
|
515
|
-
} else if (initialContent) {
|
|
515
|
+
} else if (isUndefined(content) && initialContent) {
|
|
516
516
|
setDefaultContent(initialContent);
|
|
517
|
-
} else {
|
|
517
|
+
} else if (!isUndefined(content)) {
|
|
518
518
|
errorNew(`Content is not an array: ${content}`);
|
|
519
519
|
}
|
|
520
520
|
},
|
|
521
|
-
() => {
|
|
521
|
+
(error) => {
|
|
522
|
+
onIgnoredError?.(error);
|
|
522
523
|
if (initialContent) {
|
|
523
524
|
setDefaultContent(initialContent);
|
|
524
525
|
}
|
|
@@ -365,13 +365,14 @@ const createCustomPersister = (
|
|
|
365
365
|
const content = await getPersisted();
|
|
366
366
|
if (isArray(content)) {
|
|
367
367
|
setContentOrChanges(content);
|
|
368
|
-
} else if (initialContent) {
|
|
368
|
+
} else if (isUndefined(content) && initialContent) {
|
|
369
369
|
setDefaultContent(initialContent);
|
|
370
|
-
} else {
|
|
370
|
+
} else if (!isUndefined(content)) {
|
|
371
371
|
errorNew(`Content is not an array: ${content}`);
|
|
372
372
|
}
|
|
373
373
|
},
|
|
374
|
-
() => {
|
|
374
|
+
(error) => {
|
|
375
|
+
onIgnoredError?.(error);
|
|
375
376
|
if (initialContent) {
|
|
376
377
|
setDefaultContent(initialContent);
|
|
377
378
|
}
|
|
@@ -365,13 +365,14 @@ const createCustomPersister = (
|
|
|
365
365
|
const content = await getPersisted();
|
|
366
366
|
if (isArray(content)) {
|
|
367
367
|
setContentOrChanges(content);
|
|
368
|
-
} else if (initialContent) {
|
|
368
|
+
} else if (isUndefined(content) && initialContent) {
|
|
369
369
|
setDefaultContent(initialContent);
|
|
370
|
-
} else {
|
|
370
|
+
} else if (!isUndefined(content)) {
|
|
371
371
|
errorNew(`Content is not an array: ${content}`);
|
|
372
372
|
}
|
|
373
373
|
},
|
|
374
|
-
() => {
|
|
374
|
+
(error) => {
|
|
375
|
+
onIgnoredError?.(error);
|
|
375
376
|
if (initialContent) {
|
|
376
377
|
setDefaultContent(initialContent);
|
|
377
378
|
}
|
|
@@ -323,13 +323,14 @@ const createCustomPersister = (
|
|
|
323
323
|
const content = await getPersisted();
|
|
324
324
|
if (isArray(content)) {
|
|
325
325
|
setContentOrChanges(content);
|
|
326
|
-
} else if (initialContent) {
|
|
326
|
+
} else if (isUndefined(content) && initialContent) {
|
|
327
327
|
setDefaultContent(initialContent);
|
|
328
|
-
} else {
|
|
328
|
+
} else if (!isUndefined(content)) {
|
|
329
329
|
errorNew(`Content is not an array: ${content}`);
|
|
330
330
|
}
|
|
331
331
|
},
|
|
332
|
-
() => {
|
|
332
|
+
(error) => {
|
|
333
|
+
onIgnoredError?.(error);
|
|
333
334
|
if (initialContent) {
|
|
334
335
|
setDefaultContent(initialContent);
|
|
335
336
|
}
|
|
@@ -323,13 +323,14 @@ const createCustomPersister = (
|
|
|
323
323
|
const content = await getPersisted();
|
|
324
324
|
if (isArray(content)) {
|
|
325
325
|
setContentOrChanges(content);
|
|
326
|
-
} else if (initialContent) {
|
|
326
|
+
} else if (isUndefined(content) && initialContent) {
|
|
327
327
|
setDefaultContent(initialContent);
|
|
328
|
-
} else {
|
|
328
|
+
} else if (!isUndefined(content)) {
|
|
329
329
|
errorNew(`Content is not an array: ${content}`);
|
|
330
330
|
}
|
|
331
331
|
},
|
|
332
|
-
() => {
|
|
332
|
+
(error) => {
|
|
333
|
+
onIgnoredError?.(error);
|
|
333
334
|
if (initialContent) {
|
|
334
335
|
setDefaultContent(initialContent);
|
|
335
336
|
}
|
|
@@ -512,13 +512,14 @@ const createCustomPersister = (
|
|
|
512
512
|
const content = await getPersisted();
|
|
513
513
|
if (isArray(content)) {
|
|
514
514
|
setContentOrChanges(content);
|
|
515
|
-
} else if (initialContent) {
|
|
515
|
+
} else if (isUndefined(content) && initialContent) {
|
|
516
516
|
setDefaultContent(initialContent);
|
|
517
|
-
} else {
|
|
517
|
+
} else if (!isUndefined(content)) {
|
|
518
518
|
errorNew(`Content is not an array: ${content}`);
|
|
519
519
|
}
|
|
520
520
|
},
|
|
521
|
-
() => {
|
|
521
|
+
(error) => {
|
|
522
|
+
onIgnoredError?.(error);
|
|
522
523
|
if (initialContent) {
|
|
523
524
|
setDefaultContent(initialContent);
|
|
524
525
|
}
|
|
@@ -512,13 +512,14 @@ const createCustomPersister = (
|
|
|
512
512
|
const content = await getPersisted();
|
|
513
513
|
if (isArray(content)) {
|
|
514
514
|
setContentOrChanges(content);
|
|
515
|
-
} else if (initialContent) {
|
|
515
|
+
} else if (isUndefined(content) && initialContent) {
|
|
516
516
|
setDefaultContent(initialContent);
|
|
517
|
-
} else {
|
|
517
|
+
} else if (!isUndefined(content)) {
|
|
518
518
|
errorNew(`Content is not an array: ${content}`);
|
|
519
519
|
}
|
|
520
520
|
},
|
|
521
|
-
() => {
|
|
521
|
+
(error) => {
|
|
522
|
+
onIgnoredError?.(error);
|
|
522
523
|
if (initialContent) {
|
|
523
524
|
setDefaultContent(initialContent);
|
|
524
525
|
}
|
|
@@ -514,13 +514,14 @@ const createCustomPersister = (
|
|
|
514
514
|
const content = await getPersisted();
|
|
515
515
|
if (isArray(content)) {
|
|
516
516
|
setContentOrChanges(content);
|
|
517
|
-
} else if (initialContent) {
|
|
517
|
+
} else if (isUndefined(content) && initialContent) {
|
|
518
518
|
setDefaultContent(initialContent);
|
|
519
|
-
} else {
|
|
519
|
+
} else if (!isUndefined(content)) {
|
|
520
520
|
errorNew(`Content is not an array: ${content}`);
|
|
521
521
|
}
|
|
522
522
|
},
|
|
523
|
-
() => {
|
|
523
|
+
(error) => {
|
|
524
|
+
onIgnoredError?.(error);
|
|
524
525
|
if (initialContent) {
|
|
525
526
|
setDefaultContent(initialContent);
|
|
526
527
|
}
|
|
@@ -514,13 +514,14 @@ const createCustomPersister = (
|
|
|
514
514
|
const content = await getPersisted();
|
|
515
515
|
if (isArray(content)) {
|
|
516
516
|
setContentOrChanges(content);
|
|
517
|
-
} else if (initialContent) {
|
|
517
|
+
} else if (isUndefined(content) && initialContent) {
|
|
518
518
|
setDefaultContent(initialContent);
|
|
519
|
-
} else {
|
|
519
|
+
} else if (!isUndefined(content)) {
|
|
520
520
|
errorNew(`Content is not an array: ${content}`);
|
|
521
521
|
}
|
|
522
522
|
},
|
|
523
|
-
() => {
|
|
523
|
+
(error) => {
|
|
524
|
+
onIgnoredError?.(error);
|
|
524
525
|
if (initialContent) {
|
|
525
526
|
setDefaultContent(initialContent);
|
|
526
527
|
}
|
|
@@ -311,13 +311,14 @@ const createCustomPersister = (
|
|
|
311
311
|
const content = await getPersisted();
|
|
312
312
|
if (isArray(content)) {
|
|
313
313
|
setContentOrChanges(content);
|
|
314
|
-
} else if (initialContent) {
|
|
314
|
+
} else if (isUndefined(content) && initialContent) {
|
|
315
315
|
setDefaultContent(initialContent);
|
|
316
|
-
} else {
|
|
316
|
+
} else if (!isUndefined(content)) {
|
|
317
317
|
errorNew(`Content is not an array: ${content}`);
|
|
318
318
|
}
|
|
319
319
|
},
|
|
320
|
-
() => {
|
|
320
|
+
(error) => {
|
|
321
|
+
onIgnoredError?.(error);
|
|
321
322
|
if (initialContent) {
|
|
322
323
|
setDefaultContent(initialContent);
|
|
323
324
|
}
|