@verdant-web/store 2.0.1 → 2.0.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 (560) hide show
  1. package/dist/cjs/BackoffScheduler.d.ts +19 -19
  2. package/dist/cjs/BackoffScheduler.js +44 -44
  3. package/dist/cjs/DocumentManager.d.ts +28 -28
  4. package/dist/cjs/DocumentManager.js +44 -44
  5. package/dist/cjs/IDBService.d.ts +9 -9
  6. package/dist/cjs/IDBService.js +46 -46
  7. package/dist/cjs/UndoHistory.d.ts +16 -16
  8. package/dist/cjs/UndoHistory.js +50 -50
  9. package/dist/cjs/__tests__/batching.test.d.ts +1 -1
  10. package/dist/cjs/__tests__/batching.test.js +44 -44
  11. package/dist/cjs/__tests__/documents.test.d.ts +1 -1
  12. package/dist/cjs/__tests__/documents.test.js +398 -398
  13. package/dist/cjs/__tests__/fixtures/testStorage.d.ts +118 -118
  14. package/dist/cjs/__tests__/fixtures/testStorage.js +115 -115
  15. package/dist/cjs/__tests__/queries.test.d.ts +1 -1
  16. package/dist/cjs/__tests__/queries.test.js +262 -262
  17. package/dist/cjs/__tests__/setup/indexedDB.d.ts +1 -1
  18. package/dist/cjs/__tests__/setup/indexedDB.js +3 -3
  19. package/dist/cjs/__tests__/undo.test.d.ts +1 -1
  20. package/dist/cjs/__tests__/undo.test.js +86 -86
  21. package/dist/cjs/client/Client.d.ts +86 -86
  22. package/dist/cjs/client/Client.js +226 -226
  23. package/dist/cjs/client/ClientDescriptor.d.ts +62 -62
  24. package/dist/cjs/client/ClientDescriptor.js +108 -108
  25. package/dist/cjs/constants.d.ts +1 -1
  26. package/dist/cjs/constants.js +4 -4
  27. package/dist/cjs/context.d.ts +17 -17
  28. package/dist/cjs/context.js +2 -2
  29. package/dist/cjs/files/EntityFile.d.ts +27 -27
  30. package/dist/cjs/files/EntityFile.js +71 -71
  31. package/dist/cjs/files/FileManager.d.ts +42 -42
  32. package/dist/cjs/files/FileManager.js +145 -145
  33. package/dist/cjs/files/FileStorage.d.ts +27 -27
  34. package/dist/cjs/files/FileStorage.js +93 -93
  35. package/dist/cjs/files/utils.d.ts +8 -8
  36. package/dist/cjs/files/utils.js +55 -55
  37. package/dist/cjs/files/utils.test.d.ts +1 -1
  38. package/dist/cjs/files/utils.test.js +80 -80
  39. package/dist/cjs/idb.d.ts +8 -8
  40. package/dist/cjs/idb.js +87 -87
  41. package/dist/cjs/index.d.ts +19 -19
  42. package/dist/cjs/index.js +20 -20
  43. package/dist/cjs/indexes.d.ts +3 -3
  44. package/dist/cjs/indexes.js +19 -19
  45. package/dist/cjs/metadata/AckInfoStore.d.ts +10 -10
  46. package/dist/cjs/metadata/AckInfoStore.js +25 -25
  47. package/dist/cjs/metadata/BaselinesStore.d.ts +33 -33
  48. package/dist/cjs/metadata/BaselinesStore.js +59 -59
  49. package/dist/cjs/metadata/LocalReplicaStore.d.ts +17 -17
  50. package/dist/cjs/metadata/LocalReplicaStore.js +47 -47
  51. package/dist/cjs/metadata/MessageCreator.d.ts +19 -19
  52. package/dist/cjs/metadata/MessageCreator.js +127 -127
  53. package/dist/cjs/metadata/Metadata.d.ts +106 -106
  54. package/dist/cjs/metadata/Metadata.js +336 -336
  55. package/dist/cjs/metadata/OperationsStore.d.ts +50 -50
  56. package/dist/cjs/metadata/OperationsStore.js +145 -145
  57. package/dist/cjs/metadata/SchemaStore.d.ts +9 -9
  58. package/dist/cjs/metadata/SchemaStore.js +38 -38
  59. package/dist/cjs/metadata/openMetadataDatabase.d.ts +8 -8
  60. package/dist/cjs/metadata/openMetadataDatabase.js +105 -105
  61. package/dist/cjs/openDocumentDatabase.d.ts +12 -12
  62. package/dist/cjs/openDocumentDatabase.js +424 -424
  63. package/dist/cjs/queries2/BaseQuery.d.ts +39 -39
  64. package/dist/cjs/queries2/BaseQuery.js +98 -98
  65. package/dist/cjs/queries2/CollectionQueries.d.ts +55 -55
  66. package/dist/cjs/queries2/CollectionQueries.js +82 -82
  67. package/dist/cjs/queries2/FindAllQuery.d.ts +11 -11
  68. package/dist/cjs/queries2/FindAllQuery.js +33 -33
  69. package/dist/cjs/queries2/FindInfiniteQuery.d.ts +18 -18
  70. package/dist/cjs/queries2/FindInfiniteQuery.js +60 -60
  71. package/dist/cjs/queries2/FindOneQuery.d.ts +11 -11
  72. package/dist/cjs/queries2/FindOneQuery.js +33 -33
  73. package/dist/cjs/queries2/FindPageQuery.d.ts +23 -23
  74. package/dist/cjs/queries2/FindPageQuery.js +67 -67
  75. package/dist/cjs/queries2/GetQuery.d.ts +10 -10
  76. package/dist/cjs/queries2/GetQuery.js +29 -29
  77. package/dist/cjs/queries2/QueryCache.d.ts +16 -16
  78. package/dist/cjs/queries2/QueryCache.js +39 -39
  79. package/dist/cjs/queries2/dbQueries.d.ts +22 -22
  80. package/dist/cjs/queries2/dbQueries.js +125 -125
  81. package/dist/cjs/queries2/keys.d.ts +10 -10
  82. package/dist/cjs/queries2/keys.js +33 -33
  83. package/dist/cjs/queries2/ranges.d.ts +2 -2
  84. package/dist/cjs/queries2/ranges.js +69 -69
  85. package/dist/cjs/queries2/types.d.ts +6 -6
  86. package/dist/cjs/queries2/types.js +2 -2
  87. package/dist/cjs/queries2/utils.d.ts +1 -1
  88. package/dist/cjs/queries2/utils.js +19 -19
  89. package/dist/cjs/reactives/DocumentFamiliyCache.d.ts +47 -47
  90. package/dist/cjs/reactives/DocumentFamiliyCache.js +210 -210
  91. package/dist/cjs/reactives/Entity.d.ts +191 -191
  92. package/dist/cjs/reactives/Entity.js +462 -462
  93. package/dist/cjs/reactives/EntityStore.d.ts +84 -84
  94. package/dist/cjs/reactives/EntityStore.js +421 -421
  95. package/dist/cjs/reactives/FakeWeakRef.d.ts +11 -11
  96. package/dist/cjs/reactives/FakeWeakRef.js +18 -18
  97. package/dist/cjs/sync/FileSync.d.ts +23 -23
  98. package/dist/cjs/sync/FileSync.js +84 -84
  99. package/dist/cjs/sync/Heartbeat.d.ts +24 -24
  100. package/dist/cjs/sync/Heartbeat.js +55 -55
  101. package/dist/cjs/sync/PresenceManager.d.ts +41 -41
  102. package/dist/cjs/sync/PresenceManager.js +107 -107
  103. package/dist/cjs/sync/PushPullSync.d.ts +36 -36
  104. package/dist/cjs/sync/PushPullSync.js +141 -141
  105. package/dist/cjs/sync/ServerSyncEndpointProvider.d.ts +27 -27
  106. package/dist/cjs/sync/ServerSyncEndpointProvider.js +64 -64
  107. package/dist/cjs/sync/Sync.d.ts +127 -127
  108. package/dist/cjs/sync/Sync.js +244 -244
  109. package/dist/cjs/sync/WebSocketSync.d.ts +41 -41
  110. package/dist/cjs/sync/WebSocketSync.js +183 -183
  111. package/dist/cjs/types.d.ts +5 -5
  112. package/dist/cjs/types.js +2 -2
  113. package/dist/cjs/utils/Disposable.d.ts +6 -6
  114. package/dist/cjs/utils/Disposable.js +18 -18
  115. package/dist/cjs/utils/Resolvable.d.ts +8 -8
  116. package/dist/cjs/utils/Resolvable.js +22 -22
  117. package/dist/esm/BackoffScheduler.d.ts +19 -19
  118. package/dist/esm/BackoffScheduler.js +39 -39
  119. package/dist/esm/DocumentManager.d.ts +28 -28
  120. package/dist/esm/DocumentManager.js +40 -40
  121. package/dist/esm/IDBService.d.ts +9 -9
  122. package/dist/esm/IDBService.js +42 -42
  123. package/dist/esm/UndoHistory.d.ts +16 -16
  124. package/dist/esm/UndoHistory.js +46 -46
  125. package/dist/esm/__tests__/batching.test.d.ts +1 -1
  126. package/dist/esm/__tests__/batching.test.js +42 -42
  127. package/dist/esm/__tests__/documents.test.d.ts +1 -1
  128. package/dist/esm/__tests__/documents.test.js +396 -396
  129. package/dist/esm/__tests__/fixtures/testStorage.d.ts +118 -118
  130. package/dist/esm/__tests__/fixtures/testStorage.js +111 -111
  131. package/dist/esm/__tests__/queries.test.d.ts +1 -1
  132. package/dist/esm/__tests__/queries.test.js +260 -260
  133. package/dist/esm/__tests__/setup/indexedDB.d.ts +1 -1
  134. package/dist/esm/__tests__/setup/indexedDB.js +1 -1
  135. package/dist/esm/__tests__/undo.test.d.ts +1 -1
  136. package/dist/esm/__tests__/undo.test.js +84 -84
  137. package/dist/esm/client/Client.d.ts +86 -86
  138. package/dist/esm/client/Client.js +222 -222
  139. package/dist/esm/client/ClientDescriptor.d.ts +62 -62
  140. package/dist/esm/client/ClientDescriptor.js +104 -104
  141. package/dist/esm/constants.d.ts +1 -1
  142. package/dist/esm/constants.js +1 -1
  143. package/dist/esm/context.d.ts +17 -17
  144. package/dist/esm/context.js +1 -1
  145. package/dist/esm/files/EntityFile.d.ts +27 -27
  146. package/dist/esm/files/EntityFile.js +67 -67
  147. package/dist/esm/files/FileManager.d.ts +42 -42
  148. package/dist/esm/files/FileManager.js +141 -141
  149. package/dist/esm/files/FileStorage.d.ts +27 -27
  150. package/dist/esm/files/FileStorage.js +88 -88
  151. package/dist/esm/files/utils.d.ts +8 -8
  152. package/dist/esm/files/utils.js +46 -46
  153. package/dist/esm/files/utils.test.d.ts +1 -1
  154. package/dist/esm/files/utils.test.js +78 -78
  155. package/dist/esm/idb.d.ts +8 -8
  156. package/dist/esm/idb.js +79 -79
  157. package/dist/esm/index.d.ts +19 -19
  158. package/dist/esm/index.js +11 -11
  159. package/dist/esm/indexes.d.ts +3 -3
  160. package/dist/esm/indexes.js +14 -14
  161. package/dist/esm/metadata/AckInfoStore.d.ts +10 -10
  162. package/dist/esm/metadata/AckInfoStore.js +21 -21
  163. package/dist/esm/metadata/BaselinesStore.d.ts +33 -33
  164. package/dist/esm/metadata/BaselinesStore.js +55 -55
  165. package/dist/esm/metadata/LocalReplicaStore.d.ts +17 -17
  166. package/dist/esm/metadata/LocalReplicaStore.js +40 -40
  167. package/dist/esm/metadata/MessageCreator.d.ts +19 -19
  168. package/dist/esm/metadata/MessageCreator.js +123 -123
  169. package/dist/esm/metadata/Metadata.d.ts +106 -106
  170. package/dist/esm/metadata/Metadata.js +332 -332
  171. package/dist/esm/metadata/OperationsStore.d.ts +50 -50
  172. package/dist/esm/metadata/OperationsStore.js +141 -141
  173. package/dist/esm/metadata/SchemaStore.d.ts +9 -9
  174. package/dist/esm/metadata/SchemaStore.js +34 -34
  175. package/dist/esm/metadata/openMetadataDatabase.d.ts +8 -8
  176. package/dist/esm/metadata/openMetadataDatabase.js +101 -101
  177. package/dist/esm/openDocumentDatabase.d.ts +12 -12
  178. package/dist/esm/openDocumentDatabase.js +420 -420
  179. package/dist/esm/queries2/BaseQuery.d.ts +39 -39
  180. package/dist/esm/queries2/BaseQuery.js +94 -94
  181. package/dist/esm/queries2/CollectionQueries.d.ts +55 -55
  182. package/dist/esm/queries2/CollectionQueries.js +78 -78
  183. package/dist/esm/queries2/FindAllQuery.d.ts +11 -11
  184. package/dist/esm/queries2/FindAllQuery.js +29 -29
  185. package/dist/esm/queries2/FindInfiniteQuery.d.ts +18 -18
  186. package/dist/esm/queries2/FindInfiniteQuery.js +56 -56
  187. package/dist/esm/queries2/FindOneQuery.d.ts +11 -11
  188. package/dist/esm/queries2/FindOneQuery.js +29 -29
  189. package/dist/esm/queries2/FindPageQuery.d.ts +23 -23
  190. package/dist/esm/queries2/FindPageQuery.js +63 -63
  191. package/dist/esm/queries2/GetQuery.d.ts +10 -10
  192. package/dist/esm/queries2/GetQuery.js +25 -25
  193. package/dist/esm/queries2/QueryCache.d.ts +16 -16
  194. package/dist/esm/queries2/QueryCache.js +35 -35
  195. package/dist/esm/queries2/dbQueries.d.ts +22 -22
  196. package/dist/esm/queries2/dbQueries.js +119 -119
  197. package/dist/esm/queries2/keys.d.ts +10 -10
  198. package/dist/esm/queries2/keys.js +29 -29
  199. package/dist/esm/queries2/ranges.d.ts +2 -2
  200. package/dist/esm/queries2/ranges.js +65 -65
  201. package/dist/esm/queries2/types.d.ts +6 -6
  202. package/dist/esm/queries2/types.js +1 -1
  203. package/dist/esm/queries2/utils.d.ts +1 -1
  204. package/dist/esm/queries2/utils.js +15 -15
  205. package/dist/esm/reactives/DocumentFamiliyCache.d.ts +47 -47
  206. package/dist/esm/reactives/DocumentFamiliyCache.js +206 -206
  207. package/dist/esm/reactives/Entity.d.ts +191 -191
  208. package/dist/esm/reactives/Entity.js +457 -457
  209. package/dist/esm/reactives/EntityStore.d.ts +84 -84
  210. package/dist/esm/reactives/EntityStore.js +417 -417
  211. package/dist/esm/reactives/FakeWeakRef.d.ts +11 -11
  212. package/dist/esm/reactives/FakeWeakRef.js +14 -14
  213. package/dist/esm/sync/FileSync.d.ts +23 -23
  214. package/dist/esm/sync/FileSync.js +80 -80
  215. package/dist/esm/sync/Heartbeat.d.ts +24 -24
  216. package/dist/esm/sync/Heartbeat.js +51 -51
  217. package/dist/esm/sync/PresenceManager.d.ts +41 -41
  218. package/dist/esm/sync/PresenceManager.js +103 -103
  219. package/dist/esm/sync/PushPullSync.d.ts +36 -36
  220. package/dist/esm/sync/PushPullSync.js +137 -137
  221. package/dist/esm/sync/ServerSyncEndpointProvider.d.ts +27 -27
  222. package/dist/esm/sync/ServerSyncEndpointProvider.js +57 -57
  223. package/dist/esm/sync/Sync.d.ts +127 -127
  224. package/dist/esm/sync/Sync.js +239 -239
  225. package/dist/esm/sync/{WebsocketSync.d.ts → WebSocketSync.d.ts} +41 -41
  226. package/dist/esm/sync/{WebsocketSync.js → WebSocketSync.js} +179 -179
  227. package/dist/esm/types.d.ts +5 -5
  228. package/dist/esm/types.js +1 -1
  229. package/dist/esm/utils/Disposable.d.ts +6 -6
  230. package/dist/esm/utils/Disposable.js +14 -14
  231. package/dist/esm/utils/Resolvable.d.ts +8 -8
  232. package/dist/esm/utils/Resolvable.js +18 -18
  233. package/dist/tsconfig-cjs.tsbuildinfo +1 -1
  234. package/dist/tsconfig.tsbuildinfo +1 -1
  235. package/package.json +2 -2
  236. package/dist/cjs/AckInfoStore.d.ts +0 -10
  237. package/dist/cjs/AckInfoStore.js +0 -26
  238. package/dist/cjs/AckInfoStore.js.map +0 -1
  239. package/dist/cjs/BaselinesStore.d.ts +0 -10
  240. package/dist/cjs/BaselinesStore.js +0 -36
  241. package/dist/cjs/BaselinesStore.js.map +0 -1
  242. package/dist/cjs/Entity.d.ts +0 -96
  243. package/dist/cjs/Entity.js +0 -345
  244. package/dist/cjs/Entity.js.map +0 -1
  245. package/dist/cjs/EntityStore.d.ts +0 -36
  246. package/dist/cjs/EntityStore.js +0 -172
  247. package/dist/cjs/EntityStore.js.map +0 -1
  248. package/dist/cjs/LocalHistoryStore.d.ts +0 -15
  249. package/dist/cjs/LocalHistoryStore.js +0 -53
  250. package/dist/cjs/LocalHistoryStore.js.map +0 -1
  251. package/dist/cjs/LocalReplicaStore.d.ts +0 -13
  252. package/dist/cjs/LocalReplicaStore.js +0 -49
  253. package/dist/cjs/LocalReplicaStore.js.map +0 -1
  254. package/dist/cjs/MessageCreator.d.ts +0 -19
  255. package/dist/cjs/MessageCreator.js +0 -104
  256. package/dist/cjs/MessageCreator.js.map +0 -1
  257. package/dist/cjs/Metadata.d.ts +0 -91
  258. package/dist/cjs/Metadata.js +0 -250
  259. package/dist/cjs/Metadata.js.map +0 -1
  260. package/dist/cjs/OperationsStore.d.ts +0 -38
  261. package/dist/cjs/OperationsStore.js +0 -146
  262. package/dist/cjs/OperationsStore.js.map +0 -1
  263. package/dist/cjs/PresenceManager.d.ts +0 -30
  264. package/dist/cjs/PresenceManager.js +0 -89
  265. package/dist/cjs/PresenceManager.js.map +0 -1
  266. package/dist/cjs/Query.d.ts +0 -26
  267. package/dist/cjs/Query.js +0 -86
  268. package/dist/cjs/Query.js.map +0 -1
  269. package/dist/cjs/QueryMaker.d.ts +0 -18
  270. package/dist/cjs/QueryMaker.js +0 -98
  271. package/dist/cjs/QueryMaker.js.map +0 -1
  272. package/dist/cjs/QueryStore.d.ts +0 -38
  273. package/dist/cjs/QueryStore.js +0 -146
  274. package/dist/cjs/QueryStore.js.map +0 -1
  275. package/dist/cjs/SchemaStore.d.ts +0 -9
  276. package/dist/cjs/SchemaStore.js +0 -35
  277. package/dist/cjs/SchemaStore.js.map +0 -1
  278. package/dist/cjs/Storage.d.ts +0 -147
  279. package/dist/cjs/Storage.js +0 -346
  280. package/dist/cjs/Storage.js.map +0 -1
  281. package/dist/cjs/Sync.d.ts +0 -117
  282. package/dist/cjs/Sync.js +0 -561
  283. package/dist/cjs/Sync.js.map +0 -1
  284. package/dist/cjs/SyncHarness.d.ts +0 -45
  285. package/dist/cjs/SyncHarness.js +0 -110
  286. package/dist/cjs/SyncHarness.js.map +0 -1
  287. package/dist/cjs/metadata/LocalHistoryStore.d.ts +0 -15
  288. package/dist/cjs/metadata/LocalHistoryStore.js +0 -53
  289. package/dist/cjs/metadata/LocalHistoryStore.js.map +0 -1
  290. package/dist/cjs/queries/LiveQuery.d.ts +0 -28
  291. package/dist/cjs/queries/LiveQuery.js +0 -96
  292. package/dist/cjs/queries/LiveQuery.js.map +0 -1
  293. package/dist/cjs/queries/LiveQueryMaker.d.ts +0 -15
  294. package/dist/cjs/queries/LiveQueryMaker.js +0 -42
  295. package/dist/cjs/queries/LiveQueryMaker.js.map +0 -1
  296. package/dist/cjs/queries/LiveQueryStore.d.ts +0 -33
  297. package/dist/cjs/queries/LiveQueryStore.js +0 -85
  298. package/dist/cjs/queries/LiveQueryStore.js.map +0 -1
  299. package/dist/cjs/queries/Query.d.ts +0 -18
  300. package/dist/cjs/queries/Query.js +0 -36
  301. package/dist/cjs/queries/Query.js.map +0 -1
  302. package/dist/cjs/queries/QueryMaker.d.ts +0 -14
  303. package/dist/cjs/queries/QueryMaker.js +0 -42
  304. package/dist/cjs/queries/QueryMaker.js.map +0 -1
  305. package/dist/cjs/queries/QueryStore.d.ts +0 -35
  306. package/dist/cjs/queries/QueryStore.js +0 -130
  307. package/dist/cjs/queries/QueryStore.js.map +0 -1
  308. package/dist/cjs/queries/ranges.d.ts +0 -2
  309. package/dist/cjs/queries/ranges.js +0 -70
  310. package/dist/cjs/queries/ranges.js.map +0 -1
  311. package/dist/cjs/v2/AckInfoStore.d.ts +0 -10
  312. package/dist/cjs/v2/AckInfoStore.js +0 -26
  313. package/dist/cjs/v2/AckInfoStore.js.map +0 -1
  314. package/dist/cjs/v2/BaselinesStore.d.ts +0 -10
  315. package/dist/cjs/v2/BaselinesStore.js +0 -36
  316. package/dist/cjs/v2/BaselinesStore.js.map +0 -1
  317. package/dist/cjs/v2/DocumentManager.d.ts +0 -19
  318. package/dist/cjs/v2/DocumentManager.js +0 -47
  319. package/dist/cjs/v2/DocumentManager.js.map +0 -1
  320. package/dist/cjs/v2/Entity.d.ts +0 -87
  321. package/dist/cjs/v2/Entity.js +0 -305
  322. package/dist/cjs/v2/Entity.js.map +0 -1
  323. package/dist/cjs/v2/EntityStore.d.ts +0 -37
  324. package/dist/cjs/v2/EntityStore.js +0 -165
  325. package/dist/cjs/v2/EntityStore.js.map +0 -1
  326. package/dist/cjs/v2/IDBService.d.ts +0 -7
  327. package/dist/cjs/v2/IDBService.js +0 -26
  328. package/dist/cjs/v2/IDBService.js.map +0 -1
  329. package/dist/cjs/v2/LocalHistoryStore.d.ts +0 -15
  330. package/dist/cjs/v2/LocalHistoryStore.js +0 -53
  331. package/dist/cjs/v2/LocalHistoryStore.js.map +0 -1
  332. package/dist/cjs/v2/LocalReplicaStore.d.ts +0 -14
  333. package/dist/cjs/v2/LocalReplicaStore.js +0 -49
  334. package/dist/cjs/v2/LocalReplicaStore.js.map +0 -1
  335. package/dist/cjs/v2/MessageCreator.d.ts +0 -19
  336. package/dist/cjs/v2/MessageCreator.js +0 -99
  337. package/dist/cjs/v2/MessageCreator.js.map +0 -1
  338. package/dist/cjs/v2/Metadata.d.ts +0 -90
  339. package/dist/cjs/v2/Metadata.js +0 -251
  340. package/dist/cjs/v2/Metadata.js.map +0 -1
  341. package/dist/cjs/v2/OperationsStore.d.ts +0 -38
  342. package/dist/cjs/v2/OperationsStore.js +0 -146
  343. package/dist/cjs/v2/OperationsStore.js.map +0 -1
  344. package/dist/cjs/v2/PresenceManager.d.ts +0 -24
  345. package/dist/cjs/v2/PresenceManager.js +0 -73
  346. package/dist/cjs/v2/PresenceManager.js.map +0 -1
  347. package/dist/cjs/v2/Query.d.ts +0 -24
  348. package/dist/cjs/v2/Query.js +0 -79
  349. package/dist/cjs/v2/Query.js.map +0 -1
  350. package/dist/cjs/v2/QueryMaker.d.ts +0 -16
  351. package/dist/cjs/v2/QueryMaker.js +0 -84
  352. package/dist/cjs/v2/QueryMaker.js.map +0 -1
  353. package/dist/cjs/v2/QueryStore.d.ts +0 -26
  354. package/dist/cjs/v2/QueryStore.js +0 -136
  355. package/dist/cjs/v2/QueryStore.js.map +0 -1
  356. package/dist/cjs/v2/SchemaStore.d.ts +0 -9
  357. package/dist/cjs/v2/SchemaStore.js +0 -35
  358. package/dist/cjs/v2/SchemaStore.js.map +0 -1
  359. package/dist/cjs/v2/Storage.d.ts +0 -80
  360. package/dist/cjs/v2/Storage.js +0 -154
  361. package/dist/cjs/v2/Storage.js.map +0 -1
  362. package/dist/cjs/v2/Sync.d.ts +0 -42
  363. package/dist/cjs/v2/Sync.js +0 -98
  364. package/dist/cjs/v2/Sync.js.map +0 -1
  365. package/dist/cjs/v2/SyncHarness.d.ts +0 -45
  366. package/dist/cjs/v2/SyncHarness.js +0 -110
  367. package/dist/cjs/v2/SyncHarness.js.map +0 -1
  368. package/dist/cjs/v2/__tests__/documents.test.d.ts +0 -1
  369. package/dist/cjs/v2/__tests__/documents.test.js +0 -185
  370. package/dist/cjs/v2/__tests__/documents.test.js.map +0 -1
  371. package/dist/cjs/v2/__tests__/fixtures/testStorage.d.ts +0 -189
  372. package/dist/cjs/v2/__tests__/fixtures/testStorage.js +0 -93
  373. package/dist/cjs/v2/__tests__/fixtures/testStorage.js.map +0 -1
  374. package/dist/cjs/v2/__tests__/queries.test.d.ts +0 -1
  375. package/dist/cjs/v2/__tests__/queries.test.js +0 -92
  376. package/dist/cjs/v2/__tests__/queries.test.js.map +0 -1
  377. package/dist/cjs/v2/__tests__/setup/indexedDB.d.ts +0 -1
  378. package/dist/cjs/v2/__tests__/setup/indexedDB.js +0 -4
  379. package/dist/cjs/v2/__tests__/setup/indexedDB.js.map +0 -1
  380. package/dist/cjs/v2/constants.d.ts +0 -1
  381. package/dist/cjs/v2/constants.js +0 -5
  382. package/dist/cjs/v2/constants.js.map +0 -1
  383. package/dist/cjs/v2/idb.d.ts +0 -6
  384. package/dist/cjs/v2/idb.js +0 -71
  385. package/dist/cjs/v2/idb.js.map +0 -1
  386. package/dist/cjs/v2/index.d.ts +0 -6
  387. package/dist/cjs/v2/index.js +0 -14
  388. package/dist/cjs/v2/index.js.map +0 -1
  389. package/dist/cjs/v2/indexes.d.ts +0 -3
  390. package/dist/cjs/v2/indexes.js +0 -20
  391. package/dist/cjs/v2/indexes.js.map +0 -1
  392. package/dist/cjs/v2/openDocumentDatabase.d.ts +0 -9
  393. package/dist/cjs/v2/openDocumentDatabase.js +0 -100
  394. package/dist/cjs/v2/openDocumentDatabase.js.map +0 -1
  395. package/dist/cjs/v2/types.d.ts +0 -3
  396. package/dist/cjs/v2/types.js +0 -3
  397. package/dist/cjs/v2/types.js.map +0 -1
  398. package/dist/esm/AckInfoStore.d.ts +0 -10
  399. package/dist/esm/AckInfoStore.js +0 -22
  400. package/dist/esm/AckInfoStore.js.map +0 -1
  401. package/dist/esm/BaselinesStore.d.ts +0 -10
  402. package/dist/esm/BaselinesStore.js +0 -32
  403. package/dist/esm/BaselinesStore.js.map +0 -1
  404. package/dist/esm/Entity.d.ts +0 -96
  405. package/dist/esm/Entity.js +0 -337
  406. package/dist/esm/Entity.js.map +0 -1
  407. package/dist/esm/EntityStore.d.ts +0 -36
  408. package/dist/esm/EntityStore.js +0 -168
  409. package/dist/esm/EntityStore.js.map +0 -1
  410. package/dist/esm/LocalHistoryStore.d.ts +0 -15
  411. package/dist/esm/LocalHistoryStore.js +0 -49
  412. package/dist/esm/LocalHistoryStore.js.map +0 -1
  413. package/dist/esm/LocalReplicaStore.d.ts +0 -13
  414. package/dist/esm/LocalReplicaStore.js +0 -42
  415. package/dist/esm/LocalReplicaStore.js.map +0 -1
  416. package/dist/esm/MessageCreator.d.ts +0 -19
  417. package/dist/esm/MessageCreator.js +0 -97
  418. package/dist/esm/MessageCreator.js.map +0 -1
  419. package/dist/esm/Metadata.d.ts +0 -91
  420. package/dist/esm/Metadata.js +0 -245
  421. package/dist/esm/Metadata.js.map +0 -1
  422. package/dist/esm/OperationsStore.d.ts +0 -38
  423. package/dist/esm/OperationsStore.js +0 -142
  424. package/dist/esm/OperationsStore.js.map +0 -1
  425. package/dist/esm/PresenceManager.d.ts +0 -30
  426. package/dist/esm/PresenceManager.js +0 -85
  427. package/dist/esm/PresenceManager.js.map +0 -1
  428. package/dist/esm/Query.d.ts +0 -26
  429. package/dist/esm/Query.js +0 -82
  430. package/dist/esm/Query.js.map +0 -1
  431. package/dist/esm/QueryMaker.d.ts +0 -18
  432. package/dist/esm/QueryMaker.js +0 -94
  433. package/dist/esm/QueryMaker.js.map +0 -1
  434. package/dist/esm/QueryStore.d.ts +0 -38
  435. package/dist/esm/QueryStore.js +0 -142
  436. package/dist/esm/QueryStore.js.map +0 -1
  437. package/dist/esm/SchemaStore.d.ts +0 -9
  438. package/dist/esm/SchemaStore.js +0 -31
  439. package/dist/esm/SchemaStore.js.map +0 -1
  440. package/dist/esm/Storage.d.ts +0 -147
  441. package/dist/esm/Storage.js +0 -341
  442. package/dist/esm/Storage.js.map +0 -1
  443. package/dist/esm/Sync.d.ts +0 -117
  444. package/dist/esm/Sync.js +0 -553
  445. package/dist/esm/Sync.js.map +0 -1
  446. package/dist/esm/SyncHarness.d.ts +0 -45
  447. package/dist/esm/SyncHarness.js +0 -105
  448. package/dist/esm/SyncHarness.js.map +0 -1
  449. package/dist/esm/metadata/LocalHistoryStore.d.ts +0 -15
  450. package/dist/esm/metadata/LocalHistoryStore.js +0 -49
  451. package/dist/esm/metadata/LocalHistoryStore.js.map +0 -1
  452. package/dist/esm/queries/LiveQuery.d.ts +0 -28
  453. package/dist/esm/queries/LiveQuery.js +0 -92
  454. package/dist/esm/queries/LiveQuery.js.map +0 -1
  455. package/dist/esm/queries/LiveQueryMaker.d.ts +0 -15
  456. package/dist/esm/queries/LiveQueryMaker.js +0 -38
  457. package/dist/esm/queries/LiveQueryMaker.js.map +0 -1
  458. package/dist/esm/queries/LiveQueryStore.d.ts +0 -33
  459. package/dist/esm/queries/LiveQueryStore.js +0 -81
  460. package/dist/esm/queries/LiveQueryStore.js.map +0 -1
  461. package/dist/esm/queries/Query.d.ts +0 -18
  462. package/dist/esm/queries/Query.js +0 -32
  463. package/dist/esm/queries/Query.js.map +0 -1
  464. package/dist/esm/queries/QueryMaker.d.ts +0 -14
  465. package/dist/esm/queries/QueryMaker.js +0 -38
  466. package/dist/esm/queries/QueryMaker.js.map +0 -1
  467. package/dist/esm/queries/QueryStore.d.ts +0 -35
  468. package/dist/esm/queries/QueryStore.js +0 -126
  469. package/dist/esm/queries/QueryStore.js.map +0 -1
  470. package/dist/esm/queries/ranges.d.ts +0 -2
  471. package/dist/esm/queries/ranges.js +0 -66
  472. package/dist/esm/queries/ranges.js.map +0 -1
  473. package/dist/esm/v2/AckInfoStore.d.ts +0 -10
  474. package/dist/esm/v2/AckInfoStore.js +0 -22
  475. package/dist/esm/v2/AckInfoStore.js.map +0 -1
  476. package/dist/esm/v2/BaselinesStore.d.ts +0 -10
  477. package/dist/esm/v2/BaselinesStore.js +0 -32
  478. package/dist/esm/v2/BaselinesStore.js.map +0 -1
  479. package/dist/esm/v2/DocumentManager.d.ts +0 -19
  480. package/dist/esm/v2/DocumentManager.js +0 -43
  481. package/dist/esm/v2/DocumentManager.js.map +0 -1
  482. package/dist/esm/v2/Entity.d.ts +0 -91
  483. package/dist/esm/v2/Entity.js +0 -305
  484. package/dist/esm/v2/Entity.js.map +0 -1
  485. package/dist/esm/v2/EntityStore.d.ts +0 -37
  486. package/dist/esm/v2/EntityStore.js +0 -166
  487. package/dist/esm/v2/EntityStore.js.map +0 -1
  488. package/dist/esm/v2/IDBService.d.ts +0 -7
  489. package/dist/esm/v2/IDBService.js +0 -22
  490. package/dist/esm/v2/IDBService.js.map +0 -1
  491. package/dist/esm/v2/LocalHistoryStore.d.ts +0 -15
  492. package/dist/esm/v2/LocalHistoryStore.js +0 -49
  493. package/dist/esm/v2/LocalHistoryStore.js.map +0 -1
  494. package/dist/esm/v2/LocalReplicaStore.d.ts +0 -14
  495. package/dist/esm/v2/LocalReplicaStore.js +0 -42
  496. package/dist/esm/v2/LocalReplicaStore.js.map +0 -1
  497. package/dist/esm/v2/MessageCreator.d.ts +0 -19
  498. package/dist/esm/v2/MessageCreator.js +0 -92
  499. package/dist/esm/v2/MessageCreator.js.map +0 -1
  500. package/dist/esm/v2/Metadata.d.ts +0 -90
  501. package/dist/esm/v2/Metadata.js +0 -246
  502. package/dist/esm/v2/Metadata.js.map +0 -1
  503. package/dist/esm/v2/OperationsStore.d.ts +0 -38
  504. package/dist/esm/v2/OperationsStore.js +0 -142
  505. package/dist/esm/v2/OperationsStore.js.map +0 -1
  506. package/dist/esm/v2/PresenceManager.d.ts +0 -24
  507. package/dist/esm/v2/PresenceManager.js +0 -69
  508. package/dist/esm/v2/PresenceManager.js.map +0 -1
  509. package/dist/esm/v2/Query.d.ts +0 -24
  510. package/dist/esm/v2/Query.js +0 -75
  511. package/dist/esm/v2/Query.js.map +0 -1
  512. package/dist/esm/v2/QueryMaker.d.ts +0 -16
  513. package/dist/esm/v2/QueryMaker.js +0 -80
  514. package/dist/esm/v2/QueryMaker.js.map +0 -1
  515. package/dist/esm/v2/QueryStore.d.ts +0 -26
  516. package/dist/esm/v2/QueryStore.js +0 -132
  517. package/dist/esm/v2/QueryStore.js.map +0 -1
  518. package/dist/esm/v2/SchemaStore.d.ts +0 -9
  519. package/dist/esm/v2/SchemaStore.js +0 -31
  520. package/dist/esm/v2/SchemaStore.js.map +0 -1
  521. package/dist/esm/v2/Storage.d.ts +0 -80
  522. package/dist/esm/v2/Storage.js +0 -149
  523. package/dist/esm/v2/Storage.js.map +0 -1
  524. package/dist/esm/v2/Sync.d.ts +0 -42
  525. package/dist/esm/v2/Sync.js +0 -94
  526. package/dist/esm/v2/Sync.js.map +0 -1
  527. package/dist/esm/v2/SyncHarness.d.ts +0 -45
  528. package/dist/esm/v2/SyncHarness.js +0 -105
  529. package/dist/esm/v2/SyncHarness.js.map +0 -1
  530. package/dist/esm/v2/__tests__/documents.test.d.ts +0 -1
  531. package/dist/esm/v2/__tests__/documents.test.js +0 -208
  532. package/dist/esm/v2/__tests__/documents.test.js.map +0 -1
  533. package/dist/esm/v2/__tests__/fixtures/testStorage.d.ts +0 -223
  534. package/dist/esm/v2/__tests__/fixtures/testStorage.js +0 -106
  535. package/dist/esm/v2/__tests__/fixtures/testStorage.js.map +0 -1
  536. package/dist/esm/v2/__tests__/queries.test.d.ts +0 -1
  537. package/dist/esm/v2/__tests__/queries.test.js +0 -90
  538. package/dist/esm/v2/__tests__/queries.test.js.map +0 -1
  539. package/dist/esm/v2/__tests__/setup/indexedDB.d.ts +0 -1
  540. package/dist/esm/v2/__tests__/setup/indexedDB.js +0 -2
  541. package/dist/esm/v2/__tests__/setup/indexedDB.js.map +0 -1
  542. package/dist/esm/v2/constants.d.ts +0 -1
  543. package/dist/esm/v2/constants.js +0 -2
  544. package/dist/esm/v2/constants.js.map +0 -1
  545. package/dist/esm/v2/idb.d.ts +0 -6
  546. package/dist/esm/v2/idb.js +0 -65
  547. package/dist/esm/v2/idb.js.map +0 -1
  548. package/dist/esm/v2/index.d.ts +0 -6
  549. package/dist/esm/v2/index.js +0 -5
  550. package/dist/esm/v2/index.js.map +0 -1
  551. package/dist/esm/v2/indexes.d.ts +0 -3
  552. package/dist/esm/v2/indexes.js +0 -15
  553. package/dist/esm/v2/indexes.js.map +0 -1
  554. package/dist/esm/v2/openDocumentDatabase.d.ts +0 -9
  555. package/dist/esm/v2/openDocumentDatabase.js +0 -96
  556. package/dist/esm/v2/openDocumentDatabase.js.map +0 -1
  557. package/dist/esm/v2/types.d.ts +0 -3
  558. package/dist/esm/v2/types.js +0 -2
  559. package/dist/esm/v2/types.js.map +0 -1
  560. /package/dist/esm/sync/{WebsocketSync.js.map → WebSocketSync.js.map} +0 -0
@@ -1,146 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OperationsStore = void 0;
4
- const common_1 = require("@lo-fi/common");
5
- const IDBService_js_1 = require("./IDBService.js");
6
- class OperationsStore extends IDBService_js_1.IDBService {
7
- constructor() {
8
- super(...arguments);
9
- /**
10
- * Iterates over every patch for the root and every sub-object
11
- * of a given document. Optionally limit by timestamp.
12
- */
13
- this.iterateOverAllOperationsForDocument = async (oid, iterator, { to, from, after, mode = 'readonly', } = {}) => {
14
- const transaction = this.db.transaction('operations', mode);
15
- const store = transaction.objectStore('operations');
16
- const index = store.index('documentOid_timestamp');
17
- const startTimestamp = from || after;
18
- const start = startTimestamp
19
- ? (0, common_1.createCompoundIndexValue)(oid, startTimestamp)
20
- : (0, common_1.createLowerBoundIndexValue)(oid);
21
- const end = to
22
- ? (0, common_1.createCompoundIndexValue)(oid, to)
23
- : (0, common_1.createUpperBoundIndexValue)(oid);
24
- const range = IDBKeyRange.bound(start, end, !!after, false);
25
- const request = index.openCursor(range, 'next');
26
- return new Promise((resolve, reject) => {
27
- let previousTimestamp;
28
- request.onsuccess = (event) => {
29
- const cursor = request.result;
30
- if (cursor) {
31
- const value = cursor.value;
32
- (0, common_1.assert)(value.oid.startsWith(oid));
33
- (0, common_1.assert)(previousTimestamp === undefined ||
34
- previousTimestamp <= value.timestamp, `expected ${previousTimestamp} <= ${value.timestamp}`);
35
- iterator(value, store);
36
- previousTimestamp = value.timestamp;
37
- cursor.continue();
38
- }
39
- else {
40
- resolve();
41
- }
42
- };
43
- request.onerror = (event) => {
44
- reject(event);
45
- };
46
- });
47
- };
48
- this.iterateOverAllOperationsForEntity = async (oid, iterator, { to, mode, }) => {
49
- const transaction = this.db.transaction('operations', mode);
50
- const store = transaction.objectStore('operations');
51
- const start = (0, common_1.createLowerBoundIndexValue)(oid);
52
- const end = to
53
- ? (0, common_1.createCompoundIndexValue)(oid, to)
54
- : (0, common_1.createUpperBoundIndexValue)(oid);
55
- const range = IDBKeyRange.bound(start, end, false, false);
56
- const request = store.openCursor(range, 'next');
57
- return new Promise((resolve, reject) => {
58
- let previousTimestamp;
59
- request.onsuccess = (event) => {
60
- const cursor = request.result;
61
- if (cursor) {
62
- const value = cursor.value;
63
- (0, common_1.assert)(value.oid.startsWith(oid));
64
- (0, common_1.assert)(previousTimestamp === undefined ||
65
- previousTimestamp <= value.timestamp, `expected ${previousTimestamp} <= ${value.timestamp}`);
66
- iterator(value, store);
67
- previousTimestamp = value.timestamp;
68
- cursor.continue();
69
- }
70
- else {
71
- resolve();
72
- }
73
- };
74
- request.onerror = (event) => {
75
- reject(event);
76
- };
77
- });
78
- };
79
- this.iterateOverAllLocalOperations = async (iterator, { before, after, }) => {
80
- const transaction = this.db.transaction('operations', 'readonly');
81
- const store = transaction.objectStore('operations');
82
- const index = store.index('isLocal_timestamp');
83
- const start = after
84
- ? (0, common_1.createCompoundIndexValue)(true, after)
85
- : (0, common_1.createLowerBoundIndexValue)(true);
86
- const end = before
87
- ? (0, common_1.createCompoundIndexValue)(true, before)
88
- : (0, common_1.createUpperBoundIndexValue)(true);
89
- const range = IDBKeyRange.bound(start, end, !!after, true);
90
- const request = index.openCursor(range, 'next');
91
- return new Promise((resolve, reject) => {
92
- let previousTimestamp;
93
- request.onsuccess = (event) => {
94
- const cursor = request.result;
95
- if (cursor) {
96
- const value = cursor.value;
97
- (0, common_1.assert)(previousTimestamp === undefined ||
98
- previousTimestamp <= value.timestamp, `expected ${previousTimestamp} <= ${value.timestamp}`);
99
- iterator(value, store);
100
- previousTimestamp = value.timestamp;
101
- cursor.continue();
102
- }
103
- else {
104
- resolve();
105
- }
106
- };
107
- request.onerror = (event) => {
108
- reject(event);
109
- };
110
- });
111
- };
112
- /**
113
- * Adds a set of patches to the database.
114
- * @returns a list of affected root document OIDs.
115
- */
116
- this.addOperations = async (patches) => {
117
- return this.insert(patches.map(this.addCompoundIndexes));
118
- };
119
- this.addCompoundIndexes = (patch) => {
120
- return Object.assign(Object.assign({}, patch), { oid_timestamp: (0, common_1.createCompoundIndexValue)(patch.oid, patch.timestamp), isLocal_timestamp: (0, common_1.createCompoundIndexValue)(patch.isLocal, patch.timestamp), documentOid_timestamp: (0, common_1.createCompoundIndexValue)((0, common_1.getOidRoot)(patch.oid), patch.timestamp) });
121
- };
122
- this.insert = async (operations) => {
123
- const transaction = this.db.transaction('operations', 'readwrite');
124
- const store = transaction.objectStore('operations');
125
- const affected = new Set();
126
- for (const patch of operations) {
127
- store.put(patch);
128
- affected.add((0, common_1.getOidRoot)(patch.oid));
129
- }
130
- await new Promise((resolve, reject) => {
131
- transaction.oncomplete = () => {
132
- resolve();
133
- };
134
- transaction.onerror = () => {
135
- reject();
136
- };
137
- });
138
- return Array.from(affected);
139
- };
140
- this.reset = () => {
141
- return this.clear('operations');
142
- };
143
- }
144
- }
145
- exports.OperationsStore = OperationsStore;
146
- //# sourceMappingURL=OperationsStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OperationsStore.js","sourceRoot":"","sources":["../../src/OperationsStore.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- import { ServerMessage, EventSubscriber } from '@lo-fi/common';
2
- import type { UserInfo } from './index.js';
3
- import { LocalReplicaInfo } from './metadata/LocalReplicaStore.js';
4
- export declare class PresenceManager<Profile = any, Presence = any> extends EventSubscriber<{
5
- peerChanged: (userId: string, presence: UserInfo<Profile, Presence>) => void;
6
- selfChanged: (presence: UserInfo<Profile, Presence>) => void;
7
- peersChanged: (peers: Record<string, any>) => void;
8
- peerLeft: (userId: string, lastPresence: UserInfo<Profile, Presence>) => void;
9
- update: (presence: Partial<Presence>) => void;
10
- }> {
11
- private _peers;
12
- private _self;
13
- private _peerIds;
14
- private _updateBatcher;
15
- private _updateBatch;
16
- get self(): UserInfo<Profile, Presence>;
17
- get peers(): Record<string, UserInfo<Profile, Presence>>;
18
- get peerIds(): string[];
19
- get everyone(): {
20
- [x: string]: UserInfo<Profile, Presence>;
21
- };
22
- constructor({ initialPresence, updateBatchTimeout, defaultProfile, }: {
23
- initialPresence: Presence;
24
- defaultProfile: Profile;
25
- updateBatchTimeout?: number;
26
- });
27
- __handleMessage: (localReplicaInfo: LocalReplicaInfo, message: ServerMessage) => Promise<void>;
28
- update: (presence: Partial<Presence>) => Promise<void>;
29
- flushPresenceUpdates: (presenceUpdates: Partial<Presence>[]) => void;
30
- }
@@ -1,89 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PresenceManager = void 0;
4
- const common_1 = require("@lo-fi/common");
5
- class PresenceManager extends common_1.EventSubscriber {
6
- constructor({ initialPresence, updateBatchTimeout = 200, defaultProfile, }) {
7
- super();
8
- this._peers = {};
9
- this._self = { profile: {} };
10
- this._peerIds = new Array();
11
- this.__handleMessage = async (localReplicaInfo, message) => {
12
- let peersChanged = false;
13
- const peerIdsSet = new Set(this.peerIds);
14
- if (message.type === 'presence-changed') {
15
- if (message.userInfo.replicaId === localReplicaInfo.id) {
16
- this._self = message.userInfo;
17
- this.emit('selfChanged', message.userInfo);
18
- }
19
- else {
20
- peerIdsSet.add(message.userInfo.id);
21
- this._peers[message.userInfo.id] = message.userInfo;
22
- peersChanged = true;
23
- this.emit('peerChanged', message.userInfo.id, message.userInfo);
24
- }
25
- }
26
- else if (message.type === 'sync-resp') {
27
- for (const [id, presence] of Object.entries(message.peerPresence)) {
28
- if (presence.replicaId === localReplicaInfo.id) {
29
- this._self = presence;
30
- this.emit('selfChanged', presence);
31
- }
32
- else {
33
- peersChanged = true;
34
- peerIdsSet.add(id);
35
- this._peers[id] = presence;
36
- this.emit('peerChanged', id, presence);
37
- }
38
- }
39
- }
40
- else if (message.type === 'presence-offline') {
41
- peerIdsSet.delete(message.userId);
42
- const lastPresence = this._peers[message.userId];
43
- delete this._peers[message.userId];
44
- peersChanged = true;
45
- this.emit('peerLeft', message.userId, lastPresence);
46
- }
47
- if (peersChanged) {
48
- this._peerIds = Array.from(peerIdsSet);
49
- this.emit('peersChanged', this._peers);
50
- }
51
- };
52
- this.update = async (presence) => {
53
- this._updateBatch.update({
54
- items: [presence],
55
- });
56
- };
57
- this.flushPresenceUpdates = (presenceUpdates) => {
58
- const presence = presenceUpdates.reduce((acc, update) => {
59
- return Object.assign(Object.assign({}, acc), update);
60
- }, this.self.presence);
61
- this.emit('update', presence);
62
- };
63
- this.self.presence = initialPresence;
64
- this.self.profile = defaultProfile;
65
- this._updateBatcher = new common_1.Batcher(this.flushPresenceUpdates);
66
- this._updateBatch = this._updateBatcher.add({
67
- max: 25,
68
- timeout: updateBatchTimeout,
69
- items: [],
70
- key: 'default',
71
- });
72
- }
73
- get self() {
74
- return this._self;
75
- }
76
- get peers() {
77
- return this._peers;
78
- }
79
- get peerIds() {
80
- return this._peerIds;
81
- }
82
- get everyone() {
83
- const everyone = Object.assign({}, this._peers);
84
- everyone[this.self.id] = this.self;
85
- return everyone;
86
- }
87
- }
88
- exports.PresenceManager = PresenceManager;
89
- //# sourceMappingURL=PresenceManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PresenceManager.js","sourceRoot":"","sources":["../../src/PresenceManager.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { ObjectEntity } from './reactives/Entity.js';
2
- export declare const UPDATE = "@@update";
3
- export declare class Query<T extends (ObjectEntity<any, any> | null) | ObjectEntity<any, any>[]> {
4
- readonly key: string;
5
- readonly collection: string;
6
- private readonly query;
7
- private readonly onActivate;
8
- private readonly onDispose;
9
- private _rawEntities;
10
- private _resultEntities;
11
- private _subscribers;
12
- resolved: Promise<T>;
13
- private _internalUnsubscribes;
14
- readonly id: string;
15
- constructor(key: string, collection: string, query: () => Promise<T>, onActivate: (query: Query<T>) => void, onDispose: (query: Query<T>) => void);
16
- private filterDeleted;
17
- private execute;
18
- private subscribeToDeleteAndRestore;
19
- get current(): T | null;
20
- [UPDATE]: () => void;
21
- dispose: () => void;
22
- private refilterDeleted;
23
- subscribe: (callback: (value: T | null) => void) => () => void;
24
- get subscriberCount(): number;
25
- get isActive(): boolean;
26
- }
package/dist/cjs/Query.js DELETED
@@ -1,86 +0,0 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.Query = exports.UPDATE = void 0;
5
- const common_1 = require("@lo-fi/common");
6
- exports.UPDATE = '@@update';
7
- class Query {
8
- constructor(key, collection, query, onActivate, onDispose) {
9
- this.key = key;
10
- this.collection = collection;
11
- this.query = query;
12
- this.onActivate = onActivate;
13
- this.onDispose = onDispose;
14
- this._rawEntities = null;
15
- this._resultEntities = null;
16
- this._subscribers = new Set();
17
- this._internalUnsubscribes = [];
18
- this.filterDeleted = (entities) => {
19
- if (Array.isArray(entities)) {
20
- return entities.filter((entity) => !entity.deleted);
21
- }
22
- return (entities === null || entities === void 0 ? void 0 : entities.deleted) ? null : entities;
23
- };
24
- this.execute = async () => {
25
- this._rawEntities = await this.query();
26
- this.subscribeToDeleteAndRestore(this._rawEntities);
27
- this._resultEntities = this.filterDeleted(this._rawEntities);
28
- this._subscribers.forEach((subscriber) => subscriber(this._resultEntities));
29
- return this._resultEntities;
30
- };
31
- this.subscribeToDeleteAndRestore = (result) => {
32
- var _b;
33
- while (this._internalUnsubscribes.length) {
34
- (_b = this._internalUnsubscribes.pop()) === null || _b === void 0 ? void 0 : _b();
35
- }
36
- if (Array.isArray(result)) {
37
- result.forEach((entity) => {
38
- this._internalUnsubscribes.push(entity.subscribe('delete', this.refilterDeleted));
39
- this._internalUnsubscribes.push(entity.subscribe('restore', this.refilterDeleted));
40
- });
41
- }
42
- else if (result) {
43
- this._internalUnsubscribes.push(result.subscribe('delete', this.refilterDeleted));
44
- this._internalUnsubscribes.push(result.subscribe('restore', this.refilterDeleted));
45
- }
46
- };
47
- this[_a] = () => {
48
- this.resolved = this.execute();
49
- };
50
- this.dispose = () => {
51
- this._subscribers.clear();
52
- this._internalUnsubscribes.forEach((unsubscribe) => unsubscribe());
53
- this._internalUnsubscribes = [];
54
- };
55
- this.refilterDeleted = () => {
56
- this._resultEntities = this.filterDeleted(this._rawEntities);
57
- this._subscribers.forEach((subscriber) => subscriber(this._resultEntities));
58
- };
59
- this.subscribe = (callback) => {
60
- this._subscribers.add(callback);
61
- if (this._subscribers.size === 1) {
62
- this.onActivate(this);
63
- }
64
- return () => {
65
- this._subscribers.delete(callback);
66
- if (this._subscribers.size === 0) {
67
- this.onDispose(this);
68
- }
69
- };
70
- };
71
- this.id = key + '_' + (0, common_1.generateId)();
72
- this.resolved = this.execute();
73
- }
74
- get current() {
75
- return this._resultEntities;
76
- }
77
- get subscriberCount() {
78
- return this._subscribers.size;
79
- }
80
- get isActive() {
81
- return this.subscriberCount > 0;
82
- }
83
- }
84
- exports.Query = Query;
85
- _a = exports.UPDATE;
86
- //# sourceMappingURL=Query.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Query.js","sourceRoot":"","sources":["../../src/Query.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { CollectionFilter, StorageSchema } from '@lo-fi/common';
2
- import { ObjectEntity } from './reactives/Entity.js';
3
- import { Query } from './Query.js';
4
- import { QueryStore } from './QueryStore.js';
5
- export declare class QueryMaker {
6
- private readonly queryStore;
7
- private readonly schema;
8
- constructor(queryStore: QueryStore, schema: StorageSchema<any>);
9
- get: (collection: string, primaryKey: string) => Query<ObjectEntity<any, any>>;
10
- findOne: (collection: string, query?: CollectionFilter) => Query<ObjectEntity<any, any>>;
11
- findAll: (collection: string, query?: CollectionFilter) => Query<ObjectEntity<any, any>[]>;
12
- private rangeIndexToIdbKeyRange;
13
- private matchIndexToIdbKeyRange;
14
- private sortIndexToIdbKeyRange;
15
- private compoundIndexToIdbKeyRange;
16
- private startsWithIndexToIdbKeyRange;
17
- private getRange;
18
- }
@@ -1,98 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.QueryMaker = void 0;
4
- const common_1 = require("@lo-fi/common");
5
- class QueryMaker {
6
- constructor(queryStore, schema) {
7
- this.queryStore = queryStore;
8
- this.schema = schema;
9
- this.get = (collection, primaryKey) => {
10
- return this.queryStore.get({
11
- collection: collection,
12
- range: primaryKey,
13
- single: true,
14
- });
15
- };
16
- this.findOne = (collection, query) => {
17
- return this.queryStore.get({
18
- collection,
19
- range: this.getRange(collection, query),
20
- single: true,
21
- index: query === null || query === void 0 ? void 0 : query.where,
22
- direction: (query === null || query === void 0 ? void 0 : query.order) === 'desc' ? 'prev' : 'next',
23
- });
24
- };
25
- this.findAll = (collection, query) => {
26
- return this.queryStore.get({
27
- collection,
28
- range: this.getRange(collection, query),
29
- index: query === null || query === void 0 ? void 0 : query.where,
30
- direction: (query === null || query === void 0 ? void 0 : query.order) === 'desc' ? 'prev' : 'next',
31
- });
32
- };
33
- this.rangeIndexToIdbKeyRange = (filter) => {
34
- const lower = filter.gte || filter.gt;
35
- const upper = filter.lte || filter.lt;
36
- if (lower === upper) {
37
- return IDBKeyRange.only((0, common_1.sanitizeIndexValue)(lower));
38
- }
39
- if (!lower) {
40
- return IDBKeyRange.upperBound((0, common_1.sanitizeIndexValue)(upper), !!filter.lt);
41
- }
42
- else if (!upper) {
43
- return IDBKeyRange.lowerBound((0, common_1.sanitizeIndexValue)(lower), !!filter.gt);
44
- }
45
- else {
46
- return IDBKeyRange.bound((0, common_1.sanitizeIndexValue)(lower), (0, common_1.sanitizeIndexValue)(upper), !!filter.gt, !!filter.lt);
47
- }
48
- };
49
- this.matchIndexToIdbKeyRange = (filter) => {
50
- return IDBKeyRange.only((0, common_1.sanitizeIndexValue)(filter.equals));
51
- };
52
- this.sortIndexToIdbKeyRange = (filter) => {
53
- return undefined;
54
- };
55
- this.compoundIndexToIdbKeyRange = (collection, filter) => {
56
- // validate the usage of the compound index:
57
- // - all match fields must be contiguous at the start of the compound order
58
- const indexDefinition = this.schema.collections[collection].compounds[filter.where];
59
- (0, common_1.assert)(indexDefinition, `Index ${filter.where} does not exist on collection ${collection}`);
60
- const matchedKeys = Object.keys(filter.match).sort((a, b) => indexDefinition.of.indexOf(a) - indexDefinition.of.indexOf(b));
61
- for (const key of matchedKeys) {
62
- if (indexDefinition.of.indexOf(key) !== matchedKeys.indexOf(key)) {
63
- throw new Error(`Compound index ${filter.where} does not have ${key} at the start of its order`);
64
- }
65
- }
66
- const matchedValues = matchedKeys.map((key) => filter.match[key]);
67
- // special case: all match fields are specified - we don't need a range
68
- // query, just a single key query
69
- if (matchedKeys.length === indexDefinition.of.length) {
70
- return IDBKeyRange.only((0, common_1.createCompoundIndexValue)(...matchedValues));
71
- }
72
- // create our bounds for the matched values
73
- const lower = (0, common_1.createLowerBoundIndexValue)(...matchedValues);
74
- const upper = (0, common_1.createUpperBoundIndexValue)(...matchedValues);
75
- return IDBKeyRange.bound(lower, upper);
76
- };
77
- this.startsWithIndexToIdbKeyRange = (filter) => {
78
- const lower = filter.startsWith;
79
- const upper = filter.startsWith + '\uffff';
80
- return IDBKeyRange.bound(lower, upper);
81
- };
82
- this.getRange = (collection, index) => {
83
- if (!index)
84
- return undefined;
85
- if ((0, common_1.isRangeIndexFilter)(index))
86
- return this.rangeIndexToIdbKeyRange(index);
87
- if ((0, common_1.isMatchIndexFilter)(index))
88
- return this.matchIndexToIdbKeyRange(index);
89
- if ((0, common_1.isSortIndexFilter)(index))
90
- return this.sortIndexToIdbKeyRange(index);
91
- if ((0, common_1.isStartsWithIndexFilter)(index))
92
- return this.startsWithIndexToIdbKeyRange(index);
93
- return this.compoundIndexToIdbKeyRange(collection, index);
94
- };
95
- }
96
- }
97
- exports.QueryMaker = QueryMaker;
98
- //# sourceMappingURL=QueryMaker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QueryMaker.js","sourceRoot":"","sources":["../../src/QueryMaker.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import { EntityStore } from './reactives/EntityStore.js';
2
- import { Query } from './Query.js';
3
- export declare class QueryStore {
4
- private db;
5
- private entities;
6
- private cache;
7
- private log;
8
- constructor(db: IDBDatabase, entities: EntityStore, config: {
9
- log?: (...args: any[]) => void;
10
- });
11
- private getStore;
12
- getQueryKey: ({ range, ...rest }: {
13
- collection: string;
14
- range: IDBKeyRange | IDBValidKey | undefined;
15
- index?: string | undefined;
16
- direction?: IDBCursorDirection | undefined;
17
- limit?: number | undefined;
18
- single?: boolean | undefined;
19
- write?: boolean | undefined;
20
- }) => string;
21
- get: (config: {
22
- collection: string;
23
- range: IDBKeyRange | IDBValidKey | undefined;
24
- index?: string;
25
- direction?: IDBCursorDirection;
26
- limit?: number;
27
- single?: boolean;
28
- write?: boolean;
29
- }) => Query<any>;
30
- /**
31
- * If a query is unsubscribed after 1 tick, it is removed from the cache.
32
- * To persist a query in the cache a user must subscribe to it.
33
- */
34
- private prepareToCleanupQuery;
35
- update: (key: string) => void;
36
- private onCollectionsChanged;
37
- destroy: () => void;
38
- }