@verdant-web/store 3.12.1 → 4.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/dist/bundle/index.js +11 -13
  2. package/dist/bundle/index.js.map +4 -4
  3. package/dist/esm/__tests__/batching.test.js +5 -5
  4. package/dist/esm/__tests__/batching.test.js.map +1 -1
  5. package/dist/esm/__tests__/entities.test.js +1 -1
  6. package/dist/esm/__tests__/entities.test.js.map +1 -1
  7. package/dist/esm/__tests__/fixtures/testStorage.d.ts +1 -3
  8. package/dist/esm/__tests__/fixtures/testStorage.js +3 -3
  9. package/dist/esm/__tests__/fixtures/testStorage.js.map +1 -1
  10. package/dist/esm/__tests__/queries.test.js.map +1 -1
  11. package/dist/esm/backup.d.ts +3 -4
  12. package/dist/esm/backup.js.map +1 -1
  13. package/dist/esm/client/Client.d.ts +28 -33
  14. package/dist/esm/client/Client.js +50 -161
  15. package/dist/esm/client/Client.js.map +1 -1
  16. package/dist/esm/client/ClientDescriptor.d.ts +8 -11
  17. package/dist/esm/client/ClientDescriptor.js +39 -141
  18. package/dist/esm/client/ClientDescriptor.js.map +1 -1
  19. package/dist/esm/context/Time.d.ts +13 -0
  20. package/dist/esm/context/Time.js +27 -0
  21. package/dist/esm/context/Time.js.map +1 -0
  22. package/dist/esm/context/context.d.ts +170 -0
  23. package/dist/esm/{context.js.map → context/context.js.map} +1 -1
  24. package/dist/esm/entities/DocumentManager.js.map +1 -1
  25. package/dist/esm/entities/Entity.d.ts +4 -5
  26. package/dist/esm/entities/Entity.js +5 -3
  27. package/dist/esm/entities/Entity.js.map +1 -1
  28. package/dist/esm/entities/Entity.test.js +4 -3
  29. package/dist/esm/entities/Entity.test.js.map +1 -1
  30. package/dist/esm/entities/EntityCache.d.ts +0 -3
  31. package/dist/esm/entities/EntityCache.js +0 -9
  32. package/dist/esm/entities/EntityCache.js.map +1 -1
  33. package/dist/esm/entities/EntityMetadata.d.ts +1 -1
  34. package/dist/esm/entities/EntityMetadata.js +6 -5
  35. package/dist/esm/entities/EntityMetadata.js.map +1 -1
  36. package/dist/esm/entities/EntityStore.d.ts +2 -6
  37. package/dist/esm/entities/EntityStore.js +22 -16
  38. package/dist/esm/entities/EntityStore.js.map +1 -1
  39. package/dist/esm/entities/OperationBatcher.d.ts +2 -5
  40. package/dist/esm/entities/OperationBatcher.js +9 -7
  41. package/dist/esm/entities/OperationBatcher.js.map +1 -1
  42. package/dist/esm/errors.d.ts +8 -0
  43. package/dist/esm/errors.js +12 -0
  44. package/dist/esm/errors.js.map +1 -0
  45. package/dist/esm/files/EntityFile.d.ts +6 -3
  46. package/dist/esm/files/EntityFile.js +22 -19
  47. package/dist/esm/files/EntityFile.js.map +1 -1
  48. package/dist/esm/files/FileManager.d.ts +8 -39
  49. package/dist/esm/files/FileManager.js +15 -170
  50. package/dist/esm/files/FileManager.js.map +1 -1
  51. package/dist/esm/files/utils.d.ts +0 -1
  52. package/dist/esm/files/utils.js +0 -14
  53. package/dist/esm/files/utils.js.map +1 -1
  54. package/dist/esm/index.d.ts +1 -2
  55. package/dist/esm/index.js +0 -1
  56. package/dist/esm/index.js.map +1 -1
  57. package/dist/esm/{metadata → persistence}/MessageCreator.d.ts +5 -6
  58. package/dist/esm/{metadata → persistence}/MessageCreator.js +31 -38
  59. package/dist/esm/persistence/MessageCreator.js.map +1 -0
  60. package/dist/esm/persistence/PersistenceFiles.d.ts +48 -0
  61. package/dist/esm/persistence/PersistenceFiles.js +160 -0
  62. package/dist/esm/persistence/PersistenceFiles.js.map +1 -0
  63. package/dist/esm/persistence/PersistenceMetadata.d.ts +69 -0
  64. package/dist/esm/persistence/PersistenceMetadata.js +302 -0
  65. package/dist/esm/persistence/PersistenceMetadata.js.map +1 -0
  66. package/dist/esm/persistence/PersistenceQueries.d.ts +34 -0
  67. package/dist/esm/persistence/PersistenceQueries.js +15 -0
  68. package/dist/esm/persistence/PersistenceQueries.js.map +1 -0
  69. package/dist/esm/persistence/PersistenceRebaser.d.ts +32 -0
  70. package/dist/esm/persistence/PersistenceRebaser.js +120 -0
  71. package/dist/esm/persistence/PersistenceRebaser.js.map +1 -0
  72. package/dist/esm/{IDBService.d.ts → persistence/idb/IdbService.d.ts} +9 -7
  73. package/dist/esm/{IDBService.js → persistence/idb/IdbService.js} +29 -8
  74. package/dist/esm/persistence/idb/IdbService.js.map +1 -0
  75. package/dist/esm/persistence/idb/files/IdbPersistenceFileDb.d.ts +58 -0
  76. package/dist/esm/{files/FileStorage.js → persistence/idb/files/IdbPersistenceFileDb.js} +85 -50
  77. package/dist/esm/persistence/idb/files/IdbPersistenceFileDb.js.map +1 -0
  78. package/dist/esm/persistence/idb/idbPersistence.d.ts +19 -0
  79. package/dist/esm/persistence/idb/idbPersistence.js +80 -0
  80. package/dist/esm/persistence/idb/idbPersistence.js.map +1 -0
  81. package/dist/esm/persistence/idb/metadata/IdbMetadataDb.d.ts +72 -0
  82. package/dist/esm/persistence/idb/metadata/IdbMetadataDb.js +235 -0
  83. package/dist/esm/persistence/idb/metadata/IdbMetadataDb.js.map +1 -0
  84. package/dist/esm/{metadata → persistence/idb/metadata}/openMetadataDatabase.d.ts +3 -1
  85. package/dist/esm/{metadata → persistence/idb/metadata}/openMetadataDatabase.js +12 -3
  86. package/dist/esm/persistence/idb/metadata/openMetadataDatabase.js.map +1 -0
  87. package/dist/esm/persistence/idb/queries/IdbQueryDb.d.ts +41 -0
  88. package/dist/esm/persistence/idb/queries/IdbQueryDb.js +174 -0
  89. package/dist/esm/persistence/idb/queries/IdbQueryDb.js.map +1 -0
  90. package/dist/esm/{migration → persistence/idb/queries/migration}/db.d.ts +1 -1
  91. package/dist/esm/{migration → persistence/idb/queries/migration}/db.js +10 -48
  92. package/dist/esm/persistence/idb/queries/migration/db.js.map +1 -0
  93. package/dist/esm/persistence/idb/queries/migration/engine.d.ts +12 -0
  94. package/dist/esm/{migration → persistence/idb/queries/migration}/engine.js +29 -46
  95. package/dist/esm/persistence/idb/queries/migration/engine.js.map +1 -0
  96. package/dist/esm/{migration → persistence/idb/queries/migration}/migrations.d.ts +1 -3
  97. package/dist/esm/{migration → persistence/idb/queries/migration}/migrations.js +11 -10
  98. package/dist/esm/persistence/idb/queries/migration/migrations.js.map +1 -0
  99. package/dist/esm/{migration → persistence/idb/queries/migration}/openQueryDatabase.d.ts +1 -3
  100. package/dist/esm/{migration → persistence/idb/queries/migration}/openQueryDatabase.js +4 -7
  101. package/dist/esm/persistence/idb/queries/migration/openQueryDatabase.js.map +1 -0
  102. package/dist/esm/{migration → persistence/idb/queries/migration}/paths.js +2 -2
  103. package/dist/esm/persistence/idb/queries/migration/paths.js.map +1 -0
  104. package/dist/esm/persistence/idb/queries/migration/paths.test.js.map +1 -0
  105. package/dist/esm/persistence/idb/queries/migration/types.d.ts +6 -0
  106. package/dist/esm/persistence/idb/queries/migration/types.js.map +1 -0
  107. package/dist/esm/persistence/idb/queries/ranges.d.ts +2 -0
  108. package/dist/esm/persistence/idb/queries/ranges.js +66 -0
  109. package/dist/esm/persistence/idb/queries/ranges.js.map +1 -0
  110. package/dist/esm/{idb.d.ts → persistence/idb/util.d.ts} +11 -0
  111. package/dist/esm/{idb.js → persistence/idb/util.js} +58 -1
  112. package/dist/esm/persistence/idb/util.js.map +1 -0
  113. package/dist/esm/persistence/interfaces.d.ts +181 -0
  114. package/dist/esm/persistence/interfaces.js +2 -0
  115. package/dist/esm/persistence/interfaces.js.map +1 -0
  116. package/dist/esm/persistence/persistence.d.ts +4 -0
  117. package/dist/esm/persistence/persistence.js +126 -0
  118. package/dist/esm/persistence/persistence.js.map +1 -0
  119. package/dist/esm/queries/BaseQuery.d.ts +2 -1
  120. package/dist/esm/queries/BaseQuery.js +3 -0
  121. package/dist/esm/queries/BaseQuery.js.map +1 -1
  122. package/dist/esm/queries/CollectionQueries.d.ts +1 -1
  123. package/dist/esm/queries/FindAllQuery.js +1 -3
  124. package/dist/esm/queries/FindAllQuery.js.map +1 -1
  125. package/dist/esm/queries/FindInfiniteQuery.js +2 -5
  126. package/dist/esm/queries/FindInfiniteQuery.js.map +1 -1
  127. package/dist/esm/queries/FindOneQuery.js +1 -3
  128. package/dist/esm/queries/FindOneQuery.js.map +1 -1
  129. package/dist/esm/queries/FindPageQuery.js +1 -3
  130. package/dist/esm/queries/FindPageQuery.js.map +1 -1
  131. package/dist/esm/queries/QueryCache.d.ts +1 -1
  132. package/dist/esm/queries/QueryCache.js +4 -0
  133. package/dist/esm/queries/QueryCache.js.map +1 -1
  134. package/dist/esm/sync/FileSync.d.ts +23 -8
  135. package/dist/esm/sync/FileSync.js +76 -28
  136. package/dist/esm/sync/FileSync.js.map +1 -1
  137. package/dist/esm/sync/PresenceManager.d.ts +4 -3
  138. package/dist/esm/sync/PresenceManager.js +2 -2
  139. package/dist/esm/sync/PresenceManager.js.map +1 -1
  140. package/dist/esm/sync/PushPullSync.d.ts +4 -6
  141. package/dist/esm/sync/PushPullSync.js +13 -12
  142. package/dist/esm/sync/PushPullSync.js.map +1 -1
  143. package/dist/esm/sync/Sync.d.ts +9 -11
  144. package/dist/esm/sync/Sync.js +34 -29
  145. package/dist/esm/sync/Sync.js.map +1 -1
  146. package/dist/esm/sync/WebSocketSync.d.ts +4 -6
  147. package/dist/esm/sync/WebSocketSync.js +20 -22
  148. package/dist/esm/sync/WebSocketSync.js.map +1 -1
  149. package/dist/esm/utils/Disposable.d.ts +5 -2
  150. package/dist/esm/utils/Disposable.js +3 -2
  151. package/dist/esm/utils/Disposable.js.map +1 -1
  152. package/dist/esm/utils/wip.d.ts +2 -0
  153. package/dist/esm/utils/wip.js +5 -0
  154. package/dist/esm/utils/wip.js.map +1 -0
  155. package/package.json +2 -2
  156. package/src/__tests__/batching.test.ts +6 -6
  157. package/src/__tests__/entities.test.ts +1 -1
  158. package/src/__tests__/fixtures/testStorage.ts +2 -10
  159. package/src/__tests__/queries.test.ts +1 -1
  160. package/src/backup.ts +3 -4
  161. package/src/client/Client.ts +69 -226
  162. package/src/client/ClientDescriptor.ts +53 -184
  163. package/src/context/Time.ts +35 -0
  164. package/src/context/context.ts +200 -0
  165. package/src/entities/DocumentManager.ts +0 -3
  166. package/src/entities/Entity.test.ts +9 -9
  167. package/src/entities/Entity.ts +6 -12
  168. package/src/entities/EntityCache.ts +0 -9
  169. package/src/entities/EntityMetadata.ts +4 -4
  170. package/src/entities/EntityStore.ts +26 -29
  171. package/src/entities/OperationBatcher.ts +9 -11
  172. package/src/errors.ts +13 -0
  173. package/src/files/EntityFile.ts +16 -5
  174. package/src/files/FileManager.ts +18 -245
  175. package/src/files/utils.ts +0 -15
  176. package/src/index.ts +2 -1
  177. package/src/{metadata → persistence}/MessageCreator.ts +46 -36
  178. package/src/persistence/PersistenceFiles.ts +227 -0
  179. package/src/persistence/PersistenceMetadata.ts +425 -0
  180. package/src/persistence/PersistenceQueries.ts +22 -0
  181. package/src/persistence/PersistenceRebaser.ts +171 -0
  182. package/src/{IDBService.ts → persistence/idb/IdbService.ts} +45 -12
  183. package/src/{files/FileStorage.ts → persistence/idb/files/IdbPersistenceFileDb.ts} +128 -86
  184. package/src/persistence/idb/idbPersistence.ts +116 -0
  185. package/src/persistence/idb/metadata/IdbMetadataDb.ts +460 -0
  186. package/src/{metadata → persistence/idb/metadata}/openMetadataDatabase.ts +21 -4
  187. package/src/persistence/idb/queries/IdbQueryDb.ts +251 -0
  188. package/src/{migration → persistence/idb/queries/migration}/db.ts +18 -72
  189. package/src/{migration → persistence/idb/queries/migration}/engine.ts +39 -62
  190. package/src/{migration → persistence/idb/queries/migration}/migrations.ts +13 -18
  191. package/src/{migration → persistence/idb/queries/migration}/openQueryDatabase.ts +5 -14
  192. package/src/{migration → persistence/idb/queries/migration}/paths.ts +4 -3
  193. package/src/persistence/idb/queries/migration/types.ts +8 -0
  194. package/src/persistence/idb/queries/ranges.ts +107 -0
  195. package/src/{idb.ts → persistence/idb/util.ts} +75 -0
  196. package/src/persistence/interfaces.ts +240 -0
  197. package/src/persistence/persistence.ts +223 -0
  198. package/src/queries/BaseQuery.ts +5 -1
  199. package/src/queries/CollectionQueries.ts +2 -2
  200. package/src/queries/FindAllQuery.ts +1 -3
  201. package/src/queries/FindInfiniteQuery.ts +2 -5
  202. package/src/queries/FindOneQuery.ts +1 -3
  203. package/src/queries/FindPageQuery.ts +1 -3
  204. package/src/queries/QueryCache.ts +20 -1
  205. package/src/sync/FileSync.ts +93 -30
  206. package/src/sync/PresenceManager.ts +5 -7
  207. package/src/sync/PushPullSync.ts +23 -19
  208. package/src/sync/Sync.ts +45 -36
  209. package/src/sync/WebSocketSync.ts +41 -27
  210. package/src/utils/Disposable.ts +7 -4
  211. package/src/utils/wip.ts +5 -0
  212. package/dist/esm/IDBService.js.map +0 -1
  213. package/dist/esm/__tests__/legacyOids.test.d.ts +0 -1
  214. package/dist/esm/__tests__/legacyOids.test.js +0 -352
  215. package/dist/esm/__tests__/legacyOids.test.js.map +0 -1
  216. package/dist/esm/context.d.ts +0 -45
  217. package/dist/esm/files/FileStorage.d.ts +0 -47
  218. package/dist/esm/files/FileStorage.js.map +0 -1
  219. package/dist/esm/idb.js.map +0 -1
  220. package/dist/esm/metadata/AckInfoStore.d.ts +0 -10
  221. package/dist/esm/metadata/AckInfoStore.js +0 -22
  222. package/dist/esm/metadata/AckInfoStore.js.map +0 -1
  223. package/dist/esm/metadata/BaselinesStore.d.ts +0 -40
  224. package/dist/esm/metadata/BaselinesStore.js +0 -102
  225. package/dist/esm/metadata/BaselinesStore.js.map +0 -1
  226. package/dist/esm/metadata/LocalReplicaStore.d.ts +0 -19
  227. package/dist/esm/metadata/LocalReplicaStore.js +0 -56
  228. package/dist/esm/metadata/LocalReplicaStore.js.map +0 -1
  229. package/dist/esm/metadata/MessageCreator.js.map +0 -1
  230. package/dist/esm/metadata/Metadata.d.ts +0 -146
  231. package/dist/esm/metadata/Metadata.js +0 -452
  232. package/dist/esm/metadata/Metadata.js.map +0 -1
  233. package/dist/esm/metadata/OperationsStore.d.ts +0 -62
  234. package/dist/esm/metadata/OperationsStore.js +0 -175
  235. package/dist/esm/metadata/OperationsStore.js.map +0 -1
  236. package/dist/esm/metadata/SchemaStore.d.ts +0 -9
  237. package/dist/esm/metadata/SchemaStore.js +0 -35
  238. package/dist/esm/metadata/SchemaStore.js.map +0 -1
  239. package/dist/esm/metadata/openMetadataDatabase.js.map +0 -1
  240. package/dist/esm/migration/db.js.map +0 -1
  241. package/dist/esm/migration/engine.d.ts +0 -15
  242. package/dist/esm/migration/engine.js.map +0 -1
  243. package/dist/esm/migration/errors.d.ts +0 -5
  244. package/dist/esm/migration/errors.js +0 -8
  245. package/dist/esm/migration/errors.js.map +0 -1
  246. package/dist/esm/migration/migrations.js.map +0 -1
  247. package/dist/esm/migration/openQueryDatabase.js.map +0 -1
  248. package/dist/esm/migration/openWIPDatabase.d.ts +0 -11
  249. package/dist/esm/migration/openWIPDatabase.js +0 -65
  250. package/dist/esm/migration/openWIPDatabase.js.map +0 -1
  251. package/dist/esm/migration/paths.js.map +0 -1
  252. package/dist/esm/migration/paths.test.js.map +0 -1
  253. package/dist/esm/migration/types.d.ts +0 -3
  254. package/dist/esm/migration/types.js.map +0 -1
  255. package/dist/esm/queries/QueryableStorage.d.ts +0 -20
  256. package/dist/esm/queries/QueryableStorage.js +0 -90
  257. package/dist/esm/queries/QueryableStorage.js.map +0 -1
  258. package/dist/esm/queries/dbQueries.d.ts +0 -22
  259. package/dist/esm/queries/dbQueries.js +0 -130
  260. package/dist/esm/queries/dbQueries.js.map +0 -1
  261. package/src/__tests__/legacyOids.test.ts +0 -375
  262. package/src/context.ts +0 -55
  263. package/src/metadata/AckInfoStore.ts +0 -30
  264. package/src/metadata/BaselinesStore.ts +0 -188
  265. package/src/metadata/LocalReplicaStore.ts +0 -79
  266. package/src/metadata/Metadata.ts +0 -685
  267. package/src/metadata/OperationsStore.ts +0 -332
  268. package/src/metadata/SchemaStore.ts +0 -47
  269. package/src/migration/errors.ts +0 -7
  270. package/src/migration/openWIPDatabase.ts +0 -97
  271. package/src/migration/types.ts +0 -4
  272. package/src/queries/QueryableStorage.ts +0 -122
  273. package/src/queries/dbQueries.ts +0 -161
  274. /package/dist/esm/{context.js → context/context.js} +0 -0
  275. /package/dist/esm/{migration → persistence/idb/queries/migration}/paths.d.ts +0 -0
  276. /package/dist/esm/{migration → persistence/idb/queries/migration}/paths.test.d.ts +0 -0
  277. /package/dist/esm/{migration → persistence/idb/queries/migration}/paths.test.js +0 -0
  278. /package/dist/esm/{migration → persistence/idb/queries/migration}/types.js +0 -0
  279. /package/src/{migration → persistence/idb/queries/migration}/paths.test.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/persistence/idb/util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,181 @@
1
+ import { CollectionFilter, DocumentBaseline, FileData, ObjectIdentifier, Operation } from '@verdant-web/common';
2
+ import { Context, InitialContext } from '../context/context.js';
3
+ export interface AckInfo {
4
+ type: 'ack';
5
+ globalAckTimestamp: string | null;
6
+ }
7
+ export interface LocalReplicaInfo {
8
+ type: 'localReplicaInfo';
9
+ id: string;
10
+ userId: string | undefined;
11
+ ackedLogicalTime: string | null;
12
+ lastSyncedLogicalTime: string | null;
13
+ }
14
+ export type ClientOperation = Operation & {
15
+ isLocal: boolean;
16
+ };
17
+ export interface MetadataExport {
18
+ operations: Operation[];
19
+ baselines: DocumentBaseline[];
20
+ localReplica?: LocalReplicaInfo;
21
+ schemaVersion: number;
22
+ }
23
+ export interface ExportedData {
24
+ data: MetadataExport;
25
+ fileData: Array<Omit<PersistedFileData, 'file'>>;
26
+ files: File[];
27
+ }
28
+ export type AbstractTransaction = unknown;
29
+ export type QueryMode = 'readwrite' | 'readonly';
30
+ export interface CommonQueryOptions {
31
+ transaction?: AbstractTransaction;
32
+ mode?: QueryMode;
33
+ }
34
+ export type Iterator<T> = (item: T) => void | boolean;
35
+ export interface PersistenceMetadataDb {
36
+ transaction(opts: {
37
+ mode?: QueryMode;
38
+ storeNames: string[];
39
+ abort?: AbortSignal;
40
+ }): AbstractTransaction;
41
+ dispose(): void | Promise<void>;
42
+ getAckInfo(): Promise<AckInfo>;
43
+ setGlobalAck(ack: string): Promise<void>;
44
+ getLocalReplica(opts?: CommonQueryOptions): Promise<LocalReplicaInfo>;
45
+ updateLocalReplica(data: Partial<LocalReplicaInfo>, opts?: CommonQueryOptions): Promise<void>;
46
+ iterateDocumentBaselines(rootOid: string, iterator: Iterator<DocumentBaseline>, opts?: CommonQueryOptions): Promise<void>;
47
+ iterateCollectionBaselines(collection: string, iterator: Iterator<DocumentBaseline>, opts?: CommonQueryOptions): Promise<void>;
48
+ iterateAllBaselines(iterator: Iterator<DocumentBaseline>, opts?: CommonQueryOptions): Promise<void>;
49
+ getBaseline(oid: string, opts?: CommonQueryOptions): Promise<DocumentBaseline>;
50
+ setBaselines(baselines: DocumentBaseline[], opts?: CommonQueryOptions): Promise<void>;
51
+ deleteBaseline(oid: string, opts?: CommonQueryOptions): Promise<void>;
52
+ iterateDocumentOperations(rootOid: string, iterator: Iterator<ClientOperation>, opts?: CommonQueryOptions & {
53
+ to?: string | null;
54
+ }): Promise<void>;
55
+ iterateEntityOperations(oid: string, iterator: Iterator<ClientOperation>, opts?: CommonQueryOptions & {
56
+ to?: string | null;
57
+ }): Promise<void>;
58
+ iterateCollectionOperations(collection: string, iterator: Iterator<ClientOperation>, opts?: CommonQueryOptions): Promise<void>;
59
+ iterateLocalOperations(iterator: Iterator<ClientOperation>, opts?: CommonQueryOptions & {
60
+ before?: string | null;
61
+ after?: string | null;
62
+ }): Promise<void>;
63
+ /** Iterates over operations for an entity for processing and deletes them as it goes. */
64
+ consumeEntityOperations(oid: string, iterator: Iterator<ClientOperation>, opts?: CommonQueryOptions & {
65
+ to?: string | null;
66
+ }): Promise<void>;
67
+ iterateAllOperations(iterator: Iterator<ClientOperation>, opts?: CommonQueryOptions & {
68
+ before?: string | null;
69
+ from?: string | null;
70
+ }): Promise<void>;
71
+ /**
72
+ * @returns a list of all document (root) OIDs affected by the adds.
73
+ */
74
+ addOperations(ops: ClientOperation[], opts?: CommonQueryOptions): Promise<ObjectIdentifier[]>;
75
+ reset(opts?: {
76
+ clearReplica?: boolean;
77
+ transaction?: AbstractTransaction;
78
+ }): Promise<void>;
79
+ stats(): Promise<{
80
+ operationsSize: {
81
+ count: number;
82
+ size: number;
83
+ };
84
+ baselinesSize: {
85
+ count: number;
86
+ size: number;
87
+ };
88
+ }>;
89
+ }
90
+ export interface PersistenceQueryDb {
91
+ transaction(opts: {
92
+ mode?: QueryMode;
93
+ storeNames: string[];
94
+ abort?: AbortSignal;
95
+ }): AbstractTransaction;
96
+ dispose(): void | Promise<void>;
97
+ findOneOid(opts: {
98
+ collection: string;
99
+ index?: CollectionFilter;
100
+ }): Promise<ObjectIdentifier | null>;
101
+ findAllOids(opts: {
102
+ collection: string;
103
+ index?: CollectionFilter;
104
+ limit?: number;
105
+ offset?: number;
106
+ }): Promise<{
107
+ result: ObjectIdentifier[];
108
+ hasNextPage: boolean;
109
+ }>;
110
+ saveEntities(entities: {
111
+ oid: ObjectIdentifier;
112
+ getSnapshot: () => any;
113
+ }[], opts?: CommonQueryOptions & {
114
+ abort?: AbortSignal;
115
+ }): Promise<void>;
116
+ reset(opts?: {
117
+ transaction?: AbstractTransaction;
118
+ }): Promise<void>;
119
+ stats(): Promise<Record<string, {
120
+ count: number;
121
+ size: number;
122
+ }>>;
123
+ }
124
+ export interface PersistedFileData extends FileData {
125
+ deletedAt: number | null;
126
+ }
127
+ export interface PersistenceFileDb {
128
+ transaction(opts: {
129
+ mode?: QueryMode;
130
+ storeNames: string[];
131
+ abort?: AbortSignal;
132
+ }): AbstractTransaction;
133
+ dispose(): void | Promise<void>;
134
+ add(file: FileData, options?: {
135
+ transaction?: AbstractTransaction;
136
+ downloadRemote?: boolean;
137
+ }): Promise<void>;
138
+ markUploaded(fileId: string, options?: {
139
+ transaction?: AbstractTransaction;
140
+ }): Promise<void>;
141
+ get(fileId: string, options?: {
142
+ transaction?: AbstractTransaction;
143
+ }): Promise<PersistedFileData | null>;
144
+ delete(fileId: string, options?: {
145
+ transaction?: AbstractTransaction;
146
+ }): Promise<void>;
147
+ markPendingDelete(fileId: string, options?: {
148
+ transaction?: AbstractTransaction;
149
+ }): Promise<void>;
150
+ listUnsynced(options?: {
151
+ transaction?: AbstractTransaction;
152
+ }): Promise<PersistedFileData[]>;
153
+ resetSyncedStatusSince(since: string | null, options?: {
154
+ transaction?: AbstractTransaction;
155
+ }): Promise<void>;
156
+ iterateOverPendingDelete(iterator: (file: PersistedFileData, store: IDBObjectStore) => void, options?: {
157
+ transaction?: IDBTransaction;
158
+ }): Promise<void>;
159
+ getAll(options?: {
160
+ transaction?: AbstractTransaction;
161
+ }): Promise<PersistedFileData[]>;
162
+ stats(): Promise<{
163
+ size: {
164
+ count: number;
165
+ size: number;
166
+ };
167
+ }>;
168
+ }
169
+ export interface PersistenceImplementation {
170
+ openMetadata(ctx: InitialContext): Promise<PersistenceMetadataDb>;
171
+ openQueries(ctx: Omit<Context, 'queries'>): Promise<PersistenceQueryDb>;
172
+ openFiles(ctx: Omit<Context, 'files' | 'queries'>): Promise<PersistenceFileDb>;
173
+ /** Copies all data (metadata/document queries/files) from one namespace to another. */
174
+ copyNamespace(from: string, to: string, ctx: InitialContext): Promise<void>;
175
+ /** Returns a list of all persisted namespaces visible to this app. */
176
+ getNamespaces(): Promise<string[]>;
177
+ /** Deletes all data from a particular namespace. */
178
+ deleteNamespace(namespace: string, ctx: InitialContext): Promise<void>;
179
+ /** Gets the schema version of the given namespace */
180
+ getNamespaceVersion(namespace: string): Promise<number>;
181
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/persistence/interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { Context, InitialContext } from '../context/context.js';
2
+ import { ExportedData } from './interfaces.js';
3
+ export declare function initializePersistence(ctx: InitialContext): Promise<Context>;
4
+ export declare function importPersistence(ctx: Context, exportedData: ExportedData): Promise<void>;
@@ -0,0 +1,126 @@
1
+ import { EventSubscriber, getOidRoot, VerdantError } from '@verdant-web/common';
2
+ import { getWipNamespace } from '../utils/wip.js';
3
+ import { PersistenceFiles } from './PersistenceFiles.js';
4
+ import { PersistenceMetadata } from './PersistenceMetadata.js';
5
+ import { PersistenceQueries } from './PersistenceQueries.js';
6
+ export async function initializePersistence(ctx) {
7
+ var _a;
8
+ let context = ctx;
9
+ if (ctx.schema.wip) {
10
+ // this is a WIP database, so we need to create a new namespace for the WIP data.
11
+ context.namespace = getWipNamespace(ctx.originalNamespace, ctx.schema);
12
+ context.log('info', 'Switched to WIP namespace', context.namespace);
13
+ // check if this WIP database is already in use
14
+ const namespaces = await context.persistence.getNamespaces();
15
+ if (!namespaces.includes(context.namespace)) {
16
+ // copy all data to WIP namespace -- from the current version of local
17
+ // data, not the WIP schema version. this may not be n-1, we might
18
+ // be loading a WIP schema over older data.
19
+ const currentVersion = await context.persistence.getNamespaceVersion(context.originalNamespace);
20
+ if (currentVersion === 0) {
21
+ // there is no existing data. nothing to copy.
22
+ }
23
+ else {
24
+ const currentSchema = (_a = ctx.oldSchemas) === null || _a === void 0 ? void 0 : _a.find((s) => s.version === currentVersion);
25
+ if (!currentSchema) {
26
+ throw new VerdantError(VerdantError.Code.MigrationPathNotFound, undefined, `Trying to open WIP database for version ${ctx.schema.version}, but the current local data is version ${currentVersion} and a historical schema for that version is not available.`);
27
+ }
28
+ context.log('info', `Copying data from ${context.originalNamespace} to ${context.namespace}`);
29
+ await context.persistence.copyNamespace(context.originalNamespace, context.namespace, Object.assign(Object.assign({}, context), { schema: currentSchema }));
30
+ }
31
+ }
32
+ }
33
+ context.log('info', 'Opening persistence metadata');
34
+ context.meta = new PersistenceMetadata(await ctx.persistence.openMetadata(ctx), ctx);
35
+ context.log('info', 'Opening persistence files');
36
+ context.files = new PersistenceFiles(await ctx.persistence.openFiles(context), context);
37
+ context.log('info', 'Opening persistence queries');
38
+ context.queries = new PersistenceQueries(await ctx.persistence.openQueries(context), context);
39
+ if (!ctx.schema.wip) {
40
+ const namespaces = await ctx.persistence.getNamespaces();
41
+ // cleanup old WIP databases
42
+ for (const namespace of namespaces) {
43
+ if (namespace.startsWith(`@@wip_`)) {
44
+ ctx.log('debug', 'Cleaning up old WIP namespace', namespace);
45
+ await ctx.persistence.deleteNamespace(namespace, ctx);
46
+ }
47
+ }
48
+ }
49
+ return context;
50
+ }
51
+ export async function importPersistence(ctx, exportedData) {
52
+ var _a;
53
+ ctx.log('info', 'Importing data from export');
54
+ // open persistence at the version of the import
55
+ const exportedSchema = (_a = ctx.oldSchemas) === null || _a === void 0 ? void 0 : _a.find((s) => s.version === exportedData.data.schemaVersion);
56
+ if (!exportedSchema) {
57
+ // this means the user hasn't upgraded their CLI/client to include old schemas, or
58
+ // this exported data comes from a version which has since been shortcut.
59
+ throw new Error(`Could not find schema for version ${exportedData.data.schemaVersion}`);
60
+ }
61
+ // using a new namespace to put all of this into a temporary zone
62
+ const importedNamespace = `@@import_${Date.now()}`;
63
+ const importedContext = await initializePersistence(Object.assign(Object.assign({}, ctx), { schema: exportedSchema, namespace: importedNamespace, originalNamespace: importedNamespace,
64
+ // no-op entity events -- don't need to inform queries of changes.
65
+ entityEvents: new EventSubscriber(), config: Object.assign(Object.assign({}, ctx.config), { persistence: Object.assign(Object.assign({}, ctx.config.persistence), { disableRebasing: true }) }) }));
66
+ // load imported data into persistence
67
+ await importedContext.meta.resetFrom(exportedData.data);
68
+ // need to write indexes here!
69
+ const affectedOids = new Set();
70
+ for (const baseline of exportedData.data.baselines) {
71
+ affectedOids.add(getOidRoot(baseline.oid));
72
+ }
73
+ for (const operation of exportedData.data.operations) {
74
+ affectedOids.add(getOidRoot(operation.oid));
75
+ }
76
+ const toSave = await Promise.all(Array.from(affectedOids).map(async (oid) => {
77
+ const snapshot = await importedContext.meta.getDocumentSnapshot(oid);
78
+ return {
79
+ oid,
80
+ getSnapshot: () => snapshot,
81
+ };
82
+ }));
83
+ await importedContext.queries.saveEntities(toSave);
84
+ await importedContext.files.import(exportedData);
85
+ ctx.log('debug', 'Imported data into temporary namespace', importedNamespace);
86
+ // shut down the imported databases
87
+ await importedContext.queries.dispose();
88
+ await importedContext.meta.dispose();
89
+ await importedContext.files.dispose();
90
+ if (exportedSchema.version !== ctx.schema.version) {
91
+ // an upgrade of the imported data is needed ; it's an older version
92
+ // of the schema.
93
+ ctx.log('debug', 'Shut down imported databases');
94
+ // upgrade the imported data to the latest schema
95
+ const currentSchema = ctx.schema;
96
+ const upgradedContext = await initializePersistence(Object.assign(Object.assign({}, importedContext), { schema: currentSchema }));
97
+ ctx.log('debug', 'Upgraded imported data to current schema');
98
+ await upgradedContext.queries.dispose();
99
+ await upgradedContext.meta.dispose();
100
+ await upgradedContext.files.dispose();
101
+ ctx.log('debug', 'Shut down upgraded databases');
102
+ }
103
+ // copy the imported data into the current namespace
104
+ await ctx.persistence.copyNamespace(importedNamespace, ctx.namespace, ctx);
105
+ // verify integrity -- this can only be done if imported data was same
106
+ // version as current schema, because migrations could add or remove
107
+ // operations. still, it's a good sanity check.
108
+ if (exportedData.data.schemaVersion === ctx.schema.version) {
109
+ const stats = await ctx.meta.stats();
110
+ if (stats.operationsSize.count !== exportedData.data.operations.length) {
111
+ ctx.log('critical', 'Imported operations count mismatch', 'expected', exportedData.data.operations.length, 'actual', stats.operationsSize.count);
112
+ throw new VerdantError(VerdantError.Code.ImportFailed, undefined, 'Imported operations count mismatch');
113
+ }
114
+ if (stats.baselinesSize.count !== exportedData.data.baselines.length) {
115
+ ctx.log('critical', 'Imported documents count mismatch', 'expected', exportedData.data.baselines.length, 'actual', stats.baselinesSize.count);
116
+ throw new VerdantError(VerdantError.Code.ImportFailed, undefined, 'Imported documents count mismatch');
117
+ }
118
+ }
119
+ ctx.log('debug', 'Data copied to primary namespace');
120
+ // cleanup the imported namespace
121
+ await ctx.persistence.deleteNamespace(importedNamespace, ctx);
122
+ ctx.log('debug', 'Deleted temporary namespace');
123
+ ctx.internalEvents.emit('persistenceReset');
124
+ ctx.log('info', 'Data imported successfully');
125
+ }
126
+ //# sourceMappingURL=persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../src/persistence/persistence.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Context } from '../context.js';
1
+ import { Context } from '../context/context.js';
2
2
  import { Disposable } from '../utils/Disposable.js';
3
3
  export type BaseQueryEvents = {
4
4
  change: (value: any) => void;
@@ -53,4 +53,5 @@ export declare abstract class BaseQuery<T> extends Disposable {
53
53
  execute: () => Promise<T>;
54
54
  protected abstract run(): Promise<void>;
55
55
  [ON_ALL_UNSUBSCRIBED]: (handler: (query: BaseQuery<T>) => void) => void;
56
+ get __rawValue(): T;
56
57
  }
@@ -173,6 +173,9 @@ export class BaseQuery extends Disposable {
173
173
  throw new Error('Invalid invocation of Query.subscribe');
174
174
  }
175
175
  }
176
+ get __rawValue() {
177
+ return this._rawValue;
178
+ }
176
179
  }
177
180
  _a = ON_ALL_UNSUBSCRIBED;
178
181
  //# sourceMappingURL=BaseQuery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseQuery.js","sourceRoot":"","sources":["../../../src/queries/BaseQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseQuery.js","sourceRoot":"","sources":["../../../src/queries/BaseQuery.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { AuthorizationKey, CollectionFilter } from '@verdant-web/common';
2
- import { Context } from '../context.js';
2
+ import { Context } from '../context/context.js';
3
3
  import { EntityStore } from '../entities/EntityStore.js';
4
4
  import { GetQuery } from './GetQuery.js';
5
5
  import { QueryCache } from './QueryCache.js';
@@ -11,17 +11,15 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  };
12
12
  var _a;
13
13
  import { BaseQuery, UPDATE } from './BaseQuery.js';
14
- import { findAllOids } from './dbQueries.js';
15
14
  import { areIndexesEqual } from './utils.js';
16
15
  export class FindAllQuery extends BaseQuery {
17
16
  constructor(_b) {
18
17
  var { index, hydrate } = _b, rest = __rest(_b, ["index", "hydrate"]);
19
18
  super(Object.assign({ initial: [] }, rest));
20
19
  this.run = async () => {
21
- const oids = await findAllOids({
20
+ const { result: oids } = await this.context.queries.findAllOids({
22
21
  collection: this.collection,
23
22
  index: this.index,
24
- context: this.context,
25
23
  });
26
24
  this.context.log('debug', `FindAllQuery: ${oids.length} oids found: ${oids}`);
27
25
  this.setValue(await Promise.all(oids.map(this.hydrate)));
@@ -1 +1 @@
1
- {"version":3,"file":"FindAllQuery.js","sourceRoot":"","sources":["../../../src/queries/FindAllQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,YAAgB,SAAQ,SAAc;IAIlD,YAAY,EAO8B;YAP9B,EACX,KAAK,EACL,OAAO,OAKkC,EAJtC,IAAI,cAHI,oBAIX,CADO;QAKP,KAAK,iBACJ,OAAO,EAAE,EAAE,IACR,IAAI,EACN,CAAC;QAKM,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;gBAC9B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,OAAO,EACP,iBAAiB,IAAI,CAAC,MAAM,gBAAgB,IAAI,EAAE,CAClD,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QArBD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CAoBD;KALC,MAAM"}
1
+ {"version":3,"file":"FindAllQuery.js","sourceRoot":"","sources":["../../../src/queries/FindAllQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,YAAgB,SAAQ,SAAc;IAIlD,YAAY,EAO8B;YAP9B,EACX,KAAK,EACL,OAAO,OAKkC,EAJtC,IAAI,cAHI,oBAIX,CADO;QAKP,KAAK,iBACJ,OAAO,EAAE,EAAE,IACR,IAAI,EACN,CAAC;QAKM,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC/D,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,OAAO,EACP,iBAAiB,IAAI,CAAC,MAAM,gBAAgB,IAAI,EAAE,CAClD,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QApBD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CAmBD;KALC,MAAM"}
@@ -11,7 +11,6 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  };
12
12
  var _a;
13
13
  import { BaseQuery, UPDATE } from './BaseQuery.js';
14
- import { findPageOfOids } from './dbQueries.js';
15
14
  import { areIndexesEqual } from './utils.js';
16
15
  export class FindInfiniteQuery extends BaseQuery {
17
16
  get pageSize() {
@@ -26,9 +25,8 @@ export class FindInfiniteQuery extends BaseQuery {
26
25
  this._upToPage = 1;
27
26
  this._hasNextPage = false;
28
27
  this.run = async () => {
29
- const { result, hasNextPage } = await findPageOfOids({
28
+ const { result, hasNextPage } = await this.context.queries.findAllOids({
30
29
  collection: this.collection,
31
- context: this.context,
32
30
  limit: this._pageSize * this._upToPage,
33
31
  offset: 0,
34
32
  index: this.index,
@@ -37,9 +35,8 @@ export class FindInfiniteQuery extends BaseQuery {
37
35
  this.setValue(await Promise.all(result.map(this.hydrate)));
38
36
  };
39
37
  this.loadMore = async () => {
40
- const { result, hasNextPage } = await findPageOfOids({
38
+ const { result, hasNextPage } = await this.context.queries.findAllOids({
41
39
  collection: this.collection,
42
- context: this.context,
43
40
  limit: this._pageSize,
44
41
  offset: this._pageSize * this._upToPage,
45
42
  index: this.index,
@@ -1 +1 @@
1
- {"version":3,"file":"FindInfiniteQuery.js","sourceRoot":"","sources":["../../../src/queries/FindInfiniteQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,iBAAqB,SAAQ,SAAc;IAOvD,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,YAAY,EAS8B;YAT9B,EACX,OAAO,EACP,QAAQ,EACR,KAAK,OAMoC,EALtC,IAAI,cAJI,gCAKX,CADO;QAMP,KAAK,iBACJ,OAAO,EAAE,EAAE,IACR,IAAI,EACN,CAAC;QAzBI,cAAS,GAAG,CAAC,CAAC;QAEd,iBAAY,GAAY,KAAK,CAAC;QA6B5B,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAAC;gBACpD,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;gBACtC,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,IAAI,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEK,aAAQ,GAAG,KAAK,IAAI,EAAE;YAC5B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAAC;gBACpD,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;gBACvC,KAAK,EAAE,IAAI,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;aAChD,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QArCD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC3B,CAAC;CAmCD;KALC,MAAM"}
1
+ {"version":3,"file":"FindInfiniteQuery.js","sourceRoot":"","sources":["../../../src/queries/FindInfiniteQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,iBAAqB,SAAQ,SAAc;IAOvD,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,YAAY,EAS8B;YAT9B,EACX,OAAO,EACP,QAAQ,EACR,KAAK,OAMoC,EALtC,IAAI,cAJI,gCAKX,CADO;QAMP,KAAK,iBACJ,OAAO,EAAE,EAAE,IACR,IAAI,EACN,CAAC;QAzBI,cAAS,GAAG,CAAC,CAAC;QAEd,iBAAY,GAAY,KAAK,CAAC;QA6B5B,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBACtE,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;gBACtC,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,IAAI,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEK,aAAQ,GAAG,KAAK,IAAI,EAAE;YAC5B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBACtE,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;gBACvC,KAAK,EAAE,IAAI,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;aAChD,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QAnCD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC3B,CAAC;CAiCD;KALC,MAAM"}
@@ -11,17 +11,15 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  };
12
12
  var _a;
13
13
  import { BaseQuery, UPDATE } from './BaseQuery.js';
14
- import { findOneOid } from './dbQueries.js';
15
14
  import { areIndexesEqual } from './utils.js';
16
15
  export class FindOneQuery extends BaseQuery {
17
16
  constructor(_b) {
18
17
  var { index, hydrate } = _b, rest = __rest(_b, ["index", "hydrate"]);
19
18
  super(Object.assign({ initial: null }, rest));
20
19
  this.run = async () => {
21
- const oid = await findOneOid({
20
+ const oid = await this.context.queries.findOneOid({
22
21
  collection: this.collection,
23
22
  index: this.index,
24
- context: this.context,
25
23
  });
26
24
  this.setValue(oid ? await this.hydrate(oid) : null);
27
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FindOneQuery.js","sourceRoot":"","sources":["../../../src/queries/FindOneQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,YAAgB,SAAQ,SAAmB;IAIvD,YAAY,EAOmC;YAPnC,EACX,KAAK,EACL,OAAO,OAKuC,EAJ3C,IAAI,cAHI,oBAIX,CADO;QAKP,KAAK,iBACJ,OAAO,EAAE,IAAI,IACV,IAAI,EACN,CAAC;QAKM,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC;gBAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QAjBD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CAgBD;KALC,MAAM"}
1
+ {"version":3,"file":"FindOneQuery.js","sourceRoot":"","sources":["../../../src/queries/FindOneQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,YAAgB,SAAQ,SAAmB;IAIvD,YAAY,EAOmC;YAPnC,EACX,KAAK,EACL,OAAO,OAKuC,EAJ3C,IAAI,cAHI,oBAIX,CADO;QAKP,KAAK,iBACJ,OAAO,EAAE,IAAI,IACV,IAAI,EACN,CAAC;QAKM,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;gBACjD,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QAhBD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CAeD;KALC,MAAM"}
@@ -11,7 +11,6 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  };
12
12
  var _a;
13
13
  import { BaseQuery, UPDATE } from './BaseQuery.js';
14
- import { findPageOfOids } from './dbQueries.js';
15
14
  import { areIndexesEqual } from './utils.js';
16
15
  export class FindPageQuery extends BaseQuery {
17
16
  get pageSize() {
@@ -31,10 +30,9 @@ export class FindPageQuery extends BaseQuery {
31
30
  super(Object.assign({ initial: [] }, rest));
32
31
  this._hasNextPage = false;
33
32
  this.run = async () => {
34
- const { result, hasNextPage } = await findPageOfOids({
33
+ const { result, hasNextPage } = await this.context.queries.findAllOids({
35
34
  collection: this.collection,
36
35
  index: this.index,
37
- context: this.context,
38
36
  limit: this._pageSize,
39
37
  offset: this._page * this._pageSize,
40
38
  });
@@ -1 +1 @@
1
- {"version":3,"file":"FindPageQuery.js","sourceRoot":"","sources":["../../../src/queries/FindPageQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,aAAiB,SAAQ,SAAc;IAOnD,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,YAAY,EAW8B;YAX9B,EACX,KAAK,EACL,OAAO,EACP,QAAQ,EACR,IAAI,OAOqC,EANtC,IAAI,cALI,wCAMX,CADO;QAOP,KAAK,iBACJ,OAAO,EAAE,EAAE,IACR,IAAI,EACN,CAAC;QAjCI,iBAAY,GAAY,KAAK,CAAC;QAwC5B,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,CAAC;gBACpD,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS;aACnC,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEF,aAAQ,GAAG,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,OAAO;YAE9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,iBAAY,GAAG,KAAK,IAAI,EAAE;YACzB,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;gBAAE,OAAO;YAE7B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;YAChC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QAzCD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACnB,CAAC;CAsCD;KALC,MAAM"}
1
+ {"version":3,"file":"FindPageQuery.js","sourceRoot":"","sources":["../../../src/queries/FindPageQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,aAAiB,SAAQ,SAAc;IAOnD,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,IAAI,eAAe;QAClB,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,YAAY,EAW8B;YAX9B,EACX,KAAK,EACL,OAAO,EACP,QAAQ,EACR,IAAI,OAOqC,EANtC,IAAI,cALI,wCAMX,CADO;QAOP,KAAK,iBACJ,OAAO,EAAE,EAAE,IACR,IAAI,EACN,CAAC;QAjCI,iBAAY,GAAY,KAAK,CAAC;QAwC5B,QAAG,GAAG,KAAK,IAAI,EAAE;YAC1B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBACtE,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS;aACnC,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEF,aAAQ,GAAG,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,OAAO;YAE9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,iBAAY,GAAG,KAAK,IAAI,EAAE;YACzB,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;gBAAE,OAAO;YAE7B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;YAChC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,QAAQ,GAAG,CAAC,KAAmC,EAAE,EAAE;YAClD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,OAAO;YAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,CAAC;QAxCD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACnB,CAAC;CAqCD;KALC,MAAM"}
@@ -1,4 +1,4 @@
1
- import { Context } from '../context.js';
1
+ import { Context } from '../context/context.js';
2
2
  import { Disposable } from '../utils/Disposable.js';
3
3
  import { BaseQuery } from './BaseQuery.js';
4
4
  export declare class QueryCache extends Disposable {
@@ -16,14 +16,17 @@ export class QueryCache extends Disposable {
16
16
  }, this._evictionTime);
17
17
  };
18
18
  this.dropAll = () => {
19
+ this.context.log('debug', 'QueryCache: drop all', this._cache.size, 'queries');
19
20
  this._cache.forEach((query) => query.dispose());
20
21
  this._cache.clear();
21
22
  };
22
23
  this.forceRefreshAll = () => {
24
+ this.context.log('debug', 'QueryCache: force refresh all', this._cache.size, 'queries');
23
25
  this._cache.forEach((q) => q.execute());
24
26
  };
25
27
  this._evictionTime = evictionTime;
26
28
  this.context = context;
29
+ this.addDispose(this.context.internalEvents.subscribe('persistenceReset', this.forceRefreshAll));
27
30
  }
28
31
  get(key) {
29
32
  return this._cache.get(key) || null;
@@ -39,6 +42,7 @@ export class QueryCache extends Disposable {
39
42
  update === null || update === void 0 ? void 0 : update(existing);
40
43
  return existing;
41
44
  }
45
+ this.context.log('debug', 'QueryCache: creating new query', key);
42
46
  return this.set(create());
43
47
  }
44
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"QueryCache.js","sourceRoot":"","sources":["../../../src/queries/QueryCache.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAa,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,OAAO,UAAW,SAAQ,UAAU;IAKzC,YAAY,EACX,YAAY,GAAG,CAAC,GAAG,IAAI,EACvB,OAAO,GAIP;QACA,KAAK,EAAE,CAAC;QAXD,WAAM,GAAgC,IAAI,GAAG,EAAE,CAAC;QAwChD,wBAAmB,GAAG,CAAC,KAAqB,EAAE,EAAE;YACvD,UAAU,CAAC,GAAG,EAAE;gBACf,IAAI,KAAK,CAAC,UAAU;oBAAE,OAAO;gBAC7B,qDAAqD;gBACrD,yCAAyC;gBACzC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;oBAC1C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/B,CAAC;YACF,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACxB,CAAC,CAAC;QAEF,YAAO,GAAG,GAAG,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC;QAEF,oBAAe,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC;QA7CD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,GAAG,CAA2B,GAAW;QACxC,OAAQ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAO,IAAI,IAAI,CAAC;IAC5C,CAAC;IAED,GAAG,CAA2B,KAAQ;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAClC,KAAK,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,QAAQ,CACP,GAAW,EACX,MAAe,EACf,MAA2B;QAE3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAI,GAAG,CAAC,CAAC;QAClC,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,QAAQ,CAAC,CAAC;YACnB,OAAO,QAAQ,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3B,CAAC;CAqBD"}
1
+ {"version":3,"file":"QueryCache.js","sourceRoot":"","sources":["../../../src/queries/QueryCache.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAa,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,OAAO,UAAW,SAAQ,UAAU;IAKzC,YAAY,EACX,YAAY,GAAG,CAAC,GAAG,IAAI,EACvB,OAAO,GAIP;QACA,KAAK,EAAE,CAAC;QAXD,WAAM,GAAgC,IAAI,GAAG,EAAE,CAAC;QA+ChD,wBAAmB,GAAG,CAAC,KAAqB,EAAE,EAAE;YACvD,UAAU,CAAC,GAAG,EAAE;gBACf,IAAI,KAAK,CAAC,UAAU;oBAAE,OAAO;gBAC7B,qDAAqD;gBACrD,yCAAyC;gBACzC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;oBAC1C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/B,CAAC;YACF,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACxB,CAAC,CAAC;QAEF,YAAO,GAAG,GAAG,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,OAAO,EACP,sBAAsB,EACtB,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,SAAS,CACT,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC;QAEF,oBAAe,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,OAAO,EACP,+BAA+B,EAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,SAAS,CACT,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC;QAhED,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,CACd,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CACpC,kBAAkB,EAClB,IAAI,CAAC,eAAe,CACpB,CACD,CAAC;IACH,CAAC;IAED,GAAG,CAA2B,GAAW;QACxC,OAAQ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAO,IAAI,IAAI,CAAC;IAC5C,CAAC;IAED,GAAG,CAA2B,KAAQ;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAClC,KAAK,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,QAAQ,CACP,GAAW,EACX,MAAe,EACf,MAA2B;QAE3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAI,GAAG,CAAC,CAAC;QAClC,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,QAAQ,CAAC,CAAC;YACnB,OAAO,QAAQ,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,gCAAgC,EAAE,GAAG,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3B,CAAC;CAiCD"}