@multiplatform.one/frappe 6.4.2 → 6.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/dist/cjs/auth.native.js.map +1 -1
  2. package/dist/cjs/call.native.js.map +1 -1
  3. package/dist/cjs/collection.cjs +25 -9
  4. package/dist/cjs/collection.native.js +25 -9
  5. package/dist/cjs/collection.native.js.map +1 -1
  6. package/dist/cjs/common/types.native.js.map +1 -1
  7. package/dist/cjs/core/http.native.js.map +1 -1
  8. package/dist/cjs/core/types.native.js.map +1 -1
  9. package/dist/cjs/core/wire.native.js.map +1 -1
  10. package/dist/cjs/db.cjs +13 -2
  11. package/dist/cjs/db.native.js +18 -2
  12. package/dist/cjs/db.native.js.map +1 -1
  13. package/dist/cjs/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  14. package/dist/cjs/devtools/index.native.js.map +1 -1
  15. package/dist/cjs/devtools/plugin.native.js.map +1 -1
  16. package/dist/cjs/devtools/theme.native.js.map +1 -1
  17. package/dist/cjs/doctype.native.js.map +1 -1
  18. package/dist/cjs/file.native.js.map +1 -1
  19. package/dist/cjs/fixtureDb.native.js.map +1 -1
  20. package/dist/cjs/fixtures.native.js.map +1 -1
  21. package/dist/cjs/frappeApp.native.js.map +1 -1
  22. package/dist/cjs/frappeReact.cjs +10 -3
  23. package/dist/cjs/frappeReact.native.js +11 -4
  24. package/dist/cjs/frappeReact.native.js.map +1 -1
  25. package/dist/cjs/index.native.js +2 -2
  26. package/dist/cjs/index.native.js.map +1 -1
  27. package/dist/cjs/optimistic.native.js.map +1 -1
  28. package/dist/cjs/pacer.native.js.map +1 -1
  29. package/dist/cjs/plugin/index.native.js.map +1 -1
  30. package/dist/cjs/realtime.native.js.map +1 -1
  31. package/dist/cjs/sync/backfill.native.js.map +1 -1
  32. package/dist/cjs/sync/filters.native.js.map +1 -1
  33. package/dist/cjs/sync/index.cjs +6 -1
  34. package/dist/cjs/sync/index.native.js +6 -1
  35. package/dist/cjs/sync/index.native.js.map +1 -1
  36. package/dist/cjs/sync/merge.native.js.map +1 -1
  37. package/dist/cjs/sync/mutationEngine.cjs +43 -19
  38. package/dist/cjs/sync/mutationEngine.native.js +51 -21
  39. package/dist/cjs/sync/mutationEngine.native.js.map +1 -1
  40. package/dist/cjs/sync/mutationJournal.native.js.map +1 -1
  41. package/dist/cjs/sync/normalizedCache.native.js.map +1 -1
  42. package/dist/cjs/sync/persistence.native.js.map +1 -1
  43. package/dist/cjs/sync/realtime.native.js.map +1 -1
  44. package/dist/cjs/sync/rehydration.native.js.map +1 -1
  45. package/dist/cjs/sync/storage.native.js.map +1 -1
  46. package/dist/cjs/sync/subscriptionManager.cjs +4 -0
  47. package/dist/cjs/sync/subscriptionManager.native.js +4 -0
  48. package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
  49. package/dist/cjs/sync/types.native.js.map +1 -1
  50. package/dist/cjs/sync/virtualPageManager.native.js.map +1 -1
  51. package/dist/cjs/useLiveQuery.native.js.map +1 -1
  52. package/dist/cjs/util.native.js.map +1 -1
  53. package/dist/esm/auth.native.js.map +1 -1
  54. package/dist/esm/call.native.js.map +1 -1
  55. package/dist/esm/collection.mjs +24 -9
  56. package/dist/esm/collection.mjs.map +1 -1
  57. package/dist/esm/collection.native.js +25 -10
  58. package/dist/esm/collection.native.js.map +1 -1
  59. package/dist/esm/common/types.native.js.map +1 -1
  60. package/dist/esm/core/http.mjs.map +1 -1
  61. package/dist/esm/core/http.native.js +2 -2
  62. package/dist/esm/core/http.native.js.map +1 -1
  63. package/dist/esm/core/types.mjs.map +1 -1
  64. package/dist/esm/core/types.native.js.map +1 -1
  65. package/dist/esm/core/wire.native.js.map +1 -1
  66. package/dist/esm/db.mjs +13 -2
  67. package/dist/esm/db.mjs.map +1 -1
  68. package/dist/esm/db.native.js +19 -3
  69. package/dist/esm/db.native.js.map +1 -1
  70. package/dist/esm/devtools/FrappeDevtoolsPanel.native.js +2 -2
  71. package/dist/esm/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  72. package/dist/esm/devtools/index.native.js +2 -2
  73. package/dist/esm/devtools/index.native.js.map +1 -1
  74. package/dist/esm/devtools/plugin.native.js +1 -1
  75. package/dist/esm/devtools/plugin.native.js.map +1 -1
  76. package/dist/esm/devtools/theme.native.js.map +1 -1
  77. package/dist/esm/doctype.native.js +1 -1
  78. package/dist/esm/doctype.native.js.map +1 -1
  79. package/dist/esm/file.native.js.map +1 -1
  80. package/dist/esm/fixtureDb.native.js +1 -1
  81. package/dist/esm/fixtureDb.native.js.map +1 -1
  82. package/dist/esm/fixtures.native.js.map +1 -1
  83. package/dist/esm/frappeApp.native.js +7 -7
  84. package/dist/esm/frappeApp.native.js.map +1 -1
  85. package/dist/esm/frappeReact.mjs +11 -4
  86. package/dist/esm/frappeReact.mjs.map +1 -1
  87. package/dist/esm/frappeReact.native.js +17 -10
  88. package/dist/esm/frappeReact.native.js.map +1 -1
  89. package/dist/esm/index.native.js +21 -21
  90. package/dist/esm/index.native.js.map +1 -1
  91. package/dist/esm/optimistic.native.js.map +1 -1
  92. package/dist/esm/pacer.native.js +4 -4
  93. package/dist/esm/pacer.native.js.map +1 -1
  94. package/dist/esm/plugin/index.mjs.map +1 -1
  95. package/dist/esm/plugin/index.native.js.map +1 -1
  96. package/dist/esm/realtime.mjs.map +1 -1
  97. package/dist/esm/realtime.native.js +1 -1
  98. package/dist/esm/realtime.native.js.map +1 -1
  99. package/dist/esm/sync/backfill.mjs.map +1 -1
  100. package/dist/esm/sync/backfill.native.js +1 -1
  101. package/dist/esm/sync/backfill.native.js.map +1 -1
  102. package/dist/esm/sync/filters.mjs.map +1 -1
  103. package/dist/esm/sync/filters.native.js.map +1 -1
  104. package/dist/esm/sync/index.mjs +6 -1
  105. package/dist/esm/sync/index.mjs.map +1 -1
  106. package/dist/esm/sync/index.native.js +14 -9
  107. package/dist/esm/sync/index.native.js.map +1 -1
  108. package/dist/esm/sync/merge.mjs.map +1 -1
  109. package/dist/esm/sync/merge.native.js.map +1 -1
  110. package/dist/esm/sync/mutationEngine.mjs +43 -19
  111. package/dist/esm/sync/mutationEngine.mjs.map +1 -1
  112. package/dist/esm/sync/mutationEngine.native.js +55 -25
  113. package/dist/esm/sync/mutationEngine.native.js.map +1 -1
  114. package/dist/esm/sync/mutationJournal.native.js +1 -1
  115. package/dist/esm/sync/mutationJournal.native.js.map +1 -1
  116. package/dist/esm/sync/normalizedCache.native.js.map +1 -1
  117. package/dist/esm/sync/persistence.native.js +2 -2
  118. package/dist/esm/sync/persistence.native.js.map +1 -1
  119. package/dist/esm/sync/realtime.native.js +1 -1
  120. package/dist/esm/sync/realtime.native.js.map +1 -1
  121. package/dist/esm/sync/rehydration.native.js +1 -1
  122. package/dist/esm/sync/rehydration.native.js.map +1 -1
  123. package/dist/esm/sync/storage.native.js.map +1 -1
  124. package/dist/esm/sync/subscriptionManager.mjs +4 -0
  125. package/dist/esm/sync/subscriptionManager.mjs.map +1 -1
  126. package/dist/esm/sync/subscriptionManager.native.js +8 -4
  127. package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
  128. package/dist/esm/sync/types.mjs.map +1 -1
  129. package/dist/esm/sync/types.native.js.map +1 -1
  130. package/dist/esm/sync/virtualPageManager.mjs.map +1 -1
  131. package/dist/esm/sync/virtualPageManager.native.js +1 -1
  132. package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
  133. package/dist/esm/useLiveQuery.native.js.map +1 -1
  134. package/dist/esm/util.native.js.map +1 -1
  135. package/dist/jsx/collection.mjs +24 -9
  136. package/dist/jsx/collection.mjs.map +1 -1
  137. package/dist/jsx/collection.native.js +25 -9
  138. package/dist/jsx/collection.native.js.map +1 -1
  139. package/dist/jsx/core/http.mjs.map +1 -1
  140. package/dist/jsx/core/types.mjs.map +1 -1
  141. package/dist/jsx/db.mjs +13 -2
  142. package/dist/jsx/db.mjs.map +1 -1
  143. package/dist/jsx/db.native.js +18 -2
  144. package/dist/jsx/db.native.js.map +1 -1
  145. package/dist/jsx/frappeReact.mjs +11 -4
  146. package/dist/jsx/frappeReact.mjs.map +1 -1
  147. package/dist/jsx/frappeReact.native.js +10 -3
  148. package/dist/jsx/frappeReact.native.js.map +1 -1
  149. package/dist/jsx/plugin/index.mjs.map +1 -1
  150. package/dist/jsx/realtime.mjs.map +1 -1
  151. package/dist/jsx/realtime.native.js.map +1 -1
  152. package/dist/jsx/sync/backfill.mjs.map +1 -1
  153. package/dist/jsx/sync/filters.mjs.map +1 -1
  154. package/dist/jsx/sync/filters.native.js.map +1 -1
  155. package/dist/jsx/sync/index.mjs +6 -1
  156. package/dist/jsx/sync/index.mjs.map +1 -1
  157. package/dist/jsx/sync/index.native.js +6 -1
  158. package/dist/jsx/sync/index.native.js.map +1 -1
  159. package/dist/jsx/sync/merge.mjs.map +1 -1
  160. package/dist/jsx/sync/merge.native.js.map +1 -1
  161. package/dist/jsx/sync/mutationEngine.mjs +43 -19
  162. package/dist/jsx/sync/mutationEngine.mjs.map +1 -1
  163. package/dist/jsx/sync/mutationEngine.native.js +51 -21
  164. package/dist/jsx/sync/mutationEngine.native.js.map +1 -1
  165. package/dist/jsx/sync/subscriptionManager.mjs +4 -0
  166. package/dist/jsx/sync/subscriptionManager.mjs.map +1 -1
  167. package/dist/jsx/sync/subscriptionManager.native.js +4 -0
  168. package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
  169. package/dist/jsx/sync/types.mjs.map +1 -1
  170. package/dist/jsx/sync/types.native.js.map +1 -1
  171. package/dist/jsx/sync/virtualPageManager.mjs.map +1 -1
  172. package/package.json +6 -6
  173. package/src/collection.ts +53 -8
  174. package/src/db.spec.ts +70 -0
  175. package/src/db.ts +28 -2
  176. package/src/frappeReact.spec.ts +7 -1
  177. package/src/frappeReact.ts +30 -6
  178. package/src/frappeReactLiveQueryGc.spec.ts +44 -4
  179. package/src/sync/index.ts +10 -1
  180. package/src/sync/mutationEngine.ts +81 -20
  181. package/src/sync/optimisticCreateReconcile.spec.ts +372 -0
  182. package/src/sync/subscriptionManager.spec.ts +41 -0
  183. package/src/sync/subscriptionManager.ts +10 -0
  184. package/src/sync/subscriptions.spec.ts +4 -0
  185. package/src/sync/types.ts +9 -0
  186. package/types/collection.d.ts +12 -0
  187. package/types/collection.d.ts.map +1 -1
  188. package/types/db.d.ts.map +1 -1
  189. package/types/frappeReact.d.ts.map +1 -1
  190. package/types/sync/index.d.ts.map +1 -1
  191. package/types/sync/mutationEngine.d.ts.map +1 -1
  192. package/types/sync/subscriptionManager.d.ts.map +1 -1
  193. package/types/sync/types.d.ts +9 -0
  194. package/types/sync/types.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","merge_exports","FieldMergeStrategy","MergeStrategy","applyMergeStrategy","deepEqual","getFieldMergeStrategy","isChildTableArray","isChildTableRow","isObject","merge","mergeChildTable","mergeFieldValue","stripNullsFromChildRow","module","exports","_type_of","obj","Symbol","constructor","MergeStrategy2","FieldMergeStrategy2","Array","isArray","isFrappeDoc","doctype","fieldName","config","_config_doctypes_doctype_fields","_config_doctypes_doctype","_config_doctypes","_config_doctypes_doctype1","_config_doctypes1","fieldStrategy","doctypes","fields","doctypeDefault","defaultStrategy","base","client","server","strategy","hasConflict","TypeError","baseNum","clientNum","serverNum","clientDelta","serverDelta","baseNum1","clientNum1","serverNum1","Math","max","baseNum2","clientNum2","serverNum2","min","baseArray","baseSet","Set","clientSet","serverSet","result","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","item","has","add","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","item1","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","item2","delete","options","arguments","length","isChildTable","merged","conflicts","allKeys","keys","forEach","key2","baseValue","clientValue","serverValue","clientChanged","serverChanged","baseObject","objectMergeResult","mergeObject","hasConflicts","push","clientArray","serverArray","rowsByName","Map","row","set","row1","existingRow","assign"],"sources":["../../../src/sync/merge.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","FieldMergeStrategy","to","from","except","desc","key","call","__toCommonJS","mod","value","merge_exports","MergeStrategy","applyMergeStrategy","deepEqual","getFieldMergeStrategy","isChildTableArray","isChildTableRow","isObject","merge","mergeChildTable","mergeFieldValue","stripNullsFromChildRow","module","exports","_type_of","obj","Symbol","constructor","MergeStrategy2","FieldMergeStrategy2","Array","isArray","isFrappeDoc","doctype","fieldName","config","_config_doctypes_doctype_fields","_config_doctypes_doctype","_config_doctypes","_config_doctypes_doctype1","_config_doctypes1","fieldStrategy","doctypes","fields","doctypeDefault","defaultStrategy","base","client","server","strategy","hasConflict","TypeError","baseNum","clientNum","serverNum","clientDelta","serverDelta","baseNum1","clientNum1","serverNum1","Math","max","baseNum2","clientNum2","serverNum2","min","baseArray","baseSet","Set","clientSet","serverSet","result","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","item","has","add","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","item1","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","item2","delete","options","arguments","length","isChildTable","merged","conflicts","allKeys","keys","forEach","key2","baseValue","clientValue","serverValue","clientChanged","serverChanged","baseObject","objectMergeResult","mergeObject","hasConflicts","push","clientArray","serverArray","rowsByName","Map","row","set","row1","existingRow","assign"],"sources":["../../../src/sync/merge.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -87,9 +87,14 @@ class MutationEngine {
87
87
  this.mutationJournal.confirm(mutation.mutationId);
88
88
  if (result.data) {
89
89
  this.normalizedCache.upsert(result.data);
90
- if (mutation.operation === Operation.Create && mutation.doc.name !== result.data.name) {
91
- this.temporaryIdToRealNameMap.set(mutation.doc.name, result.data.name);
92
- this.rehydrationManager.registerTempIdMapping(mutation.doc.name, result.data.name);
90
+ if (mutation.operation === Operation.Create) {
91
+ const temporaryName = mutation.temporaryName ?? mutation.doc.name;
92
+ if (temporaryName && result.data.name && temporaryName !== result.data.name) {
93
+ this.handleTemporaryToRealMapping(mutation.doc.doctype, temporaryName, result.data.name);
94
+ this.rehydrationManager.registerTempIdMapping(temporaryName, result.data.name);
95
+ } else if (temporaryName) {
96
+ this.globalOptimisticDocIds.get(mutation.doc.doctype)?.delete(temporaryName);
97
+ }
93
98
  }
94
99
  }
95
100
  if (this.options.onMutationSuccess) {
@@ -169,7 +174,10 @@ class MutationEngine {
169
174
  const values = mutation.operation === Operation.Delete ? void 0 : mutation.operation === Operation.Create ? mutation.doc : mutation.doc;
170
175
  this.mutationJournal.add(mutation.mutationId, {
171
176
  doctype: doc.doctype,
172
- docname: doc.name,
177
+ // Creates journal the optimistic identity (consumer placeholder or
178
+ // engine-generated temp id) so page refreshes keep the pending row
179
+ // and rollback can evict it even when doc.name was never set.
180
+ docname: mutation.operation === Operation.Create ? mutation.temporaryName ?? doc.name : doc.name,
173
181
  values,
174
182
  operation: mutation.operation,
175
183
  version,
@@ -236,6 +244,7 @@ class MutationEngine {
236
244
  }
237
245
  async handleOptimisticCreate(mutation) {
238
246
  const temporaryName = mutation.doc.name || `tmp_${cryptoRandomId()}`;
247
+ mutation.temporaryName = temporaryName;
239
248
  const optimisticDoc = {
240
249
  ...mutation.doc,
241
250
  name: temporaryName
@@ -280,9 +289,18 @@ class MutationEngine {
280
289
  }
281
290
  }
282
291
  async handleServerCreate(mutation) {
283
- const created = await this.db.createDoc(mutation.doc);
292
+ const created = await this.db.createDoc({
293
+ ...mutation.doc,
294
+ client_mutation_id: mutation.mutationId
295
+ });
284
296
  const realName = created?.name;
285
- const temporaryName = mutation.doc.name;
297
+ const temporaryName = mutation.temporaryName ?? mutation.doc.name;
298
+ if (realName) {
299
+ this.normalizedCache.upsert({
300
+ ...created,
301
+ doctype: created.doctype || mutation.doc.doctype
302
+ });
303
+ }
286
304
  if (realName && temporaryName && realName !== temporaryName) {
287
305
  this.handleTemporaryToRealMapping(mutation.doc.doctype, temporaryName, realName);
288
306
  this.rehydrationManager.registerTempIdMapping(temporaryName, realName);
@@ -292,9 +310,6 @@ class MutationEngine {
292
310
  globalDocs.delete(temporaryName);
293
311
  }
294
312
  }
295
- if (!this.realtime?.isHealthy()) {
296
- this.normalizedCache.upsert(created);
297
- }
298
313
  }
299
314
  async handleServerUpdate(mutation, _version) {
300
315
  await this.db.updateDoc(mutation.doc);
@@ -320,7 +335,8 @@ class MutationEngine {
320
335
  }
321
336
  for (const subscription of this.subscriptionManager.getAllSubscriptions().values()) {
322
337
  if (subscription.query.doctype !== doctype) continue;
323
- subscription.docIds = subscription.docIds.map(x => x === temporaryName ? realName : x);
338
+ if (!subscription.docIds.includes(temporaryName)) continue;
339
+ subscription.docIds = subscription.docIds.includes(realName) ? subscription.docIds.filter(id => id !== temporaryName) : subscription.docIds.map(id => id === temporaryName ? realName : id);
324
340
  }
325
341
  this.normalizedCache.remove({
326
342
  doctype,
@@ -332,7 +348,7 @@ class MutationEngine {
332
348
  const docname = mutation.doc.name;
333
349
  const doctype = mutation.doc.doctype;
334
350
  const realName = docname && this.temporaryIdToRealNameMap.get(docname) || docname;
335
- if (realName && mutation.operation !== Operation.Delete) {
351
+ if (realName && mutation.operation === Operation.Update) {
336
352
  targets.push({
337
353
  doctype,
338
354
  name: realName
@@ -371,12 +387,6 @@ class MutationEngine {
371
387
  switch (mutation.operation) {
372
388
  case Operation.Create:
373
389
  await this.handleFailedCreate(mutation);
374
- if (docname) {
375
- this.normalizedCache.remove({
376
- doctype,
377
- name: docname
378
- });
379
- }
380
390
  break;
381
391
  case Operation.Update:
382
392
  if (entry?.snapshot && docname) {
@@ -404,7 +414,7 @@ class MutationEngine {
404
414
  }
405
415
  }
406
416
  async handleFailedCreate(mutation) {
407
- const temporaryName = mutation.doc.name;
417
+ const temporaryName = mutation.operation === Operation.Create ? mutation.temporaryName ?? mutation.doc.name : mutation.doc.name;
408
418
  const doctype = mutation.doc.doctype;
409
419
  if (temporaryName) {
410
420
  const globalDocs = this.globalOptimisticDocIds.get(doctype);
@@ -415,6 +425,10 @@ class MutationEngine {
415
425
  if (subscription.query.doctype !== doctype) continue;
416
426
  subscription.docIds = subscription.docIds.filter(id => id !== temporaryName);
417
427
  }
428
+ this.normalizedCache.remove({
429
+ doctype,
430
+ name: temporaryName
431
+ });
418
432
  }
419
433
  }
420
434
  async handleConflict(mutation, entry) {
@@ -606,12 +620,22 @@ class MutationEngine {
606
620
  }
607
621
  try {
608
622
  if (entry.operation === Operation.Create) {
609
- await this.db.createDoc({
623
+ const created = await this.db.createDoc({
610
624
  ...entry.values,
611
625
  client_mutation_id: id,
612
626
  doctype: entry.doctype,
613
627
  name: entry.docname || cryptoRandomId()
614
628
  });
629
+ if (created?.name) {
630
+ this.normalizedCache.upsert({
631
+ ...created,
632
+ doctype: created.doctype || entry.doctype
633
+ });
634
+ if (entry.docname && created.name !== entry.docname) {
635
+ this.handleTemporaryToRealMapping(entry.doctype, entry.docname, created.name);
636
+ this.rehydrationManager.registerTempIdMapping(entry.docname, created.name);
637
+ }
638
+ }
615
639
  } else if (entry.operation === Operation.Update && entry.docname) {
616
640
  await this.db.updateDoc({
617
641
  ...entry.values,
@@ -1 +1 @@
1
- {"version":3,"names":["Debouncer","matchesFilters","merge","MergeStrategy","Order","Operation","PendingRehydrationType","PlacementType","RehydrationReason","Status","MutationEngine","temporaryIdToRealNameMap","Map","globalOptimisticDocIds","pendingBatch","batchDebouncer","db","realtime","normalizedCache","mutationJournal","subscriptionManager","rehydrationManager","options","constructor","batchDelay","flushBatch","wait","queueForBatch","mutation","Promise","resolve","reject","push","maxSize","batchMaxSize","length","maybeExecute","batch","batchMutations","map","operationMap","Create","Update","Delete","type","operation","doctype","doc","name","data","results","mutations","atomic","batchAtomic","i","result","success","confirm","mutationId","upsert","set","registerTempIdMapping","onMutationSuccess","error","Error","fail","err","forceBatchFlush","cancel","mutate","onMutationStart","version","cachedDoc","get","versionField","versionFields","cachedVersion","handleOptimisticUpdate","handleOptimisticCreate","getDoc","onTrace","event","details","values","add","docname","status","Pending","snapshot","enableBatching","subscription","getAllSubscriptions","query","scheduleRehydration","handleMutationError","handleServerCreate","handleServerUpdate","handleServerDelete","isHealthy","refetchAffectedDocs","onOptimisticApply","updateSubscriptionMembership","temporaryName","cryptoRandomId","optimisticDoc","has","Set","globalDocIds","matches","filters","orderBy","limit","docIds","placement","determineOptimisticPlacement","Before","metadata","itemsBeforePage","After","itemsAfterPage","Unknown","pendingRehydration","FullRefresh","Uncertain","Within","includes","insertDocumentIntoSubscription","created","createDoc","realName","handleTemporaryToRealMapping","globalDocs","delete","_version","updateDoc","remove","removeFromAllSubscriptions","deleteDoc","x","targets","affected","target","fresh","onMutationError","entry","isOffline","navigator","onLine","rollbackOptimisticState","errorWithStatus","handleConflict","handleFailedCreate","replace","restoredDoc","filter","id","latest","base","clientPartial","fullClient","mergeConfig","buildMergeConfig","nonOverlap","hasConflicts","merged","newId","client_mutation_id","base_modified","refreshed","onConflict","candidate","boundaries","firstItem","lastItem","determinePlacementWithBoundaries","order","first","last","sortFields","parseSortFields","field","isAsc","candidateValue","firstValue","lastValue","orderByArray","Array","isArray","ob","Desc","hasNameField","some","sf","replayPending","anyFailed","onReplayStart","pendingMutations","listPending","onReplayComplete","rateLimit","replayRateLimit","processMutation","onRetry","errorClass","classifyError","notifyMutationError","delayMs","Math","ceil","indexOf","setTimeout","response","fmc","fieldMergeConfig","doctypes","dt","fields","Object","entries","defaultStrategy","ServerWins","getTemporaryIdToRealNameMap","clearTemporaryMappings","clear","dispose","crypto","randomUUID","random","toString","slice"],"sources":["../../../src/sync/mutationEngine.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAI1B,SAASC,cAAA,QAAsB;AAC/B,SAASC,KAAA,EAAOC,aAAA,QAAqB;AAOrC,SAASC,KAAA,QAAa;AACtB,SACEC,SAAA,EACAC,sBAAA,EACAC,aAAA,EACAC,iBAAA,EACAC,MAAA,QACK;AAuBA,MAAMC,cAAA,CAAe;EAClBC,wBAAA,GAA2B,mBAAIC,GAAA,CAAoB;EACnDC,sBAAA,GAAyB,mBAAID,GAAA,CAAyB;EAAA;EAEtDE,YAAA,GAAsD,EAAC;EAAA;EAEvDC,cAAA;EACSC,EAAA;EACAC,QAAA;EACAC,eAAA;EACAC,eAAA;EACAC,mBAAA;EACAC,kBAAA;EACAC,OAAA;EAEjBC,YACEP,EAAA,EACAC,QAAA,EACAC,eAAA,EACAC,eAAA,EACAC,mBAAA,EACAC,kBAAA,EACAC,OAAA,GAAuB,CAAC,GACxB;IACA,KAAKN,EAAA,GAAKA,EAAA;IACV,KAAKC,QAAA,GAAWA,QAAA;IAChB,KAAKC,eAAA,GAAkBA,eAAA;IACvB,KAAKC,eAAA,GAAkBA,eAAA;IACvB,KAAKC,mBAAA,GAAsBA,mBAAA;IAC3B,KAAKC,kBAAA,GAAqBA,kBAAA;IAC1B,KAAKC,OAAA,GAAUA,OAAA;IAEf,MAAME,UAAA,GAAaF,OAAA,CAAQE,UAAA,IAAc;IACzC,KAAKT,cAAA,GAAiB,IAAIf,SAAA,CAAU,MAAM,KAAKyB,UAAA,CAAW,GAAG;MAAEC,IAAA,EAAMF;IAAW,CAAC;EACnF;EAAA;AAAA;AAAA;AAAA;EAMQG,cACNC,QAAA,EACiC;IACjC,OAAO,IAAIC,OAAA,CAAQ,CAACC,OAAA,EAASC,MAAA,KAAW;MACtC,KAAKjB,YAAA,CAAakB,IAAA,CAAK;QACrBJ,QAAA;QACAE,OAAA;QACAC;MACF,CAAC;MAGD,MAAME,OAAA,GAAU,KAAKX,OAAA,CAAQY,YAAA,IAAgB;MAC7C,IAAI,KAAKpB,YAAA,CAAaqB,MAAA,IAAUF,OAAA,EAAS;QACvC,KAAKR,UAAA,CAAW;MAClB,OAAO;QAEL,KAAKV,cAAA,CAAeqB,YAAA,CAAa;MACnC;IACF,CAAC;EACH;EAAA;AAAA;AAAA;EAKA,MAAcX,WAAA,EAA4B;IACxC,IAAI,KAAKX,YAAA,CAAaqB,MAAA,KAAW,GAAG;IAGpC,MAAME,KAAA,GAAQ,CAAC,GAAG,KAAKvB,YAAY;IACnC,KAAKA,YAAA,GAAe,EAAC;IAErB,IAAI;MAEF,MAAMwB,cAAA,GAAiDD,KAAA,CAAME,GAAA,CAAI,CAAC;QAAEX;MAAS,MAAM;QACjF,MAAMY,YAAA,GAAkE;UACtE,CAACnC,SAAA,CAAUoC,MAAM,GAAG;UACpB,CAACpC,SAAA,CAAUqC,MAAM,GAAG;UACpB,CAACrC,SAAA,CAAUsC,MAAM,GAAG;QACtB;QAEA,OAAO;UACLC,IAAA,EAAMJ,YAAA,CAAaZ,QAAA,CAASiB,SAAS;UACrCC,OAAA,EAASlB,QAAA,CAASmB,GAAA,CAAID,OAAA;UACtBE,IAAA,EAAMpB,QAAA,CAASmB,GAAA,CAAIC,IAAA;UACnBC,IAAA,EAAMrB,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,GAAS,SAAYf,QAAA,CAASmB;QACvE;MACF,CAAC;MAGD,MAAMG,OAAA,GAAU,MAAM,KAAKlC,EAAA,CAAGsB,cAAA,CAAe;QAC3Ca,SAAA,EAAWb,cAAA;QACXc,MAAA,EAAQ,KAAK9B,OAAA,CAAQ+B,WAAA,IAAe;MACtC,CAAC;MAGD,SAASC,CAAA,GAAI,GAAGA,CAAA,GAAIjB,KAAA,CAAMF,MAAA,EAAQmB,CAAA,IAAK;QACrC,MAAM;UAAE1B,QAAA;UAAUE,OAAA;UAASC;QAAO,IAAIM,KAAA,CAAMiB,CAAC;QAC7C,MAAMC,MAAA,GAASL,OAAA,CAAQI,CAAC;QAExB,IAAIC,MAAA,CAAOC,OAAA,EAAS;UAElB,KAAKrC,eAAA,CAAgBsC,OAAA,CAAQ7B,QAAA,CAAS8B,UAAU;UAGhD,IAAIH,MAAA,CAAON,IAAA,EAAM;YACf,KAAK/B,eAAA,CAAgByC,MAAA,CAAOJ,MAAA,CAAON,IAAI;YAGvC,IAAIrB,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,IAAUb,QAAA,CAASmB,GAAA,CAAIC,IAAA,KAASO,MAAA,CAAON,IAAA,CAAKD,IAAA,EAAM;cACrF,KAAKrC,wBAAA,CAAyBiD,GAAA,CAAIhC,QAAA,CAASmB,GAAA,CAAIC,IAAA,EAAOO,MAAA,CAAON,IAAA,CAAKD,IAAI;cACtE,KAAK3B,kBAAA,CAAmBwC,qBAAA,CAAsBjC,QAAA,CAASmB,GAAA,CAAIC,IAAA,EAAOO,MAAA,CAAON,IAAA,CAAKD,IAAI;YACpF;UACF;UAEA,IAAI,KAAK1B,OAAA,CAAQwC,iBAAA,EAAmB;YAClC,KAAKxC,OAAA,CAAQwC,iBAAA,CAAkBlC,QAAQ;UACzC;UAEAE,OAAA,CAAQyB,MAAA,CAAON,IAAI;QACrB,OAAO;UAEL,MAAMc,KAAA,GAAQ,IAAIC,KAAA,CAAMT,MAAA,CAAOQ,KAAA,IAAS,uBAAuB;UAC/D,KAAK5C,eAAA,CAAgB8C,IAAA,CAAKrC,QAAA,CAAS8B,UAAU;UAC7C3B,MAAA,CAAOgC,KAAK;QACd;MACF;IACF,SAASG,GAAA,EAAK;MAEZ,WAAW;QAAEtC,QAAA;QAAUG;MAAO,KAAKM,KAAA,EAAO;QACxC,KAAKlB,eAAA,CAAgB8C,IAAA,CAAKrC,QAAA,CAAS8B,UAAU;QAC7C3B,MAAA,CAAOmC,GAAG;MACZ;IACF;EACF;EAAA;AAAA;AAAA;EAKA,MAAMC,gBAAA,EAAiC;IACrC,KAAKpD,cAAA,CAAeqD,MAAA,CAAO;IAC3B,MAAM,KAAK3C,UAAA,CAAW;EACxB;EAEA,MAAM4C,OAAmCzC,QAAA,EAA0B;IACjE,IAAI,KAAKN,OAAA,CAAQgD,eAAA,EAAiB,KAAKhD,OAAA,CAAQgD,eAAA,CAAgB1C,QAAQ;IACvE,MAAM;MAAEmB;IAAI,IAAInB,QAAA;IAChB,KACGA,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUqC,MAAA,IAAUd,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,KAC7E,CAACI,GAAA,CAAIC,IAAA,EACL;MACA,MAAM,IAAIgB,KAAA,CAAM,kDAAkD;IACpE;IACA,IAAIO,OAAA,GAAU3C,QAAA,CAAS2C,OAAA;IACvB,IAAIC,SAAA,GAAkD;IACtD,IAAIzB,GAAA,CAAIC,IAAA,EAAM;MACZwB,SAAA,GAAY,KAAKtD,eAAA,CAAgBuD,GAAA,CAAI;QACnC3B,OAAA,EAASC,GAAA,CAAID,OAAA;QACbE,IAAA,EAAMD,GAAA,CAAIC;MACZ,CAAC;IACH;IACA,IAAIuB,OAAA,KAAY,UAAaxB,GAAA,CAAIC,IAAA,EAAM;MACrC,MAAM0B,YAAA,GACJ,KAAKpD,OAAA,CAAQqD,aAAA,GAAgB5B,GAAA,CAAID,OAAO,KAAK,KAAKxB,OAAA,CAAQoD,YAAA,IAAgB;MAC5E,MAAME,aAAA,GAAgBJ,SAAA,GAAYA,SAAA,CAAUE,YAAY,IAAI;MAC5D,IAAI,OAAOE,aAAA,KAAkB,UAAUL,OAAA,GAAUK,aAAA;IACnD;IACA,IAAIhD,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUqC,MAAA,IAAUK,GAAA,CAAIC,IAAA,EAAM;MACvD,MAAM,KAAK6B,sBAAA,CAAuBjD,QAAA,EAA2C4C,SAAS;IACxF;IACA,IAAI5C,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,EAAQ;MAC3C,MAAM,KAAKqC,sBAAA,CAAuBlD,QAAyC;IAC7E;IACA,IACE2C,OAAA,KAAY,UACZxB,GAAA,CAAIC,IAAA,KACHpB,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUqC,MAAA,IAAUd,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,KAC7E,CAAC6B,SAAA,EACD;MACA,IAAI;QACFA,SAAA,GAAY,MAAM,KAAKxD,EAAA,CAAG+D,MAAA,CAAOhC,GAAA,CAAID,OAAA,EAASC,GAAA,CAAIC,IAAI;QACtD,MAAM0B,YAAA,GACJ,KAAKpD,OAAA,CAAQqD,aAAA,GAAgB5B,GAAA,CAAID,OAAO,KAAK,KAAKxB,OAAA,CAAQoD,YAAA,IAAgB;QAC5E,MAAME,aAAA,GAAgBJ,SAAA,GAAYA,SAAA,CAAUE,YAAY,IAAI;QAC5D,IAAI,OAAOE,aAAA,KAAkB,UAAUL,OAAA,GAAUK,aAAA;QACjD,KAAK1D,eAAA,CAAgByC,MAAA,CAAOa,SAAS;MACvC,SAASN,GAAA,EAAK;QAGZ,IAAI,KAAK5C,OAAA,CAAQ0D,OAAA,EAAS;UACxB,KAAK1D,OAAA,CAAQ0D,OAAA,CAAQ;YACnBC,KAAA,EAAO;YACPC,OAAA,EAAS;cAAEpC,OAAA,EAASC,GAAA,CAAID,OAAA;cAASE,IAAA,EAAMD,GAAA,CAAIC,IAAA;cAAMe,KAAA,EAAOG;YAAI;UAC9D,CAAC;QACH;MACF;IACF;IACA,MAAMiB,MAAA,GACJvD,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,GAC7B,SACAf,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,GAC/Bb,QAAA,CAASmB,GAAA,GACTnB,QAAA,CAASmB,GAAA;IACjB,KAAK5B,eAAA,CAAgBiE,GAAA,CAAIxD,QAAA,CAAS8B,UAAA,EAAY;MAC5CZ,OAAA,EAASC,GAAA,CAAID,OAAA;MACbuC,OAAA,EAAStC,GAAA,CAAIC,IAAA;MACbmC,MAAA;MACAtC,SAAA,EAAWjB,QAAA,CAASiB,SAAA;MACpB0B,OAAA;MACAe,MAAA,EAAQ7E,MAAA,CAAO8E,OAAA;MACfC,QAAA,EAAUzC,GAAA,CAAIC,IAAA,GAAOwB,SAAA,GAAY;IACnC,CAAC;IAGD,IAAI,KAAKlD,OAAA,CAAQmE,cAAA,EAAgB;MAC/B,IAAI;QACF,MAAM,KAAK9D,aAAA,CAAcC,QAAQ;QAEjC,IAAIA,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,EAAQ;UAC3C,WAAWiD,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;YAClF,IAAIO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYlB,QAAA,CAASmB,GAAA,CAAID,OAAA,EAAS;cACvD,KAAKzB,kBAAA,CAAmBwE,mBAAA,CAAoBH,YAAA,EAAclF,iBAAA,CAAkBiC,MAAM;YACpF;UACF;QACF;MACF,SAASyB,GAAA,EAAK;QACZ,MAAM,KAAK4B,mBAAA,CAAoBlE,QAAA,EAAUsC,GAAG;QAC5C,MAAMA,GAAA;MACR;MACA;IACF;IAGA,IAAI;MACF,IAAItC,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,EAAQ;QAC3C,MAAM,KAAKsD,kBAAA,CAAmBnE,QAAQ;MACxC,WAAWA,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUqC,MAAA,IAAUK,GAAA,CAAIC,IAAA,EAAM;QAC9D,MAAM,KAAKgD,kBAAA,CAAmBpE,QAAA,EAAU2C,OAAO;MACjD,WAAW3C,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,IAAUI,GAAA,CAAIC,IAAA,EAAM;QAC9D,MAAM,KAAKiD,kBAAA,CAAmBrE,QAAA,EAAU2C,OAAO;MACjD;MACA,KAAKpD,eAAA,CAAgBsC,OAAA,CAAQ7B,QAAA,CAAS8B,UAAU;MAChD,IAAI,KAAKpC,OAAA,CAAQwC,iBAAA,EAAmB;QAClC,KAAKxC,OAAA,CAAQwC,iBAAA,CAAkBlC,QAAQ;MACzC;MACA,IAAIA,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,EAAQ;QAC3C,WAAWiD,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;UAClF,IAAIO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYlB,QAAA,CAASmB,GAAA,CAAID,OAAA,EAAS;YACvD,KAAKzB,kBAAA,CAAmBwE,mBAAA,CAAoBH,YAAA,EAAclF,iBAAA,CAAkBiC,MAAM;UACpF;QACF;MACF;MACA,IAAI,CAAC,KAAKxB,QAAA,EAAUiF,SAAA,CAAU,GAAG;QAC/B,MAAM,KAAKC,mBAAA,CAAoBvE,QAAQ;MACzC;IACF,SAASsC,GAAA,EAAK;MACZ,MAAM,KAAK4B,mBAAA,CAAoBlE,QAAA,EAAUsC,GAAG;MAC5C,MAAMA,GAAA;IACR;EACF;EAEA,MAAcW,uBACZjD,QAAA,EACA4C,SAAA,EACA;IACA,MAAMzB,GAAA,GAAMyB,SAAA,GAAY;MAAE,GAAGA,SAAA;MAAW,GAAG5C,QAAA,CAASmB;IAAI,IAAInB,QAAA,CAASmB,GAAA;IACrE,KAAK7B,eAAA,CAAgByC,MAAA,CAAOZ,GAAG;IAC/B,IAAI,KAAKzB,OAAA,CAAQ8E,iBAAA,EAAmB;MAClC,KAAK9E,OAAA,CAAQ8E,iBAAA,CAAkB;QAC7BtD,OAAA,EAASlB,QAAA,CAASmB,GAAA,CAAID,OAAA;QACtBE,IAAA,EAAMpB,QAAA,CAASmB,GAAA,CAAIC,IAAA;QACnBH,SAAA,EAAWjB,QAAA,CAASiB;MACtB,CAAC;IACH;IACA,KAAKzB,mBAAA,CAAoBiF,4BAAA,CAA6BtD,GAAG;EAC3D;EAEA,MAAc+B,uBAAmDlD,QAAA,EAAgC;IAC/F,MAAM0E,aAAA,GAAgB1E,QAAA,CAASmB,GAAA,CAAIC,IAAA,IAAQ,OAAOuD,cAAA,CAAe,CAAC;IAClE,MAAMC,aAAA,GAAgB;MACpB,GAAG5E,QAAA,CAASmB,GAAA;MACZC,IAAA,EAAMsD;IACR;IACA,KAAKpF,eAAA,CAAgByC,MAAA,CAAO6C,aAAa;IACzC,IAAI,CAAC,KAAK3F,sBAAA,CAAuB4F,GAAA,CAAI7E,QAAA,CAASmB,GAAA,CAAID,OAAO,GAAG;MAC1D,KAAKjC,sBAAA,CAAuB+C,GAAA,CAAIhC,QAAA,CAASmB,GAAA,CAAID,OAAA,EAAS,mBAAI4D,GAAA,CAAI,CAAC;IACjE;IACA,MAAMC,YAAA,GAAe,KAAK9F,sBAAA,CAAuB4D,GAAA,CAAI7C,QAAA,CAASmB,GAAA,CAAID,OAAO;IACzE,WAAW4C,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;MAClF,IAAIO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYlB,QAAA,CAASmB,GAAA,CAAID,OAAA,EAAS;MACzD,MAAM8D,OAAA,GAAU3G,cAAA,CAAeuG,aAAA,EAAed,YAAA,CAAaE,KAAA,CAAMiB,OAAO;MACxE,IAAI,CAACD,OAAA,EAAS;MACd,IAAID,YAAA,CAAaF,GAAA,CAAIH,aAAa,GAAG;QACnC;MACF;MACA,IACEZ,YAAA,CAAaE,KAAA,CAAMkB,OAAA,IACnB,OAAOpB,YAAA,CAAaE,KAAA,CAAMmB,KAAA,KAAU,YACpCrB,YAAA,CAAaE,KAAA,CAAMmB,KAAA,GAAQ,KAC3BrB,YAAA,CAAasB,MAAA,CAAO7E,MAAA,GAAS,GAC7B;QACA,MAAM8E,SAAA,GAAY,KAAKC,4BAAA,CAA6BxB,YAAA,EAAcc,aAAa;QAC/E,QAAQS,SAAA;UACN,KAAK1G,aAAA,CAAc4G,MAAA;YACjB,IAAIzB,YAAA,CAAa0B,QAAA,EAAU;cACzB1B,YAAA,CAAa0B,QAAA,CAASC,eAAA,IACnB3B,YAAA,CAAa0B,QAAA,CAASC,eAAA,IAAmB,KAAK;YACnD;YACA;UACF,KAAK9G,aAAA,CAAc+G,KAAA;YACjB,IAAI5B,YAAA,CAAa0B,QAAA,EAAU;cACzB1B,YAAA,CAAa0B,QAAA,CAASG,cAAA,IACnB7B,YAAA,CAAa0B,QAAA,CAASG,cAAA,IAAkB,KAAK;YAClD;YACA;UACF,KAAKhH,aAAA,CAAciH,OAAA;YACjB9B,YAAA,CAAa+B,kBAAA,GAAqBnH,sBAAA,CAAuBoH,WAAA;YACzD,KAAKrG,kBAAA,CAAmBwE,mBAAA,CAAoBH,YAAA,EAAclF,iBAAA,CAAkBmH,SAAS;YACrF;UACF,KAAKpH,aAAA,CAAcqH,MAAA;YACjB;QACJ;MACF;MACA,IAAI,CAAClC,YAAA,CAAasB,MAAA,CAAOa,QAAA,CAASvB,aAAa,GAAG;QAChD,KAAKlF,mBAAA,CAAoB0G,8BAAA,CAA+BpC,YAAA,EAAcc,aAAa;QACnFG,YAAA,CAAavB,GAAA,CAAIkB,aAAa;MAChC;IACF;EACF;EAEA,MAAcP,mBAA+CnE,QAAA,EAAgC;IAC3F,MAAMmG,OAAA,GAAU,MAAM,KAAK/G,EAAA,CAAGgH,SAAA,CAA2BpG,QAAA,CAASmB,GAAG;IAErE,MAAMkF,QAAA,GAAWF,OAAA,EAAS/E,IAAA;IAE1B,MAAMsD,aAAA,GAAgB1E,QAAA,CAASmB,GAAA,CAAIC,IAAA;IAEnC,IAAIiF,QAAA,IAAY3B,aAAA,IAAiB2B,QAAA,KAAa3B,aAAA,EAAe;MAC3D,KAAK4B,4BAAA,CAA6BtG,QAAA,CAASmB,GAAA,CAAID,OAAA,EAASwD,aAAA,EAAe2B,QAAQ;MAE/E,KAAK5G,kBAAA,CAAmBwC,qBAAA,CAAsByC,aAAA,EAAe2B,QAAQ;IACvE,WAAW3B,aAAA,EAAe;MAExB,MAAM6B,UAAA,GAAa,KAAKtH,sBAAA,CAAuB4D,GAAA,CAAI7C,QAAA,CAASmB,GAAA,CAAID,OAAO;MACvE,IAAIqF,UAAA,EAAY;QACdA,UAAA,CAAWC,MAAA,CAAO9B,aAAa;MACjC;IACF;IAEA,IAAI,CAAC,KAAKrF,QAAA,EAAUiF,SAAA,CAAU,GAAG;MAC/B,KAAKhF,eAAA,CAAgByC,MAAA,CAAOoE,OAAO;IACrC;EACF;EAEA,MAAc/B,mBACZpE,QAAA,EACAyG,QAAA,EACA;IAEA,MAAM,KAAKrH,EAAA,CAAGsH,SAAA,CAAU1G,QAAA,CAASmB,GAAG;EACtC;EAEA,MAAckD,mBACZrE,QAAA,EACAyG,QAAA,EACA;IAEA,KAAKnH,eAAA,CAAgBqH,MAAA,CAAO;MAC1BzF,OAAA,EAASlB,QAAA,CAASmB,GAAA,CAAID,OAAA;MACtBE,IAAA,EAAMpB,QAAA,CAASmB,GAAA,CAAIC;IACrB,CAAC;IACD,KAAK5B,mBAAA,CAAoBoH,0BAAA,CAA2B5G,QAAA,CAASmB,GAAA,CAAID,OAAA,EAASlB,QAAA,CAASmB,GAAA,CAAIC,IAAI;IAG3F,WAAW0C,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;MAClF,IACEO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYlB,QAAA,CAASmB,GAAA,CAAID,OAAA,IAC5C4C,YAAA,CAAasB,MAAA,CAAOa,QAAA,CAASjG,QAAA,CAASmB,GAAA,CAAIC,IAAI,GAC9C;QACA,KAAK3B,kBAAA,CAAmBwE,mBAAA,CAAoBH,YAAA,EAAclF,iBAAA,CAAkBmC,MAAM;MACpF;IACF;IAEA,MAAM,KAAK3B,EAAA,CAAGyH,SAAA,CAAU7G,QAAA,CAASmB,GAAG;EACtC;EAEQmF,6BAA6BpF,OAAA,EAAiBwD,aAAA,EAAuB2B,QAAA,EAAkB;IAC7F,KAAKtH,wBAAA,CAAyBiD,GAAA,CAAI0C,aAAA,EAAe2B,QAAQ;IAEzD,MAAME,UAAA,GAAa,KAAKtH,sBAAA,CAAuB4D,GAAA,CAAI3B,OAAO;IAC1D,IAAIqF,UAAA,EAAY;MACdA,UAAA,CAAWC,MAAA,CAAO9B,aAAa;IAEjC;IAEA,WAAWZ,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;MAClF,IAAIO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYA,OAAA,EAAS;MAC5C4C,YAAA,CAAasB,MAAA,GAAStB,YAAA,CAAasB,MAAA,CAAOzE,GAAA,CAAKmG,CAAA,IAAOA,CAAA,KAAMpC,aAAA,GAAgB2B,QAAA,GAAWS,CAAE;IAC3F;IAEA,KAAKxH,eAAA,CAAgBqH,MAAA,CAAO;MAAEzF,OAAA;MAASE,IAAA,EAAMsD;IAAc,CAAC;EAC9D;EAEA,MAAcH,oBAAgDvE,QAAA,EAA0B;IAEtF,MAAM+G,OAAA,GAAU,EAAC;IACjB,MAAMtD,OAAA,GAAUzD,QAAA,CAASmB,GAAA,CAAIC,IAAA;IAC7B,MAAMF,OAAA,GAAUlB,QAAA,CAASmB,GAAA,CAAID,OAAA;IAC7B,MAAMmF,QAAA,GAAY5C,OAAA,IAAW,KAAK1E,wBAAA,CAAyB8D,GAAA,CAAIY,OAAO,KAAMA,OAAA;IAG5E,IAAI4C,QAAA,IAAYrG,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,EAAQ;MACvDgG,OAAA,CAAQ3G,IAAA,CAAK;QAAEc,OAAA;QAASE,IAAA,EAAMiF;MAAS,CAAC;IAC1C;IACA,IAAIrG,QAAA,CAASgH,QAAA,EAAUzG,MAAA,EAAQwG,OAAA,CAAQ3G,IAAA,CAAK,GAAGJ,QAAA,CAASgH,QAAQ;IAEhE,WAAWC,MAAA,IAAUF,OAAA,EAAS;MAC5B,MAAMG,KAAA,GAAQ,MAAM,KAAK9H,EAAA,CAAG+D,MAAA,CAAO8D,MAAA,CAAO/F,OAAA,EAAS+F,MAAA,CAAO7F,IAAI;MAC9D,KAAK9B,eAAA,CAAgByC,MAAA,CAAOmF,KAAK;IACnC;EACF;EAEA,MAAchD,oBACZlE,QAAA,EACAsC,GAAA,EACA;IACA,IAAI,KAAK5C,OAAA,CAAQyH,eAAA,EAAiB,KAAKzH,OAAA,CAAQyH,eAAA,CAAgB;MAAEnH,QAAA;MAAUsC;IAAI,CAAC;IAEhF,KAAK/C,eAAA,CAAgB8C,IAAA,CAAKrC,QAAA,CAAS8B,UAAU;IAC7C,MAAMsF,KAAA,GAAQ,KAAK7H,eAAA,CAAgBsD,GAAA,CAAI7C,QAAA,CAAS8B,UAAU;IAG1D,MAAMuF,SAAA,GAAY,OAAOC,SAAA,KAAc,eAAeA,SAAA,CAAUC,MAAA,KAAW;IAC3E,IAAI,CAACF,SAAA,EAAW;MAEd,MAAM,KAAKG,uBAAA,CAAwBxH,QAAA,EAAUoH,KAAK;IACpD;IAGA,MAAMK,eAAA,GAAkBnF,GAAA;IACxB,MAAMmB,OAAA,GAAUzD,QAAA,CAASmB,GAAA,CAAIC,IAAA;IAC7B,IACEqG,eAAA,KACCA,eAAA,CAAgB/D,MAAA,KAAW,OAAO+D,eAAA,CAAgB/D,MAAA,KAAW,QAC9DD,OAAA,EACA;MACA,MAAM,KAAKiE,cAAA,CAAe1H,QAAA,EAAUoH,KAAK;IAC3C;EACF;EAAA;AAAA;AAAA;AAAA;EAMA,MAAcI,wBACZxH,QAAA,EACAoH,KAAA,EACA;IACA,MAAMlG,OAAA,GAAUlB,QAAA,CAASmB,GAAA,CAAID,OAAA;IAC7B,MAAMuC,OAAA,GAAUzD,QAAA,CAASmB,GAAA,CAAIC,IAAA;IAE7B,QAAQpB,QAAA,CAASiB,SAAA;MACf,KAAKxC,SAAA,CAAUoC,MAAA;QAEb,MAAM,KAAK8G,kBAAA,CAAmB3H,QAAQ;QAEtC,IAAIyD,OAAA,EAAS;UACX,KAAKnE,eAAA,CAAgBqH,MAAA,CAAO;YAAEzF,OAAA;YAASE,IAAA,EAAMqC;UAAQ,CAAC;QACxD;QACA;MAEF,KAAKhF,SAAA,CAAUqC,MAAA;QAGb,IAAIsG,KAAA,EAAOxD,QAAA,IAAYH,OAAA,EAAS;UAC9B,KAAKnE,eAAA,CAAgByC,MAAA,CAAOqF,KAAA,CAAMxD,QAAA,EAAU;YAAEgE,OAAA,EAAS;UAAK,CAAC;UAE7D,KAAKpI,mBAAA,CAAoBiF,4BAAA,CACvB2C,KAAA,CAAMxD,QACR;QACF;QACA;MAEF,KAAKnF,SAAA,CAAUsC,MAAA;QAEb,IAAIqG,KAAA,EAAOxD,QAAA,IAAYH,OAAA,EAAS;UAC9B,KAAKnE,eAAA,CAAgByC,MAAA,CAAOqF,KAAA,CAAMxD,QAAA,EAAU;YAAEgE,OAAA,EAAS;UAAK,CAAC;UAE7D,MAAMC,WAAA,GAAcT,KAAA,CAAMxD,QAAA;UAC1B,WAAWE,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;YAClF,IAAIO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYA,OAAA,EAAS;YAC5C,MAAM8D,OAAA,GAAU3G,cAAA,CAAewJ,WAAA,EAAa/D,YAAA,CAAaE,KAAA,CAAMiB,OAAO;YACtE,IAAID,OAAA,IAAW,CAAClB,YAAA,CAAasB,MAAA,CAAOa,QAAA,CAASxC,OAAO,GAAG;cACrD,KAAKjE,mBAAA,CAAoB0G,8BAAA,CAA+BpC,YAAA,EAAc+D,WAAW;YACnF;UACF;QACF;QACA;IACJ;EACF;EAEA,MAAcF,mBAA+C3H,QAAA,EAA0B;IACrF,MAAM0E,aAAA,GAAgB1E,QAAA,CAASmB,GAAA,CAAIC,IAAA;IACnC,MAAMF,OAAA,GAAUlB,QAAA,CAASmB,GAAA,CAAID,OAAA;IAE7B,IAAIwD,aAAA,EAAe;MAEjB,MAAM6B,UAAA,GAAa,KAAKtH,sBAAA,CAAuB4D,GAAA,CAAI3B,OAAO;MAC1D,IAAIqF,UAAA,EAAY;QACdA,UAAA,CAAWC,MAAA,CAAO9B,aAAa;MACjC;MAEA,WAAWZ,YAAA,IAAgB,KAAKtE,mBAAA,CAAoBuE,mBAAA,CAAoB,EAAER,MAAA,CAAO,GAAG;QAClF,IAAIO,YAAA,CAAaE,KAAA,CAAM9C,OAAA,KAAYA,OAAA,EAAS;QAC5C4C,YAAA,CAAasB,MAAA,GAAStB,YAAA,CAAasB,MAAA,CAAO0C,MAAA,CAAQC,EAAA,IAAOA,EAAA,KAAOrD,aAAa;MAC/E;IACF;EACF;EAEA,MAAcgD,eACZ1H,QAAA,EACAoH,KAAA,EACA;IACA,MAAMlG,OAAA,GAAUlB,QAAA,CAASmB,GAAA,CAAID,OAAA;IAC7B,MAAMuC,OAAA,GAAUzD,QAAA,CAASmB,GAAA,CAAIC,IAAA;IAC7B,IAAI,CAACqC,OAAA,EAAS;IAEd,IAAI;MACF,MAAMuE,MAAA,GAAS,MAAM,KAAK5I,EAAA,CAAG+D,MAAA,CAAOjC,OAAA,EAASuC,OAAO;MACpD,MAAMwE,IAAA,GAAOb,KAAA,EAAOxD,QAAA;MACpB,MAAMsE,aAAA,IACHlI,QAAA,CAASiB,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,GAAS,SAAYf,QAAA,CAASmB,GAAA,KAC/D,CAAC;MAGJ,MAAMgH,UAAA,GACJF,IAAA,GACI;QAAE,GAAGA,IAAA;QAAM,GAAGC,aAAA;QAAehH,OAAA;QAASE,IAAA,EAAMqC;MAAQ,IACpD;QAAE,GAAGyE,aAAA;QAAehH,OAAA;QAASE,IAAA,EAAMqC;MAAQ;MAEjD,MAAM2E,WAAA,GAAc,KAAKC,gBAAA,CAAiB;MAC1C,MAAMC,UAAA,GAAahK,KAAA,CACjB2J,IAAA,EACAE,UAAA,EACAH,MAAA,EACAI,WAAA,EACAlH,OACF;MACA,IAAI,CAACoH,UAAA,CAAWC,YAAA,EAAc;QAE5B,MAAMzF,YAAA,GACJ,KAAKpD,OAAA,CAAQqD,aAAA,GAAgB7B,OAAO,KAAK,KAAKxB,OAAA,CAAQoD,YAAA,IAAgB;QACxE,IAAIwF,UAAA,CAAWE,MAAA,EAAQ;UACrB,MAAMC,KAAA,GAAQ9D,cAAA,CAAe;UAC7B,MAAM,KAAKvF,EAAA,CAAGsH,SAAA,CAAU;YACtB,GAAG4B,UAAA,CAAWE,MAAA;YACdE,kBAAA,EAAoBD,KAAA;YACpBE,aAAA,EAAgBX,MAAA,CAAOlF,YAAY,KAAgB;UACrD,CAAC;QACH;QAEA,MAAM8F,SAAA,GAAY,MAAM,KAAKxJ,EAAA,CAAG+D,MAAA,CAAOjC,OAAA,EAASuC,OAAO;QACvD,KAAKnE,eAAA,CAAgByC,MAAA,CAAO6G,SAAS;QACrC,KAAKrJ,eAAA,CAAgBsC,OAAA,CAAQ7B,QAAA,CAAS8B,UAAU;QAChD;MACF;MAEA,KAAKxC,eAAA,CAAgByC,MAAA,CAAOiG,MAAM;IACpC,QAAQ,CAAC;IACT,IAAI,KAAKtI,OAAA,CAAQmJ,UAAA,EACf,KAAKnJ,OAAA,CAAQmJ,UAAA,CAAW;MACtB3H,OAAA;MACAE,IAAA,EAAMqC;IACR,CAAC;EACL;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAmBQ6B,6BACNxB,YAAA,EACAgF,SAAA,EACe;IACf,MAAM1D,MAAA,GAAStB,YAAA,CAAasB,MAAA;IAC5B,IAAI,CAACA,MAAA,CAAO7E,MAAA,EAAQ,OAAO5B,aAAA,CAAciH,OAAA;IAGzC,IAAI9B,YAAA,CAAaiF,UAAA,EAAYC,SAAA,IAAalF,YAAA,CAAaiF,UAAA,EAAYE,QAAA,EAAU;MAC3E,OAAO,KAAKC,gCAAA,CACVpF,YAAA,CAAaiF,UAAA,EACbD,SAAA,EACAhF,YAAA,CAAaE,KAAA,CAAMkB,OACrB;IACF;IAGA,MAAMiE,KAAA,GAAQrF,YAAA,CAAaE,KAAA,CAAMkB,OAAA;IACjC,IAAI,CAACiE,KAAA,EAAO,OAAOxK,aAAA,CAAciH,OAAA;IACjC,MAAM1E,OAAA,GAAU4C,YAAA,CAAaE,KAAA,CAAM9C,OAAA;IACnC,MAAMkI,KAAA,GAAQ,KAAK9J,eAAA,CAAgBuD,GAAA,CAAI;MACrC3B,OAAA;MACAE,IAAA,EAAMgE,MAAA,CAAO,CAAC;IAChB,CAAC;IACD,MAAMiE,IAAA,GAAO,KAAK/J,eAAA,CAAgBuD,GAAA,CAAI;MACpC3B,OAAA;MACAE,IAAA,EAAMgE,MAAA,CAAOA,MAAA,CAAO7E,MAAA,GAAS,CAAC;IAChC,CAAC;IAED,IAAI,CAAC6I,KAAA,IAAS,CAACC,IAAA,EAAM,OAAO1K,aAAA,CAAciH,OAAA;IAG1C,MAAM0D,UAAA,GAAa,KAAKC,eAAA,CAAgBJ,KAAK;IAE7C,WAAW;MAAEK,KAAA;MAAOC;IAAM,KAAKH,UAAA,EAAY;MACzC,MAAMI,cAAA,GAAiBZ,SAAA,CAAUU,KAAK;MACtC,MAAMG,UAAA,GAAaP,KAAA,CAAMI,KAAK;MAC9B,MAAMI,SAAA,GAAYP,IAAA,CAAKG,KAAK;MAE5B,IAAIE,cAAA,IAAkB,QAAQC,UAAA,IAAc,QAAQC,SAAA,IAAa,MAAM;QACrE;MACF;MAEA,IAAIH,KAAA,EAAO;QACT,IAAIC,cAAA,GAAiBC,UAAA,EAAY,OAAOhL,aAAA,CAAc4G,MAAA;QACtD,IAAImE,cAAA,GAAiBE,SAAA,EAAW,OAAOjL,aAAA,CAAc+G,KAAA;MACvD,OAAO;QACL,IAAIgE,cAAA,GAAiBC,UAAA,EAAY,OAAOhL,aAAA,CAAc4G,MAAA;QACtD,IAAImE,cAAA,GAAiBE,SAAA,EAAW,OAAOjL,aAAA,CAAc+G,KAAA;MACvD;MAGA,IAAIgE,cAAA,KAAmBC,UAAA,IAAcD,cAAA,KAAmBE,SAAA,EAAW;QACjE,OAAOjL,aAAA,CAAcqH,MAAA;MACvB;IAEF;IAEA,OAAOrH,aAAA,CAAcqH,MAAA;EACvB;EAEQkD,iCACNH,UAAA,EACAD,SAAA,EACA5D,OAAA,EACe;IACf,IAAI,CAAC6D,UAAA,CAAWC,SAAA,IAAa,CAACD,UAAA,CAAWE,QAAA,EAAU,OAAOtK,aAAA,CAAciH,OAAA;IAExE,MAAM0D,UAAA,GAAa,KAAKC,eAAA,CAAgBrE,OAAO;IAE/C,WAAW;MAAEsE,KAAA;MAAOC;IAAM,KAAKH,UAAA,EAAY;MACzC,MAAMI,cAAA,GAAiBZ,SAAA,CAAUU,KAAK;MACtC,MAAMG,UAAA,GAAaZ,UAAA,CAAWC,SAAA,CAAUQ,KAAK;MAC7C,MAAMI,SAAA,GAAYb,UAAA,CAAWE,QAAA,CAASO,KAAK;MAE3C,IAAIE,cAAA,IAAkB,QAAQC,UAAA,IAAc,QAAQC,SAAA,IAAa,MAAM;QACrE;MACF;MAEA,IAAIH,KAAA,EAAO;QACT,IAAIC,cAAA,GAAiBC,UAAA,EAAY,OAAOhL,aAAA,CAAc4G,MAAA;QACtD,IAAImE,cAAA,GAAiBE,SAAA,EAAW,OAAOjL,aAAA,CAAc+G,KAAA;MACvD,OAAO;QACL,IAAIgE,cAAA,GAAiBC,UAAA,EAAY,OAAOhL,aAAA,CAAc4G,MAAA;QACtD,IAAImE,cAAA,GAAiBE,SAAA,EAAW,OAAOjL,aAAA,CAAc+G,KAAA;MACvD;MAEA,IAAIgE,cAAA,KAAmBC,UAAA,IAAcD,cAAA,KAAmBE,SAAA,EAAW;QACjE,OAAOjL,aAAA,CAAcqH,MAAA;MACvB;IACF;IAEA,OAAOrH,aAAA,CAAcqH,MAAA;EACvB;EAEQuD,gBAAgBrE,OAAA,EAA2C;IACjE,IAAI,CAACA,OAAA,EAAS,OAAO,CAAC;MAAEsE,KAAA,EAAO;MAAQC,KAAA,EAAO;IAAK,CAAC;IAGpD,MAAMI,YAAA,GAAeC,KAAA,CAAMC,OAAA,CAAQ7E,OAAO,IAAIA,OAAA,GAAU,CAACA,OAAO;IAEhE,MAAMoE,UAAA,GAAaO,YAAA,CAAalJ,GAAA,CAAKqJ,EAAA,KAAQ;MAC3CR,KAAA,EAAOQ,EAAA,CAAGR,KAAA;MACVC,KAAA,EAAOO,EAAA,CAAGb,KAAA,KAAU3K,KAAA,CAAMyL;IAC5B,EAAE;IAGF,MAAMC,YAAA,GAAeZ,UAAA,CAAWa,IAAA,CAAMC,EAAA,IAAOA,EAAA,CAAGZ,KAAA,KAAU,MAAM;IAChE,IAAI,CAACU,YAAA,EAAc;MACjBZ,UAAA,CAAWlJ,IAAA,CAAK;QAAEoJ,KAAA,EAAO;QAAQC,KAAA,EAAO;MAAK,CAAC;IAChD;IAEA,OAAOH,UAAA;EACT;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAmBA,MAAMe,cAAA,EAAgB;IACpB,IAAIC,SAAA,GAAY;IAEhB,IAAI,KAAK5K,OAAA,CAAQ6K,aAAA,EAAe,KAAK7K,OAAA,CAAQ6K,aAAA,CAAc;IAE3D,MAAMC,gBAAA,GAAmB,KAAKjL,eAAA,CAAgBkL,WAAA,CAAY;IAC1D,IAAID,gBAAA,CAAiBjK,MAAA,KAAW,GAAG;MACjC,IAAI,KAAKb,OAAA,CAAQgL,gBAAA,EAAkB;QACjC,KAAKhL,OAAA,CAAQgL,gBAAA,CAAiB;UAAEJ,SAAA,EAAW;QAAM,CAAC;MACpD;MACA;IACF;IAGA,MAAMK,SAAA,GAAY,KAAKjL,OAAA,CAAQkL,eAAA,IAAmB;IAGlD,MAAMC,eAAA,GAAkB,MAAO7K,QAAA,IAA6C;MAC1E,MAAM;QAAE+H,EAAA;QAAIX;MAAM,IAAIpH,QAAA;MACtB,IAAI,KAAKN,OAAA,CAAQoL,OAAA,EAAS;QACxB,KAAKpL,OAAA,CAAQoL,OAAA,CAAQ;UAAE/C,EAAA;UAAI9G,SAAA,EAAWmG,KAAA,CAAMnG;QAAU,CAAC;MACzD;MACA,IAAI;QACF,IAAImG,KAAA,CAAMnG,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,EAAQ;UACxC,MAAM,KAAKzB,EAAA,CAAGgH,SAAA,CAAU;YACtB,GAAGgB,KAAA,CAAM7D,MAAA;YACTmF,kBAAA,EAAoBX,EAAA;YACpB7G,OAAA,EAASkG,KAAA,CAAMlG,OAAA;YACfE,IAAA,EAAMgG,KAAA,CAAM3D,OAAA,IAAWkB,cAAA,CAAe;UACxC,CAAC;QACH,WAAWyC,KAAA,CAAMnG,SAAA,KAAcxC,SAAA,CAAUqC,MAAA,IAAUsG,KAAA,CAAM3D,OAAA,EAAS;UAChE,MAAM,KAAKrE,EAAA,CAAGsH,SAAA,CAAU;YACtB,GAAGU,KAAA,CAAM7D,MAAA;YACTmF,kBAAA,EAAoBX,EAAA;YACpBY,aAAA,EAAevB,KAAA,CAAMzE,OAAA;YACrBzB,OAAA,EAASkG,KAAA,CAAMlG,OAAA;YACfE,IAAA,EAAMgG,KAAA,CAAM3D;UACd,CAAC;QACH,WAAW2D,KAAA,CAAMnG,SAAA,KAAcxC,SAAA,CAAUsC,MAAA,IAAUqG,KAAA,CAAM3D,OAAA,EAAS;UAChE,MAAM,KAAKrE,EAAA,CAAGyH,SAAA,CAAU;YACtB3F,OAAA,EAASkG,KAAA,CAAMlG,OAAA;YACfE,IAAA,EAAMgG,KAAA,CAAM3D,OAAA;YACZiF,kBAAA,EAAoBX;UACtB,CAAC;QACH;QAGA,KAAKxI,eAAA,CAAgBsC,OAAA,CAAQkG,EAAE;MACjC,SAASzF,GAAA,EAAK;QACZ,MAAMyI,UAAA,GAAa,KAAKC,aAAA,CAAc1I,GAAG;QACzCgI,SAAA,GAAY;QAEZ,IAAIS,UAAA,KAAe,YAAY;UAG7B,IAAI,KAAKrL,OAAA,CAAQmJ,UAAA,EAAY;YAC3B,KAAKnJ,OAAA,CAAQmJ,UAAA,CAAW;cACtB3H,OAAA,EAASkG,KAAA,CAAMlG,OAAA;cACfE,IAAA,EAAMgG,KAAA,CAAM3D;YACd,CAAC;UACH;QACF,WAAWsH,UAAA,KAAe,QAAQ,CAGlC,WAAWA,UAAA,KAAe,aAAa;UAErC,KAAKxL,eAAA,CAAgB8C,IAAA,CAAK0F,EAAE;UAC5B,KAAKkD,mBAAA,CAAoBlD,EAAA,EAAIX,KAAA,EAAO9E,GAAG;QACzC,WAAWyI,UAAA,KAAe,UAAU;UAElC,KAAKxL,eAAA,CAAgB8C,IAAA,CAAK0F,EAAE;UAC5B,KAAKkD,mBAAA,CAAoBlD,EAAA,EAAIX,KAAA,EAAO9E,GAAG;QACzC;MACF;IACF;IAIA,MAAM4I,OAAA,GAAUC,IAAA,CAAKC,IAAA,CAAK,MAAOT,SAAS;IAE1C,WAAW3K,QAAA,IAAYwK,gBAAA,EAAkB;MACvC,MAAMK,eAAA,CAAgB7K,QAAQ;MAE9B,IAAIwK,gBAAA,CAAiBa,OAAA,CAAQrL,QAAQ,IAAIwK,gBAAA,CAAiBjK,MAAA,GAAS,GAAG;QACpE,MAAM,IAAIN,OAAA,CAASC,OAAA,IAAYoL,UAAA,CAAWpL,OAAA,EAASgL,OAAO,CAAC;MAC7D;IACF;IAEA,IAAI,KAAKxL,OAAA,CAAQgL,gBAAA,EAAkB;MACjC,KAAKhL,OAAA,CAAQgL,gBAAA,CAAiB;QAAEJ;MAAU,CAAC;IAC7C;EACF;EAAA;AAAA;AAAA;EAKQU,cAAc1I,GAAA,EAA4D;IAChF,MAAMmF,eAAA,GAAkBnF,GAAA;IAIxB,MAAMoB,MAAA,GAAS+D,eAAA,EAAiB/D,MAAA,IAAU+D,eAAA,EAAiB8D,QAAA,EAAU7H,MAAA;IAGrE,IAAIA,MAAA,KAAW,OAAOA,MAAA,KAAW,KAAK,OAAO;IAG7C,IAAIA,MAAA,KAAW,OAAOA,MAAA,KAAW,KAAK,OAAO;IAG7C,IAAIA,MAAA,IAAUA,MAAA,IAAU,OAAOA,MAAA,GAAS,KAAK,OAAO;IAIpD,OAAO;EACT;EAAA;AAAA;AAAA;EAKQuH,oBACNlD,EAAA,EACAX,KAAA,EACA9E,GAAA,EACA;IACA,IAAI,CAAC,KAAK5C,OAAA,CAAQyH,eAAA,EAAiB;IAEnC,IAAInH,QAAA;IACJ,IAAIoH,KAAA,CAAMnG,SAAA,KAAcxC,SAAA,CAAUoC,MAAA,EAAQ;MACxC,MAAMM,GAAA,GAAOiG,KAAA,CAAM7D,MAAA,IAAuC;QACxDrC,OAAA,EAASkG,KAAA,CAAMlG,OAAA;QACfE,IAAA,EAAMgG,KAAA,CAAM3D;MACd;MACAzD,QAAA,GAAW;QACT8B,UAAA,EAAYiG,EAAA;QACZ9G,SAAA,EAAWxC,SAAA,CAAUoC,MAAA;QACrBM,GAAA;QACAwB,OAAA,EAASyE,KAAA,CAAMzE,OAAA;QACfqE,QAAA,EAAU;MACZ;IACF,WAAWI,KAAA,CAAMnG,SAAA,KAAcxC,SAAA,CAAUqC,MAAA,EAAQ;MAC/Cd,QAAA,GAAW;QACT8B,UAAA,EAAYiG,EAAA;QACZ9G,SAAA,EAAWxC,SAAA,CAAUqC,MAAA;QACrBK,GAAA,EAAK;UACH,GAAGiG,KAAA,CAAM7D,MAAA;UACTrC,OAAA,EAASkG,KAAA,CAAMlG,OAAA;UACfE,IAAA,EAAMgG,KAAA,CAAM3D;QACd;QACAd,OAAA,EAASyE,KAAA,CAAMzE,OAAA;QACfqE,QAAA,EAAU;MACZ;IACF,OAAO;MACLhH,QAAA,GAAW;QACT8B,UAAA,EAAYiG,EAAA;QACZ9G,SAAA,EAAWxC,SAAA,CAAUsC,MAAA;QACrBI,GAAA,EAAK;UACHD,OAAA,EAASkG,KAAA,CAAMlG,OAAA;UACfE,IAAA,EAAMgG,KAAA,CAAM3D;QACd;QACAd,OAAA,EAASyE,KAAA,CAAMzE,OAAA;QACfqE,QAAA,EAAU;MACZ;IACF;IAEA,KAAKtH,OAAA,CAAQyH,eAAA,CAAgB;MAAEnH,QAAA;MAAUsC;IAAI,CAAC;EAChD;EAAA;AAAA;AAAA;AAAA;EAMQ+F,iBAAA,EAA4C;IAClD,MAAMmD,GAAA,GAAM,KAAK9L,OAAA,CAAQ+L,gBAAA;IACzB,IAAI,CAACD,GAAA,EAAK,OAAO;IAEjB,MAAME,QAAA,GAA0C,CAAC;IACjD,WAAW,CAACC,EAAA,EAAIC,MAAM,KAAKC,MAAA,CAAOC,OAAA,CAAQN,GAAG,GAAG;MAC9CE,QAAA,CAASC,EAAE,IAAI;QAAEC;MAAO;IAC1B;IACA,OAAO;MAAEG,eAAA,EAAiBxN,aAAA,CAAcyN,UAAA;MAAYN;IAAS;EAC/D;EAAA;EAGAO,4BAAA,EAAmD;IACjD,OAAO,KAAKlN,wBAAA;EACd;EAAA;EAGAmN,uBAAA,EAAyB;IACvB,KAAKnN,wBAAA,CAAyBoN,KAAA,CAAM;IACpC,KAAKlN,sBAAA,CAAuBkN,KAAA,CAAM;EACpC;EAAA;AAAA;AAAA;EAKAC,QAAA,EAAU;IAER,KAAKjN,cAAA,CAAeqD,MAAA,CAAO;IAC3B,KAAKtD,YAAA,GAAe,EAAC;IACrB,KAAKgN,sBAAA,CAAuB;EAC9B;AACF;AAGA,SAASvH,eAAA,EAAiB;EACxB,IAAI,OAAO0H,MAAA,KAAW,eAAe,gBAAgBA,MAAA,EAAQ,OAAOA,MAAA,CAAOC,UAAA,CAAW;EACtF,OAAOnB,IAAA,CAAKoB,MAAA,CAAO,EAAEC,QAAA,CAAS,EAAE,EAAEC,KAAA,CAAM,CAAC;AAC3C","ignoreList":[]}
1
+ {"version":3,"names":["Debouncer","matchesFilters","merge","MergeStrategy","Order","Operation","PendingRehydrationType","PlacementType","RehydrationReason","Status","MutationEngine","temporaryIdToRealNameMap","Map","globalOptimisticDocIds","pendingBatch","batchDebouncer","db","realtime","normalizedCache","mutationJournal","subscriptionManager","rehydrationManager","options","constructor","batchDelay","flushBatch","wait","queueForBatch","mutation","Promise","resolve","reject","push","maxSize","batchMaxSize","length","maybeExecute","batch","batchMutations","map","operationMap","Create","Update","Delete","type","operation","doctype","doc","name","data","results","mutations","atomic","batchAtomic","i","result","success","confirm","mutationId","upsert","temporaryName","handleTemporaryToRealMapping","registerTempIdMapping","get","delete","onMutationSuccess","error","Error","fail","err","forceBatchFlush","cancel","mutate","onMutationStart","version","cachedDoc","versionField","versionFields","cachedVersion","handleOptimisticUpdate","handleOptimisticCreate","getDoc","onTrace","event","details","values","add","docname","status","Pending","snapshot","enableBatching","subscription","getAllSubscriptions","query","scheduleRehydration","handleMutationError","handleServerCreate","handleServerUpdate","handleServerDelete","isHealthy","refetchAffectedDocs","onOptimisticApply","updateSubscriptionMembership","cryptoRandomId","optimisticDoc","has","set","Set","globalDocIds","matches","filters","orderBy","limit","docIds","placement","determineOptimisticPlacement","Before","metadata","itemsBeforePage","After","itemsAfterPage","Unknown","pendingRehydration","FullRefresh","Uncertain","Within","includes","insertDocumentIntoSubscription","created","createDoc","client_mutation_id","realName","globalDocs","_version","updateDoc","remove","removeFromAllSubscriptions","deleteDoc","filter","id","targets","affected","target","fresh","onMutationError","entry","isOffline","navigator","onLine","rollbackOptimisticState","errorWithStatus","handleConflict","handleFailedCreate","replace","restoredDoc","latest","base","clientPartial","fullClient","mergeConfig","buildMergeConfig","nonOverlap","hasConflicts","merged","newId","base_modified","refreshed","onConflict","candidate","boundaries","firstItem","lastItem","determinePlacementWithBoundaries","order","first","last","sortFields","parseSortFields","field","isAsc","candidateValue","firstValue","lastValue","orderByArray","Array","isArray","ob","Desc","hasNameField","some","sf","replayPending","anyFailed","onReplayStart","pendingMutations","listPending","onReplayComplete","rateLimit","replayRateLimit","processMutation","onRetry","errorClass","classifyError","notifyMutationError","delayMs","Math","ceil","indexOf","setTimeout","response","fmc","fieldMergeConfig","doctypes","dt","fields","Object","entries","defaultStrategy","ServerWins","getTemporaryIdToRealNameMap","clearTemporaryMappings","clear","dispose","crypto","randomUUID","random","toString","slice"],"sources":["../../../src/sync/mutationEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -164,9 +164,16 @@ var MutationEngine = /* @__PURE__ */function () {
164
164
  this.mutationJournal.confirm(mutation.mutationId);
165
165
  if (result.data) {
166
166
  this.normalizedCache.upsert(result.data);
167
- if (mutation.operation === import_types2.Operation.Create && mutation.doc.name !== result.data.name) {
168
- this.temporaryIdToRealNameMap.set(mutation.doc.name, result.data.name);
169
- this.rehydrationManager.registerTempIdMapping(mutation.doc.name, result.data.name);
167
+ if (mutation.operation === import_types2.Operation.Create) {
168
+ var _mutation_temporaryName;
169
+ var temporaryName = (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : mutation.doc.name;
170
+ if (temporaryName && result.data.name && temporaryName !== result.data.name) {
171
+ this.handleTemporaryToRealMapping(mutation.doc.doctype, temporaryName, result.data.name);
172
+ this.rehydrationManager.registerTempIdMapping(temporaryName, result.data.name);
173
+ } else if (temporaryName) {
174
+ var _this_globalOptimisticDocIds_get;
175
+ (_this_globalOptimisticDocIds_get = this.globalOptimisticDocIds.get(mutation.doc.doctype)) === null || _this_globalOptimisticDocIds_get === void 0 ? void 0 : _this_globalOptimisticDocIds_get.delete(temporaryName);
176
+ }
170
177
  }
171
178
  }
172
179
  if (this.options.onMutationSuccess) {
@@ -221,6 +228,7 @@ var MutationEngine = /* @__PURE__ */function () {
221
228
  }, {
222
229
  key: "mutate",
223
230
  value: async function mutate(mutation) {
231
+ var _mutation_temporaryName;
224
232
  if (this.options.onMutationStart) this.options.onMutationStart(mutation);
225
233
  var {
226
234
  doc
@@ -272,7 +280,10 @@ var MutationEngine = /* @__PURE__ */function () {
272
280
  var values = mutation.operation === import_types2.Operation.Delete ? void 0 : mutation.operation === import_types2.Operation.Create ? mutation.doc : mutation.doc;
273
281
  this.mutationJournal.add(mutation.mutationId, {
274
282
  doctype: doc.doctype,
275
- docname: doc.name,
283
+ // Creates journal the optimistic identity (consumer placeholder or
284
+ // engine-generated temp id) so page refreshes keep the pending row
285
+ // and rollback can evict it even when doc.name was never set.
286
+ docname: mutation.operation === import_types2.Operation.Create ? (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : doc.name : doc.name,
276
287
  values,
277
288
  operation: mutation.operation,
278
289
  version,
@@ -382,6 +393,7 @@ var MutationEngine = /* @__PURE__ */function () {
382
393
  key: "handleOptimisticCreate",
383
394
  value: async function handleOptimisticCreate(mutation) {
384
395
  var temporaryName = mutation.doc.name || `tmp_${cryptoRandomId()}`;
396
+ mutation.temporaryName = temporaryName;
385
397
  var optimisticDoc = {
386
398
  ...mutation.doc,
387
399
  name: temporaryName
@@ -447,10 +459,19 @@ var MutationEngine = /* @__PURE__ */function () {
447
459
  }, {
448
460
  key: "handleServerCreate",
449
461
  value: async function handleServerCreate(mutation) {
450
- var _this_realtime;
451
- var created = await this.db.createDoc(mutation.doc);
462
+ var _mutation_temporaryName;
463
+ var created = await this.db.createDoc({
464
+ ...mutation.doc,
465
+ client_mutation_id: mutation.mutationId
466
+ });
452
467
  var realName = created === null || created === void 0 ? void 0 : created.name;
453
- var temporaryName = mutation.doc.name;
468
+ var temporaryName = (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : mutation.doc.name;
469
+ if (realName) {
470
+ this.normalizedCache.upsert({
471
+ ...created,
472
+ doctype: created.doctype || mutation.doc.doctype
473
+ });
474
+ }
454
475
  if (realName && temporaryName && realName !== temporaryName) {
455
476
  this.handleTemporaryToRealMapping(mutation.doc.doctype, temporaryName, realName);
456
477
  this.rehydrationManager.registerTempIdMapping(temporaryName, realName);
@@ -460,9 +481,6 @@ var MutationEngine = /* @__PURE__ */function () {
460
481
  globalDocs.delete(temporaryName);
461
482
  }
462
483
  }
463
- if (!((_this_realtime = this.realtime) === null || _this_realtime === void 0 ? void 0 : _this_realtime.isHealthy())) {
464
- this.normalizedCache.upsert(created);
465
- }
466
484
  }
467
485
  }, {
468
486
  key: "handleServerUpdate",
@@ -518,8 +536,11 @@ var MutationEngine = /* @__PURE__ */function () {
518
536
  for (var _iterator = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
519
537
  var subscription = _step.value;
520
538
  if (subscription.query.doctype !== doctype) continue;
521
- subscription.docIds = subscription.docIds.map(function (x) {
522
- return x === temporaryName ? realName : x;
539
+ if (!subscription.docIds.includes(temporaryName)) continue;
540
+ subscription.docIds = subscription.docIds.includes(realName) ? subscription.docIds.filter(function (id) {
541
+ return id !== temporaryName;
542
+ }) : subscription.docIds.map(function (id) {
543
+ return id === temporaryName ? realName : id;
523
544
  });
524
545
  }
525
546
  } catch (err) {
@@ -549,7 +570,7 @@ var MutationEngine = /* @__PURE__ */function () {
549
570
  var docname = mutation.doc.name;
550
571
  var doctype = mutation.doc.doctype;
551
572
  var realName = docname && this.temporaryIdToRealNameMap.get(docname) || docname;
552
- if (realName && mutation.operation !== import_types2.Operation.Delete) {
573
+ if (realName && mutation.operation === import_types2.Operation.Update) {
553
574
  targets.push({
554
575
  doctype,
555
576
  name: realName
@@ -612,12 +633,6 @@ var MutationEngine = /* @__PURE__ */function () {
612
633
  switch (mutation.operation) {
613
634
  case import_types2.Operation.Create:
614
635
  await this.handleFailedCreate(mutation);
615
- if (docname) {
616
- this.normalizedCache.remove({
617
- doctype,
618
- name: docname
619
- });
620
- }
621
636
  break;
622
637
  case import_types2.Operation.Update:
623
638
  if ((entry === null || entry === void 0 ? void 0 : entry.snapshot) && docname) {
@@ -666,7 +681,8 @@ var MutationEngine = /* @__PURE__ */function () {
666
681
  }, {
667
682
  key: "handleFailedCreate",
668
683
  value: async function handleFailedCreate(mutation) {
669
- var temporaryName = mutation.doc.name;
684
+ var _mutation_temporaryName;
685
+ var temporaryName = mutation.operation === import_types2.Operation.Create ? (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : mutation.doc.name : mutation.doc.name;
670
686
  var doctype = mutation.doc.doctype;
671
687
  if (temporaryName) {
672
688
  var globalDocs = this.globalOptimisticDocIds.get(doctype);
@@ -698,6 +714,10 @@ var MutationEngine = /* @__PURE__ */function () {
698
714
  }
699
715
  }
700
716
  }
717
+ this.normalizedCache.remove({
718
+ doctype,
719
+ name: temporaryName
720
+ });
701
721
  }
702
722
  }
703
723
  }, {
@@ -949,12 +969,22 @@ var MutationEngine = /* @__PURE__ */function () {
949
969
  }
950
970
  try {
951
971
  if (entry.operation === import_types2.Operation.Create) {
952
- await _this.db.createDoc({
972
+ var created = await _this.db.createDoc({
953
973
  ...entry.values,
954
974
  client_mutation_id: id,
955
975
  doctype: entry.doctype,
956
976
  name: entry.docname || cryptoRandomId()
957
977
  });
978
+ if (created === null || created === void 0 ? void 0 : created.name) {
979
+ _this.normalizedCache.upsert({
980
+ ...created,
981
+ doctype: created.doctype || entry.doctype
982
+ });
983
+ if (entry.docname && created.name !== entry.docname) {
984
+ _this.handleTemporaryToRealMapping(entry.doctype, entry.docname, created.name);
985
+ _this.rehydrationManager.registerTempIdMapping(entry.docname, created.name);
986
+ }
987
+ }
958
988
  } else if (entry.operation === import_types2.Operation.Update && entry.docname) {
959
989
  await _this.db.updateDoc({
960
990
  ...entry.values,