@multiplatform.one/frappe 7.11.0 → 7.15.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 (220) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/auth.native.js.map +1 -1
  3. package/dist/cjs/call.native.js.map +1 -1
  4. package/dist/cjs/collection.native.js.map +1 -1
  5. package/dist/cjs/common/types.native.js.map +1 -1
  6. package/dist/cjs/core/http.native.js.map +1 -1
  7. package/dist/cjs/core/types.native.js.map +1 -1
  8. package/dist/cjs/core/wire.native.js.map +1 -1
  9. package/dist/cjs/db.native.js.map +1 -1
  10. package/dist/cjs/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  11. package/dist/cjs/devtools/index.native.js.map +1 -1
  12. package/dist/cjs/devtools/plugin.native.js.map +1 -1
  13. package/dist/cjs/devtools/theme.native.js.map +1 -1
  14. package/dist/cjs/doctype.cjs +25 -43
  15. package/dist/cjs/doctype.native.js +27 -43
  16. package/dist/cjs/doctype.native.js.map +1 -1
  17. package/dist/cjs/file.native.js.map +1 -1
  18. package/dist/cjs/fixtureDb.native.js.map +1 -1
  19. package/dist/cjs/fixtures.cjs +3 -0
  20. package/dist/cjs/fixtures.native.js +3 -0
  21. package/dist/cjs/fixtures.native.js.map +1 -1
  22. package/dist/cjs/frappeApp.native.js.map +1 -1
  23. package/dist/cjs/frappeReact.cjs +13 -1
  24. package/dist/cjs/frappeReact.native.js +20 -2
  25. package/dist/cjs/frappeReact.native.js.map +1 -1
  26. package/dist/cjs/index.cjs +6 -0
  27. package/dist/cjs/index.native.js +8 -2
  28. package/dist/cjs/index.native.js.map +1 -1
  29. package/dist/cjs/optimistic.native.js.map +1 -1
  30. package/dist/cjs/pacer.native.js.map +1 -1
  31. package/dist/cjs/plugin/index.native.js.map +1 -1
  32. package/dist/cjs/realtime.native.js.map +1 -1
  33. package/dist/cjs/serverLoaders.cjs +74 -0
  34. package/dist/cjs/serverLoaders.native.js +88 -0
  35. package/dist/cjs/serverLoaders.native.js.map +1 -0
  36. package/dist/cjs/sync/backfill.native.js.map +1 -1
  37. package/dist/cjs/sync/filters.native.js.map +1 -1
  38. package/dist/cjs/sync/index.cjs +8 -0
  39. package/dist/cjs/sync/index.native.js +10 -0
  40. package/dist/cjs/sync/index.native.js.map +1 -1
  41. package/dist/cjs/sync/merge.native.js.map +1 -1
  42. package/dist/cjs/sync/mutationEngine.native.js.map +1 -1
  43. package/dist/cjs/sync/mutationJournal.native.js.map +1 -1
  44. package/dist/cjs/sync/normalizedCache.native.js.map +1 -1
  45. package/dist/cjs/sync/persistence.native.js.map +1 -1
  46. package/dist/cjs/sync/realtime.native.js.map +1 -1
  47. package/dist/cjs/sync/rehydration.cjs +4 -0
  48. package/dist/cjs/sync/rehydration.native.js +6 -0
  49. package/dist/cjs/sync/rehydration.native.js.map +1 -1
  50. package/dist/cjs/sync/storage.native.js.map +1 -1
  51. package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
  52. package/dist/cjs/sync/types.native.js.map +1 -1
  53. package/dist/cjs/sync/virtualPageManager.native.js.map +1 -1
  54. package/dist/cjs/syncOptionsKey.native.js.map +1 -1
  55. package/dist/cjs/useLiveQuery.cjs +2 -20
  56. package/dist/cjs/useLiveQuery.native.js +1 -22
  57. package/dist/cjs/useLiveQuery.native.js.map +1 -1
  58. package/dist/cjs/util.native.js.map +1 -1
  59. package/dist/esm/auth.native.js.map +1 -1
  60. package/dist/esm/call.native.js.map +1 -1
  61. package/dist/esm/collection.native.js.map +1 -1
  62. package/dist/esm/common/types.native.js.map +1 -1
  63. package/dist/esm/core/http.native.js.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.native.js.map +1 -1
  67. package/dist/esm/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  68. package/dist/esm/devtools/index.native.js.map +1 -1
  69. package/dist/esm/devtools/plugin.native.js.map +1 -1
  70. package/dist/esm/devtools/theme.native.js.map +1 -1
  71. package/dist/esm/doctype.mjs +23 -44
  72. package/dist/esm/doctype.mjs.map +1 -1
  73. package/dist/esm/doctype.native.js +25 -44
  74. package/dist/esm/doctype.native.js.map +1 -1
  75. package/dist/esm/file.native.js.map +1 -1
  76. package/dist/esm/fixtureDb.native.js.map +1 -1
  77. package/dist/esm/fixtures.mjs +3 -0
  78. package/dist/esm/fixtures.mjs.map +1 -1
  79. package/dist/esm/fixtures.native.js +3 -0
  80. package/dist/esm/fixtures.native.js.map +1 -1
  81. package/dist/esm/frappeApp.native.js.map +1 -1
  82. package/dist/esm/frappeReact.mjs +13 -1
  83. package/dist/esm/frappeReact.mjs.map +1 -1
  84. package/dist/esm/frappeReact.native.js +19 -1
  85. package/dist/esm/frappeReact.native.js.map +1 -1
  86. package/dist/esm/index.mjs +3 -2
  87. package/dist/esm/index.mjs.map +1 -1
  88. package/dist/esm/index.native.js +3 -2
  89. package/dist/esm/index.native.js.map +1 -1
  90. package/dist/esm/optimistic.native.js.map +1 -1
  91. package/dist/esm/pacer.native.js.map +1 -1
  92. package/dist/esm/plugin/index.native.js.map +1 -1
  93. package/dist/esm/realtime.native.js.map +1 -1
  94. package/dist/esm/serverLoaders.mjs +48 -0
  95. package/dist/esm/serverLoaders.mjs.map +1 -0
  96. package/dist/esm/serverLoaders.native.js +59 -0
  97. package/dist/esm/serverLoaders.native.js.map +1 -0
  98. package/dist/esm/sync/backfill.native.js.map +1 -1
  99. package/dist/esm/sync/filters.native.js.map +1 -1
  100. package/dist/esm/sync/index.mjs +8 -0
  101. package/dist/esm/sync/index.mjs.map +1 -1
  102. package/dist/esm/sync/index.native.js +10 -0
  103. package/dist/esm/sync/index.native.js.map +1 -1
  104. package/dist/esm/sync/merge.native.js.map +1 -1
  105. package/dist/esm/sync/mutationEngine.native.js.map +1 -1
  106. package/dist/esm/sync/mutationJournal.native.js.map +1 -1
  107. package/dist/esm/sync/normalizedCache.native.js.map +1 -1
  108. package/dist/esm/sync/persistence.native.js.map +1 -1
  109. package/dist/esm/sync/realtime.native.js.map +1 -1
  110. package/dist/esm/sync/rehydration.mjs +4 -0
  111. package/dist/esm/sync/rehydration.mjs.map +1 -1
  112. package/dist/esm/sync/rehydration.native.js +6 -0
  113. package/dist/esm/sync/rehydration.native.js.map +1 -1
  114. package/dist/esm/sync/storage.native.js.map +1 -1
  115. package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
  116. package/dist/esm/sync/types.native.js.map +1 -1
  117. package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
  118. package/dist/esm/syncOptionsKey.native.js.map +1 -1
  119. package/dist/esm/useLiveQuery.mjs +1 -19
  120. package/dist/esm/useLiveQuery.mjs.map +1 -1
  121. package/dist/esm/useLiveQuery.native.js +1 -22
  122. package/dist/esm/useLiveQuery.native.js.map +1 -1
  123. package/dist/esm/util.native.js.map +1 -1
  124. package/dist/jsx/auth.native.js.map +1 -1
  125. package/dist/jsx/call.native.js.map +1 -1
  126. package/dist/jsx/collection.native.js.map +1 -1
  127. package/dist/jsx/common/types.native.js.map +1 -1
  128. package/dist/jsx/core/http.native.js.map +1 -1
  129. package/dist/jsx/core/types.native.js.map +1 -1
  130. package/dist/jsx/core/wire.native.js.map +1 -1
  131. package/dist/jsx/db.native.js.map +1 -1
  132. package/dist/jsx/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  133. package/dist/jsx/devtools/index.native.js.map +1 -1
  134. package/dist/jsx/devtools/plugin.native.js.map +1 -1
  135. package/dist/jsx/devtools/theme.native.js.map +1 -1
  136. package/dist/jsx/doctype.mjs +23 -44
  137. package/dist/jsx/doctype.mjs.map +1 -1
  138. package/dist/jsx/doctype.native.js +27 -43
  139. package/dist/jsx/doctype.native.js.map +1 -1
  140. package/dist/jsx/file.native.js.map +1 -1
  141. package/dist/jsx/fixtureDb.native.js.map +1 -1
  142. package/dist/jsx/fixtures.mjs +3 -0
  143. package/dist/jsx/fixtures.mjs.map +1 -1
  144. package/dist/jsx/fixtures.native.js +3 -0
  145. package/dist/jsx/fixtures.native.js.map +1 -1
  146. package/dist/jsx/frappeApp.native.js.map +1 -1
  147. package/dist/jsx/frappeReact.mjs +13 -1
  148. package/dist/jsx/frappeReact.mjs.map +1 -1
  149. package/dist/jsx/frappeReact.native.js +20 -2
  150. package/dist/jsx/frappeReact.native.js.map +1 -1
  151. package/dist/jsx/index.js +3 -2
  152. package/dist/jsx/index.js.map +1 -1
  153. package/dist/jsx/index.mjs +3 -2
  154. package/dist/jsx/index.mjs.map +1 -1
  155. package/dist/jsx/index.native.js +8 -2
  156. package/dist/jsx/index.native.js.map +1 -1
  157. package/dist/jsx/optimistic.native.js.map +1 -1
  158. package/dist/jsx/pacer.native.js.map +1 -1
  159. package/dist/jsx/plugin/index.native.js.map +1 -1
  160. package/dist/jsx/realtime.native.js.map +1 -1
  161. package/dist/jsx/serverLoaders.mjs +48 -0
  162. package/dist/jsx/serverLoaders.mjs.map +1 -0
  163. package/dist/jsx/serverLoaders.native.js +88 -0
  164. package/dist/jsx/serverLoaders.native.js.map +1 -0
  165. package/dist/jsx/sync/backfill.native.js.map +1 -1
  166. package/dist/jsx/sync/filters.native.js.map +1 -1
  167. package/dist/jsx/sync/index.mjs +8 -0
  168. package/dist/jsx/sync/index.mjs.map +1 -1
  169. package/dist/jsx/sync/index.native.js +10 -0
  170. package/dist/jsx/sync/index.native.js.map +1 -1
  171. package/dist/jsx/sync/merge.native.js.map +1 -1
  172. package/dist/jsx/sync/mutationEngine.native.js.map +1 -1
  173. package/dist/jsx/sync/mutationJournal.native.js.map +1 -1
  174. package/dist/jsx/sync/normalizedCache.native.js.map +1 -1
  175. package/dist/jsx/sync/persistence.native.js.map +1 -1
  176. package/dist/jsx/sync/realtime.native.js.map +1 -1
  177. package/dist/jsx/sync/rehydration.mjs +4 -0
  178. package/dist/jsx/sync/rehydration.mjs.map +1 -1
  179. package/dist/jsx/sync/rehydration.native.js +6 -0
  180. package/dist/jsx/sync/rehydration.native.js.map +1 -1
  181. package/dist/jsx/sync/storage.native.js.map +1 -1
  182. package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
  183. package/dist/jsx/sync/types.native.js.map +1 -1
  184. package/dist/jsx/sync/virtualPageManager.native.js.map +1 -1
  185. package/dist/jsx/syncOptionsKey.native.js.map +1 -1
  186. package/dist/jsx/useLiveQuery.mjs +1 -19
  187. package/dist/jsx/useLiveQuery.mjs.map +1 -1
  188. package/dist/jsx/useLiveQuery.native.js +1 -22
  189. package/dist/jsx/useLiveQuery.native.js.map +1 -1
  190. package/dist/jsx/util.native.js.map +1 -1
  191. package/package.json +9 -9
  192. package/src/doctype.spec.ts +148 -5
  193. package/src/doctype.ts +202 -173
  194. package/src/fixtures.ts +1 -0
  195. package/src/frappeReact.hydration.spec.tsx +164 -0
  196. package/src/frappeReact.spec.ts +56 -0
  197. package/src/frappeReact.ts +31 -5
  198. package/src/index.ts +11 -0
  199. package/src/serverLoaders.ts +77 -0
  200. package/src/sync/index.ts +9 -0
  201. package/src/sync/rehydration.ts +5 -0
  202. package/src/sync/syncModule.spec.ts +20 -0
  203. package/src/useLiveQuery.hydration.spec.tsx +129 -0
  204. package/src/useLiveQuery.spec.ts +3 -11
  205. package/src/useLiveQuery.ts +3 -57
  206. package/types/doctype.d.ts +117 -33
  207. package/types/doctype.d.ts.map +1 -1
  208. package/types/fixtures.d.ts.map +1 -1
  209. package/types/frappeReact.d.ts +3 -2
  210. package/types/frappeReact.d.ts.map +1 -1
  211. package/types/index.d.ts +3 -2
  212. package/types/index.d.ts.map +1 -1
  213. package/types/serverLoaders.d.ts +40 -0
  214. package/types/serverLoaders.d.ts.map +1 -0
  215. package/types/sync/index.d.ts +6 -0
  216. package/types/sync/index.d.ts.map +1 -1
  217. package/types/sync/rehydration.d.ts +2 -0
  218. package/types/sync/rehydration.d.ts.map +1 -1
  219. package/types/useLiveQuery.d.ts +3 -13
  220. package/types/useLiveQuery.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","mutationEngine_exports","MutationEngine","module","exports","import_pacer","require","import_filters","import_merge","import_types","import_types2","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","_instanceof","left","right","Symbol","hasInstance","toJournalError","err","Error","message","String","MutationEngine2","db","realtime","normalizedCache","mutationJournal","subscriptionManager","rehydrationManager","_this","options","arguments","_options_batchDelay","Map","batchDelay","batchDebouncer","Debouncer","flushBatch","wait","queueForBatch","mutation","Promise","resolve","reject","_this_options_batchMaxSize","pendingBatch","push","maxSize","batchMaxSize","maybeExecute","batch","_this_options_batchAtomic","batchMutations","map","param","mutation2","operationMap","Operation","Create","Update","Delete","type","operation","doctype","doc","data","results","mutations","atomic","batchAtomic","result","success","confirm","mutationId","upsert","_mutation_temporaryName","temporaryName","handleTemporaryToRealMapping","registerTempIdMapping","_this_globalOptimisticDocIds_get","globalOptimisticDocIds","delete","onMutationSuccess","error","fail","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","mutation1","reject1","err2","return","forceBatchFlush","cancel","mutate","onMutationStart","version","cachedDoc","_this_options_versionFields","versionField","versionFields","cachedVersion","_this_options_onStoreChange","_this_options","handleOptimisticUpdate","onStoreChange","_this_options_onStoreChange1","_this_options1","handleOptimisticCreate","_this_options_versionFields1","getDoc","versionField1","cachedVersion1","onTrace","event","details","values","add","docname","status","Status","Pending","snapshot","_this_options_onStoreChange2","_this_options2","applyOptimisticDelete","enableBatching","execute","getAllSubscriptions","subscription","query","scheduleRehydration","RehydrationReason","handleMutationError","_this_realtime","handleServerCreate","handleServerUpdate","handleServerDelete","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","subscription1","isHealthy","refetchAffectedDocs","onOptimisticApply","updateSubscriptionMembership","cryptoRandomId","optimisticDoc","has","set","Set","globalDocIds","matches","matchesFilters","filters","orderBy","limit","docIds","placement","determineOptimisticPlacement","PlacementType","Before","metadata","itemsBeforePage","After","itemsAfterPage","Unknown","pendingRehydration","PendingRehydrationType","FullRefresh","Uncertain","Within","includes","insertDocumentIntoSubscription","created","createDoc","client_mutation_id","realName","globalDocs","_version","updated","updateDoc","affected","filter","subscription2","remove","removeFromAllSubscriptions","deleteDoc","temporaryIdToRealNameMap","id","_mutation_affected","targets","fresh","onMutationError","entry","isOffline","navigator","onLine","rollbackOptimisticState","errorWithStatus","handleConflict","handleFailedCreate","replace","restoredDoc"],"sources":["../../../src/sync/mutationEngine.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","to","from","except","desc","key","call","__toCommonJS","mod","value","mutationEngine_exports","MutationEngine","module","exports","import_pacer","require","import_filters","import_merge","import_types","import_types2","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","_instanceof","left","right","Symbol","hasInstance","toJournalError","err","Error","message","String","MutationEngine2","db","realtime","normalizedCache","mutationJournal","subscriptionManager","rehydrationManager","_this","options","arguments","_options_batchDelay","Map","batchDelay","batchDebouncer","Debouncer","flushBatch","wait","queueForBatch","mutation","Promise","resolve","reject","_this_options_batchMaxSize","pendingBatch","push","maxSize","batchMaxSize","maybeExecute","batch","_this_options_batchAtomic","batchMutations","map","param","mutation2","operationMap","Operation","Create","Update","Delete","type","operation","doctype","doc","data","results","mutations","atomic","batchAtomic","result","success","confirm","mutationId","upsert","_mutation_temporaryName","temporaryName","handleTemporaryToRealMapping","registerTempIdMapping","_this_globalOptimisticDocIds_get","globalOptimisticDocIds","delete","onMutationSuccess","error","fail","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","mutation1","reject1","err2","return","forceBatchFlush","cancel","mutate","onMutationStart","version","cachedDoc","_this_options_versionFields","versionField","versionFields","cachedVersion","_this_options_onStoreChange","_this_options","handleOptimisticUpdate","onStoreChange","_this_options_onStoreChange1","_this_options1","handleOptimisticCreate","_this_options_versionFields1","getDoc","versionField1","cachedVersion1","onTrace","event","details","values","add","docname","status","Status","Pending","snapshot","_this_options_onStoreChange2","_this_options2","applyOptimisticDelete","enableBatching","execute","getAllSubscriptions","subscription","query","scheduleRehydration","RehydrationReason","handleMutationError","_this_realtime","handleServerCreate","handleServerUpdate","handleServerDelete","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","subscription1","isHealthy","refetchAffectedDocs","onOptimisticApply","updateSubscriptionMembership","cryptoRandomId","optimisticDoc","has","set","Set","globalDocIds","matches","matchesFilters","filters","orderBy","limit","docIds","placement","determineOptimisticPlacement","PlacementType","Before","metadata","itemsBeforePage","After","itemsAfterPage","Unknown","pendingRehydration","PendingRehydrationType","FullRefresh","Uncertain","Within","includes","insertDocumentIntoSubscription","created","createDoc","client_mutation_id","realName","globalDocs","_version","updated","updateDoc","affected","filter","subscription2","remove","removeFromAllSubscriptions","deleteDoc","temporaryIdToRealNameMap","id","_mutation_affected","targets","fresh","onMutationError","entry","isOffline","navigator","onLine","rollbackOptimisticState","errorWithStatus","handleConflict","handleFailedCreate","replace","restoredDoc","latest","base","clientPartial","fullClient","mergeConfig","buildMergeConfig","nonOverlap","merge","hasConflicts","merged","newId","base_modified","refreshed","unused","onConflict","candidate","_subscription_boundaries","_subscription_boundaries1","boundaries","firstItem","lastItem","determinePlacementWithBoundaries","order","first","last","sortFields","parseSortFields","field","isAsc","candidateValue","firstValue","lastValue","orderByArray","Array","isArray","ob","Order","Desc","hasNameField","some","sf","replayPending","_this_options_replayRateLimit","anyFailed","onReplayStart","pendingMutations","listPending","onReplayComplete","rateLimit","replayRateLimit","processMutation","processMutation2","onRetry","errorClass","classifyError","notifyMutationError","delayMs","Math","ceil","indexOf","setTimeout","_errorWithStatus_response","response","fmc","fieldMergeConfig","doctypes","entries","dt","fields","defaultStrategy","MergeStrategy","ServerWins","getTemporaryIdToRealNameMap","clearTemporaryMappings","clear","dispose","crypto","randomUUID","random","toString","slice"],"sources":["mutationEngine.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar mutationEngine_exports = {};\n__export(mutationEngine_exports, {\n MutationEngine: () => MutationEngine\n});\nmodule.exports = __toCommonJS(mutationEngine_exports);\nvar import_pacer = require(\"@tanstack/pacer\");\nvar import_filters = require(\"./filters\");\nvar import_merge = require(\"./merge\");\nvar import_types = require(\"./types\");\nvar import_types2 = require(\"./types\");\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _instanceof(left, right) {\n \"@swc/helpers - instanceof\";\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction toJournalError(err) {\n if (_instanceof(err, Error)) return {\n message: err.message\n };\n var message = err === null || err === void 0 ? void 0 : err.message;\n return {\n message: message !== null && message !== void 0 ? message : String(err)\n };\n}\nvar MutationEngine = /* @__PURE__ */ (function() {\n \"use strict\";\n function MutationEngine2(db, realtime, normalizedCache, mutationJournal, subscriptionManager, rehydrationManager) {\n var _this = this;\n var options = arguments.length > 6 && arguments[6] !== void 0 ? arguments[6] : {};\n _class_call_check(this, MutationEngine2);\n var _options_batchDelay;\n _define_property(this, \"temporaryIdToRealNameMap\", /* @__PURE__ */ new Map());\n _define_property(this, \"globalOptimisticDocIds\", /* @__PURE__ */ new Map());\n _define_property(this, \"pendingBatch\", []);\n _define_property(this, \"batchDebouncer\", void 0);\n _define_property(this, \"db\", void 0);\n _define_property(this, \"realtime\", void 0);\n _define_property(this, \"normalizedCache\", void 0);\n _define_property(this, \"mutationJournal\", void 0);\n _define_property(this, \"subscriptionManager\", void 0);\n _define_property(this, \"rehydrationManager\", void 0);\n _define_property(this, \"options\", void 0);\n this.db = db;\n this.realtime = realtime;\n this.normalizedCache = normalizedCache;\n this.mutationJournal = mutationJournal;\n this.subscriptionManager = subscriptionManager;\n this.rehydrationManager = rehydrationManager;\n this.options = options;\n var batchDelay = (_options_batchDelay = options.batchDelay) !== null && _options_batchDelay !== void 0 ? _options_batchDelay : 100;\n this.batchDebouncer = new import_pacer.Debouncer(function() {\n return _this.flushBatch();\n }, {\n wait: batchDelay\n });\n }\n _create_class(MutationEngine2, [\n {\n key: \"queueForBatch\",\n value: (\n /**\n * Queue a mutation for batch processing.\n * Returns a promise that resolves when the batch is processed.\n */\n function queueForBatch(mutation) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var _this_options_batchMaxSize;\n _this.pendingBatch.push({\n mutation,\n resolve,\n reject\n });\n var maxSize = (_this_options_batchMaxSize = _this.options.batchMaxSize) !== null && _this_options_batchMaxSize !== void 0 ? _this_options_batchMaxSize : 50;\n if (_this.pendingBatch.length >= maxSize) {\n _this.flushBatch();\n } else {\n _this.batchDebouncer.maybeExecute();\n }\n });\n }\n )\n },\n {\n key: \"flushBatch\",\n value: (\n /**\n * Flush pending mutations as a batch.\n */\n async function flushBatch() {\n if (this.pendingBatch.length === 0) return;\n var batch = [\n ...this.pendingBatch\n ];\n this.pendingBatch = [];\n try {\n var _this_options_batchAtomic;\n var batchMutations = batch.map(function(param) {\n var { mutation: mutation2 } = param;\n var operationMap = {\n [import_types2.Operation.Create]: \"create\",\n [import_types2.Operation.Update]: \"update\",\n [import_types2.Operation.Delete]: \"delete\"\n };\n return {\n type: operationMap[mutation2.operation],\n doctype: mutation2.doc.doctype,\n name: mutation2.doc.name,\n data: mutation2.operation === import_types2.Operation.Delete ? void 0 : mutation2.doc\n };\n });\n var results = await this.db.batchMutations({\n mutations: batchMutations,\n atomic: (_this_options_batchAtomic = this.options.batchAtomic) !== null && _this_options_batchAtomic !== void 0 ? _this_options_batchAtomic : false\n });\n for (var i = 0; i < batch.length; i++) {\n var { mutation, resolve, reject } = batch[i];\n var result = results[i];\n if (result.success) {\n this.mutationJournal.confirm(mutation.mutationId);\n if (result.data) {\n this.normalizedCache.upsert(result.data);\n if (mutation.operation === import_types2.Operation.Create) {\n var _mutation_temporaryName;\n var temporaryName = (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : mutation.doc.name;\n if (temporaryName && result.data.name && temporaryName !== result.data.name) {\n this.handleTemporaryToRealMapping(mutation.doc.doctype, temporaryName, result.data.name);\n this.rehydrationManager.registerTempIdMapping(temporaryName, result.data.name);\n } else if (temporaryName) {\n var _this_globalOptimisticDocIds_get;\n (_this_globalOptimisticDocIds_get = this.globalOptimisticDocIds.get(mutation.doc.doctype)) === null || _this_globalOptimisticDocIds_get === void 0 ? void 0 : _this_globalOptimisticDocIds_get.delete(temporaryName);\n }\n }\n }\n if (this.options.onMutationSuccess) {\n this.options.onMutationSuccess(mutation);\n }\n resolve(result.data);\n } else {\n var error = new Error(result.error || \"Batch mutation failed\");\n this.mutationJournal.fail(mutation.mutationId, toJournalError(error));\n reject(error);\n }\n }\n } catch (err) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = batch[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { mutation: mutation1, reject: reject1 } = _step.value;\n this.mutationJournal.fail(mutation1.mutationId, toJournalError(err));\n reject1(err);\n }\n } catch (err2) {\n _didIteratorError = true;\n _iteratorError = err2;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n )\n },\n {\n key: \"forceBatchFlush\",\n value: (\n /**\n * Force flush any pending batched mutations.\n */\n async function forceBatchFlush() {\n this.batchDebouncer.cancel();\n await this.flushBatch();\n }\n )\n },\n {\n key: \"mutate\",\n value: async function mutate(mutation) {\n var _mutation_temporaryName;\n if (this.options.onMutationStart) this.options.onMutationStart(mutation);\n var { doc } = mutation;\n if ((mutation.operation === import_types2.Operation.Update || mutation.operation === import_types2.Operation.Delete) && !doc.name) {\n throw new Error(\"docname is required for update/delete operations\");\n }\n var version = mutation.version;\n var cachedDoc = void 0;\n if (doc.name) {\n cachedDoc = this.normalizedCache.get({\n doctype: doc.doctype,\n name: doc.name\n });\n }\n if (version === void 0 && doc.name) {\n var _this_options_versionFields;\n var versionField = ((_this_options_versionFields = this.options.versionFields) === null || _this_options_versionFields === void 0 ? void 0 : _this_options_versionFields[doc.doctype]) || this.options.versionField || \"modified\";\n var cachedVersion = cachedDoc ? cachedDoc[versionField] : void 0;\n if (typeof cachedVersion === \"string\") version = cachedVersion;\n }\n if (mutation.operation === import_types2.Operation.Update && doc.name) {\n var _this_options_onStoreChange, _this_options;\n await this.handleOptimisticUpdate(mutation, cachedDoc);\n (_this_options_onStoreChange = (_this_options = this.options).onStoreChange) === null || _this_options_onStoreChange === void 0 ? void 0 : _this_options_onStoreChange.call(_this_options);\n }\n if (mutation.operation === import_types2.Operation.Create) {\n var _this_options_onStoreChange1, _this_options1;\n await this.handleOptimisticCreate(mutation);\n (_this_options_onStoreChange1 = (_this_options1 = this.options).onStoreChange) === null || _this_options_onStoreChange1 === void 0 ? void 0 : _this_options_onStoreChange1.call(_this_options1);\n }\n if (version === void 0 && doc.name && (mutation.operation === import_types2.Operation.Update || mutation.operation === import_types2.Operation.Delete) && !cachedDoc) {\n try {\n var _this_options_versionFields1;\n cachedDoc = await this.db.getDoc(doc.doctype, doc.name);\n var versionField1 = ((_this_options_versionFields1 = this.options.versionFields) === null || _this_options_versionFields1 === void 0 ? void 0 : _this_options_versionFields1[doc.doctype]) || this.options.versionField || \"modified\";\n var cachedVersion1 = cachedDoc ? cachedDoc[versionField1] : void 0;\n if (typeof cachedVersion1 === \"string\") version = cachedVersion1;\n this.normalizedCache.upsert(cachedDoc);\n } catch (err) {\n if (this.options.onTrace) {\n this.options.onTrace({\n event: \"version-fetch-failed\",\n details: {\n doctype: doc.doctype,\n name: doc.name,\n error: err\n }\n });\n }\n }\n }\n var values = mutation.operation === import_types2.Operation.Delete ? void 0 : mutation.operation === import_types2.Operation.Create ? mutation.doc : mutation.doc;\n this.mutationJournal.add(mutation.mutationId, {\n doctype: doc.doctype,\n // Creates journal the optimistic identity (consumer placeholder or\n // engine-generated temp id) so page refreshes keep the pending row\n // and rollback can evict it even when doc.name was never set.\n docname: mutation.operation === import_types2.Operation.Create ? (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : doc.name : doc.name,\n values,\n operation: mutation.operation,\n version,\n status: import_types2.Status.Pending,\n snapshot: doc.name ? cachedDoc : void 0\n });\n if (mutation.operation === import_types2.Operation.Delete && doc.name) {\n var _this_options_onStoreChange2, _this_options2;\n this.applyOptimisticDelete(doc.doctype, doc.name);\n (_this_options_onStoreChange2 = (_this_options2 = this.options).onStoreChange) === null || _this_options_onStoreChange2 === void 0 ? void 0 : _this_options_onStoreChange2.call(_this_options2);\n }\n if (this.options.enableBatching && !mutation.execute) {\n try {\n await this.queueForBatch(mutation);\n if (mutation.operation === import_types2.Operation.Create) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (subscription.query.doctype === mutation.doc.doctype) {\n this.rehydrationManager.scheduleRehydration(subscription, import_types2.RehydrationReason.Create);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n } catch (err) {\n await this.handleMutationError(mutation, err);\n throw err;\n }\n return;\n }\n try {\n var _this_realtime;\n if (mutation.operation === import_types2.Operation.Create) {\n await this.handleServerCreate(mutation);\n } else if (mutation.operation === import_types2.Operation.Update && doc.name) {\n await this.handleServerUpdate(mutation, version);\n } else if (mutation.operation === import_types2.Operation.Delete && doc.name) {\n await this.handleServerDelete(mutation, version);\n }\n this.mutationJournal.confirm(mutation.mutationId);\n if (this.options.onMutationSuccess) {\n this.options.onMutationSuccess(mutation);\n }\n if (mutation.operation === import_types2.Operation.Create) {\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var subscription1 = _step1.value;\n if (subscription1.query.doctype === mutation.doc.doctype) {\n this.rehydrationManager.scheduleRehydration(subscription1, import_types2.RehydrationReason.Create);\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n if (!((_this_realtime = this.realtime) === null || _this_realtime === void 0 ? void 0 : _this_realtime.isHealthy())) {\n await this.refetchAffectedDocs(mutation);\n }\n } catch (err) {\n await this.handleMutationError(mutation, err);\n throw err;\n }\n }\n },\n {\n key: \"handleOptimisticUpdate\",\n value: async function handleOptimisticUpdate(mutation, cachedDoc) {\n var doc = cachedDoc ? {\n ...cachedDoc,\n ...mutation.doc\n } : mutation.doc;\n this.normalizedCache.upsert(doc);\n if (this.options.onOptimisticApply) {\n this.options.onOptimisticApply({\n doctype: mutation.doc.doctype,\n name: mutation.doc.name,\n operation: mutation.operation\n });\n }\n this.subscriptionManager.updateSubscriptionMembership(doc);\n }\n },\n {\n key: \"handleOptimisticCreate\",\n value: async function handleOptimisticCreate(mutation) {\n var temporaryName = mutation.doc.name || `tmp_${cryptoRandomId()}`;\n mutation.temporaryName = temporaryName;\n var optimisticDoc = {\n ...mutation.doc,\n name: temporaryName\n };\n this.normalizedCache.upsert(optimisticDoc);\n if (!this.globalOptimisticDocIds.has(mutation.doc.doctype)) {\n this.globalOptimisticDocIds.set(mutation.doc.doctype, /* @__PURE__ */ new Set());\n }\n var globalDocIds = this.globalOptimisticDocIds.get(mutation.doc.doctype);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (subscription.query.doctype !== mutation.doc.doctype) continue;\n var matches = (0, import_filters.matchesFilters)(optimisticDoc, subscription.query.filters);\n if (!matches) continue;\n if (globalDocIds.has(temporaryName)) {\n continue;\n }\n if (subscription.query.orderBy && typeof subscription.query.limit === \"number\" && subscription.query.limit > 0 && subscription.docIds.length > 0) {\n var placement = this.determineOptimisticPlacement(subscription, optimisticDoc);\n switch (placement) {\n case import_types2.PlacementType.Before:\n if (subscription.metadata) {\n subscription.metadata.itemsBeforePage = (subscription.metadata.itemsBeforePage || 0) + 1;\n }\n continue;\n case import_types2.PlacementType.After:\n if (subscription.metadata) {\n subscription.metadata.itemsAfterPage = (subscription.metadata.itemsAfterPage || 0) + 1;\n }\n continue;\n case import_types2.PlacementType.Unknown:\n subscription.pendingRehydration = import_types2.PendingRehydrationType.FullRefresh;\n this.rehydrationManager.scheduleRehydration(subscription, import_types2.RehydrationReason.Uncertain);\n break;\n case import_types2.PlacementType.Within:\n break;\n }\n }\n if (!subscription.docIds.includes(temporaryName)) {\n this.subscriptionManager.insertDocumentIntoSubscription(subscription, optimisticDoc);\n globalDocIds.add(temporaryName);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n },\n {\n key: \"handleServerCreate\",\n value: async function handleServerCreate(mutation) {\n var _mutation_temporaryName;\n var created = mutation.execute ? await mutation.execute() : await this.db.createDoc({\n ...mutation.doc,\n client_mutation_id: mutation.mutationId\n });\n var realName = created === null || created === void 0 ? void 0 : created.name;\n var temporaryName = (_mutation_temporaryName = mutation.temporaryName) !== null && _mutation_temporaryName !== void 0 ? _mutation_temporaryName : mutation.doc.name;\n if (realName) {\n this.normalizedCache.upsert({\n ...created,\n doctype: created.doctype || mutation.doc.doctype\n });\n }\n if (realName && temporaryName && realName !== temporaryName) {\n this.handleTemporaryToRealMapping(mutation.doc.doctype, temporaryName, realName);\n this.rehydrationManager.registerTempIdMapping(temporaryName, realName);\n } else if (temporaryName) {\n var globalDocs = this.globalOptimisticDocIds.get(mutation.doc.doctype);\n if (globalDocs) {\n globalDocs.delete(temporaryName);\n }\n }\n }\n },\n {\n key: \"handleServerUpdate\",\n value: async function handleServerUpdate(mutation, _version) {\n if (mutation.execute) {\n var updated = await mutation.execute();\n if (updated === null || updated === void 0 ? void 0 : updated.name) {\n this.normalizedCache.upsert({\n ...updated,\n doctype: updated.doctype || mutation.doc.doctype\n });\n }\n return;\n }\n await this.db.updateDoc(mutation.doc);\n }\n },\n {\n key: \"applyOptimisticDelete\",\n value: (\n /**\n * Applies the local side of a delete: cache eviction, subscription\n * membership removal, and gap-filling rehydration. Runs before the server\n * call (mutate() body) so the row disappears immediately; the journal\n * snapshot restores it if the server rejects.\n */\n function applyOptimisticDelete(doctype, name) {\n var affected = [\n ...this.subscriptionManager.getAllSubscriptions().values()\n ].filter(function(subscription2) {\n return subscription2.query.doctype === doctype && subscription2.docIds.includes(name);\n });\n this.normalizedCache.remove({\n doctype,\n name\n });\n this.subscriptionManager.removeFromAllSubscriptions(doctype, name);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = affected[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n this.rehydrationManager.scheduleRehydration(subscription, import_types2.RehydrationReason.Delete);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n )\n },\n {\n key: \"handleServerDelete\",\n value: async function handleServerDelete(mutation, _version) {\n if (mutation.execute) {\n await mutation.execute();\n return;\n }\n await this.db.deleteDoc(mutation.doc);\n }\n },\n {\n key: \"handleTemporaryToRealMapping\",\n value: function handleTemporaryToRealMapping(doctype, temporaryName, realName) {\n this.temporaryIdToRealNameMap.set(temporaryName, realName);\n var globalDocs = this.globalOptimisticDocIds.get(doctype);\n if (globalDocs) {\n globalDocs.delete(temporaryName);\n }\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (subscription.query.doctype !== doctype) continue;\n if (!subscription.docIds.includes(temporaryName)) continue;\n subscription.docIds = subscription.docIds.includes(realName) ? subscription.docIds.filter(function(id) {\n return id !== temporaryName;\n }) : subscription.docIds.map(function(id) {\n return id === temporaryName ? realName : id;\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n this.normalizedCache.remove({\n doctype,\n name: temporaryName\n });\n }\n },\n {\n key: \"refetchAffectedDocs\",\n value: async function refetchAffectedDocs(mutation) {\n var _mutation_affected;\n var targets = [];\n var docname = mutation.doc.name;\n var doctype = mutation.doc.doctype;\n var realName = docname && this.temporaryIdToRealNameMap.get(docname) || docname;\n if (realName && mutation.operation === import_types2.Operation.Update) {\n targets.push({\n doctype,\n name: realName\n });\n }\n if ((_mutation_affected = mutation.affected) === null || _mutation_affected === void 0 ? void 0 : _mutation_affected.length) targets.push(...mutation.affected);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = targets[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var target = _step.value;\n var fresh = await this.db.getDoc(target.doctype, target.name);\n this.normalizedCache.upsert(fresh);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n },\n {\n key: \"handleMutationError\",\n value: async function handleMutationError(mutation, err) {\n if (this.options.onMutationError) this.options.onMutationError({\n mutation,\n err\n });\n this.mutationJournal.fail(mutation.mutationId, toJournalError(err));\n var entry = this.mutationJournal.get(mutation.mutationId);\n var isOffline = typeof navigator !== \"undefined\" && navigator.onLine === false;\n if (!isOffline) {\n await this.rollbackOptimisticState(mutation, entry);\n }\n var errorWithStatus = err;\n var docname = mutation.doc.name;\n if (errorWithStatus && (errorWithStatus.status === 409 || errorWithStatus.status === 412) && docname) {\n await this.handleConflict(mutation, entry);\n }\n }\n },\n {\n key: \"rollbackOptimisticState\",\n value: (\n /**\n * Rolls back optimistic state when a mutation fails.\n * Handles all operation types: create, update, and delete.\n */\n async function rollbackOptimisticState(mutation, entry) {\n var doctype = mutation.doc.doctype;\n var docname = mutation.doc.name;\n switch (mutation.operation) {\n case import_types2.Operation.Create:\n await this.handleFailedCreate(mutation);\n break;\n case import_types2.Operation.Update:\n if ((entry === null || entry === void 0 ? void 0 : entry.snapshot) && docname) {\n this.normalizedCache.upsert(entry.snapshot, {\n replace: true\n });\n this.subscriptionManager.updateSubscriptionMembership(entry.snapshot);\n }\n break;\n case import_types2.Operation.Delete:\n if ((entry === null || entry === void 0 ? void 0 : entry.snapshot) && docname) {\n this.normalizedCache.upsert(entry.snapshot, {\n replace: true\n });\n var restoredDoc = entry.snapshot;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (subscription.query.doctype !== doctype) continue;\n var matches = (0, import_filters.matchesFilters)(restoredDoc, subscription.query.filters);\n if (matches && !subscription.docIds.includes(docname)) {\n this.subscriptionManager.insertDocumentIntoSubscription(subscription, restoredDoc);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n break;\n }\n }\n )\n },\n {\n key: \"handleFailedCreate\",\n value: async function handleFailedCreate(mutation) {\n var _mutation_temporaryName;\n 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;\n var doctype = mutation.doc.doctype;\n if (temporaryName) {\n var globalDocs = this.globalOptimisticDocIds.get(doctype);\n if (globalDocs) {\n globalDocs.delete(temporaryName);\n }\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptionManager.getAllSubscriptions().values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (subscription.query.doctype !== doctype) continue;\n subscription.docIds = subscription.docIds.filter(function(id) {\n return id !== temporaryName;\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n this.normalizedCache.remove({\n doctype,\n name: temporaryName\n });\n }\n }\n },\n {\n key: \"handleConflict\",\n value: async function handleConflict(mutation, entry) {\n var doctype = mutation.doc.doctype;\n var docname = mutation.doc.name;\n if (!docname) return;\n try {\n var latest = await this.db.getDoc(doctype, docname);\n var base = entry === null || entry === void 0 ? void 0 : entry.snapshot;\n var clientPartial = (mutation.operation === import_types2.Operation.Delete ? void 0 : mutation.doc) || {};\n var fullClient = base ? {\n ...base,\n ...clientPartial,\n doctype,\n name: docname\n } : {\n ...clientPartial,\n doctype,\n name: docname\n };\n var mergeConfig = this.buildMergeConfig();\n var nonOverlap = (0, import_merge.merge)(base, fullClient, latest, mergeConfig, doctype);\n if (!nonOverlap.hasConflicts) {\n var _this_options_versionFields;\n var versionField = ((_this_options_versionFields = this.options.versionFields) === null || _this_options_versionFields === void 0 ? void 0 : _this_options_versionFields[doctype]) || this.options.versionField || \"modified\";\n if (nonOverlap.merged) {\n var newId = cryptoRandomId();\n await this.db.updateDoc({\n ...nonOverlap.merged,\n client_mutation_id: newId,\n base_modified: latest[versionField] || void 0\n });\n }\n var refreshed = await this.db.getDoc(doctype, docname);\n this.normalizedCache.upsert(refreshed);\n this.mutationJournal.confirm(mutation.mutationId);\n return;\n }\n this.normalizedCache.upsert(latest);\n } catch (unused) {\n }\n if (this.options.onConflict) this.options.onConflict({\n doctype,\n name: docname\n });\n }\n },\n {\n key: \"determineOptimisticPlacement\",\n value: (\n /**\n * Determines optimal placement for an optimistic item based on sort fields.\n * Supports multi-column sorting with proper tie-breaking.\n *\n * @param subscription - The subscription to check placement against\n * @param candidate - The document to place\n * @returns Placement relative to current page:\n * - 'before': Item belongs on a previous page\n * - 'within': Item belongs on the current page\n * - 'after': Item belongs on a later page\n * - 'unknown': Cannot determine placement (needs full refresh)\n *\n * @remarks\n * Uses page boundaries when available for O(1) placement checks.\n * Falls back to comparing against first/last items in current page.\n * Supports multi-field sorting with tie-breaking.\n */\n function determineOptimisticPlacement(subscription, candidate) {\n var _subscription_boundaries, _subscription_boundaries1;\n var docIds = subscription.docIds;\n if (!docIds.length) return import_types2.PlacementType.Unknown;\n if (((_subscription_boundaries = subscription.boundaries) === null || _subscription_boundaries === void 0 ? void 0 : _subscription_boundaries.firstItem) && ((_subscription_boundaries1 = subscription.boundaries) === null || _subscription_boundaries1 === void 0 ? void 0 : _subscription_boundaries1.lastItem)) {\n return this.determinePlacementWithBoundaries(subscription.boundaries, candidate, subscription.query.orderBy);\n }\n var order = subscription.query.orderBy;\n if (!order) return import_types2.PlacementType.Unknown;\n var doctype = subscription.query.doctype;\n var first = this.normalizedCache.get({\n doctype,\n name: docIds[0]\n });\n var last = this.normalizedCache.get({\n doctype,\n name: docIds[docIds.length - 1]\n });\n if (!first || !last) return import_types2.PlacementType.Unknown;\n var sortFields = this.parseSortFields(order);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = sortFields[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { field, isAsc } = _step.value;\n var candidateValue = candidate[field];\n var firstValue = first[field];\n var lastValue = last[field];\n if (candidateValue == null || firstValue == null || lastValue == null) {\n continue;\n }\n if (isAsc) {\n if (candidateValue < firstValue) return import_types2.PlacementType.Before;\n if (candidateValue > lastValue) return import_types2.PlacementType.After;\n } else {\n if (candidateValue > firstValue) return import_types2.PlacementType.Before;\n if (candidateValue < lastValue) return import_types2.PlacementType.After;\n }\n if (candidateValue !== firstValue && candidateValue !== lastValue) {\n return import_types2.PlacementType.Within;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return import_types2.PlacementType.Within;\n }\n )\n },\n {\n key: \"determinePlacementWithBoundaries\",\n value: (\n // All sort fields match boundaries\n function determinePlacementWithBoundaries(boundaries, candidate, orderBy) {\n if (!boundaries.firstItem || !boundaries.lastItem) return import_types2.PlacementType.Unknown;\n var sortFields = this.parseSortFields(orderBy);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = sortFields[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { field, isAsc } = _step.value;\n var candidateValue = candidate[field];\n var firstValue = boundaries.firstItem[field];\n var lastValue = boundaries.lastItem[field];\n if (candidateValue == null || firstValue == null || lastValue == null) {\n continue;\n }\n if (isAsc) {\n if (candidateValue < firstValue) return import_types2.PlacementType.Before;\n if (candidateValue > lastValue) return import_types2.PlacementType.After;\n } else {\n if (candidateValue > firstValue) return import_types2.PlacementType.Before;\n if (candidateValue < lastValue) return import_types2.PlacementType.After;\n }\n if (candidateValue !== firstValue && candidateValue !== lastValue) {\n return import_types2.PlacementType.Within;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return import_types2.PlacementType.Within;\n }\n )\n },\n {\n key: \"parseSortFields\",\n value: function parseSortFields(orderBy) {\n if (!orderBy) return [\n {\n field: \"name\",\n isAsc: true\n }\n ];\n var orderByArray = Array.isArray(orderBy) ? orderBy : [\n orderBy\n ];\n var sortFields = orderByArray.map(function(ob) {\n return {\n field: ob.field,\n isAsc: ob.order !== import_types.Order.Desc\n };\n });\n var hasNameField = sortFields.some(function(sf) {\n return sf.field === \"name\";\n });\n if (!hasNameField) {\n sortFields.push({\n field: \"name\",\n isAsc: true\n });\n }\n return sortFields;\n }\n },\n {\n key: \"replayPending\",\n value: (\n /**\n * Replays pending mutations with simplified error handling and rate limiting.\n *\n * Since HTTP client now handles retries automatically for transient errors,\n * we only need to handle:\n * - Success → confirm and remove from journal\n * - Conflict (409/412) → attempt merge resolution, then retry\n * - Auth (401/403) → notify user, keep in journal for later retry\n * - Permanent (4xx validation) → fail and remove from journal\n * - Failed (exhausted retries) → keep in journal but notify\n *\n * The replay path uses plain CRUD without optimistic writes,\n * since optimistic state is already reflected in the cache.\n *\n * Rate limiting is applied to prevent hammering the server when replaying\n * large numbers of queued mutations after coming back online.\n */\n async function replayPending() {\n var _this = this;\n var _this_options_replayRateLimit;\n var anyFailed = false;\n if (this.options.onReplayStart) this.options.onReplayStart();\n var pendingMutations = this.mutationJournal.listPending();\n if (pendingMutations.length === 0) {\n if (this.options.onReplayComplete) {\n this.options.onReplayComplete({\n anyFailed: false\n });\n }\n return;\n }\n var rateLimit = (_this_options_replayRateLimit = this.options.replayRateLimit) !== null && _this_options_replayRateLimit !== void 0 ? _this_options_replayRateLimit : 10;\n var processMutation = async function processMutation2(mutation2) {\n var { id, entry } = mutation2;\n if (_this.options.onRetry) {\n _this.options.onRetry({\n id,\n operation: entry.operation\n });\n }\n try {\n if (entry.operation === import_types2.Operation.Create) {\n var created = await _this.db.createDoc({\n ...entry.values,\n client_mutation_id: id,\n doctype: entry.doctype,\n name: entry.docname || cryptoRandomId()\n });\n if (created === null || created === void 0 ? void 0 : created.name) {\n _this.normalizedCache.upsert({\n ...created,\n doctype: created.doctype || entry.doctype\n });\n if (entry.docname && created.name !== entry.docname) {\n _this.handleTemporaryToRealMapping(entry.doctype, entry.docname, created.name);\n _this.rehydrationManager.registerTempIdMapping(entry.docname, created.name);\n }\n }\n } else if (entry.operation === import_types2.Operation.Update && entry.docname) {\n await _this.db.updateDoc({\n ...entry.values,\n client_mutation_id: id,\n base_modified: entry.version,\n doctype: entry.doctype,\n name: entry.docname\n });\n } else if (entry.operation === import_types2.Operation.Delete && entry.docname) {\n await _this.db.deleteDoc({\n doctype: entry.doctype,\n name: entry.docname,\n client_mutation_id: id\n });\n }\n _this.mutationJournal.confirm(id);\n } catch (err) {\n var errorClass = _this.classifyError(err);\n anyFailed = true;\n if (errorClass === \"conflict\") {\n if (_this.options.onConflict) {\n _this.options.onConflict({\n doctype: entry.doctype,\n name: entry.docname\n });\n }\n } else if (errorClass === \"auth\") {\n } else if (errorClass === \"permanent\") {\n _this.mutationJournal.fail(id, toJournalError(err));\n _this.notifyMutationError(id, entry, err);\n } else if (errorClass === \"failed\") {\n _this.mutationJournal.fail(id, toJournalError(err));\n _this.notifyMutationError(id, entry, err);\n }\n }\n };\n var delayMs = Math.ceil(1e3 / rateLimit);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = pendingMutations[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var mutation = _step.value;\n await processMutation(mutation);\n if (pendingMutations.indexOf(mutation) < pendingMutations.length - 1) {\n await new Promise(function(resolve) {\n return setTimeout(resolve, delayMs);\n });\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (this.options.onReplayComplete) {\n this.options.onReplayComplete({\n anyFailed\n });\n }\n }\n )\n },\n {\n key: \"classifyError\",\n value: (\n /**\n * Classifies errors for journal management.\n */\n function classifyError(err) {\n var _errorWithStatus_response;\n var errorWithStatus = err;\n var status = (errorWithStatus === null || errorWithStatus === void 0 ? void 0 : errorWithStatus.status) || (errorWithStatus === null || errorWithStatus === void 0 ? void 0 : (_errorWithStatus_response = errorWithStatus.response) === null || _errorWithStatus_response === void 0 ? void 0 : _errorWithStatus_response.status);\n if (status === 409 || status === 412) return \"conflict\";\n if (status === 401 || status === 403) return \"auth\";\n if (status && status >= 400 && status < 500) return \"permanent\";\n return \"failed\";\n }\n )\n },\n {\n key: \"notifyMutationError\",\n value: (\n /**\n * Helper to notify about mutation errors with proper typing\n */\n function notifyMutationError(id, entry, err) {\n if (!this.options.onMutationError) return;\n var mutation;\n if (entry.operation === import_types2.Operation.Create) {\n var doc = entry.values || {\n doctype: entry.doctype,\n name: entry.docname\n };\n mutation = {\n mutationId: id,\n operation: import_types2.Operation.Create,\n doc,\n version: entry.version,\n affected: []\n };\n } else if (entry.operation === import_types2.Operation.Update) {\n mutation = {\n mutationId: id,\n operation: import_types2.Operation.Update,\n doc: {\n ...entry.values,\n doctype: entry.doctype,\n name: entry.docname\n },\n version: entry.version,\n affected: []\n };\n } else {\n mutation = {\n mutationId: id,\n operation: import_types2.Operation.Delete,\n doc: {\n doctype: entry.doctype,\n name: entry.docname\n },\n version: entry.version,\n affected: []\n };\n }\n this.options.onMutationError({\n mutation,\n err\n });\n }\n )\n },\n {\n key: \"buildMergeConfig\",\n value: (\n /**\n * Converts SyncOptions.fieldMergeConfig into the MergeConfig format\n * expected by the merge() function.\n */\n function buildMergeConfig() {\n var fmc = this.options.fieldMergeConfig;\n if (!fmc) return void 0;\n var doctypes = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(fmc)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [dt, fields] = _step.value;\n doctypes[dt] = {\n fields\n };\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return {\n defaultStrategy: import_merge.MergeStrategy.ServerWins,\n doctypes\n };\n }\n )\n },\n {\n /** Gets temporary to real name mapping. */\n key: \"getTemporaryIdToRealNameMap\",\n value: function getTemporaryIdToRealNameMap() {\n return this.temporaryIdToRealNameMap;\n }\n },\n {\n /** Clears all temporary mappings. */\n key: \"clearTemporaryMappings\",\n value: function clearTemporaryMappings() {\n this.temporaryIdToRealNameMap.clear();\n this.globalOptimisticDocIds.clear();\n }\n },\n {\n /**\n * Disposes of resources.\n */\n key: \"dispose\",\n value: function dispose() {\n this.batchDebouncer.cancel();\n this.pendingBatch = [];\n this.clearTemporaryMappings();\n }\n }\n ]);\n return MutationEngine2;\n})();\nfunction cryptoRandomId() {\n if (typeof crypto !== \"undefined\" && \"randomUUID\" in crypto) return crypto.randomUUID();\n return Math.random().toString(36).slice(2);\n}\n//# sourceMappingURL=mutationEngine.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -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","mutationJournal_exports","MutationJournal","frappeSyncSequence","module","exports","import_types","require","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","MutationJournal2","options","Map","ttl","storage","loadSequenceNumber","autoCleanupEnabled","enableAutoCleanup","add","id","entry","sequence","getNextSequence","createdAt","Date","now","retryCount","pending","set","startAutoCleanup","persistSequenceNumber","isExpired","delete","confirm","status","Status","Confirmed","fail","err","Failed","error","remove"],"sources":["../../../src/sync/mutationJournal.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","to","from","except","desc","key","call","__toCommonJS","mod","value","mutationJournal_exports","MutationJournal","frappeSyncSequence","module","exports","import_types","require","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","MutationJournal2","options","Map","ttl","storage","loadSequenceNumber","autoCleanupEnabled","enableAutoCleanup","add","id","entry","sequence","getNextSequence","createdAt","Date","now","retryCount","pending","set","startAutoCleanup","persistSequenceNumber","isExpired","delete","confirm","status","Status","Confirmed","fail","err","Failed","error","remove","listPending","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","Pending","push","return","sort","a","b","getAllEntries","entries","cleanupExpired","cleaned","stopAutoCleanup","cleanupTimer","clearInterval","clear","dispose","sequenceNumber","_this","setInterval","size","stored","getItem","Number","parseInt","setItem","toString"],"sources":["mutationJournal.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar mutationJournal_exports = {};\n__export(mutationJournal_exports, {\n MutationJournal: () => MutationJournal,\n frappeSyncSequence: () => frappeSyncSequence\n});\nmodule.exports = __toCommonJS(mutationJournal_exports);\nvar import_types = require(\"./types\");\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar frappeSyncSequence = \"frappe-sync-sequence\";\nvar MutationJournal = /* @__PURE__ */ (function() {\n \"use strict\";\n function MutationJournal2(options) {\n _class_call_check(this, MutationJournal2);\n _define_property(this, \"cleanupTimer\", void 0);\n _define_property(this, \"autoCleanupEnabled\", void 0);\n _define_property(this, \"ttl\", 24 * 60 * 60 * 1e3);\n _define_property(this, \"pending\", /* @__PURE__ */ new Map());\n _define_property(this, \"sequenceNumber\", 0);\n _define_property(this, \"storage\", void 0);\n if (options === null || options === void 0 ? void 0 : options.ttl) {\n this.ttl = options.ttl;\n }\n if (options === null || options === void 0 ? void 0 : options.storage) {\n this.storage = options.storage;\n this.loadSequenceNumber();\n }\n this.autoCleanupEnabled = (options === null || options === void 0 ? void 0 : options.enableAutoCleanup) !== false;\n }\n _create_class(MutationJournal2, [\n {\n key: \"add\",\n value: function add(id, entry) {\n if (entry.sequence === void 0) entry.sequence = this.getNextSequence();\n if (entry.createdAt === void 0) entry.createdAt = Date.now();\n if (entry.ttl === void 0) entry.ttl = this.ttl;\n if (entry.retryCount === void 0) entry.retryCount = 0;\n this.pending.set(id, entry);\n if (this.autoCleanupEnabled) this.startAutoCleanup();\n this.persistSequenceNumber();\n }\n },\n {\n key: \"get\",\n value: function get(id) {\n var entry = this.pending.get(id);\n if (!entry) return void 0;\n if (this.isExpired(entry)) {\n this.pending.delete(id);\n return void 0;\n }\n return entry;\n }\n },\n {\n key: \"confirm\",\n value: function confirm(id) {\n var entry = this.pending.get(id);\n if (!entry) return;\n entry.status = import_types.Status.Confirmed;\n this.pending.delete(id);\n }\n },\n {\n key: \"fail\",\n value: function fail(id, err) {\n var entry = this.pending.get(id);\n if (!entry) return;\n entry.status = import_types.Status.Failed;\n entry.error = err;\n entry.retryCount = (entry.retryCount || 0) + 1;\n this.pending.set(id, entry);\n }\n },\n {\n /**\n * Drops an entry without confirming it — the \"dismiss\" affordance for a\n * failed mutation the user chose not to retry. Unlike `confirm` this makes\n * no claim the write reached the server.\n */\n key: \"remove\",\n value: function remove(id) {\n this.pending.delete(id);\n }\n },\n {\n key: \"listPending\",\n value: function listPending() {\n var pending = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.pending[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [id, entry] = _step.value;\n if (this.isExpired(entry)) {\n this.pending.delete(id);\n continue;\n }\n if (entry.status === import_types.Status.Pending || entry.status === import_types.Status.Failed) {\n pending.push({\n id,\n entry\n });\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n pending.sort(function(a, b) {\n return (a.entry.sequence || 0) - (b.entry.sequence || 0);\n });\n return pending;\n }\n },\n {\n key: \"getAllEntries\",\n value: function getAllEntries() {\n var entries = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.pending[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [id, entry] = _step.value;\n if (this.isExpired(entry)) continue;\n entries.push({\n id,\n entry\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return entries;\n }\n },\n {\n key: \"cleanupExpired\",\n value: function cleanupExpired() {\n var cleaned = 0;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.pending[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [id, entry] = _step.value;\n if (this.isExpired(entry)) {\n this.pending.delete(id);\n cleaned++;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return cleaned;\n }\n },\n {\n key: \"stopAutoCleanup\",\n value: function stopAutoCleanup() {\n if (this.cleanupTimer) {\n clearInterval(this.cleanupTimer);\n this.cleanupTimer = void 0;\n }\n }\n },\n {\n key: \"clear\",\n value: function clear() {\n this.pending.clear();\n this.stopAutoCleanup();\n }\n },\n {\n key: \"dispose\",\n value: function dispose() {\n this.stopAutoCleanup();\n this.clear();\n }\n },\n {\n key: \"getNextSequence\",\n value: function getNextSequence() {\n return ++this.sequenceNumber;\n }\n },\n {\n key: \"isExpired\",\n value: function isExpired(entry) {\n if (!entry.createdAt || !entry.ttl) return false;\n return Date.now() > entry.createdAt + entry.ttl;\n }\n },\n {\n key: \"startAutoCleanup\",\n value: function startAutoCleanup() {\n var _this = this;\n if (this.cleanupTimer) return;\n this.cleanupTimer = setInterval(function() {\n _this.cleanupExpired();\n if (_this.pending.size === 0) _this.stopAutoCleanup();\n }, 60 * 60 * 1e3);\n }\n },\n {\n key: \"loadSequenceNumber\",\n value: function loadSequenceNumber() {\n if (!this.storage) return;\n var stored = this.storage.getItem(frappeSyncSequence);\n if (stored) this.sequenceNumber = Number.parseInt(stored, 10) || 0;\n }\n },\n {\n key: \"persistSequenceNumber\",\n value: function persistSequenceNumber() {\n if (!this.storage) return;\n this.storage.setItem(frappeSyncSequence, this.sequenceNumber.toString());\n }\n }\n ]);\n return MutationJournal2;\n})();\n//# sourceMappingURL=mutationJournal.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -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","normalizedCache_exports","NormalizedCache","module","exports","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","NormalizedCache2","options","arguments","_options_maxSize","Map","maxSize","Infinity","onEvict","makeKey","doctype","parseKey","colonIndex","indexOf","slice","upsert","doc","bucket","state","byId","allIds","id","existing","isNew"],"sources":["../../../src/sync/normalizedCache.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","to","from","except","desc","key","call","__toCommonJS","mod","value","normalizedCache_exports","NormalizedCache","module","exports","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","NormalizedCache2","options","arguments","_options_maxSize","Map","maxSize","Infinity","onEvict","makeKey","doctype","parseKey","colonIndex","indexOf","slice","upsert","doc","bucket","state","byId","allIds","id","existing","isNew","push","replace","accessOrder","set","Date","now","evictIfNeeded","remove","filter","currentId","delete","_this_state_doc_doctype","result","getStats","size","doctypes","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","count","err","return","_this","_loop","i2","sortedEntries","stats","sort","a","b","toEvict","clear"],"sources":["normalizedCache.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar normalizedCache_exports = {};\n__export(normalizedCache_exports, {\n NormalizedCache: () => NormalizedCache\n});\nmodule.exports = __toCommonJS(normalizedCache_exports);\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar NormalizedCache = /* @__PURE__ */ (function() {\n \"use strict\";\n function NormalizedCache2() {\n var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n _class_call_check(this, NormalizedCache2);\n var _options_maxSize;\n _define_property(this, \"state\", {});\n _define_property(this, \"accessOrder\", /* @__PURE__ */ new Map());\n _define_property(this, \"maxSize\", void 0);\n _define_property(this, \"onEvict\", void 0);\n this.maxSize = (_options_maxSize = options.maxSize) !== null && _options_maxSize !== void 0 ? _options_maxSize : Infinity;\n this.onEvict = options.onEvict;\n }\n _create_class(NormalizedCache2, [\n {\n key: \"makeKey\",\n value: function makeKey(doctype, name) {\n return `${doctype}:${name}`;\n }\n },\n {\n key: \"parseKey\",\n value: function parseKey(key) {\n var colonIndex = key.indexOf(\":\");\n return {\n doctype: key.slice(0, colonIndex),\n name: key.slice(colonIndex + 1)\n };\n }\n },\n {\n key: \"upsert\",\n value: function upsert(doc) {\n var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var bucket = this.state[doc.doctype];\n if (!bucket) {\n bucket = {\n byId: {},\n allIds: []\n };\n this.state[doc.doctype] = bucket;\n }\n var id = doc === null || doc === void 0 ? void 0 : doc.name;\n if (!id) return;\n var existing = bucket.byId[id];\n var isNew = !existing;\n if (isNew) {\n bucket.allIds.push(id);\n }\n bucket.byId[id] = existing && !options.replace ? {\n ...existing,\n ...doc\n } : doc;\n var key = this.makeKey(doc.doctype, id);\n this.accessOrder.set(key, Date.now());\n if (isNew && this.maxSize !== Infinity) {\n this.evictIfNeeded();\n }\n }\n },\n {\n key: \"remove\",\n value: function remove(doc) {\n var bucket = this.state[doc.doctype];\n if (!bucket) return;\n if (bucket.byId[doc.name]) delete bucket.byId[doc.name];\n bucket.allIds = bucket.allIds.filter(function(currentId) {\n return currentId !== doc.name;\n });\n var key = this.makeKey(doc.doctype, doc.name);\n this.accessOrder.delete(key);\n }\n },\n {\n key: \"get\",\n value: function get(doc) {\n var _this_state_doc_doctype;\n var result = (_this_state_doc_doctype = this.state[doc.doctype]) === null || _this_state_doc_doctype === void 0 ? void 0 : _this_state_doc_doctype.byId[doc.name];\n if (result) {\n var key = this.makeKey(doc.doctype, doc.name);\n this.accessOrder.set(key, Date.now());\n }\n return result;\n }\n },\n {\n key: \"getStats\",\n value: function getStats() {\n var size = 0;\n var doctypes = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(this.state)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [doctype, bucket] = _step.value;\n var count = bucket.allIds.length;\n size += count;\n doctypes.push({\n doctype,\n count\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return {\n size,\n doctypes\n };\n }\n },\n {\n key: \"evictIfNeeded\",\n value: (\n /**\n * Evicts least recently used documents if cache exceeds maxSize.\n */\n function evictIfNeeded() {\n var _this, _loop = function(i2) {\n var [key] = sortedEntries[i2];\n var { doctype, name } = _this.parseKey(key);\n var bucket = _this.state[doctype];\n if (bucket) {\n delete bucket.byId[name];\n bucket.allIds = bucket.allIds.filter(function(id) {\n return id !== name;\n });\n }\n _this.accessOrder.delete(key);\n if (_this.onEvict) {\n _this.onEvict(doctype, name);\n }\n };\n var stats = this.getStats();\n if (stats.size <= this.maxSize) return;\n var sortedEntries = [\n ...this.accessOrder.entries()\n ].sort(function(a, b) {\n return a[1] - b[1];\n });\n var toEvict = stats.size - this.maxSize;\n for (var i = 0; i < toEvict && i < sortedEntries.length; i++) _this = this, _loop(i);\n }\n )\n },\n {\n /**\n * Clears the entire cache.\n */\n key: \"clear\",\n value: function clear() {\n this.state = {};\n this.accessOrder.clear();\n }\n },\n {\n key: \"size\",\n get: (\n /**\n * Gets the current cache size.\n */\n function get() {\n return this.getStats().size;\n }\n )\n }\n ]);\n return NormalizedCache2;\n})();\n//# sourceMappingURL=normalizedCache.js.map\n"],"mappings":"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","ignoreList":[]}