mindoodb 0.0.3 → 0.0.5

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 (214) hide show
  1. package/README-server.md +1030 -0
  2. package/README.md +14 -26
  3. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts +27 -0
  4. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts.map +1 -1
  5. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js +270 -121
  6. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js.map +1 -1
  7. package/dist/appendonlystores/network/HttpTransport.d.ts +15 -0
  8. package/dist/appendonlystores/network/HttpTransport.d.ts.map +1 -1
  9. package/dist/appendonlystores/network/HttpTransport.js +235 -10
  10. package/dist/appendonlystores/network/HttpTransport.js.map +1 -1
  11. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts +5 -0
  12. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts.map +1 -1
  13. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js +40 -4
  14. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js.map +1 -1
  15. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts +10 -3
  16. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts.map +1 -1
  17. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js +138 -13
  18. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js.map +1 -1
  19. package/dist/browser/cache/IndexedDBLocalCacheStore.d.ts +21 -0
  20. package/dist/browser/cache/IndexedDBLocalCacheStore.d.ts.map +1 -0
  21. package/dist/browser/cache/IndexedDBLocalCacheStore.js +106 -0
  22. package/dist/browser/cache/IndexedDBLocalCacheStore.js.map +1 -0
  23. package/dist/browser/index.d.ts +3 -0
  24. package/dist/browser/index.d.ts.map +1 -1
  25. package/dist/browser/index.js +9 -1
  26. package/dist/browser/index.js.map +1 -1
  27. package/dist/core/BaseMindooDB.d.ts +108 -13
  28. package/dist/core/BaseMindooDB.d.ts.map +1 -1
  29. package/dist/core/BaseMindooDB.js +1268 -292
  30. package/dist/core/BaseMindooDB.js.map +1 -1
  31. package/dist/core/BaseMindooTenant.d.ts +31 -1
  32. package/dist/core/BaseMindooTenant.d.ts.map +1 -1
  33. package/dist/core/BaseMindooTenant.js +212 -129
  34. package/dist/core/BaseMindooTenant.js.map +1 -1
  35. package/dist/core/BaseMindooTenantDirectory.d.ts +13 -10
  36. package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
  37. package/dist/core/BaseMindooTenantDirectory.js +134 -27
  38. package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
  39. package/dist/core/BaseMindooTenantFactory.d.ts +5 -1
  40. package/dist/core/BaseMindooTenantFactory.d.ts.map +1 -1
  41. package/dist/core/BaseMindooTenantFactory.js +46 -69
  42. package/dist/core/BaseMindooTenantFactory.js.map +1 -1
  43. package/dist/core/MindooDBServerAdmin.d.ts +241 -0
  44. package/dist/core/MindooDBServerAdmin.d.ts.map +1 -0
  45. package/dist/core/MindooDBServerAdmin.js +401 -0
  46. package/dist/core/MindooDBServerAdmin.js.map +1 -0
  47. package/dist/core/appendonlystores/AttachmentReadPlanner.d.ts +22 -0
  48. package/dist/core/appendonlystores/AttachmentReadPlanner.d.ts.map +1 -0
  49. package/dist/core/appendonlystores/AttachmentReadPlanner.js +124 -0
  50. package/dist/core/appendonlystores/AttachmentReadPlanner.js.map +1 -0
  51. package/dist/core/appendonlystores/InMemoryContentAddressedStore.d.ts +10 -4
  52. package/dist/core/appendonlystores/InMemoryContentAddressedStore.d.ts.map +1 -1
  53. package/dist/core/appendonlystores/InMemoryContentAddressedStore.js +44 -9
  54. package/dist/core/appendonlystores/InMemoryContentAddressedStore.js.map +1 -1
  55. package/dist/core/appendonlystores/MaterializationPlanner.d.ts +84 -0
  56. package/dist/core/appendonlystores/MaterializationPlanner.d.ts.map +1 -0
  57. package/dist/core/appendonlystores/MaterializationPlanner.js +326 -0
  58. package/dist/core/appendonlystores/MaterializationPlanner.js.map +1 -0
  59. package/dist/core/appendonlystores/network/NetworkTransport.d.ts +33 -0
  60. package/dist/core/appendonlystores/network/NetworkTransport.d.ts.map +1 -1
  61. package/dist/core/appendonlystores/network/types.d.ts +35 -0
  62. package/dist/core/appendonlystores/network/types.d.ts.map +1 -1
  63. package/dist/core/appendonlystores/network/types.js +2 -0
  64. package/dist/core/appendonlystores/network/types.js.map +1 -1
  65. package/dist/core/appendonlystores/types.d.ts +174 -3
  66. package/dist/core/appendonlystores/types.d.ts.map +1 -1
  67. package/dist/core/cache/CacheManager.d.ts +75 -0
  68. package/dist/core/cache/CacheManager.d.ts.map +1 -0
  69. package/dist/core/cache/CacheManager.js +101 -0
  70. package/dist/core/cache/CacheManager.js.map +1 -0
  71. package/dist/core/cache/EncryptedLocalCacheStore.d.ts +41 -0
  72. package/dist/core/cache/EncryptedLocalCacheStore.d.ts.map +1 -0
  73. package/dist/core/cache/EncryptedLocalCacheStore.js +120 -0
  74. package/dist/core/cache/EncryptedLocalCacheStore.js.map +1 -0
  75. package/dist/core/cache/LocalCacheStore.d.ts +50 -0
  76. package/dist/core/cache/LocalCacheStore.d.ts.map +1 -0
  77. package/dist/core/cache/LocalCacheStore.js +39 -0
  78. package/dist/core/cache/LocalCacheStore.js.map +1 -0
  79. package/dist/core/crypto/privateKeyEncryption.d.ts +5 -0
  80. package/dist/core/crypto/privateKeyEncryption.d.ts.map +1 -0
  81. package/dist/core/crypto/privateKeyEncryption.js +87 -0
  82. package/dist/core/crypto/privateKeyEncryption.js.map +1 -0
  83. package/dist/core/index.d.ts +13 -6
  84. package/dist/core/index.d.ts.map +1 -1
  85. package/dist/core/index.js +13 -1
  86. package/dist/core/index.js.map +1 -1
  87. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.d.ts +4 -1
  88. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.d.ts.map +1 -1
  89. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.js +39 -11
  90. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.js.map +1 -1
  91. package/dist/core/indexing/virtualviews/ViewEntrySortKeyComparator.d.ts +1 -0
  92. package/dist/core/indexing/virtualviews/ViewEntrySortKeyComparator.d.ts.map +1 -1
  93. package/dist/core/indexing/virtualviews/ViewEntrySortKeyComparator.js +3 -0
  94. package/dist/core/indexing/virtualviews/ViewEntrySortKeyComparator.js.map +1 -1
  95. package/dist/core/indexing/virtualviews/VirtualView.d.ts +43 -0
  96. package/dist/core/indexing/virtualviews/VirtualView.d.ts.map +1 -1
  97. package/dist/core/indexing/virtualviews/VirtualView.js +173 -0
  98. package/dist/core/indexing/virtualviews/VirtualView.js.map +1 -1
  99. package/dist/core/indexing/virtualviews/VirtualViewEntryData.d.ts +7 -0
  100. package/dist/core/indexing/virtualviews/VirtualViewEntryData.d.ts.map +1 -1
  101. package/dist/core/indexing/virtualviews/VirtualViewEntryData.js +28 -0
  102. package/dist/core/indexing/virtualviews/VirtualViewEntryData.js.map +1 -1
  103. package/dist/core/keys/KeyBag.d.ts +38 -14
  104. package/dist/core/keys/KeyBag.d.ts.map +1 -1
  105. package/dist/core/keys/KeyBag.js +102 -76
  106. package/dist/core/keys/KeyBag.js.map +1 -1
  107. package/dist/core/keys/KeyContext.d.ts +3 -3
  108. package/dist/core/keys/KeyContext.d.ts.map +1 -1
  109. package/dist/core/keys/KeyContext.js +10 -4
  110. package/dist/core/keys/KeyContext.js.map +1 -1
  111. package/dist/core/types.d.ts +341 -22
  112. package/dist/core/types.d.ts.map +1 -1
  113. package/dist/core/types.js +7 -1
  114. package/dist/core/types.js.map +1 -1
  115. package/dist/core/utils/idGeneration.d.ts.map +1 -1
  116. package/dist/core/utils/idGeneration.js +37 -3
  117. package/dist/core/utils/idGeneration.js.map +1 -1
  118. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts +31 -7
  119. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts.map +1 -1
  120. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js +139 -17
  121. package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js.map +1 -1
  122. package/dist/node/attachments/writeAttachmentToFile.d.ts +15 -0
  123. package/dist/node/attachments/writeAttachmentToFile.d.ts.map +1 -0
  124. package/dist/node/attachments/writeAttachmentToFile.js +73 -0
  125. package/dist/node/attachments/writeAttachmentToFile.js.map +1 -0
  126. package/dist/node/cache/FileSystemLocalCacheStore.d.ts +17 -0
  127. package/dist/node/cache/FileSystemLocalCacheStore.d.ts.map +1 -0
  128. package/dist/node/cache/FileSystemLocalCacheStore.js +128 -0
  129. package/dist/node/cache/FileSystemLocalCacheStore.js.map +1 -0
  130. package/dist/node/cli/change-identity-password.d.ts +7 -0
  131. package/dist/node/cli/change-identity-password.d.ts.map +1 -0
  132. package/dist/node/cli/change-identity-password.js +67 -0
  133. package/dist/node/cli/change-identity-password.js.map +1 -0
  134. package/dist/node/cli/cli-utils.d.ts +16 -0
  135. package/dist/node/cli/cli-utils.d.ts.map +1 -0
  136. package/dist/node/cli/cli-utils.js +113 -0
  137. package/dist/node/cli/cli-utils.js.map +1 -0
  138. package/dist/node/cli/identity-export-public.d.ts +4 -0
  139. package/dist/node/cli/identity-export-public.d.ts.map +1 -0
  140. package/dist/node/cli/identity-export-public.js +55 -0
  141. package/dist/node/cli/identity-export-public.js.map +1 -0
  142. package/dist/node/cli/identity-info.d.ts +4 -0
  143. package/dist/node/cli/identity-info.d.ts.map +1 -0
  144. package/dist/node/cli/identity-info.js +57 -0
  145. package/dist/node/cli/identity-info.js.map +1 -0
  146. package/dist/node/index.d.ts +1 -0
  147. package/dist/node/index.d.ts.map +1 -1
  148. package/dist/node/index.js +4 -1
  149. package/dist/node/index.js.map +1 -1
  150. package/dist/node/server/CapabilityMatcher.d.ts +45 -0
  151. package/dist/node/server/CapabilityMatcher.d.ts.map +1 -0
  152. package/dist/node/server/CapabilityMatcher.js +117 -0
  153. package/dist/node/server/CapabilityMatcher.js.map +1 -0
  154. package/dist/node/server/MindooDBServer.d.ts +94 -0
  155. package/dist/node/server/MindooDBServer.d.ts.map +1 -0
  156. package/dist/node/server/MindooDBServer.js +1256 -0
  157. package/dist/node/server/MindooDBServer.js.map +1 -0
  158. package/dist/node/server/ServerSync.d.ts +41 -0
  159. package/dist/node/server/ServerSync.d.ts.map +1 -0
  160. package/dist/node/server/ServerSync.js +187 -0
  161. package/dist/node/server/ServerSync.js.map +1 -0
  162. package/dist/node/server/StoreFactory.d.ts +45 -0
  163. package/dist/node/server/StoreFactory.d.ts.map +1 -0
  164. package/dist/node/server/StoreFactory.js +89 -0
  165. package/dist/node/server/StoreFactory.js.map +1 -0
  166. package/dist/node/server/SystemAdminAuth.d.ts +65 -0
  167. package/dist/node/server/SystemAdminAuth.d.ts.map +1 -0
  168. package/dist/node/server/SystemAdminAuth.js +200 -0
  169. package/dist/node/server/SystemAdminAuth.js.map +1 -0
  170. package/dist/node/server/SystemIpAllowlist.d.ts +21 -0
  171. package/dist/node/server/SystemIpAllowlist.d.ts.map +1 -0
  172. package/dist/node/server/SystemIpAllowlist.js +210 -0
  173. package/dist/node/server/SystemIpAllowlist.js.map +1 -0
  174. package/dist/node/server/TenantManager.d.ts +100 -0
  175. package/dist/node/server/TenantManager.d.ts.map +1 -0
  176. package/dist/node/server/TenantManager.js +615 -0
  177. package/dist/node/server/TenantManager.js.map +1 -0
  178. package/dist/node/server/add-to-network.d.ts +20 -0
  179. package/dist/node/server/add-to-network.d.ts.map +1 -0
  180. package/dist/node/server/add-to-network.js +275 -0
  181. package/dist/node/server/add-to-network.js.map +1 -0
  182. package/dist/node/server/config.d.ts +51 -0
  183. package/dist/node/server/config.d.ts.map +1 -0
  184. package/dist/node/server/config.js +218 -0
  185. package/dist/node/server/config.js.map +1 -0
  186. package/dist/node/server/resolveServerPassword.d.ts +7 -0
  187. package/dist/node/server/resolveServerPassword.d.ts.map +1 -0
  188. package/dist/node/server/resolveServerPassword.js +25 -0
  189. package/dist/node/server/resolveServerPassword.js.map +1 -0
  190. package/dist/node/server/server.d.ts +22 -0
  191. package/dist/node/server/server.d.ts.map +1 -0
  192. package/dist/node/server/server.js +225 -0
  193. package/dist/node/server/server.js.map +1 -0
  194. package/dist/node/server/serverinit.d.ts +21 -0
  195. package/dist/node/server/serverinit.d.ts.map +1 -0
  196. package/dist/node/server/serverinit.js +317 -0
  197. package/dist/node/server/serverinit.js.map +1 -0
  198. package/dist/node/server/types.d.ts +167 -0
  199. package/dist/node/server/types.d.ts.map +1 -0
  200. package/dist/node/server/types.js +24 -0
  201. package/dist/node/server/types.js.map +1 -0
  202. package/dist/node/server/validation.d.ts +47 -0
  203. package/dist/node/server/validation.d.ts.map +1 -0
  204. package/dist/node/server/validation.js +114 -0
  205. package/dist/node/server/validation.js.map +1 -0
  206. package/dist/reactnative/cache/MMKVLocalCacheStore.d.ts +48 -0
  207. package/dist/reactnative/cache/MMKVLocalCacheStore.d.ts.map +1 -0
  208. package/dist/reactnative/cache/MMKVLocalCacheStore.js +113 -0
  209. package/dist/reactnative/cache/MMKVLocalCacheStore.js.map +1 -0
  210. package/dist/reactnative/index.d.ts +1 -0
  211. package/dist/reactnative/index.d.ts.map +1 -1
  212. package/dist/reactnative/index.js +4 -1
  213. package/dist/reactnative/index.js.map +1 -1
  214. package/package.json +15 -3
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InMemoryLocalCacheStore = void 0;
4
+ /**
5
+ * Trivial in-memory implementation of {@link LocalCacheStore}.
6
+ * Useful for tests and as a reference implementation.
7
+ */
8
+ class InMemoryLocalCacheStore {
9
+ constructor() {
10
+ this.data = new Map();
11
+ }
12
+ toKey(type, id) {
13
+ return `${type}\0${id}`;
14
+ }
15
+ async get(type, id) {
16
+ return this.data.get(this.toKey(type, id)) ?? null;
17
+ }
18
+ async put(type, id, value) {
19
+ this.data.set(this.toKey(type, id), value);
20
+ }
21
+ async delete(type, id) {
22
+ this.data.delete(this.toKey(type, id));
23
+ }
24
+ async list(type) {
25
+ const prefix = `${type}\0`;
26
+ const ids = [];
27
+ for (const key of this.data.keys()) {
28
+ if (key.startsWith(prefix)) {
29
+ ids.push(key.slice(prefix.length));
30
+ }
31
+ }
32
+ return ids;
33
+ }
34
+ async clear() {
35
+ this.data.clear();
36
+ }
37
+ }
38
+ exports.InMemoryLocalCacheStore = InMemoryLocalCacheStore;
39
+ //# sourceMappingURL=LocalCacheStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalCacheStore.js","sourceRoot":"","sources":["../../../src/core/cache/LocalCacheStore.ts"],"names":[],"mappings":";;;AAyCA;;;GAGG;AACH,MAAa,uBAAuB;IAApC;QACU,SAAI,GAA4B,IAAI,GAAG,EAAE,CAAC;IAgCpD,CAAC;IA9BS,KAAK,CAAC,IAAY,EAAE,EAAU;QACpC,OAAO,GAAG,IAAI,KAAK,EAAE,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,EAAU;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,EAAU,EAAE,KAAiB;QACnD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,EAAU;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAY;QACrB,MAAM,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC;QAC3B,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACnC,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;CACF;AAjCD,0DAiCC"}
@@ -0,0 +1,5 @@
1
+ import type { EncryptedPrivateKey } from "../types";
2
+ import type { CryptoAdapter } from "./CryptoAdapter";
3
+ export declare function encryptPrivateKey(cryptoAdapter: CryptoAdapter, privateKeyBytes: Uint8Array, password: string, saltString: string): Promise<EncryptedPrivateKey>;
4
+ export declare function decryptPrivateKey(cryptoAdapter: CryptoAdapter, encryptedKey: EncryptedPrivateKey, password: string, saltString: string): Promise<ArrayBuffer>;
5
+ //# sourceMappingURL=privateKeyEncryption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"privateKeyEncryption.d.ts","sourceRoot":"","sources":["../../../src/core/crypto/privateKeyEncryption.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAgCrD,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,UAAU,EAC3B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC,CA0D9B;AAED,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,mBAAmB,EACjC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,CAwCtB"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.encryptPrivateKey = encryptPrivateKey;
4
+ exports.decryptPrivateKey = decryptPrivateKey;
5
+ const pbkdf2Iterations_1 = require("./pbkdf2Iterations");
6
+ function uint8ArrayToBase64(bytes) {
7
+ let binary = "";
8
+ for (let i = 0; i < bytes.length; i++) {
9
+ binary += String.fromCharCode(bytes[i]);
10
+ }
11
+ return btoa(binary);
12
+ }
13
+ function base64ToUint8Array(base64) {
14
+ const binary = atob(base64);
15
+ const bytes = new Uint8Array(binary.length);
16
+ for (let i = 0; i < binary.length; i++) {
17
+ bytes[i] = binary.charCodeAt(i);
18
+ }
19
+ return bytes;
20
+ }
21
+ function buildCombinedSalt(saltBytes, saltString) {
22
+ const saltStringBytes = new TextEncoder().encode(saltString);
23
+ const combinedSalt = new Uint8Array(saltBytes.length + saltStringBytes.length);
24
+ combinedSalt.set(saltBytes);
25
+ combinedSalt.set(saltStringBytes, saltBytes.length);
26
+ return combinedSalt;
27
+ }
28
+ function toArrayBuffer(bytes) {
29
+ return bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
30
+ }
31
+ async function encryptPrivateKey(cryptoAdapter, privateKeyBytes, password, saltString) {
32
+ const subtle = cryptoAdapter.getSubtle();
33
+ const randomValues = cryptoAdapter.getRandomValues.bind(cryptoAdapter);
34
+ const salt = new Uint8Array(16);
35
+ randomValues(salt);
36
+ const iv = new Uint8Array(12);
37
+ randomValues(iv);
38
+ const combinedSalt = buildCombinedSalt(salt, saltString);
39
+ const passwordKey = await subtle.importKey("raw", new TextEncoder().encode(password), "PBKDF2", false, ["deriveBits", "deriveKey"]);
40
+ const iterations = (0, pbkdf2Iterations_1.resolvePbkdf2Iterations)(pbkdf2Iterations_1.DEFAULT_PBKDF2_ITERATIONS);
41
+ const derivedKey = await subtle.deriveKey({
42
+ name: "PBKDF2",
43
+ salt: toArrayBuffer(combinedSalt),
44
+ iterations,
45
+ hash: "SHA-256",
46
+ }, passwordKey, {
47
+ name: "AES-GCM",
48
+ length: 256,
49
+ }, false, ["encrypt"]);
50
+ const encrypted = await subtle.encrypt({
51
+ name: "AES-GCM",
52
+ iv,
53
+ tagLength: 128,
54
+ }, derivedKey, privateKeyBytes.buffer);
55
+ const encryptedArray = new Uint8Array(encrypted);
56
+ const tagLength = 16;
57
+ const ciphertext = encryptedArray.slice(0, encryptedArray.length - tagLength);
58
+ const tag = encryptedArray.slice(encryptedArray.length - tagLength);
59
+ return {
60
+ ciphertext: uint8ArrayToBase64(ciphertext),
61
+ iv: uint8ArrayToBase64(iv),
62
+ tag: uint8ArrayToBase64(tag),
63
+ salt: uint8ArrayToBase64(salt),
64
+ iterations,
65
+ };
66
+ }
67
+ async function decryptPrivateKey(cryptoAdapter, encryptedKey, password, saltString) {
68
+ const subtle = cryptoAdapter.getSubtle();
69
+ const ciphertext = base64ToUint8Array(encryptedKey.ciphertext);
70
+ const iv = base64ToUint8Array(encryptedKey.iv);
71
+ const tag = base64ToUint8Array(encryptedKey.tag);
72
+ const saltBytes = base64ToUint8Array(encryptedKey.salt);
73
+ const iterations = encryptedKey.iterations || (0, pbkdf2Iterations_1.resolvePbkdf2Iterations)(pbkdf2Iterations_1.DEFAULT_PBKDF2_ITERATIONS);
74
+ const combinedSalt = buildCombinedSalt(saltBytes, saltString);
75
+ const passwordKey = await subtle.importKey("raw", new TextEncoder().encode(password), { name: "PBKDF2" }, false, ["deriveBits", "deriveKey"]);
76
+ const derivedKey = await subtle.deriveKey({
77
+ name: "PBKDF2",
78
+ salt: toArrayBuffer(combinedSalt),
79
+ iterations,
80
+ hash: "SHA-256",
81
+ }, passwordKey, { name: "AES-GCM", length: 256 }, false, ["decrypt"]);
82
+ const ciphertextWithTag = new Uint8Array(ciphertext.length + tag.length);
83
+ ciphertextWithTag.set(ciphertext);
84
+ ciphertextWithTag.set(tag, ciphertext.length);
85
+ return subtle.decrypt({ name: "AES-GCM", iv: new Uint8Array(iv), tagLength: 128 }, derivedKey, new Uint8Array(ciphertextWithTag));
86
+ }
87
+ //# sourceMappingURL=privateKeyEncryption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"privateKeyEncryption.js","sourceRoot":"","sources":["../../../src/core/crypto/privateKeyEncryption.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,26 @@
1
1
  export * from "./types";
2
- export { PublicUserId, PrivateUserId } from "./userid";
2
+ export type { PublicUserId, PrivateUserId } from "./userid";
3
3
  export { BaseMindooDB } from "./BaseMindooDB";
4
4
  export { BaseMindooTenant } from "./BaseMindooTenant";
5
5
  export { BaseMindooTenantFactory } from "./BaseMindooTenantFactory";
6
- export { CryptoAdapter } from "./crypto/CryptoAdapter";
6
+ export { MindooDBServerAdmin, type MindooDBServerAdminOptions, type ServerConfig, type SystemAdminPrincipal, type ConfigBackupInfo, type ConfigBackupResponse, } from "./MindooDBServerAdmin";
7
+ export type { CryptoAdapter } from "./crypto/CryptoAdapter";
7
8
  export { RSAEncryption } from "./crypto/RSAEncryption";
8
9
  export { MindooDocSigner } from "./crypto/MindooDocSigner";
9
- export { KeyBag } from "./keys/KeyBag";
10
+ export { KeyBag, type KeyDetail } from "./keys/KeyBag";
10
11
  export { encodeMindooURI, decodeMindooURI, isMindooURI, type MindooURIType, type DecodedMindooURI, } from "./uri/MindooURI";
11
12
  export { SymmetricKeyNotFoundError } from "./errors";
13
+ export type { LocalCacheStore } from "./cache/LocalCacheStore";
14
+ export { InMemoryLocalCacheStore } from "./cache/LocalCacheStore";
15
+ export { EncryptedLocalCacheStore } from "./cache/EncryptedLocalCacheStore";
16
+ export { CacheManager, type ICacheable, type CacheManagerOptions } from "./cache/CacheManager";
12
17
  export { generateDocEntryId, generateDepsFingerprint, generateAttachmentChunkId, generateFileUuid7, generateChunkUuid7, parseDocEntryId, parseAttachmentChunkId, isDocEntryId, isAttachmentChunkId, extractDocIdFromEntryId, computeContentHash, } from "./utils";
13
- export { ContentAddressedStore, ContentAddressedStoreFactory, CreateStoreResult, OpenStoreOptions, StoreCompactionStatus, StoreScanCursor, StoreScanFilters, StoreScanResult, StoreIdBloomSummary, } from "./appendonlystores/types";
18
+ export { type ContentAddressedStore, type ContentAddressedStoreFactory, type CreateStoreResult, type OpenStoreOptions, type StoreCompactionStatus, type StoreScanCursor, type StoreScanFilters, type StoreScanResult, type StoreIdBloomSummary, type MaterializationPlanOptions, type MaterializationPlanDiagnostics, type DocumentMaterializationPlan, type DocumentMaterializationBatchPlan, } from "./appendonlystores/types";
14
19
  export { InMemoryContentAddressedStore, InMemoryContentAddressedStoreFactory } from "./appendonlystores/InMemoryContentAddressedStore";
15
20
  export { AuthenticationService } from "./appendonlystores/network/AuthenticationService";
16
- export { NetworkTransport, NetworkTransportConfig } from "./appendonlystores/network/NetworkTransport";
17
- export { NetworkEncryptedEntry, UserPublicKeys, NetworkAuthTokenPayload, AuthChallenge, AuthResult, NetworkSyncCapabilities, NetworkErrorType, NetworkError, } from "./appendonlystores/network/types";
21
+ export type { NetworkTransport, NetworkTransportConfig } from "./appendonlystores/network/NetworkTransport";
22
+ export { type NetworkEncryptedEntry, type UserPublicKeys, type NetworkAuthTokenPayload, type AuthChallenge, type AuthResult, type NetworkSyncCapabilities, NetworkErrorType, NetworkError, } from "./appendonlystores/network/types";
23
+ export { ClientNetworkContentAddressedStore } from "../appendonlystores/network/ClientNetworkContentAddressedStore";
24
+ export { HttpTransport } from "../appendonlystores/network/HttpTransport";
18
25
  export { VirtualView, VirtualViewFactory, VirtualViewBuilder, VirtualViewNavigatorBuilder, VirtualViewColumn, VirtualViewNavigator, VirtualViewEntryData, VirtualViewDataChange, MindooDBVirtualViewDataProvider, ColumnSorting, TotalMode, CategorizationStyle, WithCategories, WithDocuments, SelectedOnly, type VirtualViewColumnOptions, type IVirtualViewDataProvider, type MindooDBVirtualViewDataProviderOptions, type ScopedDocId, type ColumnValueFunction, type DocumentFilterFunction, } from "./indexing/virtualviews";
19
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAGA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,OAAO,EACL,eAAe,EACf,eAAe,EACf,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAGrD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,6BAA6B,EAAE,oCAAoC,EAAE,MAAM,kDAAkD,CAAC;AAGvI,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACvG,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EACvB,aAAa,EACb,UAAU,EACV,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,GACb,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAC/B,aAAa,EACb,SAAS,EACT,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,sCAAsC,EAC3C,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.SelectedOnly = exports.WithDocuments = exports.WithCategories = exports.CategorizationStyle = exports.TotalMode = exports.ColumnSorting = exports.MindooDBVirtualViewDataProvider = exports.VirtualViewDataChange = exports.VirtualViewEntryData = exports.VirtualViewNavigator = exports.VirtualViewColumn = exports.VirtualViewNavigatorBuilder = exports.VirtualViewBuilder = exports.VirtualViewFactory = exports.VirtualView = exports.NetworkError = exports.NetworkErrorType = exports.AuthenticationService = exports.InMemoryContentAddressedStoreFactory = exports.InMemoryContentAddressedStore = exports.computeContentHash = exports.extractDocIdFromEntryId = exports.isAttachmentChunkId = exports.isDocEntryId = exports.parseAttachmentChunkId = exports.parseDocEntryId = exports.generateChunkUuid7 = exports.generateFileUuid7 = exports.generateAttachmentChunkId = exports.generateDepsFingerprint = exports.generateDocEntryId = exports.SymmetricKeyNotFoundError = exports.isMindooURI = exports.decodeMindooURI = exports.encodeMindooURI = exports.KeyBag = exports.MindooDocSigner = exports.RSAEncryption = exports.BaseMindooTenantFactory = exports.BaseMindooTenant = exports.BaseMindooDB = void 0;
18
+ exports.SelectedOnly = exports.WithDocuments = exports.WithCategories = exports.CategorizationStyle = exports.TotalMode = exports.ColumnSorting = exports.MindooDBVirtualViewDataProvider = exports.VirtualViewDataChange = exports.VirtualViewEntryData = exports.VirtualViewNavigator = exports.VirtualViewColumn = exports.VirtualViewNavigatorBuilder = exports.VirtualViewBuilder = exports.VirtualViewFactory = exports.VirtualView = exports.HttpTransport = exports.ClientNetworkContentAddressedStore = exports.NetworkError = exports.NetworkErrorType = exports.AuthenticationService = exports.InMemoryContentAddressedStoreFactory = exports.InMemoryContentAddressedStore = exports.computeContentHash = exports.extractDocIdFromEntryId = exports.isAttachmentChunkId = exports.isDocEntryId = exports.parseAttachmentChunkId = exports.parseDocEntryId = exports.generateChunkUuid7 = exports.generateFileUuid7 = exports.generateAttachmentChunkId = exports.generateDepsFingerprint = exports.generateDocEntryId = exports.CacheManager = exports.EncryptedLocalCacheStore = exports.InMemoryLocalCacheStore = exports.SymmetricKeyNotFoundError = exports.isMindooURI = exports.decodeMindooURI = exports.encodeMindooURI = exports.KeyBag = exports.MindooDocSigner = exports.RSAEncryption = exports.MindooDBServerAdmin = exports.BaseMindooTenantFactory = exports.BaseMindooTenant = exports.BaseMindooDB = void 0;
19
19
  // Types
20
20
  __exportStar(require("./types"), exports);
21
21
  // Base classes
@@ -25,6 +25,8 @@ var BaseMindooTenant_1 = require("./BaseMindooTenant");
25
25
  Object.defineProperty(exports, "BaseMindooTenant", { enumerable: true, get: function () { return BaseMindooTenant_1.BaseMindooTenant; } });
26
26
  var BaseMindooTenantFactory_1 = require("./BaseMindooTenantFactory");
27
27
  Object.defineProperty(exports, "BaseMindooTenantFactory", { enumerable: true, get: function () { return BaseMindooTenantFactory_1.BaseMindooTenantFactory; } });
28
+ var MindooDBServerAdmin_1 = require("./MindooDBServerAdmin");
29
+ Object.defineProperty(exports, "MindooDBServerAdmin", { enumerable: true, get: function () { return MindooDBServerAdmin_1.MindooDBServerAdmin; } });
28
30
  var RSAEncryption_1 = require("./crypto/RSAEncryption");
29
31
  Object.defineProperty(exports, "RSAEncryption", { enumerable: true, get: function () { return RSAEncryption_1.RSAEncryption; } });
30
32
  var MindooDocSigner_1 = require("./crypto/MindooDocSigner");
@@ -40,6 +42,12 @@ Object.defineProperty(exports, "isMindooURI", { enumerable: true, get: function
40
42
  // Errors
41
43
  var errors_1 = require("./errors");
42
44
  Object.defineProperty(exports, "SymmetricKeyNotFoundError", { enumerable: true, get: function () { return errors_1.SymmetricKeyNotFoundError; } });
45
+ var LocalCacheStore_1 = require("./cache/LocalCacheStore");
46
+ Object.defineProperty(exports, "InMemoryLocalCacheStore", { enumerable: true, get: function () { return LocalCacheStore_1.InMemoryLocalCacheStore; } });
47
+ var EncryptedLocalCacheStore_1 = require("./cache/EncryptedLocalCacheStore");
48
+ Object.defineProperty(exports, "EncryptedLocalCacheStore", { enumerable: true, get: function () { return EncryptedLocalCacheStore_1.EncryptedLocalCacheStore; } });
49
+ var CacheManager_1 = require("./cache/CacheManager");
50
+ Object.defineProperty(exports, "CacheManager", { enumerable: true, get: function () { return CacheManager_1.CacheManager; } });
43
51
  // Utilities
44
52
  var utils_1 = require("./utils");
45
53
  Object.defineProperty(exports, "generateDocEntryId", { enumerable: true, get: function () { return utils_1.generateDocEntryId; } });
@@ -62,6 +70,10 @@ Object.defineProperty(exports, "AuthenticationService", { enumerable: true, get:
62
70
  var types_1 = require("./appendonlystores/network/types");
63
71
  Object.defineProperty(exports, "NetworkErrorType", { enumerable: true, get: function () { return types_1.NetworkErrorType; } });
64
72
  Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function () { return types_1.NetworkError; } });
73
+ var ClientNetworkContentAddressedStore_1 = require("../appendonlystores/network/ClientNetworkContentAddressedStore");
74
+ Object.defineProperty(exports, "ClientNetworkContentAddressedStore", { enumerable: true, get: function () { return ClientNetworkContentAddressedStore_1.ClientNetworkContentAddressedStore; } });
75
+ var HttpTransport_1 = require("../appendonlystores/network/HttpTransport");
76
+ Object.defineProperty(exports, "HttpTransport", { enumerable: true, get: function () { return HttpTransport_1.HttpTransport; } });
65
77
  // Indexing - Virtual Views
66
78
  var virtualviews_1 = require("./indexing/virtualviews");
67
79
  Object.defineProperty(exports, "VirtualView", { enumerable: true, get: function () { return virtualviews_1.VirtualView; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";AAAA,iCAAiC;;;;;;;;;;;;;;;;;AAEjC,QAAQ;AACR,0CAAwB;AAKxB,eAAe;AACf,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,qEAAoE;AAA3D,kIAAA,uBAAuB,OAAA;AAIhC,wDAAuD;AAA9C,8GAAA,aAAa,OAAA;AACtB,4DAA2D;AAAlD,kHAAA,eAAe,OAAA;AAExB,OAAO;AACP,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AAEf,MAAM;AACN,6CAMyB;AALvB,4GAAA,eAAe,OAAA;AACf,4GAAA,eAAe,OAAA;AACf,wGAAA,WAAW,OAAA;AAKb,SAAS;AACT,mCAAqD;AAA5C,mHAAA,yBAAyB,OAAA;AAElC,YAAY;AACZ,iCAYiB;AAXf,2GAAA,kBAAkB,OAAA;AAClB,gHAAA,uBAAuB,OAAA;AACvB,kHAAA,yBAAyB,OAAA;AACzB,0GAAA,iBAAiB,OAAA;AACjB,2GAAA,kBAAkB,OAAA;AAClB,wGAAA,eAAe,OAAA;AACf,+GAAA,sBAAsB,OAAA;AACtB,qGAAA,YAAY,OAAA;AACZ,4GAAA,mBAAmB,OAAA;AACnB,gHAAA,uBAAuB,OAAA;AACvB,2GAAA,kBAAkB,OAAA;AAepB,kGAAuI;AAA9H,8IAAA,6BAA6B,OAAA;AAAE,qJAAA,oCAAoC,OAAA;AAE5E,UAAU;AACV,0FAAyF;AAAhF,8HAAA,qBAAqB,OAAA;AAE9B,0DAS0C;AAFxC,yGAAA,gBAAgB,OAAA;AAChB,qGAAA,YAAY,OAAA;AAGd,2BAA2B;AAC3B,wDAsBiC;AArB/B,2GAAA,WAAW,OAAA;AACX,kHAAA,kBAAkB,OAAA;AAClB,kHAAA,kBAAkB,OAAA;AAClB,2HAAA,2BAA2B,OAAA;AAC3B,iHAAA,iBAAiB,OAAA;AACjB,oHAAA,oBAAoB,OAAA;AACpB,oHAAA,oBAAoB,OAAA;AACpB,qHAAA,qBAAqB,OAAA;AACrB,+HAAA,+BAA+B,OAAA;AAC/B,6GAAA,aAAa,OAAA;AACb,yGAAA,SAAS,OAAA;AACT,mHAAA,mBAAmB,OAAA;AACnB,8GAAA,cAAc,OAAA;AACd,6GAAA,aAAa,OAAA;AACb,4GAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";AAAA,iCAAiC;;;;;;;;;;;;;;;;;AAEjC,QAAQ;AACR,0CAAwB;AAKxB,eAAe;AACf,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,qEAAoE;AAA3D,kIAAA,uBAAuB,OAAA;AAEhC,6DAO+B;AAN7B,0HAAA,mBAAmB,OAAA;AAUrB,wDAAuD;AAA9C,8GAAA,aAAa,OAAA;AACtB,4DAA2D;AAAlD,kHAAA,eAAe,OAAA;AAExB,OAAO;AACP,wCAAuD;AAA9C,gGAAA,MAAM,OAAA;AAEf,MAAM;AACN,6CAMyB;AALvB,4GAAA,eAAe,OAAA;AACf,4GAAA,eAAe,OAAA;AACf,wGAAA,WAAW,OAAA;AAKb,SAAS;AACT,mCAAqD;AAA5C,mHAAA,yBAAyB,OAAA;AAIlC,2DAAkE;AAAzD,0HAAA,uBAAuB,OAAA;AAChC,6EAA4E;AAAnE,oIAAA,wBAAwB,OAAA;AACjC,qDAA+F;AAAtF,4GAAA,YAAY,OAAA;AAErB,YAAY;AACZ,iCAYiB;AAXf,2GAAA,kBAAkB,OAAA;AAClB,gHAAA,uBAAuB,OAAA;AACvB,kHAAA,yBAAyB,OAAA;AACzB,0GAAA,iBAAiB,OAAA;AACjB,2GAAA,kBAAkB,OAAA;AAClB,wGAAA,eAAe,OAAA;AACf,+GAAA,sBAAsB,OAAA;AACtB,qGAAA,YAAY,OAAA;AACZ,4GAAA,mBAAmB,OAAA;AACnB,gHAAA,uBAAuB,OAAA;AACvB,2GAAA,kBAAkB,OAAA;AAmBpB,kGAAuI;AAA9H,8IAAA,6BAA6B,OAAA;AAAE,qJAAA,oCAAoC,OAAA;AAE5E,UAAU;AACV,0FAAyF;AAAhF,8HAAA,qBAAqB,OAAA;AAE9B,0DAS0C;AAFxC,yGAAA,gBAAgB,OAAA;AAChB,qGAAA,YAAY,OAAA;AAEd,qHAAoH;AAA3G,wJAAA,kCAAkC,OAAA;AAC3C,2EAA0E;AAAjE,8GAAA,aAAa,OAAA;AAEtB,2BAA2B;AAC3B,wDAsBiC;AArB/B,2GAAA,WAAW,OAAA;AACX,kHAAA,kBAAkB,OAAA;AAClB,kHAAA,kBAAkB,OAAA;AAClB,2HAAA,2BAA2B,OAAA;AAC3B,iHAAA,iBAAiB,OAAA;AACjB,oHAAA,oBAAoB,OAAA;AACpB,oHAAA,oBAAoB,OAAA;AACpB,qHAAA,qBAAqB,OAAA;AACrB,+HAAA,+BAA+B,OAAA;AAC/B,6GAAA,aAAa,OAAA;AACb,yGAAA,SAAS,OAAA;AACT,mHAAA,mBAAmB,OAAA;AACnB,8GAAA,cAAc,OAAA;AACd,6GAAA,aAAa,OAAA;AACb,4GAAA,YAAY,OAAA"}
@@ -17,7 +17,8 @@ export interface MindooDBVirtualViewDataProviderOptions {
17
17
  }
18
18
  /**
19
19
  * Data provider that reads documents from a MindooDB and provides them
20
- * to a VirtualView. Uses iterateChangesSince for incremental updates.
20
+ * to a VirtualView. It uses metadata-first incremental updates so delete-only
21
+ * changes can be handled without materializing document bodies.
21
22
  */
22
23
  export declare class MindooDBVirtualViewDataProvider implements IVirtualViewDataProvider {
23
24
  private readonly origin;
@@ -48,5 +49,7 @@ export declare class MindooDBVirtualViewDataProvider implements IVirtualViewData
48
49
  * Get the number of documents currently tracked by this provider
49
50
  */
50
51
  getKnownDocCount(): number;
52
+ exportCacheState(): unknown;
53
+ importCacheState(state: unknown): void;
51
54
  }
52
55
  //# sourceMappingURL=MindooDBVirtualViewDataProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MindooDBVirtualViewDataProvider.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAa,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACrD,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IAEf,0CAA0C;IAC1C,EAAE,EAAE,QAAQ,CAAC;IAEb,oEAAoE;IACpE,cAAc,CAAC,EAAE,sBAAsB,CAAC;IAExC,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,+BAAgC,YAAW,wBAAwB;IAC9E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgC;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,MAAM,CAAqC;IAEnD,+DAA+D;IAC/D,OAAO,CAAC,WAAW,CAA0B;gBAEjC,OAAO,EAAE,sCAAsC;IAO3D,SAAS,IAAI,MAAM;IAInB,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAIvB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,SAAS,IAAI,oBAAoB,GAAG,IAAI;IAIxC;;OAEG;IACH,gBAAgB,IAAI,MAAM;CAG3B"}
1
+ {"version":3,"file":"MindooDBVirtualViewDataProvider.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAa,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACrD,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IAEf,0CAA0C;IAC1C,EAAE,EAAE,QAAQ,CAAC;IAEb,oEAAoE;IACpE,cAAc,CAAC,EAAE,sBAAsB,CAAC;IAExC,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,YAAW,wBAAwB;IAC9E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgC;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,MAAM,CAAqC;IAEnD,+DAA+D;IAC/D,OAAO,CAAC,WAAW,CAA0B;gBAEjC,OAAO,EAAE,sCAAsC;IAO3D,SAAS,IAAI,MAAM;IAInB,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAIvB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAkD7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,SAAS,IAAI,oBAAoB,GAAG,IAAI;IAIxC;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAQ1B,gBAAgB,IAAI,OAAO;IAO3B,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;CAOvC"}
@@ -4,7 +4,8 @@ exports.MindooDBVirtualViewDataProvider = void 0;
4
4
  const VirtualViewDataChange_1 = require("./VirtualViewDataChange");
5
5
  /**
6
6
  * Data provider that reads documents from a MindooDB and provides them
7
- * to a VirtualView. Uses iterateChangesSince for incremental updates.
7
+ * to a VirtualView. It uses metadata-first incremental updates so delete-only
8
+ * changes can be handled without materializing document bodies.
8
9
  */
9
10
  class MindooDBVirtualViewDataProvider {
10
11
  constructor(options) {
@@ -29,25 +30,36 @@ class MindooDBVirtualViewDataProvider {
29
30
  }
30
31
  const change = new VirtualViewDataChange_1.VirtualViewDataChange(this.origin);
31
32
  const columns = this.view.getColumns();
32
- // Process documents using iterateChangesSince for incremental updates
33
- for await (const { doc, cursor } of this.db.iterateChangesSince(this.cursor)) {
34
- const docId = doc.getId();
35
- const isDeleted = doc.isDeleted();
36
- // Check if document passes filter
37
- const passesFilter = !isDeleted && (!this.filterFunction || this.filterFunction(doc));
33
+ // Drive incremental updates from metadata first so deleted documents can be
34
+ // removed from the view without paying the cost to materialize them.
35
+ for await (const { docId, isDeleted, cursor } of this.db.iterateChangeMetadataSince(this.cursor)) {
36
+ if (isDeleted) {
37
+ if (this.knownDocIds.has(docId)) {
38
+ change.removeEntry(docId);
39
+ this.knownDocIds.delete(docId);
40
+ }
41
+ this.cursor = cursor;
42
+ continue;
43
+ }
44
+ const doc = await this.db.getDocument(docId);
45
+ if (!doc || doc.isDeleted()) {
46
+ if (this.knownDocIds.has(docId)) {
47
+ change.removeEntry(docId);
48
+ this.knownDocIds.delete(docId);
49
+ }
50
+ this.cursor = cursor;
51
+ continue;
52
+ }
53
+ const passesFilter = !this.filterFunction || this.filterFunction(doc);
38
54
  if (passesFilter) {
39
- // Document should be in the view
40
- // Compute column values
41
55
  const columnValues = this.computeColumnValues(doc, columns);
42
56
  change.addEntry(docId, columnValues);
43
57
  this.knownDocIds.add(docId);
44
58
  }
45
59
  else if (this.knownDocIds.has(docId)) {
46
- // Document was in the view but no longer matches (deleted or filter changed)
47
60
  change.removeEntry(docId);
48
61
  this.knownDocIds.delete(docId);
49
62
  }
50
- // Update cursor to track progress
51
63
  this.cursor = cursor;
52
64
  }
53
65
  // Apply changes to the view if there are any
@@ -101,6 +113,22 @@ class MindooDBVirtualViewDataProvider {
101
113
  getKnownDocCount() {
102
114
  return this.knownDocIds.size;
103
115
  }
116
+ // ---------------------------------------------------------------------------
117
+ // Cache serialization
118
+ // ---------------------------------------------------------------------------
119
+ exportCacheState() {
120
+ return {
121
+ cursor: this.cursor,
122
+ knownDocIds: Array.from(this.knownDocIds),
123
+ };
124
+ }
125
+ importCacheState(state) {
126
+ const s = state;
127
+ this.cursor = s.cursor ?? null;
128
+ if (s.knownDocIds) {
129
+ this.knownDocIds = new Set(s.knownDocIds);
130
+ }
131
+ }
104
132
  }
105
133
  exports.MindooDBVirtualViewDataProvider = MindooDBVirtualViewDataProvider;
106
134
  //# sourceMappingURL=MindooDBVirtualViewDataProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MindooDBVirtualViewDataProvider.js","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.ts"],"names":[],"mappings":";;;AAIA,mEAAgE;AAoBhE;;;GAGG;AACH,MAAa,+BAA+B;IAY1C,YAAY,OAA+C;QANnD,SAAI,GAAuB,IAAI,CAAC;QAChC,WAAM,GAAgC,IAAI,CAAC;QAEnD,+DAA+D;QACvD,gBAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;QAG3C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC;IAC1C,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,CAAC,IAAiB;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,6CAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAEvC,sEAAsE;QACtE,IAAI,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7E,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;YAElC,kCAAkC;YAClC,MAAM,YAAY,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;YAEtF,IAAI,YAAY,EAAE,CAAC;gBACjB,iCAAiC;gBACjC,wBAAwB;gBACxB,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBAC5D,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;gBACrC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;iBAAM,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,6EAA6E;gBAC7E,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBAC1B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;YAED,kCAAkC;YAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,CAAC;QAED,6CAA6C;QAC7C,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,GAAc,EACd,OAA4B;QAE5B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QAE9B,2CAA2C;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,uBAAuB;YACvB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;YACtC,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC7C,6EAA6E;gBAC7E,uEAAuE;gBACvE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/B,CAAC;CACF;AAvHD,0EAuHC"}
1
+ {"version":3,"file":"MindooDBVirtualViewDataProvider.js","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export declare class ViewEntrySortKeyComparator {
13
13
  /** Per-column descending flags for document sorting */
14
14
  private readonly docOrderPerColumnDescending;
15
15
  constructor(categorizationStyle: CategorizationStyle, categoryOrderDescending: boolean, docOrderPerColumnDescending: boolean[]);
16
+ getCategoryOrderDescending(): boolean;
16
17
  /**
17
18
  * Compare two sort keys for ordering
18
19
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ViewEntrySortKeyComparator.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/ViewEntrySortKeyComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,mBAAmB,EAMpB,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,qBAAa,0BAA0B;IACrC,wDAAwD;IACxD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAU;IAErD,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAU;IAElD,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAqB;gBAG/D,mBAAmB,EAAE,mBAAmB,EACxC,uBAAuB,EAAE,OAAO,EAChC,2BAA2B,EAAE,OAAO,EAAE;IAQxC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,gBAAgB,GAAG,MAAM;IAwB3D,OAAO,CAAC,iBAAiB;IA4CzB,OAAO,CAAC,gBAAgB;IAyCxB,OAAO,CAAC,qBAAqB;CA2B9B"}
1
+ {"version":3,"file":"ViewEntrySortKeyComparator.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/ViewEntrySortKeyComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,mBAAmB,EAMpB,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,qBAAa,0BAA0B;IACrC,wDAAwD;IACxD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAU;IAErD,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAU;IAElD,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAqB;gBAG/D,mBAAmB,EAAE,mBAAmB,EACxC,uBAAuB,EAAE,OAAO,EAChC,2BAA2B,EAAE,OAAO,EAAE;IAQxC,0BAA0B,IAAI,OAAO;IAIrC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,gBAAgB,GAAG,MAAM;IAwB3D,OAAO,CAAC,iBAAiB;IA4CzB,OAAO,CAAC,gBAAgB;IAyCxB,OAAO,CAAC,qBAAqB;CA2B9B"}
@@ -14,6 +14,9 @@ class ViewEntrySortKeyComparator {
14
14
  this.categoryOrderDescending = categoryOrderDescending;
15
15
  this.docOrderPerColumnDescending = Object.freeze([...docOrderPerColumnDescending]);
16
16
  }
17
+ getCategoryOrderDescending() {
18
+ return this.categoryOrderDescending;
19
+ }
17
20
  /**
18
21
  * Compare two sort keys for ordering
19
22
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ViewEntrySortKeyComparator.js","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/ViewEntrySortKeyComparator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewEntrySortKeyComparator.js","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/ViewEntrySortKeyComparator.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ import { VirtualViewEntryData } from "./VirtualViewEntryData";
3
3
  import { VirtualViewDataChange } from "./VirtualViewDataChange";
4
4
  import type { IVirtualViewDataProvider } from "./IVirtualViewDataProvider";
5
5
  import { CategorizationStyle } from "./types";
6
+ import type { LocalCacheStore } from "../../cache/LocalCacheStore";
7
+ import type { CacheManager } from "../../cache/CacheManager";
6
8
  /**
7
9
  * VirtualView creates a hierarchical, sorted view of documents from one or more MindooDB instances.
8
10
  * Documents are organized into categories (tree structure) with sorting and optional totals.
@@ -38,6 +40,10 @@ export declare class VirtualView {
38
40
  private pendingSiblingIndexFlush;
39
41
  /** Last index update timestamp */
40
42
  private lastIndexUpdateTime;
43
+ private cacheManager;
44
+ private viewCacheId;
45
+ private viewCacheVersion;
46
+ private isDirty;
41
47
  constructor(columns: VirtualViewColumn[]);
42
48
  /**
43
49
  * Set the categorization style
@@ -105,5 +111,42 @@ export declare class VirtualView {
105
111
  * Get all entries for a document ID
106
112
  */
107
113
  getEntries(origin: string, docId: string): VirtualViewEntryData[];
114
+ /**
115
+ * Configure caching for this VirtualView and attempt to restore from cache.
116
+ *
117
+ * @param cacheManager The CacheManager to register with
118
+ * @param viewId Stable identifier for this view
119
+ * @param version Schema/config version for cache invalidation
120
+ * @returns `true` if the view was successfully restored from cache
121
+ */
122
+ setCacheManager(cacheManager: CacheManager, viewId: string, version: string): Promise<boolean>;
123
+ getCachePrefix(): string;
124
+ hasDirtyState(): boolean;
125
+ clearDirty(): void;
126
+ /**
127
+ * Export the view state to the cache store.
128
+ */
129
+ flushToCache(store: LocalCacheStore): Promise<number>;
130
+ /**
131
+ * Serialize the entire tree structure for caching (version 2).
132
+ * Each node stores its sort key, column values, counts, totals,
133
+ * and children — so restoration is O(n) without re-sorting.
134
+ */
135
+ private exportCacheState;
136
+ private serializeNode;
137
+ /**
138
+ * Attempt to restore the view from cache. Returns true on success.
139
+ */
140
+ restoreFromCache(store: LocalCacheStore): Promise<boolean>;
141
+ /**
142
+ * Restore the full tree structure directly from a version-2 snapshot.
143
+ * O(n) — no re-sorting, no category re-creation, no count recalculation.
144
+ */
145
+ private restoreFromTreeSnapshot;
146
+ private deserializeNode;
147
+ /**
148
+ * Mark the view as dirty (call after applyChanges).
149
+ */
150
+ private markViewDirty;
108
151
  }
109
152
  //# sourceMappingURL=VirtualView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualView.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/VirtualView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VirtualView.d.ts","sourceRoot":"","sources":["../../../../src/core/indexing/virtualviews/VirtualView.ts"],"names":[],"mappings":"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"}