tinybase 8.6.0-beta.0 → 9.0.0-beta.1
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/_internal/queries/with-schemas/index.d.ts +1 -2
- package/@types/_internal/ui/with-schemas/index.d.ts +8 -16
- 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 +34 -13
- package/@types/persisters/persister-durable-object-sql-storage/index.d.ts +9 -8
- package/@types/persisters/persister-durable-object-sql-storage/with-schemas/index.d.ts +10 -10
- package/@types/persisters/with-schemas/index.d.ts +72 -30
- package/@types/queries/index.d.ts +5 -7
- package/@types/queries/with-schemas/index.d.ts +9 -15
- package/@types/store/index.d.ts +1 -2
- package/@types/store/with-schemas/index.d.ts +19 -29
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +9 -3
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +10 -3
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +15 -2
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +17 -2
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +51 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +51 -0
- package/@types/ui-react/with-schemas/index.d.ts +3 -6
- package/@types/ui-react-dom/with-schemas/index.d.ts +6 -12
- package/@types/ui-react-dom-charts/with-schemas/index.d.ts +3 -4
- package/@types/ui-solid/with-schemas/index.d.ts +4 -8
- package/@types/ui-solid-dom/with-schemas/index.d.ts +6 -12
- package/@types/ui-svelte-dom/with-schemas/index.d.ts +6 -12
- package/index.js +67 -25
- package/indexes/index.js +6 -8
- package/indexes/with-schemas/index.js +6 -8
- package/mergeable-store/index.js +46 -6
- package/mergeable-store/with-schemas/index.js +46 -6
- package/metrics/index.js +6 -8
- package/metrics/with-schemas/index.js +6 -8
- 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/queries/index.js +1 -1
- package/min/queries/index.js.gz +0 -0
- package/min/queries/with-schemas/index.js +1 -1
- package/min/queries/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 +364 -155
- package/omni/with-schemas/index.js +364 -155
- package/package.json +8 -8
- package/persisters/index.js +133 -40
- 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 +133 -40
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +133 -40
- package/persisters/persister-durable-object-sql-storage/index.js +275 -113
- package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +275 -113
- 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 +133 -40
- package/persisters/persister-electric-sql/with-schemas/index.js +133 -40
- package/persisters/persister-expo-sqlite/index.js +133 -40
- package/persisters/persister-expo-sqlite/with-schemas/index.js +133 -40
- 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 +133 -40
- package/persisters/persister-libsql/with-schemas/index.js +133 -40
- 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 +134 -40
- package/persisters/persister-pglite/with-schemas/index.js +134 -40
- package/persisters/persister-postgres/index.js +134 -40
- package/persisters/persister-postgres/with-schemas/index.js +134 -40
- package/persisters/persister-powersync/index.js +186 -120
- package/persisters/persister-powersync/with-schemas/index.js +186 -120
- 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 +133 -40
- package/persisters/persister-react-native-sqlite/with-schemas/index.js +133 -40
- 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 +133 -40
- package/persisters/persister-sqlite-bun/with-schemas/index.js +133 -40
- package/persisters/persister-sqlite-wasm/index.js +133 -40
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +133 -40
- package/persisters/persister-sqlite3/index.js +133 -40
- package/persisters/persister-sqlite3/with-schemas/index.js +133 -40
- package/persisters/persister-yjs/index.js +4 -3
- package/persisters/persister-yjs/with-schemas/index.js +4 -3
- package/persisters/with-schemas/index.js +133 -40
- package/queries/index.js +21 -19
- package/queries/with-schemas/index.js +21 -19
- package/readme.md +14 -14
- package/relationships/index.js +6 -8
- package/relationships/with-schemas/index.js +6 -8
- package/releases.md +72 -57
- 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 +120 -45
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +120 -45
- package/synchronizers/synchronizer-ws-server/index.js +116 -36
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +116 -36
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +125 -41
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +125 -41
- 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/index.js +1 -1
- package/ui-svelte/with-schemas/index.js +1 -1
- package/ui-svelte-dom/index.js +2 -2
- package/ui-svelte-dom/with-schemas/index.js +2 -2
- package/ui-svelte-inspector/index.js +38 -7
- package/ui-svelte-inspector/with-schemas/index.js +38 -7
- package/with-schemas/index.js +67 -25
|
@@ -989,13 +989,13 @@ const createCustomPersister = (
|
|
|
989
989
|
const content = await getPersisted();
|
|
990
990
|
if (isArray(content)) {
|
|
991
991
|
setContentOrChanges(content);
|
|
992
|
-
} else if (initialContent) {
|
|
992
|
+
} else if (isUndefined(content) && initialContent) {
|
|
993
993
|
setDefaultContent(initialContent);
|
|
994
|
-
} else {
|
|
994
|
+
} else if (!isUndefined(content)) {
|
|
995
995
|
errorNew(`Content is not an array: ${content}`);
|
|
996
996
|
}
|
|
997
997
|
},
|
|
998
|
-
() => {
|
|
998
|
+
(error) => {
|
|
999
999
|
if (initialContent) {
|
|
1000
1000
|
setDefaultContent(initialContent);
|
|
1001
1001
|
}
|
|
@@ -1248,8 +1248,10 @@ const createStore = () => {
|
|
|
1248
1248
|
const changedRowIds = mapNew();
|
|
1249
1249
|
const changedCellIds = mapNew();
|
|
1250
1250
|
const changedCells = mapNew();
|
|
1251
|
+
const defaultedCells = mapNew();
|
|
1251
1252
|
const changedValueIds = mapNew();
|
|
1252
1253
|
const changedValues = mapNew();
|
|
1254
|
+
const defaultedValues = setNew();
|
|
1253
1255
|
const invalidCells = mapNew();
|
|
1254
1256
|
const invalidValues = mapNew();
|
|
1255
1257
|
const tablesSchemaMap = mapNew();
|
|
@@ -1423,6 +1425,16 @@ const createStore = () => {
|
|
|
1423
1425
|
collForEach(rowDefaulted, (cell, cellId) => {
|
|
1424
1426
|
if (!objHas(row, cellId)) {
|
|
1425
1427
|
row[cellId] = cell;
|
|
1428
|
+
ifNotUndefined(rowId, (rowId2) =>
|
|
1429
|
+
setAdd(
|
|
1430
|
+
mapEnsure(
|
|
1431
|
+
mapEnsure(defaultedCells, tableId, mapNew),
|
|
1432
|
+
rowId2,
|
|
1433
|
+
setNew,
|
|
1434
|
+
),
|
|
1435
|
+
cellId,
|
|
1436
|
+
),
|
|
1437
|
+
);
|
|
1426
1438
|
}
|
|
1427
1439
|
});
|
|
1428
1440
|
collForEach(rowNonDefaulted, (cellId) => {
|
|
@@ -1439,6 +1451,7 @@ const createStore = () => {
|
|
|
1439
1451
|
collForEach(valuesDefaulted, (value, valueId) => {
|
|
1440
1452
|
if (!objHas(values, valueId)) {
|
|
1441
1453
|
values[valueId] = value;
|
|
1454
|
+
setAdd(defaultedValues, valueId);
|
|
1442
1455
|
}
|
|
1443
1456
|
});
|
|
1444
1457
|
collForEach(valuesNonDefaulted, (valueId) => {
|
|
@@ -1842,18 +1855,34 @@ const createStore = () => {
|
|
|
1842
1855
|
);
|
|
1843
1856
|
};
|
|
1844
1857
|
const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
|
|
1858
|
+
const defaulted =
|
|
1859
|
+
collHas(mapGet(mapGet(defaultedCells, tableId), rowId), cellId) &&
|
|
1860
|
+
isUndefined(oldCell)
|
|
1861
|
+
? 1
|
|
1862
|
+
: 0;
|
|
1845
1863
|
mapEnsure(
|
|
1846
1864
|
mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
|
|
1847
1865
|
cellId,
|
|
1848
1866
|
() => [oldCell, 0],
|
|
1849
1867
|
)[1] = newCell;
|
|
1850
|
-
internalListeners[3]?.(
|
|
1868
|
+
internalListeners[3]?.(
|
|
1869
|
+
tableId,
|
|
1870
|
+
rowId,
|
|
1871
|
+
cellId,
|
|
1872
|
+
newCell,
|
|
1873
|
+
mutating,
|
|
1874
|
+
defaulted,
|
|
1875
|
+
);
|
|
1876
|
+
collDel(mapGet(mapGet(defaultedCells, tableId), rowId), cellId);
|
|
1851
1877
|
};
|
|
1852
1878
|
const valueIdsChanged = (valueId, addedOrRemoved) =>
|
|
1853
1879
|
idsChanged(changedValueIds, valueId, addedOrRemoved);
|
|
1854
1880
|
const valueChanged = (valueId, oldValue, newValue) => {
|
|
1881
|
+
const defaulted =
|
|
1882
|
+
collHas(defaultedValues, valueId) && isUndefined(oldValue) ? 1 : 0;
|
|
1855
1883
|
mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
|
|
1856
|
-
internalListeners[4]?.(valueId, newValue, mutating);
|
|
1884
|
+
internalListeners[4]?.(valueId, newValue, mutating, defaulted);
|
|
1885
|
+
collDel(defaultedValues, valueId);
|
|
1857
1886
|
};
|
|
1858
1887
|
const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
|
|
1859
1888
|
arrayPush(
|
|
@@ -2641,9 +2670,11 @@ const createStore = () => {
|
|
|
2641
2670
|
changedRowIds,
|
|
2642
2671
|
changedCellIds,
|
|
2643
2672
|
changedCells,
|
|
2673
|
+
defaultedCells,
|
|
2644
2674
|
invalidCells,
|
|
2645
2675
|
changedValueIds,
|
|
2646
2676
|
changedValues,
|
|
2677
|
+
defaultedValues,
|
|
2647
2678
|
invalidValues,
|
|
2648
2679
|
],
|
|
2649
2680
|
collClear,
|
|
@@ -989,13 +989,13 @@ const createCustomPersister = (
|
|
|
989
989
|
const content = await getPersisted();
|
|
990
990
|
if (isArray(content)) {
|
|
991
991
|
setContentOrChanges(content);
|
|
992
|
-
} else if (initialContent) {
|
|
992
|
+
} else if (isUndefined(content) && initialContent) {
|
|
993
993
|
setDefaultContent(initialContent);
|
|
994
|
-
} else {
|
|
994
|
+
} else if (!isUndefined(content)) {
|
|
995
995
|
errorNew(`Content is not an array: ${content}`);
|
|
996
996
|
}
|
|
997
997
|
},
|
|
998
|
-
() => {
|
|
998
|
+
(error) => {
|
|
999
999
|
if (initialContent) {
|
|
1000
1000
|
setDefaultContent(initialContent);
|
|
1001
1001
|
}
|
|
@@ -1248,8 +1248,10 @@ const createStore = () => {
|
|
|
1248
1248
|
const changedRowIds = mapNew();
|
|
1249
1249
|
const changedCellIds = mapNew();
|
|
1250
1250
|
const changedCells = mapNew();
|
|
1251
|
+
const defaultedCells = mapNew();
|
|
1251
1252
|
const changedValueIds = mapNew();
|
|
1252
1253
|
const changedValues = mapNew();
|
|
1254
|
+
const defaultedValues = setNew();
|
|
1253
1255
|
const invalidCells = mapNew();
|
|
1254
1256
|
const invalidValues = mapNew();
|
|
1255
1257
|
const tablesSchemaMap = mapNew();
|
|
@@ -1423,6 +1425,16 @@ const createStore = () => {
|
|
|
1423
1425
|
collForEach(rowDefaulted, (cell, cellId) => {
|
|
1424
1426
|
if (!objHas(row, cellId)) {
|
|
1425
1427
|
row[cellId] = cell;
|
|
1428
|
+
ifNotUndefined(rowId, (rowId2) =>
|
|
1429
|
+
setAdd(
|
|
1430
|
+
mapEnsure(
|
|
1431
|
+
mapEnsure(defaultedCells, tableId, mapNew),
|
|
1432
|
+
rowId2,
|
|
1433
|
+
setNew,
|
|
1434
|
+
),
|
|
1435
|
+
cellId,
|
|
1436
|
+
),
|
|
1437
|
+
);
|
|
1426
1438
|
}
|
|
1427
1439
|
});
|
|
1428
1440
|
collForEach(rowNonDefaulted, (cellId) => {
|
|
@@ -1439,6 +1451,7 @@ const createStore = () => {
|
|
|
1439
1451
|
collForEach(valuesDefaulted, (value, valueId) => {
|
|
1440
1452
|
if (!objHas(values, valueId)) {
|
|
1441
1453
|
values[valueId] = value;
|
|
1454
|
+
setAdd(defaultedValues, valueId);
|
|
1442
1455
|
}
|
|
1443
1456
|
});
|
|
1444
1457
|
collForEach(valuesNonDefaulted, (valueId) => {
|
|
@@ -1842,18 +1855,34 @@ const createStore = () => {
|
|
|
1842
1855
|
);
|
|
1843
1856
|
};
|
|
1844
1857
|
const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
|
|
1858
|
+
const defaulted =
|
|
1859
|
+
collHas(mapGet(mapGet(defaultedCells, tableId), rowId), cellId) &&
|
|
1860
|
+
isUndefined(oldCell)
|
|
1861
|
+
? 1
|
|
1862
|
+
: 0;
|
|
1845
1863
|
mapEnsure(
|
|
1846
1864
|
mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
|
|
1847
1865
|
cellId,
|
|
1848
1866
|
() => [oldCell, 0],
|
|
1849
1867
|
)[1] = newCell;
|
|
1850
|
-
internalListeners[3]?.(
|
|
1868
|
+
internalListeners[3]?.(
|
|
1869
|
+
tableId,
|
|
1870
|
+
rowId,
|
|
1871
|
+
cellId,
|
|
1872
|
+
newCell,
|
|
1873
|
+
mutating,
|
|
1874
|
+
defaulted,
|
|
1875
|
+
);
|
|
1876
|
+
collDel(mapGet(mapGet(defaultedCells, tableId), rowId), cellId);
|
|
1851
1877
|
};
|
|
1852
1878
|
const valueIdsChanged = (valueId, addedOrRemoved) =>
|
|
1853
1879
|
idsChanged(changedValueIds, valueId, addedOrRemoved);
|
|
1854
1880
|
const valueChanged = (valueId, oldValue, newValue) => {
|
|
1881
|
+
const defaulted =
|
|
1882
|
+
collHas(defaultedValues, valueId) && isUndefined(oldValue) ? 1 : 0;
|
|
1855
1883
|
mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
|
|
1856
|
-
internalListeners[4]?.(valueId, newValue, mutating);
|
|
1884
|
+
internalListeners[4]?.(valueId, newValue, mutating, defaulted);
|
|
1885
|
+
collDel(defaultedValues, valueId);
|
|
1857
1886
|
};
|
|
1858
1887
|
const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
|
|
1859
1888
|
arrayPush(
|
|
@@ -2641,9 +2670,11 @@ const createStore = () => {
|
|
|
2641
2670
|
changedRowIds,
|
|
2642
2671
|
changedCellIds,
|
|
2643
2672
|
changedCells,
|
|
2673
|
+
defaultedCells,
|
|
2644
2674
|
invalidCells,
|
|
2645
2675
|
changedValueIds,
|
|
2646
2676
|
changedValues,
|
|
2677
|
+
defaultedValues,
|
|
2647
2678
|
invalidValues,
|
|
2648
2679
|
],
|
|
2649
2680
|
collClear,
|
package/ui-svelte/index.js
CHANGED
|
@@ -60,7 +60,7 @@ const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
|
60
60
|
|
|
61
61
|
const TINYBASE_CONTEXT_KEY = TINYBASE + '_uisc';
|
|
62
62
|
|
|
63
|
-
/* functions.svelte.ts generated by Svelte v5.56.
|
|
63
|
+
/* functions.svelte.ts generated by Svelte v5.56.4 */
|
|
64
64
|
|
|
65
65
|
class ReactiveHandle {
|
|
66
66
|
#get;
|
|
@@ -60,7 +60,7 @@ const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
|
60
60
|
|
|
61
61
|
const TINYBASE_CONTEXT_KEY = TINYBASE + '_uisc';
|
|
62
62
|
|
|
63
|
-
/* functions.svelte.ts generated by Svelte v5.56.
|
|
63
|
+
/* functions.svelte.ts generated by Svelte v5.56.4 */
|
|
64
64
|
|
|
65
65
|
class ReactiveHandle {
|
|
66
66
|
#get;
|
package/ui-svelte-dom/index.js
CHANGED
|
@@ -91,7 +91,7 @@ const objMap = (obj, cb) =>
|
|
|
91
91
|
|
|
92
92
|
const TINYBASE_CONTEXT_KEY = TINYBASE + '_uisc';
|
|
93
93
|
|
|
94
|
-
/* functions.svelte.ts generated by Svelte v5.56.
|
|
94
|
+
/* functions.svelte.ts generated by Svelte v5.56.4 */
|
|
95
95
|
|
|
96
96
|
class ReactiveHandle {
|
|
97
97
|
#get;
|
|
@@ -1693,7 +1693,7 @@ function SortedTablePaginator($$anchor, $$props) {
|
|
|
1693
1693
|
|
|
1694
1694
|
$.delegate(['click']);
|
|
1695
1695
|
|
|
1696
|
-
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.
|
|
1696
|
+
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.4 */
|
|
1697
1697
|
|
|
1698
1698
|
const createSortingAndPagination = (
|
|
1699
1699
|
getCellId,
|
|
@@ -91,7 +91,7 @@ const objMap = (obj, cb) =>
|
|
|
91
91
|
|
|
92
92
|
const TINYBASE_CONTEXT_KEY = TINYBASE + '_uisc';
|
|
93
93
|
|
|
94
|
-
/* functions.svelte.ts generated by Svelte v5.56.
|
|
94
|
+
/* functions.svelte.ts generated by Svelte v5.56.4 */
|
|
95
95
|
|
|
96
96
|
class ReactiveHandle {
|
|
97
97
|
#get;
|
|
@@ -1693,7 +1693,7 @@ function SortedTablePaginator($$anchor, $$props) {
|
|
|
1693
1693
|
|
|
1694
1694
|
$.delegate(['click']);
|
|
1695
1695
|
|
|
1696
|
-
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.
|
|
1696
|
+
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.4 */
|
|
1697
1697
|
|
|
1698
1698
|
const createSortingAndPagination = (
|
|
1699
1699
|
getCellId,
|
|
@@ -907,13 +907,13 @@ const createCustomPersister = (
|
|
|
907
907
|
const content = await getPersisted();
|
|
908
908
|
if (isArray(content)) {
|
|
909
909
|
setContentOrChanges(content);
|
|
910
|
-
} else if (initialContent) {
|
|
910
|
+
} else if (isUndefined(content) && initialContent) {
|
|
911
911
|
setDefaultContent(initialContent);
|
|
912
|
-
} else {
|
|
912
|
+
} else if (!isUndefined(content)) {
|
|
913
913
|
errorNew(`Content is not an array: ${content}`);
|
|
914
914
|
}
|
|
915
915
|
},
|
|
916
|
-
() => {
|
|
916
|
+
(error) => {
|
|
917
917
|
if (initialContent) {
|
|
918
918
|
setDefaultContent(initialContent);
|
|
919
919
|
}
|
|
@@ -1166,8 +1166,10 @@ const createStore = () => {
|
|
|
1166
1166
|
const changedRowIds = mapNew();
|
|
1167
1167
|
const changedCellIds = mapNew();
|
|
1168
1168
|
const changedCells = mapNew();
|
|
1169
|
+
const defaultedCells = mapNew();
|
|
1169
1170
|
const changedValueIds = mapNew();
|
|
1170
1171
|
const changedValues = mapNew();
|
|
1172
|
+
const defaultedValues = setNew();
|
|
1171
1173
|
const invalidCells = mapNew();
|
|
1172
1174
|
const invalidValues = mapNew();
|
|
1173
1175
|
const tablesSchemaMap = mapNew();
|
|
@@ -1341,6 +1343,16 @@ const createStore = () => {
|
|
|
1341
1343
|
collForEach(rowDefaulted, (cell, cellId) => {
|
|
1342
1344
|
if (!objHas(row, cellId)) {
|
|
1343
1345
|
row[cellId] = cell;
|
|
1346
|
+
ifNotUndefined(rowId, (rowId2) =>
|
|
1347
|
+
setAdd(
|
|
1348
|
+
mapEnsure(
|
|
1349
|
+
mapEnsure(defaultedCells, tableId, mapNew),
|
|
1350
|
+
rowId2,
|
|
1351
|
+
setNew,
|
|
1352
|
+
),
|
|
1353
|
+
cellId,
|
|
1354
|
+
),
|
|
1355
|
+
);
|
|
1344
1356
|
}
|
|
1345
1357
|
});
|
|
1346
1358
|
collForEach(rowNonDefaulted, (cellId) => {
|
|
@@ -1357,6 +1369,7 @@ const createStore = () => {
|
|
|
1357
1369
|
collForEach(valuesDefaulted, (value, valueId) => {
|
|
1358
1370
|
if (!objHas(values, valueId)) {
|
|
1359
1371
|
values[valueId] = value;
|
|
1372
|
+
setAdd(defaultedValues, valueId);
|
|
1360
1373
|
}
|
|
1361
1374
|
});
|
|
1362
1375
|
collForEach(valuesNonDefaulted, (valueId) => {
|
|
@@ -1760,18 +1773,34 @@ const createStore = () => {
|
|
|
1760
1773
|
);
|
|
1761
1774
|
};
|
|
1762
1775
|
const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
|
|
1776
|
+
const defaulted =
|
|
1777
|
+
collHas(mapGet(mapGet(defaultedCells, tableId), rowId), cellId) &&
|
|
1778
|
+
isUndefined(oldCell)
|
|
1779
|
+
? 1
|
|
1780
|
+
: 0;
|
|
1763
1781
|
mapEnsure(
|
|
1764
1782
|
mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
|
|
1765
1783
|
cellId,
|
|
1766
1784
|
() => [oldCell, 0],
|
|
1767
1785
|
)[1] = newCell;
|
|
1768
|
-
internalListeners[3]?.(
|
|
1786
|
+
internalListeners[3]?.(
|
|
1787
|
+
tableId,
|
|
1788
|
+
rowId,
|
|
1789
|
+
cellId,
|
|
1790
|
+
newCell,
|
|
1791
|
+
mutating,
|
|
1792
|
+
defaulted,
|
|
1793
|
+
);
|
|
1794
|
+
collDel(mapGet(mapGet(defaultedCells, tableId), rowId), cellId);
|
|
1769
1795
|
};
|
|
1770
1796
|
const valueIdsChanged = (valueId, addedOrRemoved) =>
|
|
1771
1797
|
idsChanged(changedValueIds, valueId, addedOrRemoved);
|
|
1772
1798
|
const valueChanged = (valueId, oldValue, newValue) => {
|
|
1799
|
+
const defaulted =
|
|
1800
|
+
collHas(defaultedValues, valueId) && isUndefined(oldValue) ? 1 : 0;
|
|
1773
1801
|
mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
|
|
1774
|
-
internalListeners[4]?.(valueId, newValue, mutating);
|
|
1802
|
+
internalListeners[4]?.(valueId, newValue, mutating, defaulted);
|
|
1803
|
+
collDel(defaultedValues, valueId);
|
|
1775
1804
|
};
|
|
1776
1805
|
const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
|
|
1777
1806
|
arrayPush(
|
|
@@ -2559,9 +2588,11 @@ const createStore = () => {
|
|
|
2559
2588
|
changedRowIds,
|
|
2560
2589
|
changedCellIds,
|
|
2561
2590
|
changedCells,
|
|
2591
|
+
defaultedCells,
|
|
2562
2592
|
invalidCells,
|
|
2563
2593
|
changedValueIds,
|
|
2564
2594
|
changedValues,
|
|
2595
|
+
defaultedValues,
|
|
2565
2596
|
invalidValues,
|
|
2566
2597
|
],
|
|
2567
2598
|
collClear,
|
|
@@ -2879,7 +2910,7 @@ const createStore = () => {
|
|
|
2879
2910
|
|
|
2880
2911
|
const TINYBASE_CONTEXT_KEY = TINYBASE + '_uisc';
|
|
2881
2912
|
|
|
2882
|
-
/* functions.svelte.ts generated by Svelte v5.56.
|
|
2913
|
+
/* functions.svelte.ts generated by Svelte v5.56.4 */
|
|
2883
2914
|
|
|
2884
2915
|
class ReactiveHandle {
|
|
2885
2916
|
#get;
|
|
@@ -4724,7 +4755,7 @@ function SortedTablePaginator($$anchor, $$props) {
|
|
|
4724
4755
|
|
|
4725
4756
|
$.delegate(['click']);
|
|
4726
4757
|
|
|
4727
|
-
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.
|
|
4758
|
+
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.4 */
|
|
4728
4759
|
|
|
4729
4760
|
const createSortingAndPagination = (
|
|
4730
4761
|
getCellId,
|
|
@@ -907,13 +907,13 @@ const createCustomPersister = (
|
|
|
907
907
|
const content = await getPersisted();
|
|
908
908
|
if (isArray(content)) {
|
|
909
909
|
setContentOrChanges(content);
|
|
910
|
-
} else if (initialContent) {
|
|
910
|
+
} else if (isUndefined(content) && initialContent) {
|
|
911
911
|
setDefaultContent(initialContent);
|
|
912
|
-
} else {
|
|
912
|
+
} else if (!isUndefined(content)) {
|
|
913
913
|
errorNew(`Content is not an array: ${content}`);
|
|
914
914
|
}
|
|
915
915
|
},
|
|
916
|
-
() => {
|
|
916
|
+
(error) => {
|
|
917
917
|
if (initialContent) {
|
|
918
918
|
setDefaultContent(initialContent);
|
|
919
919
|
}
|
|
@@ -1166,8 +1166,10 @@ const createStore = () => {
|
|
|
1166
1166
|
const changedRowIds = mapNew();
|
|
1167
1167
|
const changedCellIds = mapNew();
|
|
1168
1168
|
const changedCells = mapNew();
|
|
1169
|
+
const defaultedCells = mapNew();
|
|
1169
1170
|
const changedValueIds = mapNew();
|
|
1170
1171
|
const changedValues = mapNew();
|
|
1172
|
+
const defaultedValues = setNew();
|
|
1171
1173
|
const invalidCells = mapNew();
|
|
1172
1174
|
const invalidValues = mapNew();
|
|
1173
1175
|
const tablesSchemaMap = mapNew();
|
|
@@ -1341,6 +1343,16 @@ const createStore = () => {
|
|
|
1341
1343
|
collForEach(rowDefaulted, (cell, cellId) => {
|
|
1342
1344
|
if (!objHas(row, cellId)) {
|
|
1343
1345
|
row[cellId] = cell;
|
|
1346
|
+
ifNotUndefined(rowId, (rowId2) =>
|
|
1347
|
+
setAdd(
|
|
1348
|
+
mapEnsure(
|
|
1349
|
+
mapEnsure(defaultedCells, tableId, mapNew),
|
|
1350
|
+
rowId2,
|
|
1351
|
+
setNew,
|
|
1352
|
+
),
|
|
1353
|
+
cellId,
|
|
1354
|
+
),
|
|
1355
|
+
);
|
|
1344
1356
|
}
|
|
1345
1357
|
});
|
|
1346
1358
|
collForEach(rowNonDefaulted, (cellId) => {
|
|
@@ -1357,6 +1369,7 @@ const createStore = () => {
|
|
|
1357
1369
|
collForEach(valuesDefaulted, (value, valueId) => {
|
|
1358
1370
|
if (!objHas(values, valueId)) {
|
|
1359
1371
|
values[valueId] = value;
|
|
1372
|
+
setAdd(defaultedValues, valueId);
|
|
1360
1373
|
}
|
|
1361
1374
|
});
|
|
1362
1375
|
collForEach(valuesNonDefaulted, (valueId) => {
|
|
@@ -1760,18 +1773,34 @@ const createStore = () => {
|
|
|
1760
1773
|
);
|
|
1761
1774
|
};
|
|
1762
1775
|
const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
|
|
1776
|
+
const defaulted =
|
|
1777
|
+
collHas(mapGet(mapGet(defaultedCells, tableId), rowId), cellId) &&
|
|
1778
|
+
isUndefined(oldCell)
|
|
1779
|
+
? 1
|
|
1780
|
+
: 0;
|
|
1763
1781
|
mapEnsure(
|
|
1764
1782
|
mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
|
|
1765
1783
|
cellId,
|
|
1766
1784
|
() => [oldCell, 0],
|
|
1767
1785
|
)[1] = newCell;
|
|
1768
|
-
internalListeners[3]?.(
|
|
1786
|
+
internalListeners[3]?.(
|
|
1787
|
+
tableId,
|
|
1788
|
+
rowId,
|
|
1789
|
+
cellId,
|
|
1790
|
+
newCell,
|
|
1791
|
+
mutating,
|
|
1792
|
+
defaulted,
|
|
1793
|
+
);
|
|
1794
|
+
collDel(mapGet(mapGet(defaultedCells, tableId), rowId), cellId);
|
|
1769
1795
|
};
|
|
1770
1796
|
const valueIdsChanged = (valueId, addedOrRemoved) =>
|
|
1771
1797
|
idsChanged(changedValueIds, valueId, addedOrRemoved);
|
|
1772
1798
|
const valueChanged = (valueId, oldValue, newValue) => {
|
|
1799
|
+
const defaulted =
|
|
1800
|
+
collHas(defaultedValues, valueId) && isUndefined(oldValue) ? 1 : 0;
|
|
1773
1801
|
mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
|
|
1774
|
-
internalListeners[4]?.(valueId, newValue, mutating);
|
|
1802
|
+
internalListeners[4]?.(valueId, newValue, mutating, defaulted);
|
|
1803
|
+
collDel(defaultedValues, valueId);
|
|
1775
1804
|
};
|
|
1776
1805
|
const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
|
|
1777
1806
|
arrayPush(
|
|
@@ -2559,9 +2588,11 @@ const createStore = () => {
|
|
|
2559
2588
|
changedRowIds,
|
|
2560
2589
|
changedCellIds,
|
|
2561
2590
|
changedCells,
|
|
2591
|
+
defaultedCells,
|
|
2562
2592
|
invalidCells,
|
|
2563
2593
|
changedValueIds,
|
|
2564
2594
|
changedValues,
|
|
2595
|
+
defaultedValues,
|
|
2565
2596
|
invalidValues,
|
|
2566
2597
|
],
|
|
2567
2598
|
collClear,
|
|
@@ -2879,7 +2910,7 @@ const createStore = () => {
|
|
|
2879
2910
|
|
|
2880
2911
|
const TINYBASE_CONTEXT_KEY = TINYBASE + '_uisc';
|
|
2881
2912
|
|
|
2882
|
-
/* functions.svelte.ts generated by Svelte v5.56.
|
|
2913
|
+
/* functions.svelte.ts generated by Svelte v5.56.4 */
|
|
2883
2914
|
|
|
2884
2915
|
class ReactiveHandle {
|
|
2885
2916
|
#get;
|
|
@@ -4724,7 +4755,7 @@ function SortedTablePaginator($$anchor, $$props) {
|
|
|
4724
4755
|
|
|
4725
4756
|
$.delegate(['click']);
|
|
4726
4757
|
|
|
4727
|
-
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.
|
|
4758
|
+
/* sortingAndPagination.svelte.ts generated by Svelte v5.56.4 */
|
|
4728
4759
|
|
|
4729
4760
|
const createSortingAndPagination = (
|
|
4730
4761
|
getCellId,
|