@powerhousedao/reactor 5.0.3 → 5.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 (232) hide show
  1. package/dist/src/cache/index.d.ts +3 -0
  2. package/dist/src/cache/index.d.ts.map +1 -0
  3. package/dist/src/cache/index.js +2 -0
  4. package/dist/src/cache/index.js.map +1 -0
  5. package/dist/src/cache/kysely-operation-index.d.ts +13 -0
  6. package/dist/src/cache/kysely-operation-index.d.ts.map +1 -0
  7. package/dist/src/cache/kysely-operation-index.js +207 -0
  8. package/dist/src/cache/kysely-operation-index.js.map +1 -0
  9. package/dist/src/cache/kysely-write-cache.d.ts +5 -4
  10. package/dist/src/cache/kysely-write-cache.d.ts.map +1 -1
  11. package/dist/src/cache/kysely-write-cache.js +12 -12
  12. package/dist/src/cache/kysely-write-cache.js.map +1 -1
  13. package/dist/src/cache/operation-index-types.d.ts +49 -0
  14. package/dist/src/cache/operation-index-types.d.ts.map +1 -0
  15. package/dist/src/cache/operation-index-types.js +4 -0
  16. package/dist/src/cache/operation-index-types.js.map +1 -0
  17. package/dist/src/cache/{types.d.ts → write-cache-types.d.ts} +1 -1
  18. package/dist/src/cache/write-cache-types.d.ts.map +1 -0
  19. package/dist/src/cache/write-cache-types.js +2 -0
  20. package/dist/src/cache/write-cache-types.js.map +1 -0
  21. package/dist/src/client/reactor-client.d.ts +6 -4
  22. package/dist/src/client/reactor-client.d.ts.map +1 -1
  23. package/dist/src/client/reactor-client.js +118 -37
  24. package/dist/src/client/reactor-client.js.map +1 -1
  25. package/dist/src/client/types.d.ts +4 -4
  26. package/dist/src/client/types.d.ts.map +1 -1
  27. package/dist/src/core/builder.d.ts +15 -2
  28. package/dist/src/core/builder.d.ts.map +1 -1
  29. package/dist/src/core/builder.js +48 -7
  30. package/dist/src/core/builder.js.map +1 -1
  31. package/dist/src/core/reactor-builder.d.ts +40 -0
  32. package/dist/src/core/reactor-builder.d.ts.map +1 -0
  33. package/dist/src/core/reactor-builder.js +141 -0
  34. package/dist/src/core/reactor-builder.js.map +1 -0
  35. package/dist/src/core/reactor.d.ts +36 -11
  36. package/dist/src/core/reactor.d.ts.map +1 -1
  37. package/dist/src/core/reactor.js +609 -279
  38. package/dist/src/core/reactor.js.map +1 -1
  39. package/dist/src/core/types.d.ts +84 -7
  40. package/dist/src/core/types.d.ts.map +1 -1
  41. package/dist/src/core/utils.d.ts +44 -4
  42. package/dist/src/core/utils.d.ts.map +1 -1
  43. package/dist/src/core/utils.js +116 -6
  44. package/dist/src/core/utils.js.map +1 -1
  45. package/dist/src/events/types.d.ts +28 -0
  46. package/dist/src/events/types.d.ts.map +1 -1
  47. package/dist/src/events/types.js +2 -0
  48. package/dist/src/events/types.js.map +1 -1
  49. package/dist/src/executor/simple-job-executor-manager.d.ts.map +1 -1
  50. package/dist/src/executor/simple-job-executor-manager.js +19 -1
  51. package/dist/src/executor/simple-job-executor-manager.js.map +1 -1
  52. package/dist/src/executor/simple-job-executor.d.ts +16 -2
  53. package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
  54. package/dist/src/executor/simple-job-executor.js +458 -252
  55. package/dist/src/executor/simple-job-executor.js.map +1 -1
  56. package/dist/src/executor/types.d.ts +2 -0
  57. package/dist/src/executor/types.d.ts.map +1 -1
  58. package/dist/src/executor/types.js.map +1 -1
  59. package/dist/src/executor/util.d.ts +18 -0
  60. package/dist/src/executor/util.d.ts.map +1 -1
  61. package/dist/src/executor/util.js +42 -1
  62. package/dist/src/executor/util.js.map +1 -1
  63. package/dist/src/index.d.ts +12 -7
  64. package/dist/src/index.d.ts.map +1 -1
  65. package/dist/src/index.js +9 -2
  66. package/dist/src/index.js.map +1 -1
  67. package/dist/src/job-tracker/in-memory-job-tracker.d.ts +10 -1
  68. package/dist/src/job-tracker/in-memory-job-tracker.d.ts.map +1 -1
  69. package/dist/src/job-tracker/in-memory-job-tracker.js +57 -23
  70. package/dist/src/job-tracker/in-memory-job-tracker.js.map +1 -1
  71. package/dist/src/job-tracker/interfaces.d.ts +5 -7
  72. package/dist/src/job-tracker/interfaces.d.ts.map +1 -1
  73. package/dist/src/queue/types.d.ts +6 -1
  74. package/dist/src/queue/types.d.ts.map +1 -1
  75. package/dist/src/queue/types.js.map +1 -1
  76. package/dist/src/read-models/coordinator.d.ts.map +1 -1
  77. package/dist/src/read-models/coordinator.js +11 -0
  78. package/dist/src/read-models/coordinator.js.map +1 -1
  79. package/dist/src/read-models/document-view.d.ts +11 -6
  80. package/dist/src/read-models/document-view.d.ts.map +1 -1
  81. package/dist/src/read-models/document-view.js +156 -113
  82. package/dist/src/read-models/document-view.js.map +1 -1
  83. package/dist/src/read-models/types.d.ts +3 -3
  84. package/dist/src/read-models/types.d.ts.map +1 -1
  85. package/dist/src/shared/awaiter.d.ts +11 -8
  86. package/dist/src/shared/awaiter.d.ts.map +1 -1
  87. package/dist/src/shared/awaiter.js +66 -75
  88. package/dist/src/shared/awaiter.js.map +1 -1
  89. package/dist/src/shared/consistency-tracker.d.ts +48 -0
  90. package/dist/src/shared/consistency-tracker.d.ts.map +1 -0
  91. package/dist/src/shared/consistency-tracker.js +123 -0
  92. package/dist/src/shared/consistency-tracker.js.map +1 -0
  93. package/dist/src/shared/types.d.ts +30 -2
  94. package/dist/src/shared/types.d.ts.map +1 -1
  95. package/dist/src/shared/types.js +4 -2
  96. package/dist/src/shared/types.js.map +1 -1
  97. package/dist/src/storage/index.d.ts +4 -0
  98. package/dist/src/storage/index.d.ts.map +1 -0
  99. package/dist/src/storage/index.js +3 -0
  100. package/dist/src/storage/index.js.map +1 -0
  101. package/dist/src/storage/interfaces.d.ts +227 -2
  102. package/dist/src/storage/interfaces.d.ts.map +1 -1
  103. package/dist/src/storage/interfaces.js.map +1 -1
  104. package/dist/src/storage/kysely/document-indexer.d.ts +28 -0
  105. package/dist/src/storage/kysely/document-indexer.d.ts.map +1 -0
  106. package/dist/src/storage/kysely/document-indexer.js +350 -0
  107. package/dist/src/storage/kysely/document-indexer.js.map +1 -0
  108. package/dist/src/storage/kysely/keyframe-store.d.ts.map +1 -1
  109. package/dist/src/storage/kysely/keyframe-store.js +6 -13
  110. package/dist/src/storage/kysely/keyframe-store.js.map +1 -1
  111. package/dist/src/storage/kysely/store.js +1 -1
  112. package/dist/src/storage/kysely/store.js.map +1 -1
  113. package/dist/src/storage/kysely/sync-cursor-storage.d.ts +13 -0
  114. package/dist/src/storage/kysely/sync-cursor-storage.d.ts.map +1 -0
  115. package/dist/src/storage/kysely/sync-cursor-storage.js +93 -0
  116. package/dist/src/storage/kysely/sync-cursor-storage.js.map +1 -0
  117. package/dist/src/storage/kysely/sync-remote-storage.d.ts +13 -0
  118. package/dist/src/storage/kysely/sync-remote-storage.d.ts.map +1 -0
  119. package/dist/src/storage/kysely/sync-remote-storage.js +134 -0
  120. package/dist/src/storage/kysely/sync-remote-storage.js.map +1 -0
  121. package/dist/src/storage/kysely/types.d.ts +98 -2
  122. package/dist/src/storage/kysely/types.d.ts.map +1 -1
  123. package/dist/src/storage/migrations/001_create_operation_table.d.ts +3 -0
  124. package/dist/src/storage/migrations/001_create_operation_table.d.ts.map +1 -0
  125. package/dist/src/storage/migrations/001_create_operation_table.js +40 -0
  126. package/dist/src/storage/migrations/001_create_operation_table.js.map +1 -0
  127. package/dist/src/storage/migrations/002_create_keyframe_table.d.ts +3 -0
  128. package/dist/src/storage/migrations/002_create_keyframe_table.d.ts.map +1 -0
  129. package/dist/src/storage/migrations/002_create_keyframe_table.js +27 -0
  130. package/dist/src/storage/migrations/002_create_keyframe_table.js.map +1 -0
  131. package/dist/src/storage/migrations/003_create_document_table.d.ts +3 -0
  132. package/dist/src/storage/migrations/003_create_document_table.d.ts.map +1 -0
  133. package/dist/src/storage/migrations/003_create_document_table.js +10 -0
  134. package/dist/src/storage/migrations/003_create_document_table.js.map +1 -0
  135. package/dist/src/storage/migrations/004_create_document_relationship_table.d.ts +3 -0
  136. package/dist/src/storage/migrations/004_create_document_relationship_table.d.ts.map +1 -0
  137. package/dist/src/storage/migrations/004_create_document_relationship_table.js +35 -0
  138. package/dist/src/storage/migrations/004_create_document_relationship_table.js.map +1 -0
  139. package/dist/src/storage/migrations/005_create_indexer_state_table.d.ts +3 -0
  140. package/dist/src/storage/migrations/005_create_indexer_state_table.d.ts.map +1 -0
  141. package/dist/src/storage/migrations/005_create_indexer_state_table.js +10 -0
  142. package/dist/src/storage/migrations/005_create_indexer_state_table.js.map +1 -0
  143. package/dist/src/storage/migrations/006_create_document_snapshot_table.d.ts +3 -0
  144. package/dist/src/storage/migrations/006_create_document_snapshot_table.d.ts.map +1 -0
  145. package/dist/src/storage/migrations/006_create_document_snapshot_table.js +49 -0
  146. package/dist/src/storage/migrations/006_create_document_snapshot_table.js.map +1 -0
  147. package/dist/src/storage/migrations/007_create_slug_mapping_table.d.ts +3 -0
  148. package/dist/src/storage/migrations/007_create_slug_mapping_table.d.ts.map +1 -0
  149. package/dist/src/storage/migrations/007_create_slug_mapping_table.js +24 -0
  150. package/dist/src/storage/migrations/007_create_slug_mapping_table.js.map +1 -0
  151. package/dist/src/storage/migrations/008_create_view_state_table.d.ts +3 -0
  152. package/dist/src/storage/migrations/008_create_view_state_table.d.ts.map +1 -0
  153. package/dist/src/storage/migrations/008_create_view_state_table.js +9 -0
  154. package/dist/src/storage/migrations/008_create_view_state_table.js.map +1 -0
  155. package/dist/src/storage/migrations/009_create_operation_index_tables.d.ts +3 -0
  156. package/dist/src/storage/migrations/009_create_operation_index_tables.d.ts.map +1 -0
  157. package/dist/src/storage/migrations/009_create_operation_index_tables.js +50 -0
  158. package/dist/src/storage/migrations/009_create_operation_index_tables.js.map +1 -0
  159. package/dist/src/storage/migrations/010_create_sync_tables.d.ts +3 -0
  160. package/dist/src/storage/migrations/010_create_sync_tables.d.ts.map +1 -0
  161. package/dist/src/storage/migrations/010_create_sync_tables.js +43 -0
  162. package/dist/src/storage/migrations/010_create_sync_tables.js.map +1 -0
  163. package/dist/src/storage/migrations/index.d.ts +3 -0
  164. package/dist/src/storage/migrations/index.d.ts.map +1 -0
  165. package/dist/src/storage/migrations/index.js +3 -0
  166. package/dist/src/storage/migrations/index.js.map +1 -0
  167. package/dist/src/storage/migrations/migrator.d.ts +5 -0
  168. package/dist/src/storage/migrations/migrator.d.ts.map +1 -0
  169. package/dist/src/storage/migrations/migrator.js +55 -0
  170. package/dist/src/storage/migrations/migrator.js.map +1 -0
  171. package/dist/src/storage/migrations/run-migrations.d.ts +2 -0
  172. package/dist/src/storage/migrations/run-migrations.d.ts.map +1 -0
  173. package/dist/src/storage/migrations/run-migrations.js +58 -0
  174. package/dist/src/storage/migrations/run-migrations.js.map +1 -0
  175. package/dist/src/storage/migrations/types.d.ts +9 -0
  176. package/dist/src/storage/migrations/types.d.ts.map +1 -0
  177. package/dist/src/storage/migrations/types.js.map +1 -0
  178. package/dist/src/storage/txn.d.ts.map +1 -1
  179. package/dist/src/storage/txn.js +2 -0
  180. package/dist/src/storage/txn.js.map +1 -1
  181. package/dist/src/sync/channels/index.d.ts +3 -0
  182. package/dist/src/sync/channels/index.d.ts.map +1 -0
  183. package/dist/src/sync/channels/index.js +3 -0
  184. package/dist/src/sync/channels/index.js.map +1 -0
  185. package/dist/src/sync/channels/internal-channel.d.ts +57 -0
  186. package/dist/src/sync/channels/internal-channel.d.ts.map +1 -0
  187. package/dist/src/sync/channels/internal-channel.js +106 -0
  188. package/dist/src/sync/channels/internal-channel.js.map +1 -0
  189. package/dist/src/sync/channels/utils.d.ts +15 -0
  190. package/dist/src/sync/channels/utils.d.ts.map +1 -0
  191. package/dist/src/sync/channels/utils.js +26 -0
  192. package/dist/src/sync/channels/utils.js.map +1 -0
  193. package/dist/src/sync/errors.d.ts +10 -0
  194. package/dist/src/sync/errors.d.ts.map +1 -0
  195. package/dist/src/sync/errors.js +17 -0
  196. package/dist/src/sync/errors.js.map +1 -0
  197. package/dist/src/sync/index.d.ts +12 -0
  198. package/dist/src/sync/index.d.ts.map +1 -0
  199. package/dist/src/sync/index.js +9 -0
  200. package/dist/src/sync/index.js.map +1 -0
  201. package/dist/src/sync/interfaces.d.ts +150 -0
  202. package/dist/src/sync/interfaces.d.ts.map +1 -0
  203. package/dist/src/sync/interfaces.js +2 -0
  204. package/dist/src/sync/interfaces.js.map +1 -0
  205. package/dist/src/sync/mailbox.d.ts +21 -0
  206. package/dist/src/sync/mailbox.d.ts.map +1 -0
  207. package/dist/src/sync/mailbox.js +59 -0
  208. package/dist/src/sync/mailbox.js.map +1 -0
  209. package/dist/src/sync/sync-builder.d.ts +17 -0
  210. package/dist/src/sync/sync-builder.d.ts.map +1 -0
  211. package/dist/src/sync/sync-builder.js +29 -0
  212. package/dist/src/sync/sync-builder.js.map +1 -0
  213. package/dist/src/sync/sync-manager.d.ts +33 -0
  214. package/dist/src/sync/sync-manager.d.ts.map +1 -0
  215. package/dist/src/sync/sync-manager.js +197 -0
  216. package/dist/src/sync/sync-manager.js.map +1 -0
  217. package/dist/src/sync/sync-operation.d.ts +28 -0
  218. package/dist/src/sync/sync-operation.d.ts.map +1 -0
  219. package/dist/src/sync/sync-operation.js +63 -0
  220. package/dist/src/sync/sync-operation.js.map +1 -0
  221. package/dist/src/sync/types.d.ts +61 -0
  222. package/dist/src/sync/types.d.ts.map +1 -0
  223. package/dist/src/sync/types.js +16 -0
  224. package/dist/src/sync/types.js.map +1 -0
  225. package/dist/src/sync/utils.d.ts +17 -0
  226. package/dist/src/sync/utils.d.ts.map +1 -0
  227. package/dist/src/sync/utils.js +34 -0
  228. package/dist/src/sync/utils.js.map +1 -0
  229. package/package.json +9 -5
  230. package/dist/src/cache/types.d.ts.map +0 -1
  231. package/dist/src/cache/types.js.map +0 -1
  232. /package/dist/src/{cache → storage/migrations}/types.js +0 -0
@@ -0,0 +1,3 @@
1
+ export type { IOperationIndex, IOperationIndexTxn, OperationIndexEntry, } from "./operation-index-types.js";
2
+ export { KyselyOperationIndex } from "./kysely-operation-index.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cache/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { KyselyOperationIndex } from "./kysely-operation-index.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cache/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Kysely } from "kysely";
2
+ import type { PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
3
+ import type { Database } from "../storage/kysely/types.js";
4
+ import type { IOperationIndex, IOperationIndexTxn, OperationIndexEntry } from "./operation-index-types.js";
5
+ export declare class KyselyOperationIndex implements IOperationIndex {
6
+ private db;
7
+ constructor(db: Kysely<Database>);
8
+ start(): IOperationIndexTxn;
9
+ commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<void>;
10
+ find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
11
+ private rowToOperationIndexEntry;
12
+ }
13
+ //# sourceMappingURL=kysely-operation-index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kysely-operation-index.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAGV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,4BAA4B,CAAC;AAsEpC,qBAAa,oBAAqB,YAAW,eAAe;IAC9C,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;IAExC,KAAK,IAAI,kBAAkB;IAIrB,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyGpE,IAAI,CACR,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IA4D7C,OAAO,CAAC,wBAAwB;CAiBjC"}
@@ -0,0 +1,207 @@
1
+ import { sql } from "kysely";
2
+ class KyselyOperationIndexTxn {
3
+ collections = [];
4
+ collectionMemberships = [];
5
+ collectionRemovals = [];
6
+ operations = [];
7
+ createCollection(collectionId) {
8
+ this.collections.push(collectionId);
9
+ }
10
+ addToCollection(collectionId, documentId) {
11
+ const lastOpIndex = this.operations.length - 1;
12
+ if (lastOpIndex < 0) {
13
+ throw new Error("addToCollection must be called after write() - no operations in transaction");
14
+ }
15
+ this.collectionMemberships.push({
16
+ collectionId,
17
+ documentId,
18
+ operationIndex: lastOpIndex,
19
+ });
20
+ }
21
+ removeFromCollection(collectionId, documentId) {
22
+ const lastOpIndex = this.operations.length - 1;
23
+ if (lastOpIndex < 0) {
24
+ throw new Error("removeFromCollection must be called after write() - no operations in transaction");
25
+ }
26
+ this.collectionRemovals.push({
27
+ collectionId,
28
+ documentId,
29
+ operationIndex: lastOpIndex,
30
+ });
31
+ }
32
+ write(operations) {
33
+ this.operations.push(...operations);
34
+ }
35
+ getCollections() {
36
+ return this.collections;
37
+ }
38
+ getCollectionMemberships() {
39
+ return this.collectionMemberships;
40
+ }
41
+ getCollectionRemovals() {
42
+ return this.collectionRemovals;
43
+ }
44
+ getOperations() {
45
+ return this.operations;
46
+ }
47
+ }
48
+ export class KyselyOperationIndex {
49
+ db;
50
+ constructor(db) {
51
+ this.db = db;
52
+ }
53
+ start() {
54
+ return new KyselyOperationIndexTxn();
55
+ }
56
+ async commit(txn, signal) {
57
+ if (signal?.aborted) {
58
+ throw new Error("Operation aborted");
59
+ }
60
+ const kyselyTxn = txn;
61
+ const collections = kyselyTxn.getCollections();
62
+ const memberships = kyselyTxn.getCollectionMemberships();
63
+ const removals = kyselyTxn.getCollectionRemovals();
64
+ const operations = kyselyTxn.getOperations();
65
+ await this.db.transaction().execute(async (trx) => {
66
+ if (collections.length > 0) {
67
+ const collectionRows = collections.map((collectionId) => ({
68
+ documentId: collectionId,
69
+ collectionId,
70
+ joinedOrdinal: BigInt(0),
71
+ leftOrdinal: null,
72
+ }));
73
+ await trx
74
+ .insertInto("document_collections")
75
+ .values(collectionRows)
76
+ .onConflict((oc) => oc.doNothing())
77
+ .execute();
78
+ }
79
+ let operationOrdinals = [];
80
+ if (operations.length > 0) {
81
+ const operationRows = operations.map((op) => {
82
+ const timestamp = op.timestampUtcMs;
83
+ let timestampMs;
84
+ if (/^\d+$/.test(timestamp)) {
85
+ timestampMs = Number(timestamp);
86
+ }
87
+ else {
88
+ timestampMs = new Date(timestamp).getTime();
89
+ }
90
+ return {
91
+ opId: op.id || "",
92
+ documentId: op.documentId,
93
+ documentType: op.documentType,
94
+ scope: op.scope,
95
+ branch: op.branch,
96
+ timestampUtcMs: BigInt(timestampMs || 0),
97
+ index: op.index,
98
+ skip: op.skip,
99
+ hash: op.hash,
100
+ action: op.action,
101
+ };
102
+ });
103
+ const insertedOps = await trx
104
+ .insertInto("operation_index_operations")
105
+ .values(operationRows)
106
+ .returning("ordinal")
107
+ .execute();
108
+ operationOrdinals = insertedOps.map((row) => row.ordinal);
109
+ }
110
+ if (memberships.length > 0) {
111
+ for (const m of memberships) {
112
+ // this is guaranteed to be defined because we enforce in KyselyOperationIndexTxn
113
+ const ordinal = operationOrdinals[m.operationIndex];
114
+ await trx
115
+ .insertInto("document_collections")
116
+ .values({
117
+ documentId: m.documentId,
118
+ collectionId: m.collectionId,
119
+ joinedOrdinal: BigInt(ordinal),
120
+ leftOrdinal: null,
121
+ })
122
+ .onConflict((oc) => oc.columns(["documentId", "collectionId"]).doUpdateSet({
123
+ joinedOrdinal: BigInt(ordinal),
124
+ leftOrdinal: null,
125
+ }))
126
+ .execute();
127
+ }
128
+ }
129
+ if (removals.length > 0) {
130
+ for (const r of removals) {
131
+ // this is guaranteed to be defined because we enforce in KyselyOperationIndexTxn
132
+ const ordinal = operationOrdinals[r.operationIndex];
133
+ await trx
134
+ .updateTable("document_collections")
135
+ .set({
136
+ leftOrdinal: BigInt(ordinal),
137
+ })
138
+ .where("collectionId", "=", r.collectionId)
139
+ .where("documentId", "=", r.documentId)
140
+ .where("leftOrdinal", "is", null)
141
+ .execute();
142
+ }
143
+ }
144
+ });
145
+ }
146
+ async find(collectionId, cursor, view, paging, signal) {
147
+ if (signal?.aborted) {
148
+ throw new Error("Operation aborted");
149
+ }
150
+ let query = this.db
151
+ .selectFrom("operation_index_operations as oi")
152
+ .innerJoin("document_collections as dc", "oi.documentId", "dc.documentId")
153
+ .selectAll("oi")
154
+ .select(["dc.documentId", "dc.collectionId"])
155
+ .where("dc.collectionId", "=", collectionId)
156
+ .whereRef("oi.ordinal", ">=", "dc.joinedOrdinal")
157
+ .where(sql `dc."leftOrdinal" IS NULL OR oi.ordinal < dc."leftOrdinal"`)
158
+ .orderBy("oi.ordinal", "asc");
159
+ if (cursor !== undefined) {
160
+ query = query.where("oi.ordinal", ">", cursor);
161
+ }
162
+ if (view?.branch) {
163
+ query = query.where("oi.branch", "=", view.branch);
164
+ }
165
+ if (view?.scopes && view.scopes.length > 0) {
166
+ query = query.where("oi.scope", "in", view.scopes);
167
+ }
168
+ if (paging?.cursor) {
169
+ const cursorOrdinal = Number.parseInt(paging.cursor, 10);
170
+ query = query.where("oi.ordinal", ">", cursorOrdinal);
171
+ }
172
+ if (paging?.limit) {
173
+ query = query.limit(paging.limit + 1);
174
+ }
175
+ const rows = await query.execute();
176
+ let hasMore = false;
177
+ let items = rows;
178
+ if (paging?.limit && rows.length > paging.limit) {
179
+ hasMore = true;
180
+ items = rows.slice(0, paging.limit);
181
+ }
182
+ const nextCursor = hasMore && items.length > 0
183
+ ? items[items.length - 1].ordinal.toString()
184
+ : undefined;
185
+ return {
186
+ items: items.map((row) => this.rowToOperationIndexEntry(row)),
187
+ nextCursor,
188
+ hasMore,
189
+ };
190
+ }
191
+ rowToOperationIndexEntry(row) {
192
+ return {
193
+ ordinal: row.ordinal,
194
+ documentId: row.documentId,
195
+ documentType: row.documentType,
196
+ branch: row.branch,
197
+ scope: row.scope,
198
+ index: row.index,
199
+ timestampUtcMs: row.timestampUtcMs.toString(),
200
+ hash: row.hash,
201
+ skip: row.skip,
202
+ action: row.action,
203
+ id: row.opId,
204
+ };
205
+ }
206
+ }
207
+ //# sourceMappingURL=kysely-operation-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kysely-operation-index.js","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { PHDocument } from "document-model";
2
2
  import type { IDocumentModelRegistry } from "../registry/interfaces.js";
3
3
  import type { IKeyframeStore, IOperationStore } from "../storage/interfaces.js";
4
4
  import { RingBuffer } from "./buffer/ring-buffer.js";
5
- import type { CachedSnapshot, WriteCacheConfig } from "./types.js";
5
+ import type { CachedSnapshot, WriteCacheConfig } from "./write-cache-types.js";
6
6
  import type { IWriteCache } from "./write/interfaces.js";
7
7
  type DocumentStream = {
8
8
  key: string;
@@ -79,13 +79,14 @@ export declare class KyselyWriteCache implements IWriteCache {
79
79
  * @throws {ModuleNotFoundError} If document type not registered in registry
80
80
  * @throws {Error} "Failed to rebuild document" if operation store fails
81
81
  * @throws {Error} If reducer throws during operation application
82
- * @throws {Error} If document serialization (structuredClone) fails
82
+ * @throws {Error} If document serialization fails
83
83
  */
84
84
  getState(documentId: string, scope: string, branch: string, targetRevision?: number, signal?: AbortSignal): Promise<PHDocument>;
85
85
  /**
86
86
  * Stores a document snapshot in the cache at a specific revision.
87
87
  *
88
- * The document is deep-copied to prevent external mutations.
88
+ * Stores the document reference as-is. Callers must avoid mutating cached
89
+ * snapshots if they need to preserve historical revisions.
89
90
  * Updates LRU tracker and may evict least recently used stream if at capacity.
90
91
  * Asynchronously persists keyframes at configured intervals (fire-and-forget).
91
92
  *
@@ -94,7 +95,7 @@ export declare class KyselyWriteCache implements IWriteCache {
94
95
  * @param branch - The operation branch
95
96
  * @param revision - The revision number
96
97
  * @param document - The document to cache
97
- * @throws {Error} If document serialization (structuredClone) fails
98
+ * @throws {Error} If document serialization fails
98
99
  */
99
100
  putState(documentId: string, scope: string, branch: string, revision: number, document: PHDocument): void;
100
101
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"kysely-write-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAA6B;gBAGzC,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,gBAAgB;IAc1B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;;;;;;;;;;;;;;;;;OAkBG;IACG,QAAQ,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;IAiEtB;;;;;;;;;;;;;OAaG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI;IAwBP;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IA+BvE;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,cAAc,GAAG,SAAS;YAKf,mBAAmB;YAoBnB,eAAe;YAmJf,eAAe;IA6D7B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"kysely-write-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAA6B;gBAGzC,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,gBAAgB;IAc1B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;;;;;;;;;;;;;;;;;OAkBG;IACG,QAAQ,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;IAiEtB;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI;IAuBP;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IA+BvE;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,cAAc,GAAG,SAAS;YAKf,mBAAmB;YAoBnB,eAAe;YAmJf,eAAe;IA6D7B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -87,7 +87,7 @@ export class KyselyWriteCache {
87
87
  * @throws {ModuleNotFoundError} If document type not registered in registry
88
88
  * @throws {Error} "Failed to rebuild document" if operation store fails
89
89
  * @throws {Error} If reducer throws during operation application
90
- * @throws {Error} If document serialization (structuredClone) fails
90
+ * @throws {Error} If document serialization fails
91
91
  */
92
92
  async getState(documentId, scope, branch, targetRevision, signal) {
93
93
  if (signal?.aborted) {
@@ -101,21 +101,21 @@ export class KyselyWriteCache {
101
101
  if (snapshots.length > 0) {
102
102
  const newest = snapshots[snapshots.length - 1];
103
103
  this.lruTracker.touch(streamKey);
104
- return structuredClone(newest.document);
104
+ return newest.document;
105
105
  }
106
106
  }
107
107
  else {
108
108
  const exactMatch = snapshots.find((s) => s.revision === targetRevision);
109
109
  if (exactMatch) {
110
110
  this.lruTracker.touch(streamKey);
111
- return structuredClone(exactMatch.document);
111
+ return exactMatch.document;
112
112
  }
113
113
  const newestOlder = this.findNearestOlderSnapshot(snapshots, targetRevision);
114
114
  if (newestOlder) {
115
115
  const document = await this.warmMissRebuild(newestOlder.document, newestOlder.revision, documentId, scope, branch, targetRevision, signal);
116
116
  this.putState(documentId, scope, branch, targetRevision, document);
117
117
  this.lruTracker.touch(streamKey);
118
- return structuredClone(document);
118
+ return document;
119
119
  }
120
120
  }
121
121
  }
@@ -125,12 +125,13 @@ export class KyselyWriteCache {
125
125
  revision = document.header.revision[scope] || 0;
126
126
  }
127
127
  this.putState(documentId, scope, branch, revision, document);
128
- return structuredClone(document);
128
+ return document;
129
129
  }
130
130
  /**
131
131
  * Stores a document snapshot in the cache at a specific revision.
132
132
  *
133
- * The document is deep-copied to prevent external mutations.
133
+ * Stores the document reference as-is. Callers must avoid mutating cached
134
+ * snapshots if they need to preserve historical revisions.
134
135
  * Updates LRU tracker and may evict least recently used stream if at capacity.
135
136
  * Asynchronously persists keyframes at configured intervals (fire-and-forget).
136
137
  *
@@ -139,20 +140,19 @@ export class KyselyWriteCache {
139
140
  * @param branch - The operation branch
140
141
  * @param revision - The revision number
141
142
  * @param document - The document to cache
142
- * @throws {Error} If document serialization (structuredClone) fails
143
+ * @throws {Error} If document serialization fails
143
144
  */
144
145
  putState(documentId, scope, branch, revision, document) {
145
- const safeCopy = structuredClone(document);
146
146
  const streamKey = this.makeStreamKey(documentId, scope, branch);
147
147
  const stream = this.getOrCreateStream(streamKey);
148
148
  const snapshot = {
149
149
  revision,
150
- document: safeCopy,
150
+ document,
151
151
  };
152
152
  stream.ringBuffer.push(snapshot);
153
153
  if (this.isKeyframeRevision(revision)) {
154
154
  this.keyframeStore
155
- .putKeyframe(documentId, scope, branch, revision, safeCopy)
155
+ .putKeyframe(documentId, scope, branch, revision, document)
156
156
  .catch((err) => {
157
157
  console.error(`Failed to persist keyframe ${documentId}@${revision}:`, err);
158
158
  });
@@ -230,7 +230,7 @@ export class KyselyWriteCache {
230
230
  let startRevision;
231
231
  let documentType;
232
232
  if (keyframe) {
233
- document = structuredClone(keyframe.document);
233
+ document = keyframe.document;
234
234
  startRevision = keyframe.revision;
235
235
  documentType = keyframe.document.header.documentType;
236
236
  }
@@ -308,7 +308,7 @@ export class KyselyWriteCache {
308
308
  async warmMissRebuild(baseDocument, baseRevision, documentId, scope, branch, targetRevision, signal) {
309
309
  const documentType = baseDocument.header.documentType;
310
310
  const module = this.registry.getModule(documentType);
311
- let document = structuredClone(baseDocument);
311
+ let document = baseDocument;
312
312
  try {
313
313
  const pagedResults = await this.operationStore.getSince(documentId, scope, branch, baseRevision, undefined, signal);
314
314
  for (const operation of pagedResults.items) {
@@ -1 +1 @@
1
- {"version":3,"file":"kysely-write-cache.js","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kysely-write-cache.js","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import type { Operation } from "document-model";
2
+ import type { Generated, Insertable, Selectable, Updateable } from "kysely";
3
+ import type { PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
4
+ export type OperationIndexEntry = Operation & {
5
+ ordinal?: number;
6
+ documentId: string;
7
+ documentType: string;
8
+ branch: string;
9
+ scope: string;
10
+ };
11
+ export interface IOperationIndexTxn {
12
+ createCollection(collectionId: string): void;
13
+ addToCollection(collectionId: string, documentId: string): void;
14
+ removeFromCollection(collectionId: string, documentId: string): void;
15
+ write(operations: OperationIndexEntry[]): void;
16
+ }
17
+ export interface IOperationIndex {
18
+ start(): IOperationIndexTxn;
19
+ commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<void>;
20
+ find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
21
+ }
22
+ export interface DocumentCollectionTable {
23
+ documentId: string;
24
+ collectionId: string;
25
+ joinedOrdinal: bigint;
26
+ leftOrdinal: bigint | null;
27
+ }
28
+ export interface OperationIndexOperationTable {
29
+ ordinal: Generated<number>;
30
+ opId: string;
31
+ documentId: string;
32
+ documentType: string;
33
+ scope: string;
34
+ branch: string;
35
+ timestampUtcMs: bigint;
36
+ writeTimestampUtcMs: Generated<Date>;
37
+ index: number;
38
+ skip: number;
39
+ hash: string;
40
+ action: unknown;
41
+ }
42
+ export type DocumentCollectionRow = Selectable<DocumentCollectionTable>;
43
+ export type InsertableDocumentCollection = Insertable<DocumentCollectionTable>;
44
+ export type UpdateableDocumentCollection = Updateable<DocumentCollectionTable>;
45
+ export type OperationIndexOperationRow = Selectable<OperationIndexOperationTable>;
46
+ export type InsertableOperationIndexOperation = Insertable<OperationIndexOperationTable>;
47
+ export type UpdateableOperationIndexOperation = Updateable<OperationIndexOperationTable>;
48
+ export declare function driveCollectionId(branch: string, driveId: string): string;
49
+ //# sourceMappingURL=operation-index-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-index-types.d.ts","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC5E,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAChE,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACrE,KAAK,CAAC,UAAU,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;CAChD;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,IAAI,kBAAkB,CAAC;IAC5B,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,CACF,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAC/E,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAE/E,MAAM,MAAM,0BAA0B,GACpC,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAC3C,MAAM,MAAM,iCAAiC,GAC3C,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAC3C,MAAM,MAAM,iCAAiC,GAC3C,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAE3C,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE"}
@@ -0,0 +1,4 @@
1
+ export function driveCollectionId(branch, driveId) {
2
+ return `drive.${branch}.${driveId}`;
3
+ }
4
+ //# sourceMappingURL=operation-index-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-index-types.js","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"AAoEA,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,OAAe;IAC/D,OAAO,SAAS,MAAM,IAAI,OAAO,EAAE,CAAC;AACtC,CAAC"}
@@ -39,4 +39,4 @@ export type KeyframeSnapshot = {
39
39
  /** Serialized document state */
40
40
  document: string;
41
41
  };
42
- //# sourceMappingURL=types.d.ts.map
42
+ //# sourceMappingURL=write-cache-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-cache-types.d.ts","sourceRoot":"","sources":["../../../src/cache/write-cache-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,gFAAgF;IAChF,YAAY,EAAE,MAAM,CAAC;IAErB,8EAA8E;IAC9E,cAAc,EAAE,MAAM,CAAC;IAEvB,iEAAiE;IACjE,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IAEd,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,0CAA0C;IAC1C,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=write-cache-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-cache-types.js","sourceRoot":"","sources":["../../../src/cache/write-cache-types.ts"],"names":[],"mappings":""}
@@ -3,8 +3,9 @@ import type { IReactor } from "../core/types.js";
3
3
  import { type IJobAwaiter } from "../shared/awaiter.js";
4
4
  import { type JobInfo, type PagedResults, type PagingOptions, type PropagationMode, type SearchFilter, type ViewFilter } from "../shared/types.js";
5
5
  import type { ISigner } from "../signer/types.js";
6
+ import type { IDocumentIndexer } from "../storage/interfaces.js";
6
7
  import type { IReactorSubscriptionManager } from "../subs/types.js";
7
- import type { DocumentChangeEvent, IReactorClient } from "./types.js";
8
+ import { type DocumentChangeEvent, type IReactorClient } from "./types.js";
8
9
  /**
9
10
  * ReactorClient implementation that wraps lower-level APIs to provide
10
11
  * a simpler interface for document operations.
@@ -20,7 +21,8 @@ export declare class ReactorClient implements IReactorClient {
20
21
  private signer;
21
22
  private subscriptionManager;
22
23
  private jobAwaiter;
23
- constructor(reactor: IReactor, signer: ISigner, subscriptionManager: IReactorSubscriptionManager, jobAwaiter: IJobAwaiter);
24
+ private documentIndexer;
25
+ constructor(reactor: IReactor, signer: ISigner, subscriptionManager: IReactorSubscriptionManager, jobAwaiter: IJobAwaiter, documentIndexer: IDocumentIndexer);
24
26
  /**
25
27
  * Retrieves a list of document model modules.
26
28
  */
@@ -55,11 +57,11 @@ export declare class ReactorClient implements IReactorClient {
55
57
  /**
56
58
  * Applies a list of actions to a document and waits for completion
57
59
  */
58
- mutate<TDocument extends PHDocument>(documentIdentifier: string, actions: Action[], view?: ViewFilter, signal?: AbortSignal): Promise<TDocument>;
60
+ mutate<TDocument extends PHDocument>(documentIdentifier: string, branch: string, actions: Action[], signal?: AbortSignal): Promise<TDocument>;
59
61
  /**
60
62
  * Submits a list of actions to a document
61
63
  */
62
- mutateAsync(documentIdentifier: string, actions: Action[], view?: ViewFilter, signal?: AbortSignal): Promise<JobInfo>;
64
+ mutateAsync(documentIdentifier: string, branch: string, actions: Action[], signal?: AbortSignal): Promise<JobInfo>;
63
65
  /**
64
66
  * Renames a document and waits for completion
65
67
  */
@@ -1 +1 @@
1
- {"version":3,"file":"reactor-client.d.ts","sourceRoot":"","sources":["../../../src/client/reactor-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactor-client.d.ts","sourceRoot":"","sources":["../../../src/client/reactor-client.ts"],"names":[],"mappings":"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"}