tinybase 8.0.0-beta.0 → 8.0.0-beta.2

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.
Files changed (264) hide show
  1. package/@types/index.d.ts +1 -0
  2. package/@types/mergeable-store/with-schemas/index.d.ts +1 -1
  3. package/@types/middleware/index.d.ts +1181 -0
  4. package/@types/middleware/with-schemas/index.d.ts +1495 -0
  5. package/@types/omni/index.d.ts +1 -0
  6. package/@types/omni/with-schemas/index.d.ts +1 -0
  7. package/@types/store/index.d.ts +0 -1
  8. package/@types/with-schemas/index.d.ts +1 -0
  9. package/agents.md +33 -11
  10. package/checkpoints/index.js +20 -20
  11. package/checkpoints/with-schemas/index.js +20 -20
  12. package/common/index.js +3 -2
  13. package/common/with-schemas/index.js +3 -2
  14. package/index.js +632 -215
  15. package/indexes/index.js +13 -12
  16. package/indexes/with-schemas/index.js +13 -12
  17. package/mergeable-store/index.js +498 -197
  18. package/mergeable-store/with-schemas/index.js +498 -197
  19. package/metrics/index.js +13 -12
  20. package/metrics/with-schemas/index.js +13 -12
  21. package/middleware/index.js +169 -0
  22. package/middleware/with-schemas/index.js +169 -0
  23. package/min/checkpoints/index.js +1 -1
  24. package/min/checkpoints/index.js.gz +0 -0
  25. package/min/checkpoints/with-schemas/index.js +1 -1
  26. package/min/checkpoints/with-schemas/index.js.gz +0 -0
  27. package/min/common/index.js +1 -1
  28. package/min/common/index.js.gz +0 -0
  29. package/min/common/with-schemas/index.js +1 -1
  30. package/min/common/with-schemas/index.js.gz +0 -0
  31. package/min/index.js +1 -1
  32. package/min/index.js.gz +0 -0
  33. package/min/indexes/index.js +1 -1
  34. package/min/indexes/index.js.gz +0 -0
  35. package/min/indexes/with-schemas/index.js +1 -1
  36. package/min/indexes/with-schemas/index.js.gz +0 -0
  37. package/min/mergeable-store/index.js +1 -1
  38. package/min/mergeable-store/index.js.gz +0 -0
  39. package/min/mergeable-store/with-schemas/index.js +1 -1
  40. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  41. package/min/metrics/index.js +1 -1
  42. package/min/metrics/index.js.gz +0 -0
  43. package/min/metrics/with-schemas/index.js +1 -1
  44. package/min/metrics/with-schemas/index.js.gz +0 -0
  45. package/min/middleware/index.js +1 -0
  46. package/min/middleware/index.js.gz +0 -0
  47. package/min/middleware/with-schemas/index.js +1 -0
  48. package/min/middleware/with-schemas/index.js.gz +0 -0
  49. package/min/omni/index.js +1 -1
  50. package/min/omni/index.js.gz +0 -0
  51. package/min/omni/with-schemas/index.js +1 -1
  52. package/min/omni/with-schemas/index.js.gz +0 -0
  53. package/min/persisters/index.js +1 -1
  54. package/min/persisters/index.js.gz +0 -0
  55. package/min/persisters/persister-automerge/index.js +1 -1
  56. package/min/persisters/persister-automerge/index.js.gz +0 -0
  57. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  58. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  59. package/min/persisters/persister-browser/index.js +1 -1
  60. package/min/persisters/persister-browser/index.js.gz +0 -0
  61. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  62. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  63. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  64. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  65. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  66. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  67. package/min/persisters/persister-durable-object-sql-storage/index.js +1 -1
  68. package/min/persisters/persister-durable-object-sql-storage/index.js.gz +0 -0
  69. package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1 -1
  70. package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js.gz +0 -0
  71. package/min/persisters/persister-durable-object-storage/index.js +1 -1
  72. package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  73. package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
  74. package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  75. package/min/persisters/persister-electric-sql/index.js +1 -1
  76. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  77. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  78. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  79. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  80. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  81. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  82. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  83. package/min/persisters/persister-file/index.js +1 -1
  84. package/min/persisters/persister-file/index.js.gz +0 -0
  85. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  86. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  87. package/min/persisters/persister-indexed-db/index.js +1 -1
  88. package/min/persisters/persister-indexed-db/index.js.gz +0 -0
  89. package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  90. package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  91. package/min/persisters/persister-libsql/index.js +1 -1
  92. package/min/persisters/persister-libsql/index.js.gz +0 -0
  93. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  94. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  95. package/min/persisters/persister-partykit-client/index.js +1 -1
  96. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  97. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  98. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  99. package/min/persisters/persister-partykit-server/index.js +1 -1
  100. package/min/persisters/persister-partykit-server/index.js.gz +0 -0
  101. package/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
  102. package/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  103. package/min/persisters/persister-pglite/index.js +1 -1
  104. package/min/persisters/persister-pglite/index.js.gz +0 -0
  105. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  106. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  107. package/min/persisters/persister-postgres/index.js +1 -1
  108. package/min/persisters/persister-postgres/index.js.gz +0 -0
  109. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  110. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  111. package/min/persisters/persister-powersync/index.js +1 -1
  112. package/min/persisters/persister-powersync/index.js.gz +0 -0
  113. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  114. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  115. package/min/persisters/persister-react-native-mmkv/index.js +1 -1
  116. package/min/persisters/persister-react-native-mmkv/index.js.gz +0 -0
  117. package/min/persisters/persister-react-native-mmkv/with-schemas/index.js +1 -1
  118. package/min/persisters/persister-react-native-mmkv/with-schemas/index.js.gz +0 -0
  119. package/min/persisters/persister-react-native-sqlite/index.js +1 -1
  120. package/min/persisters/persister-react-native-sqlite/index.js.gz +0 -0
  121. package/min/persisters/persister-react-native-sqlite/with-schemas/index.js +1 -1
  122. package/min/persisters/persister-react-native-sqlite/with-schemas/index.js.gz +0 -0
  123. package/min/persisters/persister-remote/index.js +1 -1
  124. package/min/persisters/persister-remote/index.js.gz +0 -0
  125. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  126. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  127. package/min/persisters/persister-sqlite-bun/index.js +1 -1
  128. package/min/persisters/persister-sqlite-bun/index.js.gz +0 -0
  129. package/min/persisters/persister-sqlite-bun/with-schemas/index.js +1 -1
  130. package/min/persisters/persister-sqlite-bun/with-schemas/index.js.gz +0 -0
  131. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  132. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  133. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  134. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  135. package/min/persisters/persister-sqlite3/index.js +1 -1
  136. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  137. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  138. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  139. package/min/persisters/persister-yjs/index.js +1 -1
  140. package/min/persisters/persister-yjs/index.js.gz +0 -0
  141. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  142. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  143. package/min/persisters/with-schemas/index.js +1 -1
  144. package/min/persisters/with-schemas/index.js.gz +0 -0
  145. package/min/queries/index.js +1 -1
  146. package/min/queries/index.js.gz +0 -0
  147. package/min/queries/with-schemas/index.js +1 -1
  148. package/min/queries/with-schemas/index.js.gz +0 -0
  149. package/min/relationships/index.js +1 -1
  150. package/min/relationships/index.js.gz +0 -0
  151. package/min/relationships/with-schemas/index.js +1 -1
  152. package/min/relationships/with-schemas/index.js.gz +0 -0
  153. package/min/store/index.js +1 -1
  154. package/min/store/index.js.gz +0 -0
  155. package/min/store/with-schemas/index.js +1 -1
  156. package/min/store/with-schemas/index.js.gz +0 -0
  157. package/min/synchronizers/index.js +1 -1
  158. package/min/synchronizers/index.js.gz +0 -0
  159. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  160. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  161. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  162. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  163. package/min/synchronizers/synchronizer-local/index.js +1 -1
  164. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  165. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  166. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  167. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  168. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  169. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  170. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  171. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  172. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  173. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  174. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  175. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  176. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  177. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  178. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  179. package/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
  180. package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
  181. package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
  182. package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
  183. package/min/synchronizers/with-schemas/index.js +1 -1
  184. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  185. package/min/ui-react-inspector/index.js +1 -1
  186. package/min/ui-react-inspector/index.js.gz +0 -0
  187. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  188. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  189. package/min/with-schemas/index.js +1 -1
  190. package/min/with-schemas/index.js.gz +0 -0
  191. package/omni/index.js +667 -232
  192. package/omni/with-schemas/index.js +667 -232
  193. package/package.json +55 -19
  194. package/persisters/index.js +29 -12
  195. package/persisters/persister-automerge/index.js +17 -9
  196. package/persisters/persister-automerge/with-schemas/index.js +17 -9
  197. package/persisters/persister-browser/index.js +34 -10
  198. package/persisters/persister-browser/with-schemas/index.js +34 -10
  199. package/persisters/persister-cr-sqlite-wasm/index.js +29 -12
  200. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +29 -12
  201. package/persisters/persister-durable-object-sql-storage/index.js +29 -12
  202. package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +29 -12
  203. package/persisters/persister-durable-object-storage/index.js +24 -17
  204. package/persisters/persister-durable-object-storage/with-schemas/index.js +24 -17
  205. package/persisters/persister-electric-sql/index.js +29 -12
  206. package/persisters/persister-electric-sql/with-schemas/index.js +29 -12
  207. package/persisters/persister-expo-sqlite/index.js +29 -12
  208. package/persisters/persister-expo-sqlite/with-schemas/index.js +29 -12
  209. package/persisters/persister-file/index.js +34 -10
  210. package/persisters/persister-file/with-schemas/index.js +34 -10
  211. package/persisters/persister-indexed-db/index.js +17 -9
  212. package/persisters/persister-indexed-db/with-schemas/index.js +17 -9
  213. package/persisters/persister-libsql/index.js +29 -12
  214. package/persisters/persister-libsql/with-schemas/index.js +29 -12
  215. package/persisters/persister-partykit-client/index.js +44 -11
  216. package/persisters/persister-partykit-client/with-schemas/index.js +44 -11
  217. package/persisters/persister-partykit-server/index.js +39 -4
  218. package/persisters/persister-partykit-server/with-schemas/index.js +39 -4
  219. package/persisters/persister-pglite/index.js +29 -12
  220. package/persisters/persister-pglite/with-schemas/index.js +29 -12
  221. package/persisters/persister-postgres/index.js +29 -12
  222. package/persisters/persister-postgres/with-schemas/index.js +29 -12
  223. package/persisters/persister-powersync/index.js +29 -12
  224. package/persisters/persister-powersync/with-schemas/index.js +29 -12
  225. package/persisters/persister-react-native-mmkv/index.js +17 -9
  226. package/persisters/persister-react-native-mmkv/with-schemas/index.js +17 -9
  227. package/persisters/persister-react-native-sqlite/index.js +29 -12
  228. package/persisters/persister-react-native-sqlite/with-schemas/index.js +29 -12
  229. package/persisters/persister-remote/index.js +17 -9
  230. package/persisters/persister-remote/with-schemas/index.js +17 -9
  231. package/persisters/persister-sqlite-bun/index.js +29 -12
  232. package/persisters/persister-sqlite-bun/with-schemas/index.js +29 -12
  233. package/persisters/persister-sqlite-wasm/index.js +29 -12
  234. package/persisters/persister-sqlite-wasm/with-schemas/index.js +29 -12
  235. package/persisters/persister-sqlite3/index.js +29 -12
  236. package/persisters/persister-sqlite3/with-schemas/index.js +29 -12
  237. package/persisters/persister-yjs/index.js +19 -11
  238. package/persisters/persister-yjs/with-schemas/index.js +19 -11
  239. package/persisters/with-schemas/index.js +29 -12
  240. package/queries/index.js +16 -20
  241. package/queries/with-schemas/index.js +16 -20
  242. package/readme.md +21 -13
  243. package/relationships/index.js +13 -12
  244. package/relationships/with-schemas/index.js +13 -12
  245. package/releases.md +59 -43
  246. package/store/index.js +479 -192
  247. package/store/with-schemas/index.js +479 -192
  248. package/synchronizers/index.js +17 -9
  249. package/synchronizers/synchronizer-broadcast-channel/index.js +17 -9
  250. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +17 -9
  251. package/synchronizers/synchronizer-local/index.js +19 -11
  252. package/synchronizers/synchronizer-local/with-schemas/index.js +19 -11
  253. package/synchronizers/synchronizer-ws-client/index.js +31 -10
  254. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +31 -10
  255. package/synchronizers/synchronizer-ws-server/index.js +34 -13
  256. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +34 -13
  257. package/synchronizers/synchronizer-ws-server-durable-object/index.js +31 -10
  258. package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +31 -10
  259. package/synchronizers/synchronizer-ws-server-simple/index.js +11 -10
  260. package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +11 -10
  261. package/synchronizers/with-schemas/index.js +17 -9
  262. package/ui-react-inspector/index.js +475 -193
  263. package/ui-react-inspector/with-schemas/index.js +475 -193
  264. package/with-schemas/index.js +632 -215
package/metrics/index.js CHANGED
@@ -50,20 +50,21 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
50
50
  const object = Object;
51
51
  const objFreeze = object.freeze;
52
52
 
53
- const mapNew = (entries) => new Map(entries);
54
- const mapKeys = (map) => [...(map?.keys() ?? [])];
55
- const mapGet = (map, key) => map?.get(key);
56
- const mapForEach = (map, cb) =>
57
- collForEach(map, (value, key) => cb(key, value));
58
- const mapSet = (map, key, value) =>
59
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
60
- const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
61
- if (!collHas(map, key)) {
62
- mapSet(map, key, getDefaultValue());
53
+ const map = Map;
54
+ const mapNew = (entries) => new map(entries);
55
+ const mapKeys = (map2) => [...(map2?.keys() ?? [])];
56
+ const mapGet = (map2, key) => map2?.get(key);
57
+ const mapForEach = (map2, cb) =>
58
+ collForEach(map2, (value, key) => cb(key, value));
59
+ const mapSet = (map2, key, value) =>
60
+ isUndefined(value) ? (collDel(map2, key), map2) : map2?.set(key, value);
61
+ const mapEnsure = (map2, key, getDefaultValue, hadExistingValue) => {
62
+ if (!collHas(map2, key)) {
63
+ mapSet(map2, key, getDefaultValue());
63
64
  } else {
64
- hadExistingValue?.(mapGet(map, key));
65
+ hadExistingValue?.(mapGet(map2, key));
65
66
  }
66
- return mapGet(map, key);
67
+ return mapGet(map2, key);
67
68
  };
68
69
  const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
69
70
  ifNotUndefined(
@@ -50,20 +50,21 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
50
50
  const object = Object;
51
51
  const objFreeze = object.freeze;
52
52
 
53
- const mapNew = (entries) => new Map(entries);
54
- const mapKeys = (map) => [...(map?.keys() ?? [])];
55
- const mapGet = (map, key) => map?.get(key);
56
- const mapForEach = (map, cb) =>
57
- collForEach(map, (value, key) => cb(key, value));
58
- const mapSet = (map, key, value) =>
59
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
60
- const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
61
- if (!collHas(map, key)) {
62
- mapSet(map, key, getDefaultValue());
53
+ const map = Map;
54
+ const mapNew = (entries) => new map(entries);
55
+ const mapKeys = (map2) => [...(map2?.keys() ?? [])];
56
+ const mapGet = (map2, key) => map2?.get(key);
57
+ const mapForEach = (map2, cb) =>
58
+ collForEach(map2, (value, key) => cb(key, value));
59
+ const mapSet = (map2, key, value) =>
60
+ isUndefined(value) ? (collDel(map2, key), map2) : map2?.set(key, value);
61
+ const mapEnsure = (map2, key, getDefaultValue, hadExistingValue) => {
62
+ if (!collHas(map2, key)) {
63
+ mapSet(map2, key, getDefaultValue());
63
64
  } else {
64
- hadExistingValue?.(mapGet(map, key));
65
+ hadExistingValue?.(mapGet(map2, key));
65
66
  }
66
- return mapGet(map, key);
67
+ return mapGet(map2, key);
67
68
  };
68
69
  const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
69
70
  ifNotUndefined(
@@ -0,0 +1,169 @@
1
+ const getIfNotFunction = (predicate) => (value, then, otherwise) =>
2
+ predicate(value) ? otherwise?.() : then(value);
3
+ const isUndefined = (thing) => thing === void 0;
4
+ const ifNotUndefined = getIfNotFunction(isUndefined);
5
+
6
+ const arrayEvery = (array, cb) => array.every(cb);
7
+ const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
8
+ const arrayPush = (array, ...values) => array.push(...values);
9
+
10
+ const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
11
+ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
12
+
13
+ const object = Object;
14
+ const objFreeze = object.freeze;
15
+
16
+ const map = Map;
17
+ const mapNew = (entries) => new map(entries);
18
+ const mapGet = (map2, key) => map2?.get(key);
19
+ const mapSet = (map2, key, value) =>
20
+ isUndefined(value) ? (collDel(map2, key), map2) : map2?.set(key, value);
21
+ const mapEnsure = (map2, key, getDefaultValue, hadExistingValue) => {
22
+ if (!collHas(map2, key)) {
23
+ mapSet(map2, key, getDefaultValue());
24
+ }
25
+ return mapGet(map2, key);
26
+ };
27
+
28
+ const getCreateFunction = (getFunction, initFunction) => {
29
+ const thingsByStore = /* @__PURE__ */ new WeakMap();
30
+ return (store) => {
31
+ if (!thingsByStore.has(store)) {
32
+ thingsByStore.set(store, getFunction(store));
33
+ }
34
+ const thing = thingsByStore.get(store);
35
+ return thing;
36
+ };
37
+ };
38
+
39
+ const reduceCallbacks = (callbacks, thing, ...ids) =>
40
+ arrayReduce(
41
+ callbacks,
42
+ (current, callback) =>
43
+ isUndefined(current) ? current : callback(...ids, current),
44
+ thing,
45
+ );
46
+ const everyCallback = (callbacks, ...ids) =>
47
+ arrayEvery(callbacks, (callback) => callback(...ids));
48
+ const createMiddleware = getCreateFunction((store) => {
49
+ const fluent = (actions) => {
50
+ actions();
51
+ return middleware;
52
+ };
53
+ const addCallback = (callbacks) => (callback) =>
54
+ fluent(() => arrayPush(callbacks, callback));
55
+ const willSetContentCallbacks = [];
56
+ const willSetTablesCallbacks = [];
57
+ const willSetTableCallbacks = [];
58
+ const willSetRowCallbacks = [];
59
+ const willSetCellCallbacks = [];
60
+ const willSetValuesCallbacks = [];
61
+ const willSetValueCallbacks = [];
62
+ const willDelTablesCallbacks = [];
63
+ const willDelTableCallbacks = [];
64
+ const willDelRowCallbacks = [];
65
+ const willDelCellCallbacks = [];
66
+ const willDelValuesCallbacks = [];
67
+ const willDelValueCallbacks = [];
68
+ const willApplyChangesCallbacks = [];
69
+ const didSetRowCallbacksMap = mapNew();
70
+ const willSetContent = (content) =>
71
+ reduceCallbacks(willSetContentCallbacks, content);
72
+ const willSetTables = (tables) =>
73
+ reduceCallbacks(willSetTablesCallbacks, tables);
74
+ const willSetTable = (tableId, table) =>
75
+ reduceCallbacks(willSetTableCallbacks, table, tableId);
76
+ const willSetRow = (tableId, rowId, row) =>
77
+ reduceCallbacks(willSetRowCallbacks, row, tableId, rowId);
78
+ const willSetCell = (tableId, rowId, cellId, cell) =>
79
+ reduceCallbacks(willSetCellCallbacks, cell, tableId, rowId, cellId);
80
+ const willSetValues = (values) =>
81
+ reduceCallbacks(willSetValuesCallbacks, values);
82
+ const willSetValue = (valueId, value) =>
83
+ reduceCallbacks(willSetValueCallbacks, value, valueId);
84
+ const willDelTables = () => everyCallback(willDelTablesCallbacks);
85
+ const willDelTable = (tableId) =>
86
+ everyCallback(willDelTableCallbacks, tableId);
87
+ const willDelRow = (tableId, rowId) =>
88
+ everyCallback(willDelRowCallbacks, tableId, rowId);
89
+ const willDelCell = (tableId, rowId, cellId) =>
90
+ everyCallback(willDelCellCallbacks, tableId, rowId, cellId);
91
+ const willDelValues = () => everyCallback(willDelValuesCallbacks);
92
+ const willDelValue = (valueId) =>
93
+ everyCallback(willDelValueCallbacks, valueId);
94
+ const willApplyChanges = (changes) =>
95
+ reduceCallbacks(willApplyChangesCallbacks, changes);
96
+ const didSetRow = (tableId, rowId, oldRow, newRow) =>
97
+ ifNotUndefined(
98
+ mapGet(didSetRowCallbacksMap, tableId),
99
+ (callbacks) =>
100
+ arrayReduce(
101
+ callbacks,
102
+ (current, callback) => callback(tableId, rowId, oldRow, current),
103
+ newRow,
104
+ ),
105
+ () => newRow,
106
+ );
107
+ const getStore = () => store;
108
+ const addWillSetContentCallback = addCallback(willSetContentCallbacks);
109
+ const addWillSetTablesCallback = addCallback(willSetTablesCallbacks);
110
+ const addWillSetTableCallback = addCallback(willSetTableCallbacks);
111
+ const addWillSetRowCallback = addCallback(willSetRowCallbacks);
112
+ const addWillSetCellCallback = addCallback(willSetCellCallbacks);
113
+ const addWillSetValuesCallback = addCallback(willSetValuesCallbacks);
114
+ const addWillSetValueCallback = addCallback(willSetValueCallbacks);
115
+ const addWillDelTablesCallback = addCallback(willDelTablesCallbacks);
116
+ const addWillDelTableCallback = addCallback(willDelTableCallbacks);
117
+ const addWillDelRowCallback = addCallback(willDelRowCallbacks);
118
+ const addWillDelCellCallback = addCallback(willDelCellCallbacks);
119
+ const addWillDelValuesCallback = addCallback(willDelValuesCallbacks);
120
+ const addWillDelValueCallback = addCallback(willDelValueCallbacks);
121
+ const addWillApplyChangesCallback = addCallback(willApplyChangesCallbacks);
122
+ const addDidSetRowCallback = (tableId, callback) =>
123
+ fluent(() =>
124
+ arrayPush(
125
+ mapEnsure(didSetRowCallbacksMap, tableId, () => []),
126
+ callback,
127
+ ),
128
+ );
129
+ const destroy = () => {};
130
+ const middleware = objFreeze({
131
+ getStore,
132
+ addWillSetContentCallback,
133
+ addWillSetTablesCallback,
134
+ addWillSetTableCallback,
135
+ addWillSetRowCallback,
136
+ addWillSetCellCallback,
137
+ addWillSetValuesCallback,
138
+ addWillSetValueCallback,
139
+ addWillDelTablesCallback,
140
+ addWillDelTableCallback,
141
+ addWillDelRowCallback,
142
+ addWillDelCellCallback,
143
+ addWillDelValuesCallback,
144
+ addWillDelValueCallback,
145
+ addWillApplyChangesCallback,
146
+ addDidSetRowCallback,
147
+ destroy,
148
+ });
149
+ store.setMiddleware(
150
+ willSetContent,
151
+ willSetTables,
152
+ willSetTable,
153
+ willSetRow,
154
+ willSetCell,
155
+ willSetValues,
156
+ willSetValue,
157
+ willDelTables,
158
+ willDelTable,
159
+ willDelRow,
160
+ willDelCell,
161
+ willDelValues,
162
+ willDelValue,
163
+ willApplyChanges,
164
+ didSetRow,
165
+ );
166
+ return middleware;
167
+ });
168
+
169
+ export {createMiddleware};
@@ -0,0 +1,169 @@
1
+ const getIfNotFunction = (predicate) => (value, then, otherwise) =>
2
+ predicate(value) ? otherwise?.() : then(value);
3
+ const isUndefined = (thing) => thing === void 0;
4
+ const ifNotUndefined = getIfNotFunction(isUndefined);
5
+
6
+ const arrayEvery = (array, cb) => array.every(cb);
7
+ const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
8
+ const arrayPush = (array, ...values) => array.push(...values);
9
+
10
+ const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
11
+ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
12
+
13
+ const object = Object;
14
+ const objFreeze = object.freeze;
15
+
16
+ const map = Map;
17
+ const mapNew = (entries) => new map(entries);
18
+ const mapGet = (map2, key) => map2?.get(key);
19
+ const mapSet = (map2, key, value) =>
20
+ isUndefined(value) ? (collDel(map2, key), map2) : map2?.set(key, value);
21
+ const mapEnsure = (map2, key, getDefaultValue, hadExistingValue) => {
22
+ if (!collHas(map2, key)) {
23
+ mapSet(map2, key, getDefaultValue());
24
+ }
25
+ return mapGet(map2, key);
26
+ };
27
+
28
+ const getCreateFunction = (getFunction, initFunction) => {
29
+ const thingsByStore = /* @__PURE__ */ new WeakMap();
30
+ return (store) => {
31
+ if (!thingsByStore.has(store)) {
32
+ thingsByStore.set(store, getFunction(store));
33
+ }
34
+ const thing = thingsByStore.get(store);
35
+ return thing;
36
+ };
37
+ };
38
+
39
+ const reduceCallbacks = (callbacks, thing, ...ids) =>
40
+ arrayReduce(
41
+ callbacks,
42
+ (current, callback) =>
43
+ isUndefined(current) ? current : callback(...ids, current),
44
+ thing,
45
+ );
46
+ const everyCallback = (callbacks, ...ids) =>
47
+ arrayEvery(callbacks, (callback) => callback(...ids));
48
+ const createMiddleware = getCreateFunction((store) => {
49
+ const fluent = (actions) => {
50
+ actions();
51
+ return middleware;
52
+ };
53
+ const addCallback = (callbacks) => (callback) =>
54
+ fluent(() => arrayPush(callbacks, callback));
55
+ const willSetContentCallbacks = [];
56
+ const willSetTablesCallbacks = [];
57
+ const willSetTableCallbacks = [];
58
+ const willSetRowCallbacks = [];
59
+ const willSetCellCallbacks = [];
60
+ const willSetValuesCallbacks = [];
61
+ const willSetValueCallbacks = [];
62
+ const willDelTablesCallbacks = [];
63
+ const willDelTableCallbacks = [];
64
+ const willDelRowCallbacks = [];
65
+ const willDelCellCallbacks = [];
66
+ const willDelValuesCallbacks = [];
67
+ const willDelValueCallbacks = [];
68
+ const willApplyChangesCallbacks = [];
69
+ const didSetRowCallbacksMap = mapNew();
70
+ const willSetContent = (content) =>
71
+ reduceCallbacks(willSetContentCallbacks, content);
72
+ const willSetTables = (tables) =>
73
+ reduceCallbacks(willSetTablesCallbacks, tables);
74
+ const willSetTable = (tableId, table) =>
75
+ reduceCallbacks(willSetTableCallbacks, table, tableId);
76
+ const willSetRow = (tableId, rowId, row) =>
77
+ reduceCallbacks(willSetRowCallbacks, row, tableId, rowId);
78
+ const willSetCell = (tableId, rowId, cellId, cell) =>
79
+ reduceCallbacks(willSetCellCallbacks, cell, tableId, rowId, cellId);
80
+ const willSetValues = (values) =>
81
+ reduceCallbacks(willSetValuesCallbacks, values);
82
+ const willSetValue = (valueId, value) =>
83
+ reduceCallbacks(willSetValueCallbacks, value, valueId);
84
+ const willDelTables = () => everyCallback(willDelTablesCallbacks);
85
+ const willDelTable = (tableId) =>
86
+ everyCallback(willDelTableCallbacks, tableId);
87
+ const willDelRow = (tableId, rowId) =>
88
+ everyCallback(willDelRowCallbacks, tableId, rowId);
89
+ const willDelCell = (tableId, rowId, cellId) =>
90
+ everyCallback(willDelCellCallbacks, tableId, rowId, cellId);
91
+ const willDelValues = () => everyCallback(willDelValuesCallbacks);
92
+ const willDelValue = (valueId) =>
93
+ everyCallback(willDelValueCallbacks, valueId);
94
+ const willApplyChanges = (changes) =>
95
+ reduceCallbacks(willApplyChangesCallbacks, changes);
96
+ const didSetRow = (tableId, rowId, oldRow, newRow) =>
97
+ ifNotUndefined(
98
+ mapGet(didSetRowCallbacksMap, tableId),
99
+ (callbacks) =>
100
+ arrayReduce(
101
+ callbacks,
102
+ (current, callback) => callback(tableId, rowId, oldRow, current),
103
+ newRow,
104
+ ),
105
+ () => newRow,
106
+ );
107
+ const getStore = () => store;
108
+ const addWillSetContentCallback = addCallback(willSetContentCallbacks);
109
+ const addWillSetTablesCallback = addCallback(willSetTablesCallbacks);
110
+ const addWillSetTableCallback = addCallback(willSetTableCallbacks);
111
+ const addWillSetRowCallback = addCallback(willSetRowCallbacks);
112
+ const addWillSetCellCallback = addCallback(willSetCellCallbacks);
113
+ const addWillSetValuesCallback = addCallback(willSetValuesCallbacks);
114
+ const addWillSetValueCallback = addCallback(willSetValueCallbacks);
115
+ const addWillDelTablesCallback = addCallback(willDelTablesCallbacks);
116
+ const addWillDelTableCallback = addCallback(willDelTableCallbacks);
117
+ const addWillDelRowCallback = addCallback(willDelRowCallbacks);
118
+ const addWillDelCellCallback = addCallback(willDelCellCallbacks);
119
+ const addWillDelValuesCallback = addCallback(willDelValuesCallbacks);
120
+ const addWillDelValueCallback = addCallback(willDelValueCallbacks);
121
+ const addWillApplyChangesCallback = addCallback(willApplyChangesCallbacks);
122
+ const addDidSetRowCallback = (tableId, callback) =>
123
+ fluent(() =>
124
+ arrayPush(
125
+ mapEnsure(didSetRowCallbacksMap, tableId, () => []),
126
+ callback,
127
+ ),
128
+ );
129
+ const destroy = () => {};
130
+ const middleware = objFreeze({
131
+ getStore,
132
+ addWillSetContentCallback,
133
+ addWillSetTablesCallback,
134
+ addWillSetTableCallback,
135
+ addWillSetRowCallback,
136
+ addWillSetCellCallback,
137
+ addWillSetValuesCallback,
138
+ addWillSetValueCallback,
139
+ addWillDelTablesCallback,
140
+ addWillDelTableCallback,
141
+ addWillDelRowCallback,
142
+ addWillDelCellCallback,
143
+ addWillDelValuesCallback,
144
+ addWillDelValueCallback,
145
+ addWillApplyChangesCallback,
146
+ addDidSetRowCallback,
147
+ destroy,
148
+ });
149
+ store.setMiddleware(
150
+ willSetContent,
151
+ willSetTables,
152
+ willSetTable,
153
+ willSetRow,
154
+ willSetCell,
155
+ willSetValues,
156
+ willSetValue,
157
+ willDelTables,
158
+ willDelTable,
159
+ willDelRow,
160
+ willDelCell,
161
+ willDelValues,
162
+ willDelValue,
163
+ willApplyChanges,
164
+ didSetRow,
165
+ );
166
+ return middleware;
167
+ });
168
+
169
+ export {createMiddleware};
@@ -1 +1 @@
1
- const e=e=>void 0===e,t=e=>null===e,n=(r=e,(e,t,n)=>r(e)?n?.():t(e));var r;const s=e=>e.length,o=(e,t)=>e.includes(t),c=(e,t)=>e.forEach(t),i=e=>0==s(e),l=(e,...t)=>e.push(...t),a=e=>e.pop(),d=e=>e.shift(),u=e=>e?.size??0,h=(p=u,e=>{return t=(e,t)=>e+p(t),k(e).reduce(t,0);var t});var p;const v=(e,t)=>e?.has(t)??!1,g=t=>e(t)||0==u(t),k=e=>[...e?.values()??[]],C=(e,t)=>e?.forEach(t),f=(e,t)=>e?.delete(t),L=Object.freeze,w=e=>new Map(e),S=(e,t)=>e?.get(t),y=(t,n,r)=>e(r)?(f(t,n),t):t?.set(n,r),z=(e,t,n,r)=>(v(e,t)?r?.(S(e,t)):y(e,t,n()),S(e,t)),E=(e,t,r,o,c=0)=>n((r?z:S)(e,t[c],c>s(t)-2?r:w),n=>{if(c>s(t)-2)return o?.(n)&&y(e,t[c]),n;const i=E(n,t,r,o,c+1);return g(n)&&y(e,t[c]),i}),I=t=>new Set(Array.isArray(t)||e(t)?t:[t]),V=/^\d+$/,A=(()=>{const r=new WeakMap;return u=>{r.has(u)||r.set(u,(r=>{let u,p,k,A=100,F=w(),M=w(),_=1;const b=w(),j=w(),[x,B,O]=(()=>{let e;const[r,o]=(()=>{const e=[];let t=0;return[n=>(n?d(e):null)??""+t++,t=>{V.test(t)&&s(e)<1e3&&l(e,t)}]})(),i=w();return[(t,n,s,o=[],c=()=>[])=>{e??=te;const l=r(1);var a,d;return y(i,l,[t,n,s,o,c]),a=E(n,s??[""],I),d=l,a?.add(d),l},(n,r,...o)=>c(((e,n=[""])=>{const r=[],o=(e,i)=>i==s(n)?l(r,e):t(n[i])?C(e,e=>o(e,i+1)):c([n[i],null],t=>o(S(e,t),i+1));return o(e,0),r})(n,r),t=>C(t,t=>S(i,t)[0](e,...r??[],...o))),e=>n(S(i,e),([,t,n])=>(E(t,n??[""],void 0,t=>(f(t,e),g(t)?1:0)),y(i,e),o(e),n)),r=>n(S(i,r),([n,,r=[],o,i])=>{const l=(...a)=>{const d=s(a);d==s(r)?n(e,...a,...i(a)):t(r[d])?c(o[d]?.(...a)??[],e=>l(...a,e)):l(...a,r[d])};l()})]})(),T=w(),W=w(),$=[],m=[],q=(t,n)=>{_=0,r.transaction(()=>{const[s,o]=S(T,n);C(s,(n,s)=>C(n,(n,o)=>C(n,(n,c)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(r,s,o,c,n[t])))),C(o,(n,s)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(r,s,n[t]))}),_=1},D=e=>{y(T,e),y(W,e),B(j,[e])},G=(e,t)=>c(((e,t)=>e.splice(0,t))(e,t??s(e)),D),H=()=>G($,s($)-A),J=()=>n(u,()=>{l($,u),H(),G(m),u=void 0,k=1}),K=()=>{u=a($),k=1};let N,P;const Q=(t="")=>(e(u)&&(u=""+p++,y(T,u,[F,M]),Z(u,t),F=w(),M=w(),k=1),u),R=()=>{i($)||(((e,...t)=>{e.unshift(...t)})(m,Q()),q(0,u),u=a($),k=1)},U=()=>{i(m)||(l($,u),u=d(m),q(1,u),k=1)},X=()=>{k&&(B(b),k=0)},Y=e=>{const t=Q(e);return X(),t},Z=(e,t)=>(ee(e)&&S(W,e)!==t&&(y(W,e,t),B(j,[e])),te),ee=e=>v(T,e),te={setSize:e=>(A=e,H(),te),addCheckpoint:Y,setCheckpoint:Z,getStore:()=>r,getCheckpointIds:()=>[[...$],u,[...m]],forEachCheckpoint:e=>{return t=e,C(W,(e,n)=>t(n,e));var t},hasCheckpoint:ee,getCheckpoint:e=>S(W,e),goBackward:()=>(R(),X(),te),goForward:()=>(U(),X(),te),goTo:t=>{const n=o($,t)?R:o(m,t)?U:void 0;for(;!e(n)&&t!=u;)n();return X(),te},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(O(e),te),clear:()=>(G($),G(m),e(u)||D(u),u=void 0,p=0,Y(),te),clearForward:()=>(i(m)||(G(m),B(b)),te),destroy:()=>{r.delListener(N),r.delListener(P)},getListenerStats:()=>({checkpointIds:h(b),checkpoint:h(j)}),_registerListeners:()=>{N=r.addCellListener(null,null,null,(e,t,n,r,s,o)=>{if(_){J();const e=z(F,t,w),c=z(e,n,w),i=z(c,r,()=>[o,void 0]);i[1]=s,i[0]===s&&g(y(c,r))&&g(y(e,n))&&g(y(F,t))&&K(),X()}}),P=r.addValueListener(null,(e,t,n,r)=>{if(_){J();const e=z(M,t,()=>[r,void 0]);e[1]=n,e[0]===n&&g(y(M,t))&&K(),X()}})}};return L(te.clear())})(u));const p=r.get(u);return p._registerListeners(),p}})();export{A as createCheckpoints};
1
+ const e=e=>void 0===e,t=e=>null===e,r=(n=e,(e,t,r)=>n(e)?r?.():t(e));var n;const s=e=>e.length,o=(e,t)=>e.includes(t),c=(e,t)=>e.forEach(t),i=e=>0==s(e),l=(e,...t)=>e.push(...t),a=e=>e.pop(),d=e=>e.shift(),u=e=>e?.size??0,h=(p=u,e=>{return t=(e,t)=>e+p(t),k(e).reduce(t,0);var t});var p;const v=(e,t)=>e?.has(t)??!1,g=t=>e(t)||0==u(t),k=e=>[...e?.values()??[]],f=(e,t)=>e?.forEach(t),C=(e,t)=>e?.delete(t),L=Object.freeze,w=Map,S=e=>new w(e),y=(e,t)=>e?.get(t),z=(t,r,n)=>e(n)?(C(t,r),t):t?.set(r,n),E=(e,t,r,n)=>(v(e,t)?n?.(y(e,t)):z(e,t,r()),y(e,t)),I=(e,t,n,o,c=0)=>r((n?E:y)(e,t[c],c>s(t)-2?n:S),r=>{if(c>s(t)-2)return o?.(r)&&z(e,t[c]),r;const i=I(r,t,n,o,c+1);return g(r)&&z(e,t[c]),i}),O=t=>new Set(Array.isArray(t)||e(t)?t:[t]),A=/^\d+$/,D=(()=>{const n=new WeakMap;return u=>{n.has(u)||n.set(u,(n=>{let u,p,k,w=100,D=S(),F=S(),M=1;const V=S(),_=S(),[b,j,x]=(()=>{let e;const[n,o]=(()=>{const e=[];let t=0;return[r=>(r?d(e):null)??""+t++,t=>{A.test(t)&&s(e)<1e3&&l(e,t)}]})(),i=S();return[(t,r,s,o=[],c=()=>[])=>{e??=te;const l=n(1);var a,d;return z(i,l,[t,r,s,o,c]),a=I(r,s??[""],O),d=l,a?.add(d),l},(r,n,...o)=>c(((e,r=[""])=>{const n=[],o=(e,i)=>i==s(r)?l(n,e):t(r[i])?f(e,e=>o(e,i+1)):c([r[i],null],t=>o(y(e,t),i+1));return o(e,0),n})(r,n),t=>f(t,t=>y(i,t)[0](e,...n??[],...o))),e=>r(y(i,e),([,t,r])=>(I(t,r??[""],void 0,t=>(C(t,e),g(t)?1:0)),z(i,e),o(e),r)),n=>r(y(i,n),([r,,n=[],o,i])=>{const l=(...a)=>{const d=s(a);d==s(n)?r(e,...a,...i(a)):t(n[d])?c(o[d]?.(...a)??[],e=>l(...a,e)):l(...a,n[d])};l()})]})(),B=S(),T=S(),W=[],$=[],m=(e,t)=>{M=0,n.transaction(()=>{const[r,s]=y(B,t);f(r,(t,r)=>f(t,(t,s)=>f(t,(t,o)=>n.setOrDelCell(r,s,o,t[e],!0)))),f(s,(t,r)=>n.setOrDelValue(r,t[e],!0))}),M=1},q=e=>{z(B,e),z(T,e),j(_,[e])},G=(e,t)=>c(((e,t)=>e.splice(0,t))(e,t??s(e)),q),H=()=>G(W,s(W)-w),J=()=>r(u,()=>{l(W,u),H(),G($),u=void 0,k=1}),K=()=>{u=a(W),k=1};let N,P;const Q=(t="")=>(e(u)&&(u=""+p++,z(B,u,[D,F]),Z(u,t),D=S(),F=S(),k=1),u),R=()=>{i(W)||(((e,...t)=>{e.unshift(...t)})($,Q()),m(0,u),u=a(W),k=1)},U=()=>{i($)||(l(W,u),u=d($),m(1,u),k=1)},X=()=>{k&&(j(V),k=0)},Y=e=>{const t=Q(e);return X(),t},Z=(e,t)=>(ee(e)&&y(T,e)!==t&&(z(T,e,t),j(_,[e])),te),ee=e=>v(B,e),te={setSize:e=>(w=e,H(),te),addCheckpoint:Y,setCheckpoint:Z,getStore:()=>n,getCheckpointIds:()=>[[...W],u,[...$]],forEachCheckpoint:e=>{return t=e,f(T,(e,r)=>t(r,e));var t},hasCheckpoint:ee,getCheckpoint:e=>y(T,e),goBackward:()=>(R(),X(),te),goForward:()=>(U(),X(),te),goTo:t=>{const r=o(W,t)?R:o($,t)?U:void 0;for(;!e(r)&&t!=u;)r();return X(),te},addCheckpointIdsListener:e=>b(e,V),addCheckpointListener:(e,t)=>b(t,_,[e]),delListener:e=>(x(e),te),clear:()=>(G(W),G($),e(u)||q(u),u=void 0,p=0,Y(),te),clearForward:()=>(i($)||(G($),j(V)),te),destroy:()=>{n.delListener(N),n.delListener(P)},getListenerStats:()=>({checkpointIds:h(V),checkpoint:h(_)}),_registerListeners:()=>{N=n.addCellListener(null,null,null,(e,t,r,n,s,o)=>{if(M){J();const e=E(D,t,S),c=E(e,r,S),i=E(c,n,()=>[o,void 0]);i[1]=s,i[0]===s&&g(z(c,n))&&g(z(e,r))&&g(z(D,t))&&K(),X()}}),P=n.addValueListener(null,(e,t,r,n)=>{if(M){J();const e=E(F,t,()=>[n,void 0]);e[1]=r,e[0]===r&&g(z(F,t))&&K(),X()}})}};return L(te.clear())})(u));const p=n.get(u);return p._registerListeners(),p}})();export{D as createCheckpoints};
Binary file
@@ -1 +1 @@
1
- const e=e=>void 0===e,t=e=>null===e,n=(r=e,(e,t,n)=>r(e)?n?.():t(e));var r;const s=e=>e.length,o=(e,t)=>e.includes(t),c=(e,t)=>e.forEach(t),i=e=>0==s(e),l=(e,...t)=>e.push(...t),a=e=>e.pop(),d=e=>e.shift(),u=e=>e?.size??0,h=(p=u,e=>{return t=(e,t)=>e+p(t),k(e).reduce(t,0);var t});var p;const v=(e,t)=>e?.has(t)??!1,g=t=>e(t)||0==u(t),k=e=>[...e?.values()??[]],C=(e,t)=>e?.forEach(t),f=(e,t)=>e?.delete(t),L=Object.freeze,w=e=>new Map(e),S=(e,t)=>e?.get(t),y=(t,n,r)=>e(r)?(f(t,n),t):t?.set(n,r),z=(e,t,n,r)=>(v(e,t)?r?.(S(e,t)):y(e,t,n()),S(e,t)),E=(e,t,r,o,c=0)=>n((r?z:S)(e,t[c],c>s(t)-2?r:w),n=>{if(c>s(t)-2)return o?.(n)&&y(e,t[c]),n;const i=E(n,t,r,o,c+1);return g(n)&&y(e,t[c]),i}),I=t=>new Set(Array.isArray(t)||e(t)?t:[t]),V=/^\d+$/,A=(()=>{const r=new WeakMap;return u=>{r.has(u)||r.set(u,(r=>{let u,p,k,A=100,F=w(),M=w(),_=1;const b=w(),j=w(),[x,B,O]=(()=>{let e;const[r,o]=(()=>{const e=[];let t=0;return[n=>(n?d(e):null)??""+t++,t=>{V.test(t)&&s(e)<1e3&&l(e,t)}]})(),i=w();return[(t,n,s,o=[],c=()=>[])=>{e??=te;const l=r(1);var a,d;return y(i,l,[t,n,s,o,c]),a=E(n,s??[""],I),d=l,a?.add(d),l},(n,r,...o)=>c(((e,n=[""])=>{const r=[],o=(e,i)=>i==s(n)?l(r,e):t(n[i])?C(e,e=>o(e,i+1)):c([n[i],null],t=>o(S(e,t),i+1));return o(e,0),r})(n,r),t=>C(t,t=>S(i,t)[0](e,...r??[],...o))),e=>n(S(i,e),([,t,n])=>(E(t,n??[""],void 0,t=>(f(t,e),g(t)?1:0)),y(i,e),o(e),n)),r=>n(S(i,r),([n,,r=[],o,i])=>{const l=(...a)=>{const d=s(a);d==s(r)?n(e,...a,...i(a)):t(r[d])?c(o[d]?.(...a)??[],e=>l(...a,e)):l(...a,r[d])};l()})]})(),T=w(),W=w(),$=[],m=[],q=(t,n)=>{_=0,r.transaction(()=>{const[s,o]=S(T,n);C(s,(n,s)=>C(n,(n,o)=>C(n,(n,c)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(r,s,o,c,n[t])))),C(o,(n,s)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(r,s,n[t]))}),_=1},D=e=>{y(T,e),y(W,e),B(j,[e])},G=(e,t)=>c(((e,t)=>e.splice(0,t))(e,t??s(e)),D),H=()=>G($,s($)-A),J=()=>n(u,()=>{l($,u),H(),G(m),u=void 0,k=1}),K=()=>{u=a($),k=1};let N,P;const Q=(t="")=>(e(u)&&(u=""+p++,y(T,u,[F,M]),Z(u,t),F=w(),M=w(),k=1),u),R=()=>{i($)||(((e,...t)=>{e.unshift(...t)})(m,Q()),q(0,u),u=a($),k=1)},U=()=>{i(m)||(l($,u),u=d(m),q(1,u),k=1)},X=()=>{k&&(B(b),k=0)},Y=e=>{const t=Q(e);return X(),t},Z=(e,t)=>(ee(e)&&S(W,e)!==t&&(y(W,e,t),B(j,[e])),te),ee=e=>v(T,e),te={setSize:e=>(A=e,H(),te),addCheckpoint:Y,setCheckpoint:Z,getStore:()=>r,getCheckpointIds:()=>[[...$],u,[...m]],forEachCheckpoint:e=>{return t=e,C(W,(e,n)=>t(n,e));var t},hasCheckpoint:ee,getCheckpoint:e=>S(W,e),goBackward:()=>(R(),X(),te),goForward:()=>(U(),X(),te),goTo:t=>{const n=o($,t)?R:o(m,t)?U:void 0;for(;!e(n)&&t!=u;)n();return X(),te},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(O(e),te),clear:()=>(G($),G(m),e(u)||D(u),u=void 0,p=0,Y(),te),clearForward:()=>(i(m)||(G(m),B(b)),te),destroy:()=>{r.delListener(N),r.delListener(P)},getListenerStats:()=>({checkpointIds:h(b),checkpoint:h(j)}),_registerListeners:()=>{N=r.addCellListener(null,null,null,(e,t,n,r,s,o)=>{if(_){J();const e=z(F,t,w),c=z(e,n,w),i=z(c,r,()=>[o,void 0]);i[1]=s,i[0]===s&&g(y(c,r))&&g(y(e,n))&&g(y(F,t))&&K(),X()}}),P=r.addValueListener(null,(e,t,n,r)=>{if(_){J();const e=z(M,t,()=>[r,void 0]);e[1]=n,e[0]===n&&g(y(M,t))&&K(),X()}})}};return L(te.clear())})(u));const p=r.get(u);return p._registerListeners(),p}})();export{A as createCheckpoints};
1
+ const e=e=>void 0===e,t=e=>null===e,r=(n=e,(e,t,r)=>n(e)?r?.():t(e));var n;const s=e=>e.length,o=(e,t)=>e.includes(t),c=(e,t)=>e.forEach(t),i=e=>0==s(e),l=(e,...t)=>e.push(...t),a=e=>e.pop(),d=e=>e.shift(),u=e=>e?.size??0,h=(p=u,e=>{return t=(e,t)=>e+p(t),k(e).reduce(t,0);var t});var p;const v=(e,t)=>e?.has(t)??!1,g=t=>e(t)||0==u(t),k=e=>[...e?.values()??[]],f=(e,t)=>e?.forEach(t),C=(e,t)=>e?.delete(t),L=Object.freeze,w=Map,S=e=>new w(e),y=(e,t)=>e?.get(t),z=(t,r,n)=>e(n)?(C(t,r),t):t?.set(r,n),E=(e,t,r,n)=>(v(e,t)?n?.(y(e,t)):z(e,t,r()),y(e,t)),I=(e,t,n,o,c=0)=>r((n?E:y)(e,t[c],c>s(t)-2?n:S),r=>{if(c>s(t)-2)return o?.(r)&&z(e,t[c]),r;const i=I(r,t,n,o,c+1);return g(r)&&z(e,t[c]),i}),O=t=>new Set(Array.isArray(t)||e(t)?t:[t]),A=/^\d+$/,D=(()=>{const n=new WeakMap;return u=>{n.has(u)||n.set(u,(n=>{let u,p,k,w=100,D=S(),F=S(),M=1;const V=S(),_=S(),[b,j,x]=(()=>{let e;const[n,o]=(()=>{const e=[];let t=0;return[r=>(r?d(e):null)??""+t++,t=>{A.test(t)&&s(e)<1e3&&l(e,t)}]})(),i=S();return[(t,r,s,o=[],c=()=>[])=>{e??=te;const l=n(1);var a,d;return z(i,l,[t,r,s,o,c]),a=I(r,s??[""],O),d=l,a?.add(d),l},(r,n,...o)=>c(((e,r=[""])=>{const n=[],o=(e,i)=>i==s(r)?l(n,e):t(r[i])?f(e,e=>o(e,i+1)):c([r[i],null],t=>o(y(e,t),i+1));return o(e,0),n})(r,n),t=>f(t,t=>y(i,t)[0](e,...n??[],...o))),e=>r(y(i,e),([,t,r])=>(I(t,r??[""],void 0,t=>(C(t,e),g(t)?1:0)),z(i,e),o(e),r)),n=>r(y(i,n),([r,,n=[],o,i])=>{const l=(...a)=>{const d=s(a);d==s(n)?r(e,...a,...i(a)):t(n[d])?c(o[d]?.(...a)??[],e=>l(...a,e)):l(...a,n[d])};l()})]})(),B=S(),T=S(),W=[],$=[],m=(e,t)=>{M=0,n.transaction(()=>{const[r,s]=y(B,t);f(r,(t,r)=>f(t,(t,s)=>f(t,(t,o)=>n.setOrDelCell(r,s,o,t[e],!0)))),f(s,(t,r)=>n.setOrDelValue(r,t[e],!0))}),M=1},q=e=>{z(B,e),z(T,e),j(_,[e])},G=(e,t)=>c(((e,t)=>e.splice(0,t))(e,t??s(e)),q),H=()=>G(W,s(W)-w),J=()=>r(u,()=>{l(W,u),H(),G($),u=void 0,k=1}),K=()=>{u=a(W),k=1};let N,P;const Q=(t="")=>(e(u)&&(u=""+p++,z(B,u,[D,F]),Z(u,t),D=S(),F=S(),k=1),u),R=()=>{i(W)||(((e,...t)=>{e.unshift(...t)})($,Q()),m(0,u),u=a(W),k=1)},U=()=>{i($)||(l(W,u),u=d($),m(1,u),k=1)},X=()=>{k&&(j(V),k=0)},Y=e=>{const t=Q(e);return X(),t},Z=(e,t)=>(ee(e)&&y(T,e)!==t&&(z(T,e,t),j(_,[e])),te),ee=e=>v(B,e),te={setSize:e=>(w=e,H(),te),addCheckpoint:Y,setCheckpoint:Z,getStore:()=>n,getCheckpointIds:()=>[[...W],u,[...$]],forEachCheckpoint:e=>{return t=e,f(T,(e,r)=>t(r,e));var t},hasCheckpoint:ee,getCheckpoint:e=>y(T,e),goBackward:()=>(R(),X(),te),goForward:()=>(U(),X(),te),goTo:t=>{const r=o(W,t)?R:o($,t)?U:void 0;for(;!e(r)&&t!=u;)r();return X(),te},addCheckpointIdsListener:e=>b(e,V),addCheckpointListener:(e,t)=>b(t,_,[e]),delListener:e=>(x(e),te),clear:()=>(G(W),G($),e(u)||q(u),u=void 0,p=0,Y(),te),clearForward:()=>(i($)||(G($),j(V)),te),destroy:()=>{n.delListener(N),n.delListener(P)},getListenerStats:()=>({checkpointIds:h(V),checkpoint:h(_)}),_registerListeners:()=>{N=n.addCellListener(null,null,null,(e,t,r,n,s,o)=>{if(M){J();const e=E(D,t,S),c=E(e,r,S),i=E(c,n,()=>[o,void 0]);i[1]=s,i[0]===s&&g(z(c,n))&&g(z(e,r))&&g(z(D,t))&&K(),X()}}),P=n.addValueListener(null,(e,t,r,n)=>{if(M){J();const e=E(F,t,()=>[n,void 0]);e[1]=r,e[0]===r&&g(z(F,t))&&K(),X()}})}};return L(te.clear())})(u));const p=n.get(u);return p._registerListeners(),p}})();export{D as createCheckpoints};
@@ -1 +1 @@
1
- const e=(e,t="",r)=>e.split(t,r),t=globalThis,r=Math,n=r.max,o=r.floor,a=e=>void 0===e,c=(s=a,(e,t,r)=>s(e)?r?.():t(e));var s;const i=(e,t)=>e.map(t),l=(e,t,r)=>e.reduce(t,r),p=Object,u=p.entries,d=e=>new Map(e),f=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),m=d(i(f,(e,t)=>[e,t])),g=e=>f[63&e],v=(e,t)=>{return r=m,n=e[t],r?.get(n)??0;var r,n},w=t.crypto?e=>t.crypto.getRandomValues(e):e=>i(e,()=>o(256*r.random())),y=(e=16)=>l(w(new Uint8Array(e)),(e,t)=>e+g(t),""),h=JSON.stringify,x=new t.TextEncoder,E=e=>{let t=2166136261;var r;return r=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},x.encode(e).forEach(r),t>>>0},M=(e,t)=>(e^t)>>>0,b=e=>l(u(e),(e,[t,r])=>M(e,O(t,r)^O(t,0)),0),O=(e,t)=>E(e+":"+t),T=(e,t)=>E(h(e??null,(e,t)=>t instanceof Map?p.fromEntries([...t]):t)+":"+t),j=T,A=O,D=b,J=O,N=e=>l(u(e),(e,[t,r])=>M(e,O(t,r)),0),R=O,S=N,U=2**36,V=2**30,k=2**24,q=2**18,z=4096,B=e=>{const t=E(e);return g(t/k)+g(t/q)+g(t/z)+g(t/64)+g(t)},C=(e,t=Date.now)=>{let r=0,o=-1;const s=c(e,B,()=>y(5)),i=e=>{const c=r,[s,i]=a(e)||""==e?[0,0]:p(e);r=n(c,s,t()),o=r==c?r==s?n(o,i):o:r==s?i:-1},l=(e,t,r)=>g(e/U)+g(e/V)+g(e/k)+g(e/q)+g(e/z)+g(e/64)+g(e)+g(t/q)+g(t/z)+g(t/64)+g(t)+(a(r)?s:B(r)),p=e=>[v(e,0)*U+v(e,1)*V+v(e,2)*k+v(e,3)*q+v(e,4)*z+64*v(e,5)+v(e,6),v(e,7)*q+v(e,8)*z+64*v(e,9)+v(e,10),e.slice(11)];return[()=>(i(),l(r,++o)),i,l,p,()=>r,()=>o,()=>s]},F=(e,t)=>(e??0)<(t??0)?-1:1;export{M as addOrRemoveHash,F as defaultSorter,j as getCellHash,A as getCellInRowHash,E as getHash,C as getHlcFunctions,D as getRowHash,J as getRowInTableHash,N as getTableHash,R as getTableInTablesHash,S as getTablesHash,y as getUniqueId,T as getValueHash,O as getValueInValuesHash,b as getValuesHash};
1
+ const e=(e,t="",r)=>e.split(t,r),t=globalThis,r=Math,n=r.max,o=r.floor,a=e=>void 0===e,c=(s=a,(e,t,r)=>s(e)?r?.():t(e));var s;const i=(e,t)=>e.map(t),l=(e,t,r)=>e.reduce(t,r),p=Object,u=p.entries,d=Map,f=e=>new d(e),m=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),g=f(i(m,(e,t)=>[e,t])),v=e=>m[63&e],w=(e,t)=>{return r=g,n=e[t],r?.get(n)??0;var r,n},y=t.crypto?e=>t.crypto.getRandomValues(e):e=>i(e,()=>o(256*r.random())),h=(e=16)=>l(y(new Uint8Array(e)),(e,t)=>e+v(t),""),x=JSON.stringify,E=new t.TextEncoder,M=e=>{let t=2166136261;var r;return r=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},E.encode(e).forEach(r),t>>>0},b=(e,t)=>(e^t)>>>0,O=e=>l(u(e),(e,[t,r])=>b(e,T(t,r)^T(t,0)),0),T=(e,t)=>M(e+":"+t),j=(e,t)=>M(x(e??null,(e,t)=>t instanceof Map?p.fromEntries([...t]):t)+":"+t),A=j,D=T,J=O,N=T,R=e=>l(u(e),(e,[t,r])=>b(e,T(t,r)),0),S=T,U=R,V=2**36,k=2**30,q=2**24,z=2**18,B=4096,C=e=>{const t=M(e);return v(t/q)+v(t/z)+v(t/B)+v(t/64)+v(t)},F=(e,t=Date.now)=>{let r=0,o=-1;const s=c(e,C,()=>h(5)),i=e=>{const c=r,[s,i]=a(e)||""==e?[0,0]:p(e);r=n(c,s,t()),o=r==c?r==s?n(o,i):o:r==s?i:-1},l=(e,t,r)=>v(e/V)+v(e/k)+v(e/q)+v(e/z)+v(e/B)+v(e/64)+v(e)+v(t/z)+v(t/B)+v(t/64)+v(t)+(a(r)?s:C(r)),p=e=>[w(e,0)*V+w(e,1)*k+w(e,2)*q+w(e,3)*z+w(e,4)*B+64*w(e,5)+w(e,6),w(e,7)*z+w(e,8)*B+64*w(e,9)+w(e,10),e.slice(11)];return[()=>(i(),l(r,++o)),i,l,p,()=>r,()=>o,()=>s]},G=(e,t)=>(e??0)<(t??0)?-1:1;export{b as addOrRemoveHash,G as defaultSorter,A as getCellHash,D as getCellInRowHash,M as getHash,F as getHlcFunctions,J as getRowHash,N as getRowInTableHash,R as getTableHash,S as getTableInTablesHash,U as getTablesHash,h as getUniqueId,j as getValueHash,T as getValueInValuesHash,O as getValuesHash};
Binary file
@@ -1 +1 @@
1
- const e=(e,t="",r)=>e.split(t,r),t=globalThis,r=Math,n=r.max,o=r.floor,a=e=>void 0===e,c=(s=a,(e,t,r)=>s(e)?r?.():t(e));var s;const i=(e,t)=>e.map(t),l=(e,t,r)=>e.reduce(t,r),p=Object,u=p.entries,d=e=>new Map(e),f=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),m=d(i(f,(e,t)=>[e,t])),g=e=>f[63&e],v=(e,t)=>{return r=m,n=e[t],r?.get(n)??0;var r,n},w=t.crypto?e=>t.crypto.getRandomValues(e):e=>i(e,()=>o(256*r.random())),y=(e=16)=>l(w(new Uint8Array(e)),(e,t)=>e+g(t),""),h=JSON.stringify,x=new t.TextEncoder,E=e=>{let t=2166136261;var r;return r=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},x.encode(e).forEach(r),t>>>0},M=(e,t)=>(e^t)>>>0,b=e=>l(u(e),(e,[t,r])=>M(e,O(t,r)^O(t,0)),0),O=(e,t)=>E(e+":"+t),T=(e,t)=>E(h(e??null,(e,t)=>t instanceof Map?p.fromEntries([...t]):t)+":"+t),j=T,A=O,D=b,J=O,N=e=>l(u(e),(e,[t,r])=>M(e,O(t,r)),0),R=O,S=N,U=2**36,V=2**30,k=2**24,q=2**18,z=4096,B=e=>{const t=E(e);return g(t/k)+g(t/q)+g(t/z)+g(t/64)+g(t)},C=(e,t=Date.now)=>{let r=0,o=-1;const s=c(e,B,()=>y(5)),i=e=>{const c=r,[s,i]=a(e)||""==e?[0,0]:p(e);r=n(c,s,t()),o=r==c?r==s?n(o,i):o:r==s?i:-1},l=(e,t,r)=>g(e/U)+g(e/V)+g(e/k)+g(e/q)+g(e/z)+g(e/64)+g(e)+g(t/q)+g(t/z)+g(t/64)+g(t)+(a(r)?s:B(r)),p=e=>[v(e,0)*U+v(e,1)*V+v(e,2)*k+v(e,3)*q+v(e,4)*z+64*v(e,5)+v(e,6),v(e,7)*q+v(e,8)*z+64*v(e,9)+v(e,10),e.slice(11)];return[()=>(i(),l(r,++o)),i,l,p,()=>r,()=>o,()=>s]},F=(e,t)=>(e??0)<(t??0)?-1:1;export{M as addOrRemoveHash,F as defaultSorter,j as getCellHash,A as getCellInRowHash,E as getHash,C as getHlcFunctions,D as getRowHash,J as getRowInTableHash,N as getTableHash,R as getTableInTablesHash,S as getTablesHash,y as getUniqueId,T as getValueHash,O as getValueInValuesHash,b as getValuesHash};
1
+ const e=(e,t="",r)=>e.split(t,r),t=globalThis,r=Math,n=r.max,o=r.floor,a=e=>void 0===e,c=(s=a,(e,t,r)=>s(e)?r?.():t(e));var s;const i=(e,t)=>e.map(t),l=(e,t,r)=>e.reduce(t,r),p=Object,u=p.entries,d=Map,f=e=>new d(e),m=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),g=f(i(m,(e,t)=>[e,t])),v=e=>m[63&e],w=(e,t)=>{return r=g,n=e[t],r?.get(n)??0;var r,n},y=t.crypto?e=>t.crypto.getRandomValues(e):e=>i(e,()=>o(256*r.random())),h=(e=16)=>l(y(new Uint8Array(e)),(e,t)=>e+v(t),""),x=JSON.stringify,E=new t.TextEncoder,M=e=>{let t=2166136261;var r;return r=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},E.encode(e).forEach(r),t>>>0},b=(e,t)=>(e^t)>>>0,O=e=>l(u(e),(e,[t,r])=>b(e,T(t,r)^T(t,0)),0),T=(e,t)=>M(e+":"+t),j=(e,t)=>M(x(e??null,(e,t)=>t instanceof Map?p.fromEntries([...t]):t)+":"+t),A=j,D=T,J=O,N=T,R=e=>l(u(e),(e,[t,r])=>b(e,T(t,r)),0),S=T,U=R,V=2**36,k=2**30,q=2**24,z=2**18,B=4096,C=e=>{const t=M(e);return v(t/q)+v(t/z)+v(t/B)+v(t/64)+v(t)},F=(e,t=Date.now)=>{let r=0,o=-1;const s=c(e,C,()=>h(5)),i=e=>{const c=r,[s,i]=a(e)||""==e?[0,0]:p(e);r=n(c,s,t()),o=r==c?r==s?n(o,i):o:r==s?i:-1},l=(e,t,r)=>v(e/V)+v(e/k)+v(e/q)+v(e/z)+v(e/B)+v(e/64)+v(e)+v(t/z)+v(t/B)+v(t/64)+v(t)+(a(r)?s:C(r)),p=e=>[w(e,0)*V+w(e,1)*k+w(e,2)*q+w(e,3)*z+w(e,4)*B+64*w(e,5)+w(e,6),w(e,7)*z+w(e,8)*B+64*w(e,9)+w(e,10),e.slice(11)];return[()=>(i(),l(r,++o)),i,l,p,()=>r,()=>o,()=>s]},G=(e,t)=>(e??0)<(t??0)?-1:1;export{b as addOrRemoveHash,G as defaultSorter,A as getCellHash,D as getCellInRowHash,M as getHash,F as getHlcFunctions,J as getRowHash,N as getRowInTableHash,R as getTableHash,S as getTableInTablesHash,U as getTablesHash,h as getUniqueId,j as getValueHash,T as getValueInValuesHash,O as getValuesHash};
Binary file