tinybase 4.3.22 → 4.3.24
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/lib/cjs/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-browser.cjs +1 -1
- package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-remote.cjs +1 -1
- package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs/persisters.cjs +1 -1
- package/lib/cjs/persisters.cjs.gz +0 -0
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs-es6/persisters.cjs +1 -1
- package/lib/cjs-es6/persisters.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/persisters/persister-automerge.js +9 -2
- package/lib/debug/persisters/persister-browser.js +9 -1
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +9 -1
- package/lib/debug/persisters/persister-expo-sqlite.js +9 -1
- package/lib/debug/persisters/persister-file.js +9 -1
- package/lib/debug/persisters/persister-indexed-db.js +9 -2
- package/lib/debug/persisters/persister-partykit-client.js +9 -1
- package/lib/debug/persisters/persister-remote.js +9 -1
- package/lib/debug/persisters/persister-sqlite-wasm.js +9 -1
- package/lib/debug/persisters/persister-sqlite3.js +10 -2
- package/lib/debug/persisters/persister-yjs.js +9 -2
- package/lib/debug/persisters.js +9 -2
- package/lib/debug/store.js +9 -1
- package/lib/debug/tinybase.js +9 -1
- package/lib/debug/tools.js +11 -2
- package/lib/debug/ui-react-dom.js +9 -1
- package/lib/debug/ui-react.js +90 -72
- package/lib/es6/persisters/persister-automerge.js +1 -1
- package/lib/es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/es6/persisters/persister-browser.js +1 -1
- package/lib/es6/persisters/persister-browser.js.gz +0 -0
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-file.js +1 -1
- package/lib/es6/persisters/persister-file.js.gz +0 -0
- package/lib/es6/persisters/persister-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-client.js +1 -1
- package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/es6/persisters/persister-remote.js +1 -1
- package/lib/es6/persisters/persister-remote.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite3.js +1 -1
- package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/es6/persisters/persister-yjs.js +1 -1
- package/lib/es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react-dom-debug.js +1 -1
- package/lib/es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/persisters/persister-automerge.js +1 -1
- package/lib/persisters/persister-automerge.js.gz +0 -0
- package/lib/persisters/persister-browser.js +1 -1
- package/lib/persisters/persister-browser.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-file.js +1 -1
- package/lib/persisters/persister-file.js.gz +0 -0
- package/lib/persisters/persister-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-partykit-client.js +1 -1
- package/lib/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/persisters/persister-remote.js +1 -1
- package/lib/persisters/persister-remote.js.gz +0 -0
- package/lib/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-sqlite3.js +1 -1
- package/lib/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/persisters/persister-yjs.js +1 -1
- package/lib/persisters/persister-yjs.js.gz +0 -0
- package/lib/persisters.js +1 -1
- package/lib/persisters.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/persisters/persister-automerge.js +1 -1
- package/lib/umd/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd/persisters/persister-browser.js +1 -1
- package/lib/umd/persisters/persister-browser.js.gz +0 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-file.js +1 -1
- package/lib/umd/persisters/persister-file.js.gz +0 -0
- package/lib/umd/persisters/persister-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-client.js +1 -1
- package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd/persisters/persister-remote.js +1 -1
- package/lib/umd/persisters/persister-remote.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite3.js +1 -1
- package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd/persisters/persister-yjs.js +1 -1
- package/lib/umd/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react-dom-debug.js +1 -1
- package/lib/umd/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-automerge.js +1 -1
- package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-browser.js +1 -1
- package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-remote.js +1 -1
- package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-yjs.js +1 -1
- package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd-es6/persisters.js +1 -1
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom-debug.js +1 -1
- package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +25 -25
- package/readme.md +2 -2
|
@@ -31,10 +31,18 @@ const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
|
31
31
|
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
32
32
|
|
|
33
33
|
const object = Object;
|
|
34
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
34
35
|
const objIds = object.keys;
|
|
35
36
|
const objFreeze = object.freeze;
|
|
36
37
|
const isObject = (obj) =>
|
|
37
|
-
|
|
38
|
+
!isUndefined(obj) &&
|
|
39
|
+
ifNotUndefined(
|
|
40
|
+
getPrototypeOf(obj),
|
|
41
|
+
(objPrototype) =>
|
|
42
|
+
objPrototype == object.prototype ||
|
|
43
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
44
|
+
() => true,
|
|
45
|
+
);
|
|
38
46
|
const objNew = (entries = []) => object.fromEntries(entries);
|
|
39
47
|
const objMerge = (...objs) => object.assign({}, ...objs);
|
|
40
48
|
const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
@@ -32,10 +32,18 @@ const collForEach = (coll, cb) => coll?.forEach(cb);
|
|
|
32
32
|
const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
|
|
33
33
|
|
|
34
34
|
const object = Object;
|
|
35
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
35
36
|
const objIds = object.keys;
|
|
36
37
|
const objFreeze = object.freeze;
|
|
37
38
|
const isObject = (obj) =>
|
|
38
|
-
|
|
39
|
+
!isUndefined(obj) &&
|
|
40
|
+
ifNotUndefined(
|
|
41
|
+
getPrototypeOf(obj),
|
|
42
|
+
(objPrototype) =>
|
|
43
|
+
objPrototype == object.prototype ||
|
|
44
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
45
|
+
() => true,
|
|
46
|
+
);
|
|
39
47
|
const objNew = (entries = []) => object.fromEntries(entries);
|
|
40
48
|
const objMerge = (...objs) => object.assign({}, ...objs);
|
|
41
49
|
const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
@@ -818,7 +826,7 @@ const createSqlite3Persister = (
|
|
|
818
826
|
async (sql, args = []) =>
|
|
819
827
|
await promiseNew((resolve, reject) =>
|
|
820
828
|
db.all(sql, args, (error, rows) =>
|
|
821
|
-
error ? reject(error) : resolve(rows
|
|
829
|
+
error ? reject(error) : resolve(rows),
|
|
822
830
|
),
|
|
823
831
|
),
|
|
824
832
|
(listener) => {
|
|
@@ -4,7 +4,6 @@ const TINYBASE = 'tinybase';
|
|
|
4
4
|
const T = 't';
|
|
5
5
|
const V = 'v';
|
|
6
6
|
|
|
7
|
-
const isInstanceOf = (thing, cls) => thing instanceof cls;
|
|
8
7
|
const isUndefined = (thing) => thing == void 0;
|
|
9
8
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
10
9
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
@@ -17,10 +16,18 @@ const arrayPush = (array, ...values) => array.push(...values);
|
|
|
17
16
|
const arrayShift = (array) => array.shift();
|
|
18
17
|
|
|
19
18
|
const object = Object;
|
|
19
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
20
20
|
const objIds = object.keys;
|
|
21
21
|
const objFreeze = object.freeze;
|
|
22
22
|
const isObject = (obj) =>
|
|
23
|
-
|
|
23
|
+
!isUndefined(obj) &&
|
|
24
|
+
ifNotUndefined(
|
|
25
|
+
getPrototypeOf(obj),
|
|
26
|
+
(objPrototype) =>
|
|
27
|
+
objPrototype == object.prototype ||
|
|
28
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
29
|
+
() => true,
|
|
30
|
+
);
|
|
24
31
|
const objNew = (entries = []) => object.fromEntries(entries);
|
|
25
32
|
const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
26
33
|
const objHas = (obj, id) => !isUndefined(objGet(obj, id));
|
package/lib/debug/persisters.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
const isInstanceOf = (thing, cls) => thing instanceof cls;
|
|
2
1
|
const isUndefined = (thing) => thing == void 0;
|
|
3
2
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
4
3
|
isUndefined(value) ? otherwise?.() : then(value);
|
|
@@ -8,10 +7,18 @@ const arrayPush = (array, ...values) => array.push(...values);
|
|
|
8
7
|
const arrayShift = (array) => array.shift();
|
|
9
8
|
|
|
10
9
|
const object = Object;
|
|
10
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
11
11
|
const objIds = object.keys;
|
|
12
12
|
const objFreeze = object.freeze;
|
|
13
13
|
const isObject = (obj) =>
|
|
14
|
-
|
|
14
|
+
!isUndefined(obj) &&
|
|
15
|
+
ifNotUndefined(
|
|
16
|
+
getPrototypeOf(obj),
|
|
17
|
+
(objPrototype) =>
|
|
18
|
+
objPrototype == object.prototype ||
|
|
19
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
20
|
+
() => true,
|
|
21
|
+
);
|
|
15
22
|
const objSize = (obj) => size(objIds(obj));
|
|
16
23
|
const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
|
|
17
24
|
|
package/lib/debug/store.js
CHANGED
|
@@ -47,11 +47,19 @@ const arrayPush = (array, ...values) => array.push(...values);
|
|
|
47
47
|
const arrayShift = (array) => array.shift();
|
|
48
48
|
|
|
49
49
|
const object = Object;
|
|
50
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
50
51
|
const objIds = object.keys;
|
|
51
52
|
const objFrozen = object.isFrozen;
|
|
52
53
|
const objFreeze = object.freeze;
|
|
53
54
|
const isObject = (obj) =>
|
|
54
|
-
|
|
55
|
+
!isUndefined(obj) &&
|
|
56
|
+
ifNotUndefined(
|
|
57
|
+
getPrototypeOf(obj),
|
|
58
|
+
(objPrototype) =>
|
|
59
|
+
objPrototype == object.prototype ||
|
|
60
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
61
|
+
() => true,
|
|
62
|
+
);
|
|
55
63
|
const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
56
64
|
const objHas = (obj, id) => !isUndefined(objGet(obj, id));
|
|
57
65
|
const objDel = (obj, id) => {
|
package/lib/debug/tinybase.js
CHANGED
|
@@ -68,11 +68,19 @@ const arrayUnshift = (array, ...values) => array.unshift(...values);
|
|
|
68
68
|
const arrayShift = (array) => array.shift();
|
|
69
69
|
|
|
70
70
|
const object = Object;
|
|
71
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
71
72
|
const objIds = object.keys;
|
|
72
73
|
const objFrozen = object.isFrozen;
|
|
73
74
|
const objFreeze = object.freeze;
|
|
74
75
|
const isObject = (obj) =>
|
|
75
|
-
|
|
76
|
+
!isUndefined(obj) &&
|
|
77
|
+
ifNotUndefined(
|
|
78
|
+
getPrototypeOf(obj),
|
|
79
|
+
(objPrototype) =>
|
|
80
|
+
objPrototype == object.prototype ||
|
|
81
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
82
|
+
() => true,
|
|
83
|
+
);
|
|
76
84
|
const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
77
85
|
const objHas = (obj, id) => !isUndefined(objGet(obj, id));
|
|
78
86
|
const objDel = (obj, id) => {
|
package/lib/debug/tools.js
CHANGED
|
@@ -25,8 +25,9 @@ const VALUE_IDS = VALUE + IDS;
|
|
|
25
25
|
|
|
26
26
|
const promise = Promise;
|
|
27
27
|
const isFiniteNumber = isFinite;
|
|
28
|
-
const isInstanceOf = (thing, cls) => thing instanceof cls;
|
|
29
28
|
const isUndefined = (thing) => thing == void 0;
|
|
29
|
+
const ifNotUndefined = (value, then, otherwise) =>
|
|
30
|
+
isUndefined(value) ? otherwise?.() : then(value);
|
|
30
31
|
const isTypeStringOrBoolean = (type) => type == STRING || type == BOOLEAN;
|
|
31
32
|
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
32
33
|
const isArray = (thing) => Array.isArray(thing);
|
|
@@ -53,10 +54,18 @@ const arrayUnshift = (array, ...values) => array.unshift(...values);
|
|
|
53
54
|
const arrayShift = (array) => array.shift();
|
|
54
55
|
|
|
55
56
|
const object = Object;
|
|
57
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
56
58
|
const objIds = object.keys;
|
|
57
59
|
const objFreeze = object.freeze;
|
|
58
60
|
const isObject = (obj) =>
|
|
59
|
-
|
|
61
|
+
!isUndefined(obj) &&
|
|
62
|
+
ifNotUndefined(
|
|
63
|
+
getPrototypeOf(obj),
|
|
64
|
+
(objPrototype) =>
|
|
65
|
+
objPrototype == object.prototype ||
|
|
66
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
67
|
+
() => true,
|
|
68
|
+
);
|
|
60
69
|
const objMap = (obj, cb) =>
|
|
61
70
|
arrayMap(object.entries(obj), ([id, value]) => cb(value, id));
|
|
62
71
|
const objSize = (obj) => size(objIds(obj));
|
|
@@ -121,11 +121,19 @@ const arrayPush = (array, ...values) => array.push(...values);
|
|
|
121
121
|
const arrayShift = (array) => array.shift();
|
|
122
122
|
|
|
123
123
|
const object = Object;
|
|
124
|
+
const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
|
|
124
125
|
const objIds = object.keys;
|
|
125
126
|
const objFrozen = object.isFrozen;
|
|
126
127
|
const objFreeze = object.freeze;
|
|
127
128
|
const isObject = (obj) =>
|
|
128
|
-
|
|
129
|
+
!isUndefined(obj) &&
|
|
130
|
+
ifNotUndefined(
|
|
131
|
+
getPrototypeOf(obj),
|
|
132
|
+
(objPrototype) =>
|
|
133
|
+
objPrototype == object.prototype ||
|
|
134
|
+
isUndefined(getPrototypeOf(objPrototype)),
|
|
135
|
+
() => true,
|
|
136
|
+
);
|
|
129
137
|
const objNew = (entries = []) => object.fromEntries(entries);
|
|
130
138
|
const objGet = (obj, id) => ifNotUndefined(obj, (obj2) => obj2[id]);
|
|
131
139
|
const objHas = (obj, id) => !isUndefined(objGet(obj, id));
|
package/lib/debug/ui-react.js
CHANGED
|
@@ -81,10 +81,14 @@ const {
|
|
|
81
81
|
useCallback: useCallback$1,
|
|
82
82
|
useEffect,
|
|
83
83
|
useMemo: useMemo$1,
|
|
84
|
+
useLayoutEffect: useLayoutEffect$1,
|
|
84
85
|
useRef: useRef$1,
|
|
85
86
|
useState: useState$1,
|
|
86
87
|
} = React;
|
|
87
|
-
const
|
|
88
|
+
const EMPTY_ARRAY = [];
|
|
89
|
+
const EMPTY_OBJECT = {};
|
|
90
|
+
const DEFAULT_CHECKPOINT_IDS = [[], void 0, []];
|
|
91
|
+
const useCreate = (store, create, createDeps = EMPTY_ARRAY) => {
|
|
88
92
|
const thing = useMemo$1(
|
|
89
93
|
() => create(store),
|
|
90
94
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -97,14 +101,14 @@ const useListenable = (
|
|
|
97
101
|
listenable,
|
|
98
102
|
thing,
|
|
99
103
|
defaulted,
|
|
100
|
-
args =
|
|
104
|
+
args = EMPTY_ARRAY,
|
|
101
105
|
getFromListenerArg,
|
|
102
106
|
) => {
|
|
103
107
|
const [, rerender] = useState$1();
|
|
104
108
|
const getResult = useCallback$1(
|
|
105
109
|
() => thing?.[GET + listenable]?.(...args) ?? defaulted,
|
|
106
110
|
/* eslint-disable-next-line react-hooks/exhaustive-deps */
|
|
107
|
-
[thing, ...args],
|
|
111
|
+
[thing, listenable, ...args, defaulted],
|
|
108
112
|
);
|
|
109
113
|
const result = useRef$1();
|
|
110
114
|
useMemo$1(() => (result.current = getResult()), [getResult]);
|
|
@@ -117,7 +121,7 @@ const useListenable = (
|
|
|
117
121
|
: listenerArgs[getFromListenerArg];
|
|
118
122
|
rerender([]);
|
|
119
123
|
},
|
|
120
|
-
[],
|
|
124
|
+
[getResult, getFromListenerArg],
|
|
121
125
|
args,
|
|
122
126
|
);
|
|
123
127
|
return result.current;
|
|
@@ -126,30 +130,25 @@ const useListener = (
|
|
|
126
130
|
listenable,
|
|
127
131
|
thing,
|
|
128
132
|
listener,
|
|
129
|
-
listenerDeps =
|
|
130
|
-
preArgs =
|
|
133
|
+
listenerDeps = EMPTY_ARRAY,
|
|
134
|
+
preArgs = EMPTY_ARRAY,
|
|
131
135
|
...postArgs
|
|
132
|
-
) =>
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
() => () => thing?.delListener(listenerId),
|
|
142
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
143
|
-
deps,
|
|
144
|
-
);
|
|
145
|
-
};
|
|
136
|
+
) =>
|
|
137
|
+
useLayoutEffect$1(() => {
|
|
138
|
+
const listenerId = thing?.[ADD + listenable + LISTENER]?.(
|
|
139
|
+
...preArgs,
|
|
140
|
+
listener,
|
|
141
|
+
...postArgs,
|
|
142
|
+
);
|
|
143
|
+
return () => thing?.delListener(listenerId);
|
|
144
|
+
}, [thing, listenable, ...preArgs, ...listenerDeps, ...postArgs]);
|
|
146
145
|
const useSetCallback = (
|
|
147
146
|
storeOrStoreId,
|
|
148
147
|
settable,
|
|
149
148
|
get,
|
|
150
|
-
getDeps =
|
|
149
|
+
getDeps = EMPTY_ARRAY,
|
|
151
150
|
then = getUndefined,
|
|
152
|
-
thenDeps =
|
|
151
|
+
thenDeps = EMPTY_ARRAY,
|
|
153
152
|
...args
|
|
154
153
|
) => {
|
|
155
154
|
const store = useStoreOrStoreById(storeOrStoreId);
|
|
@@ -168,7 +167,7 @@ const useDel = (
|
|
|
168
167
|
storeOrStoreId,
|
|
169
168
|
deletable,
|
|
170
169
|
then = getUndefined,
|
|
171
|
-
thenDeps =
|
|
170
|
+
thenDeps = EMPTY_ARRAY,
|
|
172
171
|
...args
|
|
173
172
|
) => {
|
|
174
173
|
const store = useStoreOrStoreById(storeOrStoreId);
|
|
@@ -188,26 +187,30 @@ const useCheckpointAction = (checkpointsOrCheckpointsId, action, arg) => {
|
|
|
188
187
|
[checkpoints, action, arg],
|
|
189
188
|
);
|
|
190
189
|
};
|
|
191
|
-
const useCreateStore = (create, createDeps =
|
|
190
|
+
const useCreateStore = (create, createDeps = EMPTY_ARRAY) =>
|
|
192
191
|
useMemo$1(create, createDeps);
|
|
193
192
|
const useStoreIds = () => useThingIds(1);
|
|
194
193
|
const useTables = (storeOrStoreId) =>
|
|
195
|
-
useListenable(TABLES, useStoreOrStoreById(storeOrStoreId),
|
|
194
|
+
useListenable(TABLES, useStoreOrStoreById(storeOrStoreId), EMPTY_OBJECT);
|
|
196
195
|
const useTableIds = (storeOrStoreId) =>
|
|
197
|
-
useListenable(TABLE_IDS, useStoreOrStoreById(storeOrStoreId),
|
|
196
|
+
useListenable(TABLE_IDS, useStoreOrStoreById(storeOrStoreId), EMPTY_ARRAY);
|
|
198
197
|
const useTable = (tableId, storeOrStoreId) =>
|
|
199
|
-
useListenable(TABLE, useStoreOrStoreById(storeOrStoreId),
|
|
198
|
+
useListenable(TABLE, useStoreOrStoreById(storeOrStoreId), EMPTY_OBJECT, [
|
|
199
|
+
tableId,
|
|
200
|
+
]);
|
|
200
201
|
const useTableCellIds = (tableId, storeOrStoreId) =>
|
|
201
202
|
useListenable(
|
|
202
203
|
TABLE + CELL_IDS,
|
|
203
204
|
useStoreOrStoreById(storeOrStoreId),
|
|
204
|
-
|
|
205
|
+
EMPTY_ARRAY,
|
|
205
206
|
[tableId],
|
|
206
207
|
);
|
|
207
208
|
const useRowCount = (tableId, storeOrStoreId) =>
|
|
208
|
-
useListenable(ROW_COUNT, useStoreOrStoreById(storeOrStoreId),
|
|
209
|
+
useListenable(ROW_COUNT, useStoreOrStoreById(storeOrStoreId), 0, [tableId]);
|
|
209
210
|
const useRowIds = (tableId, storeOrStoreId) =>
|
|
210
|
-
useListenable(ROW_IDS, useStoreOrStoreById(storeOrStoreId),
|
|
211
|
+
useListenable(ROW_IDS, useStoreOrStoreById(storeOrStoreId), EMPTY_ARRAY, [
|
|
212
|
+
tableId,
|
|
213
|
+
]);
|
|
211
214
|
const useSortedRowIds = (
|
|
212
215
|
tableId,
|
|
213
216
|
cellId,
|
|
@@ -219,19 +222,20 @@ const useSortedRowIds = (
|
|
|
219
222
|
useListenable(
|
|
220
223
|
SORTED_ROW_IDS,
|
|
221
224
|
useStoreOrStoreById(storeOrStoreId),
|
|
222
|
-
|
|
225
|
+
EMPTY_ARRAY,
|
|
223
226
|
[tableId, cellId, descending, offset, limit],
|
|
224
227
|
6,
|
|
225
228
|
);
|
|
226
229
|
const useRow = (tableId, rowId, storeOrStoreId) =>
|
|
227
|
-
useListenable(ROW, useStoreOrStoreById(storeOrStoreId),
|
|
230
|
+
useListenable(ROW, useStoreOrStoreById(storeOrStoreId), EMPTY_OBJECT, [
|
|
231
|
+
tableId,
|
|
232
|
+
rowId,
|
|
233
|
+
]);
|
|
228
234
|
const useCellIds = (tableId, rowId, storeOrStoreId) =>
|
|
229
|
-
useListenable(
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
[tableId, rowId],
|
|
234
|
-
);
|
|
235
|
+
useListenable(CELL_IDS, useStoreOrStoreById(storeOrStoreId), EMPTY_ARRAY, [
|
|
236
|
+
tableId,
|
|
237
|
+
rowId,
|
|
238
|
+
]);
|
|
235
239
|
const useCell = (tableId, rowId, cellId, storeOrStoreId) =>
|
|
236
240
|
useListenable(
|
|
237
241
|
CELL,
|
|
@@ -241,9 +245,9 @@ const useCell = (tableId, rowId, cellId, storeOrStoreId) =>
|
|
|
241
245
|
4,
|
|
242
246
|
);
|
|
243
247
|
const useValues = (storeOrStoreId) =>
|
|
244
|
-
useListenable(VALUES, useStoreOrStoreById(storeOrStoreId),
|
|
248
|
+
useListenable(VALUES, useStoreOrStoreById(storeOrStoreId), EMPTY_OBJECT);
|
|
245
249
|
const useValueIds = (storeOrStoreId) =>
|
|
246
|
-
useListenable(VALUE_IDS, useStoreOrStoreById(storeOrStoreId),
|
|
250
|
+
useListenable(VALUE_IDS, useStoreOrStoreById(storeOrStoreId), EMPTY_ARRAY);
|
|
247
251
|
const useValue = (valueId, storeOrStoreId) =>
|
|
248
252
|
useListenable(VALUE, useStoreOrStoreById(storeOrStoreId), void 0, [valueId]);
|
|
249
253
|
const useSetTablesCallback = (
|
|
@@ -300,10 +304,10 @@ const useSetRowCallback = (
|
|
|
300
304
|
const useAddRowCallback = (
|
|
301
305
|
tableId,
|
|
302
306
|
getRow,
|
|
303
|
-
getRowDeps =
|
|
307
|
+
getRowDeps = EMPTY_ARRAY,
|
|
304
308
|
storeOrStoreId,
|
|
305
309
|
then = getUndefined,
|
|
306
|
-
thenDeps =
|
|
310
|
+
thenDeps = EMPTY_ARRAY,
|
|
307
311
|
reuseRowIds = true,
|
|
308
312
|
) => {
|
|
309
313
|
const store = useStoreOrStoreById(storeOrStoreId);
|
|
@@ -440,7 +444,7 @@ const useTablesListener = (listener, listenerDeps, mutator, storeOrStoreId) =>
|
|
|
440
444
|
useStoreOrStoreById(storeOrStoreId),
|
|
441
445
|
listener,
|
|
442
446
|
listenerDeps,
|
|
443
|
-
|
|
447
|
+
EMPTY_ARRAY,
|
|
444
448
|
mutator,
|
|
445
449
|
);
|
|
446
450
|
const useTableIdsListener = (listener, listenerDeps, mutator, storeOrStoreId) =>
|
|
@@ -449,7 +453,7 @@ const useTableIdsListener = (listener, listenerDeps, mutator, storeOrStoreId) =>
|
|
|
449
453
|
useStoreOrStoreById(storeOrStoreId),
|
|
450
454
|
listener,
|
|
451
455
|
listenerDeps,
|
|
452
|
-
|
|
456
|
+
EMPTY_ARRAY,
|
|
453
457
|
mutator,
|
|
454
458
|
);
|
|
455
459
|
const useTableListener = (
|
|
@@ -586,7 +590,7 @@ const useValuesListener = (listener, listenerDeps, mutator, storeOrStoreId) =>
|
|
|
586
590
|
useStoreOrStoreById(storeOrStoreId),
|
|
587
591
|
listener,
|
|
588
592
|
listenerDeps,
|
|
589
|
-
|
|
593
|
+
EMPTY_ARRAY,
|
|
590
594
|
mutator,
|
|
591
595
|
);
|
|
592
596
|
const useValueIdsListener = (listener, listenerDeps, mutator, storeOrStoreId) =>
|
|
@@ -595,7 +599,7 @@ const useValueIdsListener = (listener, listenerDeps, mutator, storeOrStoreId) =>
|
|
|
595
599
|
useStoreOrStoreById(storeOrStoreId),
|
|
596
600
|
listener,
|
|
597
601
|
listenerDeps,
|
|
598
|
-
|
|
602
|
+
EMPTY_ARRAY,
|
|
599
603
|
mutator,
|
|
600
604
|
);
|
|
601
605
|
const useValueListener = (
|
|
@@ -646,7 +650,11 @@ const useCreateMetrics = (store, create, createDeps) =>
|
|
|
646
650
|
useCreate(store, create, createDeps);
|
|
647
651
|
const useMetricsIds = () => useThingIds(3);
|
|
648
652
|
const useMetricIds = (metricsOrMetricsId) =>
|
|
649
|
-
useListenable(
|
|
653
|
+
useListenable(
|
|
654
|
+
'MetricIds',
|
|
655
|
+
useMetricsOrMetricsById(metricsOrMetricsId),
|
|
656
|
+
EMPTY_ARRAY,
|
|
657
|
+
);
|
|
650
658
|
const useMetric = (metricId, metricsOrMetricsId) =>
|
|
651
659
|
useListenable('Metric', useMetricsOrMetricsById(metricsOrMetricsId), void 0, [
|
|
652
660
|
metricId,
|
|
@@ -671,16 +679,20 @@ const useSliceIds = (indexId, indexesOrIndexesId) =>
|
|
|
671
679
|
useListenable(
|
|
672
680
|
'SliceIds',
|
|
673
681
|
useIndexesOrIndexesById(indexesOrIndexesId),
|
|
674
|
-
|
|
682
|
+
EMPTY_ARRAY,
|
|
675
683
|
[indexId],
|
|
676
684
|
);
|
|
677
685
|
const useIndexIds = (indexesOrIndexesId) =>
|
|
678
|
-
useListenable(
|
|
686
|
+
useListenable(
|
|
687
|
+
'IndexIds',
|
|
688
|
+
useIndexesOrIndexesById(indexesOrIndexesId),
|
|
689
|
+
EMPTY_ARRAY,
|
|
690
|
+
);
|
|
679
691
|
const useSliceRowIds = (indexId, sliceId, indexesOrIndexesId) =>
|
|
680
692
|
useListenable(
|
|
681
693
|
'Slice' + ROW_IDS,
|
|
682
694
|
useIndexesOrIndexesById(indexesOrIndexesId),
|
|
683
|
-
|
|
695
|
+
EMPTY_ARRAY,
|
|
684
696
|
[indexId, sliceId],
|
|
685
697
|
);
|
|
686
698
|
const useSliceIdsListener = (
|
|
@@ -717,7 +729,7 @@ const useRelationshipIds = (relationshipsOrRelationshipsId) =>
|
|
|
717
729
|
useListenable(
|
|
718
730
|
'RelationshipIds',
|
|
719
731
|
useRelationshipsOrRelationshipsById(relationshipsOrRelationshipsId),
|
|
720
|
-
|
|
732
|
+
EMPTY_ARRAY,
|
|
721
733
|
);
|
|
722
734
|
const useRemoteRowId = (
|
|
723
735
|
relationshipId,
|
|
@@ -738,7 +750,7 @@ const useLocalRowIds = (
|
|
|
738
750
|
useListenable(
|
|
739
751
|
'Local' + ROW_IDS,
|
|
740
752
|
useRelationshipsOrRelationshipsById(relationshipsOrRelationshipsId),
|
|
741
|
-
|
|
753
|
+
EMPTY_ARRAY,
|
|
742
754
|
[relationshipId, remoteRowId],
|
|
743
755
|
);
|
|
744
756
|
const useLinkedRowIds = (
|
|
@@ -749,7 +761,7 @@ const useLinkedRowIds = (
|
|
|
749
761
|
useListenable(
|
|
750
762
|
'Linked' + ROW_IDS,
|
|
751
763
|
useRelationshipsOrRelationshipsById(relationshipsOrRelationshipsId),
|
|
752
|
-
|
|
764
|
+
EMPTY_ARRAY,
|
|
753
765
|
[relationshipId, firstRowId],
|
|
754
766
|
);
|
|
755
767
|
const useRemoteRowIdListener = (
|
|
@@ -798,33 +810,37 @@ const useCreateQueries = (store, create, createDeps) =>
|
|
|
798
810
|
useCreate(store, create, createDeps);
|
|
799
811
|
const useQueriesIds = () => useThingIds(9);
|
|
800
812
|
const useQueryIds = (queriesOrQueriesId) =>
|
|
801
|
-
useListenable(
|
|
813
|
+
useListenable(
|
|
814
|
+
'QueryIds',
|
|
815
|
+
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
816
|
+
EMPTY_ARRAY,
|
|
817
|
+
);
|
|
802
818
|
const useResultTable = (queryId, queriesOrQueriesId) =>
|
|
803
819
|
useListenable(
|
|
804
820
|
RESULT + TABLE,
|
|
805
821
|
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
806
|
-
|
|
822
|
+
EMPTY_OBJECT,
|
|
807
823
|
[queryId],
|
|
808
824
|
);
|
|
809
825
|
const useResultTableCellIds = (queryId, queriesOrQueriesId) =>
|
|
810
826
|
useListenable(
|
|
811
827
|
RESULT + TABLE + CELL_IDS,
|
|
812
828
|
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
813
|
-
|
|
829
|
+
EMPTY_ARRAY,
|
|
814
830
|
[queryId],
|
|
815
831
|
);
|
|
816
832
|
const useResultRowCount = (queryId, queriesOrQueriesId) =>
|
|
817
833
|
useListenable(
|
|
818
834
|
RESULT + ROW_COUNT,
|
|
819
835
|
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
820
|
-
|
|
836
|
+
0,
|
|
821
837
|
[queryId],
|
|
822
838
|
);
|
|
823
839
|
const useResultRowIds = (queryId, queriesOrQueriesId) =>
|
|
824
840
|
useListenable(
|
|
825
841
|
RESULT + ROW_IDS,
|
|
826
842
|
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
827
|
-
|
|
843
|
+
EMPTY_ARRAY,
|
|
828
844
|
[queryId],
|
|
829
845
|
);
|
|
830
846
|
const useResultSortedRowIds = (
|
|
@@ -838,20 +854,22 @@ const useResultSortedRowIds = (
|
|
|
838
854
|
useListenable(
|
|
839
855
|
RESULT + SORTED_ROW_IDS,
|
|
840
856
|
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
841
|
-
|
|
857
|
+
EMPTY_ARRAY,
|
|
842
858
|
[queryId, cellId, descending, offset, limit],
|
|
843
859
|
6,
|
|
844
860
|
);
|
|
845
861
|
const useResultRow = (queryId, rowId, queriesOrQueriesId) =>
|
|
846
|
-
useListenable(
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
862
|
+
useListenable(
|
|
863
|
+
RESULT + ROW,
|
|
864
|
+
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
865
|
+
EMPTY_OBJECT,
|
|
866
|
+
[queryId, rowId],
|
|
867
|
+
);
|
|
850
868
|
const useResultCellIds = (queryId, rowId, queriesOrQueriesId) =>
|
|
851
869
|
useListenable(
|
|
852
870
|
RESULT + CELL_IDS,
|
|
853
871
|
useQueriesOrQueriesById(queriesOrQueriesId),
|
|
854
|
-
|
|
872
|
+
EMPTY_ARRAY,
|
|
855
873
|
[queryId, rowId],
|
|
856
874
|
);
|
|
857
875
|
const useResultCell = (queryId, rowId, cellId, queriesOrQueriesId) =>
|
|
@@ -980,7 +998,7 @@ const useCheckpointIds = (checkpointsOrCheckpointsId) =>
|
|
|
980
998
|
useListenable(
|
|
981
999
|
'CheckpointIds',
|
|
982
1000
|
useCheckpointsOrCheckpointsById(checkpointsOrCheckpointsId),
|
|
983
|
-
|
|
1001
|
+
DEFAULT_CHECKPOINT_IDS,
|
|
984
1002
|
);
|
|
985
1003
|
const useCheckpoint = (checkpointId, checkpointsOrCheckpointsId) =>
|
|
986
1004
|
useListenable(
|
|
@@ -991,10 +1009,10 @@ const useCheckpoint = (checkpointId, checkpointsOrCheckpointsId) =>
|
|
|
991
1009
|
);
|
|
992
1010
|
const useSetCheckpointCallback = (
|
|
993
1011
|
getCheckpoint = getUndefined,
|
|
994
|
-
getCheckpointDeps =
|
|
1012
|
+
getCheckpointDeps = EMPTY_ARRAY,
|
|
995
1013
|
checkpointsOrCheckpointsId,
|
|
996
1014
|
then = getUndefined,
|
|
997
|
-
thenDeps =
|
|
1015
|
+
thenDeps = EMPTY_ARRAY,
|
|
998
1016
|
) => {
|
|
999
1017
|
const checkpoints = useCheckpointsOrCheckpointsById(
|
|
1000
1018
|
checkpointsOrCheckpointsId,
|
|
@@ -1015,10 +1033,10 @@ const useGoForwardCallback = (checkpointsOrCheckpointsId) =>
|
|
|
1015
1033
|
useCheckpointAction(checkpointsOrCheckpointsId, 'goForward');
|
|
1016
1034
|
const useGoToCallback = (
|
|
1017
1035
|
getCheckpointId,
|
|
1018
|
-
getCheckpointIdDeps =
|
|
1036
|
+
getCheckpointIdDeps = EMPTY_ARRAY,
|
|
1019
1037
|
checkpointsOrCheckpointsId,
|
|
1020
1038
|
then = getUndefined,
|
|
1021
|
-
thenDeps =
|
|
1039
|
+
thenDeps = EMPTY_ARRAY,
|
|
1022
1040
|
) => {
|
|
1023
1041
|
const checkpoints = useCheckpointsOrCheckpointsById(
|
|
1024
1042
|
checkpointsOrCheckpointsId,
|
|
@@ -1087,11 +1105,11 @@ const useCheckpointListener = (
|
|
|
1087
1105
|
const useCreatePersister = (
|
|
1088
1106
|
store,
|
|
1089
1107
|
create,
|
|
1090
|
-
createDeps =
|
|
1108
|
+
createDeps = EMPTY_ARRAY,
|
|
1091
1109
|
then,
|
|
1092
|
-
thenDeps =
|
|
1110
|
+
thenDeps = EMPTY_ARRAY,
|
|
1093
1111
|
destroy,
|
|
1094
|
-
destroyDeps =
|
|
1112
|
+
destroyDeps = EMPTY_ARRAY,
|
|
1095
1113
|
) => {
|
|
1096
1114
|
const [, rerender] = useState$1();
|
|
1097
1115
|
const persister = useMemo$1(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>null==t,
|
|
1
|
+
const t=t=>null==t,e=(e,n,o)=>t(e)?null==o?void 0:o():n(e),n=Object,o=t=>n.getPrototypeOf(t),l=n.keys,i=n.freeze,u=(t,n)=>e(t,(t=>t[n])),r=(e,n)=>!t(u(e,n)),d=(t,e)=>(delete t[e],t),c=(t,e)=>((t,e)=>t.map(e))(n.entries(t),(([t,n])=>e(n,t))),a=t=>l(t).length,s=l=>(l=>!t(l)&&e(o(l),(e=>e==n.prototype||t(o(e))),(()=>!0)))(l)&&0==a(l),v=t=>new Map(t),y=(t,e)=>null==t?void 0:t.get(e),h=(e,n,o)=>{return t(o)?(i=n,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(n,o);var l,i},f=(t,e,n)=>{var o,l,i;return l=e,null!=(i=null==(o=t)?void 0:o.has(l))&&i||h(t,e,n()),y(t,e)};var p=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const g=v(),A=v();var L=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const m=(t,e)=>[t[e].t,t[e].v],S=(e,n,o,l)=>{const i=t(n)?e:((t,e,n)=>(r(t,e)||(t[e]={}),t[e]))(e,n);let u;return c(o,((t,e)=>{l(i,e,t)&&(u=1)})),c(i,((t,e)=>{r(o,e)||(d(i,e),u=1)})),!t(n)&&s(i)&&d(e,n),u},w=(n,o,l="tinybase",r)=>(o.change((t=>t[l]={})),((n,o,l,u,r,d,[c,a]=[],v=[])=>{let L,m,S,w=0,x=0;f(g,v,(()=>0)),f(A,v,(()=>[]));const C=t=>p(void 0,null,(function*(){return 2!=w&&(w=1,yield P.schedule((()=>p(void 0,null,(function*(){yield t(),w=0}))))),P})),P={load:(t,e)=>p(void 0,null,(function*(){return yield C((()=>p(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([t,e])}}))))})),startAutoLoad:(...t)=>p(void 0,[...t],(function*(t={},e={}){return P.stopAutoLoad(),yield P.load(t,e),x=1,S=u(((t,e)=>p(void 0,null,(function*(){if(e){const t=e();yield C((()=>p(void 0,null,(function*(){return n.setTransactionChanges(t)}))))}else yield C((()=>p(void 0,null,(function*(){var e;try{n.setContent(null!=(e=null==t?void 0:t())?e:yield o())}catch(t){null==d||d(t)}}))))})))),P})),stopAutoLoad:()=>(x&&(r(S),S=void 0,x=0),P),save:t=>p(void 0,null,(function*(){return 1!=w&&(w=2,yield P.schedule((()=>p(void 0,null,(function*(){try{yield l(n.getContent,t)}catch(t){null==d||d(t)}w=0}))))),P})),startAutoSave:()=>p(void 0,null,(function*(){return yield P.stopAutoSave().save(),L=n.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();s(n)&&s(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>(e(L,n.delListener),L=void 0,P),schedule:(...e)=>p(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(y(A,v),...e),yield p(void 0,null,(function*(){if(!y(g,v)){for(h(g,v,1);!t((e=y(A,v),m=e.shift()));)try{yield m()}catch(t){null==d||d(t)}h(g,v,0)}var e})),P})),getStore:()=>n,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(P[c]=()=>a),i(P)})(n,(()=>L(void 0,null,(function*(){return 2==a(o.doc[l])?m(o.doc,l):void 0}))),((n,i)=>L(void 0,null,(function*(){return o.change((o=>((n,o,l,i)=>{((t,e)=>{s(t[e])&&(t[e]={t:{},v:{}})})(n,o);const[r,a]=m(n,o),v=()=>{y=1};let y=1;if(e(null==i?void 0:i(),(([n,o])=>{y=0,c(n,((n,o)=>y?0:t(n)?d(r,o):e(r[o],(o=>c(n,((n,l)=>y?0:t(n)?d(o,l):e(u(o,l),(e=>c(n,((n,o)=>t(n)?d(e,o):e[o]=n))),v)))),v))),c(o,((e,n)=>y?0:t(e)?d(a,n):a[n]=e))})),y){const[t,e]=l();S(r,void 0,t,((t,e,n)=>S(r,e,n,((t,e,n)=>S(t,e,n,((t,e,n)=>{if(u(t,e)!==n)return t[e]=n,1})))))),S(a,void 0,e,((t,e,n)=>{u(a,e)!==n&&(a[e]=n)}))}})(o,l,n,i)))}))),(t=>{const e=({doc:e})=>t((()=>m(e,l)));return o.on("change",e),e}),(t=>{o.removeListener("change",t)}),r,["getDocHandle",o]));export{w as createAutomergePersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=
|
|
1
|
+
const t=t=>null==t,e=(e,n,o)=>t(e)?null==o?void 0:o():n(e),n=Object,o=t=>n.getPrototypeOf(t),l=n.keys,r=n.freeze,i=r=>(l=>!t(l)&&e(o(l),(e=>e==n.prototype||t(o(e))),(()=>!0)))(r)&&0==(t=>l(t).length)(r),u=JSON.parse,a=t=>new Map(t),s=(t,e)=>null==t?void 0:t.get(e),d=(e,n,o)=>{return t(o)?(r=n,null==(l=e)||l.delete(r),e):null==e?void 0:e.set(n,o);var l,r},v=(t,e,n)=>{var o,l,r;return l=e,null!=(r=null==(o=t)?void 0:o.has(l))&&r||d(t,e,n()),s(t,e)};var c=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{u(n.next(t))}catch(t){l(t)}},i=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,i);u((n=n.apply(t,e)).next())}));const y=a(),f=a();var h=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{u(n.next(t))}catch(t){l(t)}},i=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,i);u((n=n.apply(t,e)).next())}));const p="storage",g=globalThis.window,S=(o,l,a,S)=>((n,o,l,u,a,h,[p,g]=[],S=[])=>{let m,A,w,L=0,x=0;v(y,S,(()=>0)),v(f,S,(()=>[]));const C=t=>c(void 0,null,(function*(){return 2!=L&&(L=1,yield P.schedule((()=>c(void 0,null,(function*(){yield t(),L=0}))))),P})),P={load:(t,e)=>c(void 0,null,(function*(){return yield C((()=>c(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([t,e])}}))))})),startAutoLoad:(...t)=>c(void 0,[...t],(function*(t={},e={}){return P.stopAutoLoad(),yield P.load(t,e),x=1,w=u(((t,e)=>c(void 0,null,(function*(){if(e){const t=e();yield C((()=>c(void 0,null,(function*(){return n.setTransactionChanges(t)}))))}else yield C((()=>c(void 0,null,(function*(){var e;try{n.setContent(null!=(e=null==t?void 0:t())?e:yield o())}catch(t){null==h||h(t)}}))))})))),P})),stopAutoLoad:()=>(x&&(a(w),w=void 0,x=0),P),save:t=>c(void 0,null,(function*(){return 1!=L&&(L=2,yield P.schedule((()=>c(void 0,null,(function*(){try{yield l(n.getContent,t)}catch(t){null==h||h(t)}L=0}))))),P})),startAutoSave:()=>c(void 0,null,(function*(){return yield P.stopAutoSave().save(),m=n.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();i(n)&&i(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>(e(m,n.delListener),m=void 0,P),schedule:(...e)=>c(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(s(f,S),...e),yield c(void 0,null,(function*(){if(!s(y,S)){for(d(y,S,1);!t((e=s(f,S),A=e.shift()));)try{yield A()}catch(t){null==h||h(t)}d(y,S,0)}var e})),P})),getStore:()=>n,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(P[p]=()=>g),r(P)})(o,(()=>h(void 0,null,(function*(){return u(a.getItem(l))}))),(t=>h(void 0,null,(function*(){return a.setItem(l,(e=t(),JSON.stringify(e,((t,e)=>e instanceof Map?n.fromEntries([...e]):e))));var e}))),(t=>{const e=e=>{e.storageArea===a&&e.key===l&&t((()=>u(e.newValue)))};return g.addEventListener(p,e),e}),(t=>g.removeEventListener(p,t)),S,["getStorageName",l]),m=(t,e,n)=>S(t,e,localStorage,n),A=(t,e,n)=>S(t,e,sessionStorage,n);export{m as createLocalPersister,A as createSessionPersister};
|
|
Binary file
|