@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
@@ -1,5 +1,7 @@
1
+ import { actions } from "document-model";
1
2
  import {} from "../shared/awaiter.js";
2
- import {} from "../shared/types.js";
3
+ import { RelationshipChangeType, } from "../shared/types.js";
4
+ import { DocumentChangeType, } from "./types.js";
3
5
  /**
4
6
  * ReactorClient implementation that wraps lower-level APIs to provide
5
7
  * a simpler interface for document operations.
@@ -15,11 +17,13 @@ export class ReactorClient {
15
17
  signer;
16
18
  subscriptionManager;
17
19
  jobAwaiter;
18
- constructor(reactor, signer, subscriptionManager, jobAwaiter) {
20
+ documentIndexer;
21
+ constructor(reactor, signer, subscriptionManager, jobAwaiter, documentIndexer) {
19
22
  this.reactor = reactor;
20
23
  this.signer = signer;
21
24
  this.subscriptionManager = subscriptionManager;
22
25
  this.jobAwaiter = jobAwaiter;
26
+ this.documentIndexer = documentIndexer;
23
27
  }
24
28
  /**
25
29
  * Retrieves a list of document model modules.
@@ -31,58 +35,85 @@ export class ReactorClient {
31
35
  * Retrieves a specific PHDocument
32
36
  */
33
37
  async get(identifier, view, signal) {
34
- // First try to get by ID
35
- try {
36
- return await this.reactor.get(identifier, view, signal);
37
- }
38
- catch (error) {
39
- // If failed, try to get by slug
40
- return await this.reactor.getBySlug(identifier, view, signal);
41
- }
38
+ return await this.reactor.getByIdOrSlug(identifier, view, undefined, signal);
42
39
  }
43
40
  /**
44
41
  * Retrieves children of a document
45
42
  */
46
43
  async getChildren(parentIdentifier, view, paging, signal) {
47
- throw new Error("Method not implemented.");
44
+ const parentDoc = await this.reactor.getByIdOrSlug(parentIdentifier, view, undefined, signal);
45
+ const parentId = parentDoc.document.header.id;
46
+ const relationships = await this.documentIndexer.getOutgoing(parentId, undefined, undefined, signal);
47
+ const childIds = relationships.map((rel) => rel.targetId);
48
+ if (childIds.length === 0) {
49
+ return {
50
+ results: [],
51
+ options: paging || { cursor: "0", limit: 0 },
52
+ };
53
+ }
54
+ return this.reactor.find({ ids: childIds }, view, paging, undefined, signal);
48
55
  }
49
56
  /**
50
57
  * Retrieves parents of a document
51
58
  */
52
59
  async getParents(childIdentifier, view, paging, signal) {
53
- throw new Error("Method not implemented.");
60
+ const childDoc = await this.reactor.getByIdOrSlug(childIdentifier, view, undefined, signal);
61
+ const childId = childDoc.document.header.id;
62
+ const relationships = await this.documentIndexer.getIncoming(childId, undefined, undefined, signal);
63
+ const parentIds = relationships.map((rel) => rel.sourceId);
64
+ if (parentIds.length === 0) {
65
+ return {
66
+ results: [],
67
+ options: paging || { cursor: "0", limit: 0 },
68
+ };
69
+ }
70
+ return this.reactor.find({ ids: parentIds }, view, paging, undefined, signal);
54
71
  }
55
72
  /**
56
73
  * Filters documents by criteria and returns a list of them
57
74
  */
58
75
  async find(search, view, paging, signal) {
59
- return this.reactor.find(search, view, paging, signal);
76
+ return this.reactor.find(search, view, paging, undefined, signal);
60
77
  }
61
78
  /**
62
79
  * Creates a document and waits for completion
63
80
  */
64
81
  async create(document, parentIdentifier, signal) {
65
- throw new Error("Method not implemented.");
82
+ const jobInfo = await this.reactor.create(document, signal);
83
+ const completedJob = await this.waitForJob(jobInfo, signal);
84
+ const documentId = document.header.id;
85
+ const result = await this.reactor.get(documentId, undefined, completedJob.consistencyToken, signal);
86
+ if (parentIdentifier) {
87
+ await this.addChildren(parentIdentifier, [documentId], undefined, signal);
88
+ }
89
+ return result.document;
66
90
  }
67
91
  /**
68
92
  * Creates an empty document and waits for completion
69
93
  */
70
94
  async createEmpty(documentType, parentIdentifier, signal) {
71
- throw new Error("Method not implemented.");
95
+ const modulesResult = await this.reactor.getDocumentModels(undefined, undefined, signal);
96
+ const module = modulesResult.results.find((m) => m.documentModel.global.id === documentType);
97
+ if (!module) {
98
+ throw new Error(`Document model not found for type: ${documentType}`);
99
+ }
100
+ const document = module.utils.createDocument();
101
+ return this.create(document, parentIdentifier, signal);
72
102
  }
73
103
  /**
74
104
  * Applies a list of actions to a document and waits for completion
75
105
  */
76
- async mutate(documentIdentifier, actions, view, signal) {
77
- const jobInfo = await this.reactor.mutate(documentIdentifier, actions);
78
- await this.waitForJob(jobInfo, signal);
79
- const document = await this.get(documentIdentifier, view, signal);
80
- return document.document;
106
+ async mutate(documentIdentifier, branch, actions, signal) {
107
+ const jobInfo = await this.reactor.mutate(documentIdentifier, branch, actions, signal);
108
+ const completedJob = await this.waitForJob(jobInfo, signal);
109
+ const view = { branch };
110
+ const result = await this.reactor.getByIdOrSlug(documentIdentifier, view, completedJob.consistencyToken, signal);
111
+ return result.document;
81
112
  }
82
113
  /**
83
114
  * Submits a list of actions to a document
84
115
  */
85
- async mutateAsync(documentIdentifier, actions, view, signal) {
116
+ async mutateAsync(documentIdentifier, branch, actions, signal) {
86
117
  // Sign actions with the required signer
87
118
  const signedActions = await Promise.all(actions.map(async (action) => {
88
119
  const signature = await this.signer.sign(action, signal);
@@ -105,44 +136,47 @@ export class ReactorClient {
105
136
  },
106
137
  };
107
138
  }));
108
- // Note: reactor.mutate doesn't use view or signal currently
109
- return this.reactor.mutate(documentIdentifier, signedActions);
139
+ return this.reactor.mutate(documentIdentifier, branch, signedActions, signal);
110
140
  }
111
141
  /**
112
142
  * Renames a document and waits for completion
113
143
  */
114
144
  async rename(documentIdentifier, name, view, signal) {
115
- throw new Error("Method not implemented.");
145
+ const branch = view?.branch || "main";
146
+ return this.mutate(documentIdentifier, branch, [actions.setName(name)], signal);
116
147
  }
117
148
  /**
118
149
  * Adds multiple documents as children to another and waits for completion
119
150
  */
120
151
  async addChildren(parentIdentifier, documentIdentifiers, view, signal) {
121
- // Call reactor.addChildren to get JobInfo
122
152
  const jobInfo = await this.reactor.addChildren(parentIdentifier, documentIdentifiers, view, signal);
123
- // Wait for job completion
124
- await this.waitForJob(jobInfo, signal);
125
- // Fetch and return updated parent document
126
- const result = await this.get(parentIdentifier, view, signal);
153
+ const completedJob = await this.waitForJob(jobInfo, signal);
154
+ const result = await this.reactor.getByIdOrSlug(parentIdentifier, view, completedJob.consistencyToken, signal);
127
155
  return result.document;
128
156
  }
129
157
  /**
130
158
  * Removes multiple documents as children from another and waits for completion
131
159
  */
132
160
  async removeChildren(parentIdentifier, documentIdentifiers, view, signal) {
133
- // Call reactor.removeChildren to get JobInfo
134
161
  const jobInfo = await this.reactor.removeChildren(parentIdentifier, documentIdentifiers, view, signal);
135
- // Wait for job completion
136
- await this.waitForJob(jobInfo, signal);
137
- // Fetch and return updated parent document
138
- const result = await this.get(parentIdentifier, view, signal);
162
+ const completedJob = await this.waitForJob(jobInfo, signal);
163
+ const result = await this.reactor.getByIdOrSlug(parentIdentifier, view, completedJob.consistencyToken, signal);
139
164
  return result.document;
140
165
  }
141
166
  /**
142
167
  * Moves multiple documents from one parent to another and waits for completion
143
168
  */
144
169
  async moveChildren(sourceParentIdentifier, targetParentIdentifier, documentIdentifiers, view, signal) {
145
- throw new Error("Method not implemented.");
170
+ const removeJobInfo = await this.reactor.removeChildren(sourceParentIdentifier, documentIdentifiers, view, signal);
171
+ const removeCompletedJob = await this.waitForJob(removeJobInfo, signal);
172
+ const addJobInfo = await this.reactor.addChildren(targetParentIdentifier, documentIdentifiers, view, signal);
173
+ const addCompletedJob = await this.waitForJob(addJobInfo, signal);
174
+ const sourceResult = await this.reactor.getByIdOrSlug(sourceParentIdentifier, view, removeCompletedJob.consistencyToken, signal);
175
+ const targetResult = await this.reactor.getByIdOrSlug(targetParentIdentifier, view, addCompletedJob.consistencyToken, signal);
176
+ return {
177
+ source: sourceResult.document,
178
+ target: targetResult.document,
179
+ };
146
180
  }
147
181
  /**
148
182
  * Deletes a document and waits for completion
@@ -159,7 +193,8 @@ export class ReactorClient {
159
193
  * Deletes documents and waits for completion
160
194
  */
161
195
  async deleteDocuments(identifiers, propagate, signal) {
162
- throw new Error("Method not implemented.");
196
+ const deletePromises = identifiers.map((identifier) => this.deleteDocument(identifier, propagate, signal));
197
+ await Promise.all(deletePromises);
163
198
  }
164
199
  /**
165
200
  * Retrieves the status of a job
@@ -178,7 +213,53 @@ export class ReactorClient {
178
213
  * Subscribes to changes for documents matching specified filters
179
214
  */
180
215
  subscribe(search, callback, view) {
181
- throw new Error("Method not implemented.");
216
+ const unsubscribeCreated = this.subscriptionManager.onDocumentCreated((result) => {
217
+ void (async () => {
218
+ try {
219
+ const documents = await Promise.all(result.results.map((id) => this.reactor
220
+ .get(id, view, undefined, undefined)
221
+ .then((res) => res.document)));
222
+ callback({
223
+ type: DocumentChangeType.Created,
224
+ documents,
225
+ });
226
+ }
227
+ catch {
228
+ // Silently ignore errors when fetching created documents
229
+ }
230
+ })();
231
+ }, search);
232
+ const unsubscribeDeleted = this.subscriptionManager.onDocumentDeleted((documentIds) => {
233
+ callback({
234
+ type: DocumentChangeType.Deleted,
235
+ documents: [],
236
+ context: { childId: documentIds[0] },
237
+ });
238
+ }, search);
239
+ const unsubscribeUpdated = this.subscriptionManager.onDocumentStateUpdated((result) => {
240
+ callback({
241
+ type: DocumentChangeType.Updated,
242
+ documents: result.results,
243
+ });
244
+ }, search, view);
245
+ const unsubscribeRelationship = this.subscriptionManager.onRelationshipChanged((parentId, childId, changeType) => {
246
+ callback({
247
+ type: changeType === RelationshipChangeType.Added
248
+ ? DocumentChangeType.ChildAdded
249
+ : DocumentChangeType.ChildRemoved,
250
+ documents: [],
251
+ context: {
252
+ parentId,
253
+ childId,
254
+ },
255
+ });
256
+ }, search);
257
+ return () => {
258
+ unsubscribeCreated();
259
+ unsubscribeDeleted();
260
+ unsubscribeUpdated();
261
+ unsubscribeRelationship();
262
+ };
182
263
  }
183
264
  }
184
265
  //# sourceMappingURL=reactor-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reactor-client.js","sourceRoot":"","sources":["../../../src/client/reactor-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactor-client.js","sourceRoot":"","sources":["../../../src/client/reactor-client.ts"],"names":[],"mappings":"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"}
@@ -106,22 +106,22 @@ export interface IReactorClient {
106
106
  * Applies a list of actions to a document and waits for completion
107
107
  *
108
108
  * @param documentIdentifier - Target document id or slug
109
+ * @param branch - Branch to apply actions to
109
110
  * @param actions - List of actions to apply
110
- * @param view - Optional filter containing branch and scopes information
111
111
  * @param signal - Optional abort signal to cancel the request
112
112
  * @returns The updated document
113
113
  */
114
- mutate<TDocument extends PHDocument>(documentIdentifier: string, actions: Action[], view?: ViewFilter, signal?: AbortSignal): Promise<TDocument>;
114
+ mutate<TDocument extends PHDocument>(documentIdentifier: string, branch: string, actions: Action[], signal?: AbortSignal): Promise<TDocument>;
115
115
  /**
116
116
  * Submits a list of actions to a document
117
117
  *
118
118
  * @param documentIdentifier - Target document id or slug
119
+ * @param branch - Branch to apply actions to
119
120
  * @param actions - List of actions to apply
120
- * @param view - Optional filter containing branch and scopes information
121
121
  * @param signal - Optional abort signal to cancel the request
122
122
  * @returns The job
123
123
  */
124
- mutateAsync(documentIdentifier: string, actions: Action[], view?: ViewFilter, signal?: AbortSignal): Promise<JobInfo>;
124
+ mutateAsync(documentIdentifier: string, branch: string, actions: Action[], signal?: AbortSignal): Promise<JobInfo>;
125
125
  /**
126
126
  * Renames a document and waits for completion
127
127
  *
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/types.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,33 @@
1
+ import type { IEventBus } from "#events/interfaces.js";
1
2
  import { ReactorClient } from "../client/reactor-client.js";
2
3
  import { type IJobAwaiter } from "../shared/awaiter.js";
3
4
  import type { ISigner } from "../signer/types.js";
5
+ import type { IDocumentIndexer } from "../storage/interfaces.js";
4
6
  import type { IReactorSubscriptionManager } from "../subs/types.js";
7
+ import type { ReactorBuilder } from "./reactor-builder.js";
5
8
  import type { IReactor } from "./types.js";
6
9
  /**
7
10
  * Builder class for constructing ReactorClient instances with proper configuration
8
11
  */
9
12
  export declare class ReactorClientBuilder {
13
+ private reactorBuilder?;
10
14
  private reactor?;
15
+ private eventBus?;
16
+ private documentIndexer?;
11
17
  private signer?;
12
18
  private subscriptionManager?;
13
19
  private jobAwaiter?;
14
- withReactor(reactor: IReactor): this;
20
+ /**
21
+ * Either this or withReactor must be set.
22
+ */
23
+ withReactorBuilder(reactorBuilder: ReactorBuilder): this;
24
+ /**
25
+ * Either this or withReactorBuilder must be set.
26
+ */
27
+ withReactor(reactor: IReactor, eventBus: IEventBus, documentIndexer: IDocumentIndexer): this;
15
28
  withSigner(signer: ISigner): this;
16
29
  withSubscriptionManager(subscriptionManager: IReactorSubscriptionManager): this;
17
30
  withJobAwaiter(jobAwaiter: IJobAwaiter): this;
18
- build(): ReactorClient;
31
+ build(): Promise<ReactorClient>;
19
32
  }
20
33
  //# sourceMappingURL=builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/core/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAC,CAAU;IACzB,OAAO,CAAC,mBAAmB,CAAC,CAA8B;IAC1D,OAAO,CAAC,UAAU,CAAC,CAAc;IAE1B,WAAW,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAKpC,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAKjC,uBAAuB,CAC5B,mBAAmB,EAAE,2BAA2B,GAC/C,IAAI;IAKA,cAAc,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAK7C,KAAK,IAAI,aAAa;CA6B9B"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/core/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,OAAO,CAAC,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAY;IAC7B,OAAO,CAAC,eAAe,CAAC,CAAmB;IAC3C,OAAO,CAAC,MAAM,CAAC,CAAU;IACzB,OAAO,CAAC,mBAAmB,CAAC,CAA8B;IAC1D,OAAO,CAAC,UAAU,CAAC,CAAc;IAEjC;;OAEG;IACI,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAS/D;;OAEG;IACI,WAAW,CAChB,OAAO,EAAE,QAAQ,EACjB,QAAQ,EAAE,SAAS,EACnB,eAAe,EAAE,gBAAgB,GAChC,IAAI;IAWA,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAKjC,uBAAuB,CAC5B,mBAAmB,EAAE,2BAA2B,GAC/C,IAAI;IAKA,cAAc,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAKvC,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;CAwD7C"}
@@ -7,12 +7,33 @@ import { ReactorSubscriptionManager } from "../subs/react-subscription-manager.j
7
7
  * Builder class for constructing ReactorClient instances with proper configuration
8
8
  */
9
9
  export class ReactorClientBuilder {
10
+ reactorBuilder;
10
11
  reactor;
12
+ eventBus;
13
+ documentIndexer;
11
14
  signer;
12
15
  subscriptionManager;
13
16
  jobAwaiter;
14
- withReactor(reactor) {
17
+ /**
18
+ * Either this or withReactor must be set.
19
+ */
20
+ withReactorBuilder(reactorBuilder) {
21
+ if (this.reactor) {
22
+ throw new Error("Reactor is already set");
23
+ }
24
+ this.reactorBuilder = reactorBuilder;
25
+ return this;
26
+ }
27
+ /**
28
+ * Either this or withReactorBuilder must be set.
29
+ */
30
+ withReactor(reactor, eventBus, documentIndexer) {
31
+ if (this.reactorBuilder) {
32
+ throw new Error("ReactorBuilder is already set");
33
+ }
15
34
  this.reactor = reactor;
35
+ this.eventBus = eventBus;
36
+ this.documentIndexer = documentIndexer;
16
37
  return this;
17
38
  }
18
39
  withSigner(signer) {
@@ -27,21 +48,41 @@ export class ReactorClientBuilder {
27
48
  this.jobAwaiter = jobAwaiter;
28
49
  return this;
29
50
  }
30
- build() {
31
- if (!this.reactor) {
32
- throw new Error("Reactor is required to build ReactorClient");
51
+ async build() {
52
+ let reactor;
53
+ let eventBus;
54
+ let documentIndexer;
55
+ if (this.reactorBuilder) {
56
+ reactor = await this.reactorBuilder.build();
57
+ const builderEventBus = this.reactorBuilder.events;
58
+ const builderDocumentIndexer = this.reactorBuilder.documentIndexer;
59
+ if (!builderEventBus) {
60
+ throw new Error("Event bus is required in ReactorBuilder");
61
+ }
62
+ if (!builderDocumentIndexer) {
63
+ throw new Error("DocumentIndexer must be initialized by ReactorBuilder");
64
+ }
65
+ eventBus = builderEventBus;
66
+ documentIndexer = builderDocumentIndexer;
67
+ }
68
+ else if (this.reactor && this.eventBus && this.documentIndexer) {
69
+ reactor = this.reactor;
70
+ eventBus = this.eventBus;
71
+ documentIndexer = this.documentIndexer;
72
+ }
73
+ else {
74
+ throw new Error("Either ReactorBuilder or (Reactor + EventBus + DocumentIndexer) is required");
33
75
  }
34
76
  if (!this.signer) {
35
77
  this.signer = new PassthroughSigner();
36
78
  }
37
- // Use default SubscriptionManager with default error handler if not provided
38
79
  if (!this.subscriptionManager) {
39
80
  this.subscriptionManager = new ReactorSubscriptionManager(new DefaultSubscriptionErrorHandler());
40
81
  }
41
82
  if (!this.jobAwaiter) {
42
- this.jobAwaiter = new JobAwaiter((jobId, signal) => this.reactor.getJobStatus(jobId, signal));
83
+ this.jobAwaiter = new JobAwaiter(eventBus, (jobId, signal) => reactor.getJobStatus(jobId, signal));
43
84
  }
44
- return new ReactorClient(this.reactor, this.signer, this.subscriptionManager, this.jobAwaiter);
85
+ return new ReactorClient(reactor, this.signer, this.subscriptionManager, this.jobAwaiter, documentIndexer);
45
86
  }
46
87
  }
47
88
  //# sourceMappingURL=builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/core/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAoB,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAInF;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACvB,OAAO,CAAY;IACnB,MAAM,CAAW;IACjB,mBAAmB,CAA+B;IAClD,UAAU,CAAe;IAE1B,WAAW,CAAC,OAAiB;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,UAAU,CAAC,MAAe;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,uBAAuB,CAC5B,mBAAgD;QAEhD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,cAAc,CAAC,UAAuB;QAC3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACxC,CAAC;QAED,6EAA6E;QAC7E,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,mBAAmB,GAAG,IAAI,0BAA0B,CACvD,IAAI,+BAA+B,EAAE,CACtC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CACjD,IAAI,CAAC,OAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAC1C,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,UAAU,CAChB,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/core/builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { IDocumentOperationStorage, IDocumentStorage } from "document-drive";
2
+ import type { DocumentModelModule } from "document-model";
3
+ import type { WriteCacheConfig } from "../cache/write-cache-types.js";
4
+ import type { IReadModel } from "../read-models/interfaces.js";
5
+ import type { SyncBuilder } from "../sync/sync-builder.js";
6
+ import type { ExecutorConfig, IReactor, ReactorFeatures } from "./types.js";
7
+ import type { IJobExecutorManager } from "#executor/interfaces.js";
8
+ import type { IDocumentIndexer } from "#storage/interfaces.js";
9
+ import type { IEventBus } from "../events/interfaces.js";
10
+ import type { IReadModelCoordinator } from "../read-models/interfaces.js";
11
+ import type { MigrationStrategy } from "../storage/migrations/types.js";
12
+ export type IReadModelCoordinatorFactory = (eventBus: IEventBus, readModels: IReadModel[]) => IReadModelCoordinator;
13
+ export declare class ReactorBuilder {
14
+ private documentModels;
15
+ private storage?;
16
+ private features;
17
+ private readModels;
18
+ private executorManager;
19
+ private executorConfig;
20
+ private writeCacheConfig?;
21
+ private readModelCoordinatorFactory?;
22
+ private migrationStrategy;
23
+ private syncBuilder?;
24
+ private eventBus?;
25
+ documentIndexer?: IDocumentIndexer;
26
+ withDocumentModels(models: DocumentModelModule[]): this;
27
+ withLegacyStorage(storage: IDocumentStorage & IDocumentOperationStorage): this;
28
+ withFeatures(features: ReactorFeatures): this;
29
+ withReadModel(readModel: IReadModel): this;
30
+ withReadModelCoordinatorFactory(factory: IReadModelCoordinatorFactory): this;
31
+ withExecutor(executor: IJobExecutorManager): this;
32
+ withExecutorConfig(config: Partial<ExecutorConfig>): this;
33
+ withWriteCacheConfig(config: Partial<WriteCacheConfig>): this;
34
+ setMigrationStrategy(strategy: MigrationStrategy): this;
35
+ withSync(syncBuilder: SyncBuilder): this;
36
+ withEventBus(eventBus: IEventBus): this;
37
+ get events(): IEventBus | undefined;
38
+ build(): Promise<IReactor>;
39
+ }
40
+ //# sourceMappingURL=reactor-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactor-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAO/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAEV,cAAc,EACd,QAAQ,EACR,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,MAAM,MAAM,4BAA4B,GAAG,CACzC,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,UAAU,EAAE,KACrB,qBAAqB,CAAC;AAE3B,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,OAAO,CAAC,CAA+C;IAC/D,OAAO,CAAC,QAAQ,CAAmD;IACnE,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,gBAAgB,CAAC,CAA4B;IACrD,OAAO,CAAC,2BAA2B,CAAC,CAA+B;IACnE,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,CAAY;IACtB,eAAe,CAAC,EAAE,gBAAgB,CAAC;IAE1C,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAKvD,iBAAiB,CACf,OAAO,EAAE,gBAAgB,GAAG,yBAAyB,GACpD,IAAI;IAKP,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAK7C,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAK1C,+BAA+B,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAK5E,YAAY,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAKjD,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAKzD,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAK7D,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAKvD,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAKxC,YAAY,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAKvC,IAAI,MAAM,IAAI,SAAS,GAAG,SAAS,CAElC;IAEK,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;CAiIjC"}