@multiplatform.one/frappe 7.6.2 → 7.7.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.
- package/dist/cjs/auth.native.js.map +1 -1
- package/dist/cjs/call.native.js.map +1 -1
- package/dist/cjs/collection.native.js.map +1 -1
- package/dist/cjs/common/types.native.js.map +1 -1
- package/dist/cjs/core/http.native.js.map +1 -1
- package/dist/cjs/core/types.native.js.map +1 -1
- package/dist/cjs/core/wire.native.js.map +1 -1
- package/dist/cjs/db.native.js.map +1 -1
- package/dist/cjs/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
- package/dist/cjs/devtools/index.native.js.map +1 -1
- package/dist/cjs/devtools/plugin.native.js.map +1 -1
- package/dist/cjs/devtools/theme.native.js.map +1 -1
- package/dist/cjs/doctype.native.js.map +1 -1
- package/dist/cjs/file.native.js.map +1 -1
- package/dist/cjs/fixtureDb.native.js.map +1 -1
- package/dist/cjs/fixtures.native.js.map +1 -1
- package/dist/cjs/frappeApp.native.js.map +1 -1
- package/dist/cjs/frappeReact.native.js +1 -1
- package/dist/cjs/frappeReact.native.js.map +1 -1
- package/dist/cjs/index.native.js +2 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/optimistic.native.js.map +1 -1
- package/dist/cjs/pacer.native.js.map +1 -1
- package/dist/cjs/plugin/index.native.js.map +1 -1
- package/dist/cjs/realtime.native.js.map +1 -1
- package/dist/cjs/sync/backfill.native.js.map +1 -1
- package/dist/cjs/sync/filters.native.js.map +1 -1
- package/dist/cjs/sync/index.native.js.map +1 -1
- package/dist/cjs/sync/merge.native.js.map +1 -1
- package/dist/cjs/sync/mutationEngine.native.js.map +1 -1
- package/dist/cjs/sync/mutationJournal.native.js.map +1 -1
- package/dist/cjs/sync/normalizedCache.native.js.map +1 -1
- package/dist/cjs/sync/persistence.native.js.map +1 -1
- package/dist/cjs/sync/realtime.native.js.map +1 -1
- package/dist/cjs/sync/rehydration.native.js.map +1 -1
- package/dist/cjs/sync/storage.native.js.map +1 -1
- package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
- package/dist/cjs/sync/types.native.js.map +1 -1
- package/dist/cjs/sync/virtualPageManager.native.js.map +1 -1
- package/dist/cjs/useLiveQuery.native.js.map +1 -1
- package/dist/cjs/util.native.js.map +1 -1
- package/dist/esm/auth.native.js.map +1 -1
- package/dist/esm/call.native.js.map +1 -1
- package/dist/esm/collection.native.js.map +1 -1
- package/dist/esm/common/types.native.js.map +1 -1
- package/dist/esm/core/http.native.js.map +1 -1
- package/dist/esm/core/types.native.js.map +1 -1
- package/dist/esm/core/wire.native.js.map +1 -1
- package/dist/esm/db.native.js.map +1 -1
- package/dist/esm/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
- package/dist/esm/devtools/index.native.js.map +1 -1
- package/dist/esm/devtools/plugin.native.js.map +1 -1
- package/dist/esm/devtools/theme.native.js.map +1 -1
- package/dist/esm/doctype.native.js.map +1 -1
- package/dist/esm/file.native.js.map +1 -1
- package/dist/esm/fixtureDb.native.js.map +1 -1
- package/dist/esm/fixtures.native.js.map +1 -1
- package/dist/esm/frappeApp.native.js.map +1 -1
- package/dist/esm/frappeReact.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/optimistic.native.js.map +1 -1
- package/dist/esm/pacer.native.js.map +1 -1
- package/dist/esm/plugin/index.native.js.map +1 -1
- package/dist/esm/realtime.native.js.map +1 -1
- package/dist/esm/sync/backfill.native.js.map +1 -1
- package/dist/esm/sync/filters.native.js.map +1 -1
- package/dist/esm/sync/index.native.js.map +1 -1
- package/dist/esm/sync/merge.native.js.map +1 -1
- package/dist/esm/sync/mutationEngine.native.js.map +1 -1
- package/dist/esm/sync/mutationJournal.native.js.map +1 -1
- package/dist/esm/sync/normalizedCache.native.js.map +1 -1
- package/dist/esm/sync/persistence.native.js.map +1 -1
- package/dist/esm/sync/realtime.native.js.map +1 -1
- package/dist/esm/sync/rehydration.native.js.map +1 -1
- package/dist/esm/sync/storage.native.js.map +1 -1
- package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
- package/dist/esm/sync/types.native.js.map +1 -1
- package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
- package/dist/esm/useLiveQuery.native.js.map +1 -1
- package/dist/esm/util.native.js.map +1 -1
- package/package.json +6 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_type_of","obj","Symbol","constructor","MergeStrategy","MergeStrategy2","FieldMergeStrategy","FieldMergeStrategy2","isObject","value","Array","isArray","isFrappeDoc","name","doctype","getFieldMergeStrategy","fieldName","config","_config_doctypes_doctype_fields","_config_doctypes_doctype","_config_doctypes","_config_doctypes_doctype1","_config_doctypes1","fieldStrategy","doctypes","fields","doctypeDefault","defaultStrategy","applyMergeStrategy","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","from","mergeFieldValue","options","arguments","length","isChildTable","isChildTableArray","mergeChildTable","merge","merged","conflicts","allKeys","Object","keys","forEach","key2","key","baseValue","clientValue","serverValue","clientChanged","deepEqual","serverChanged","baseObject","objectMergeResult","mergeObject","hasConflicts","push","clientArray","serverArray","rowsByName","Map","row","isChildTableRow","set","get","row1","existingRow","assign","sortChildTableByIdx","result1","baseRowsByName","clientRowsByName","serverRowsByName","row2","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","row3","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_iterator4","_step4","row4","allRowNames","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","rowName","baseRow","clientRow","serverRow","clientDeleted","serverDeleted","clientAdded","serverAdded","childDoctype","childDoctype1","merged1","hasIndexField","some","idx","sort","a","b","indexA","Number","MAX_SAFE_INTEGER","indexB","valueA","valueB","every","index","keysA","keysB","parent","parentfield","parenttype","_len","values","_key","validRows","filter","floor","Boolean","validArrays","arr2","hasChildTableEvidence","hasNonChildTableEvidence","arr","validRows1","stripNullsFromChildRow","cleaned","entries"],"sources":["merge.native.js"],"sourcesContent":["function _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar MergeStrategy = /* @__PURE__ */ (function(MergeStrategy2) {\n MergeStrategy2[\"ClientWins\"] = \"client-wins\";\n MergeStrategy2[\"ServerWins\"] = \"server-wins\";\n return MergeStrategy2;\n})({});\nvar FieldMergeStrategy = /* @__PURE__ */ (function(FieldMergeStrategy2) {\n FieldMergeStrategy2[\"ClientWins\"] = \"client-wins\";\n FieldMergeStrategy2[\"ServerWins\"] = \"server-wins\";\n FieldMergeStrategy2[\"Sum\"] = \"sum\";\n FieldMergeStrategy2[\"Max\"] = \"max\";\n FieldMergeStrategy2[\"Min\"] = \"min\";\n FieldMergeStrategy2[\"UnionSet\"] = \"union-set\";\n return FieldMergeStrategy2;\n})({});\nfunction isObject(value) {\n return (typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) === \"object\" && value !== null && !Array.isArray(value);\n}\nfunction isFrappeDoc(value) {\n return (typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) === \"object\" && value !== null && \"name\" in value && \"doctype\" in value && typeof value.name === \"string\" && typeof value.doctype === \"string\";\n}\nfunction getFieldMergeStrategy(fieldName, config, doctype) {\n var _config_doctypes_doctype_fields, _config_doctypes_doctype, _config_doctypes, _config_doctypes_doctype1, _config_doctypes1;\n if (!config) return \"server-wins\";\n var fieldStrategy = doctype ? (_config_doctypes = config.doctypes) === null || _config_doctypes === void 0 ? void 0 : (_config_doctypes_doctype = _config_doctypes[doctype]) === null || _config_doctypes_doctype === void 0 ? void 0 : (_config_doctypes_doctype_fields = _config_doctypes_doctype.fields) === null || _config_doctypes_doctype_fields === void 0 ? void 0 : _config_doctypes_doctype_fields[fieldName] : void 0;\n if (fieldStrategy) return fieldStrategy;\n var doctypeDefault = doctype ? (_config_doctypes1 = config.doctypes) === null || _config_doctypes1 === void 0 ? void 0 : (_config_doctypes_doctype1 = _config_doctypes1[doctype]) === null || _config_doctypes_doctype1 === void 0 ? void 0 : _config_doctypes_doctype1.defaultStrategy : void 0;\n if (doctypeDefault) {\n return doctypeDefault === \"client-wins\" ? \"client-wins\" : \"server-wins\";\n }\n return config.defaultStrategy === \"client-wins\" ? \"client-wins\" : \"server-wins\";\n}\nfunction applyMergeStrategy(fieldName, base, client, server, strategy) {\n if (typeof strategy === \"function\") {\n return {\n value: strategy(base, client, server),\n hasConflict: false\n };\n }\n switch (strategy) {\n case \"client-wins\":\n return {\n value: client,\n hasConflict: false\n };\n case \"server-wins\":\n return {\n value: server,\n hasConflict: false\n };\n case \"sum\": {\n if (typeof base !== \"number\" && base !== null && base !== void 0 || typeof client !== \"number\" && client !== null && client !== void 0 || typeof server !== \"number\" && server !== null && server !== void 0) {\n throw new TypeError(`merge strategy sum requires numeric values for field ${fieldName}`);\n }\n var baseNum = typeof base === \"number\" ? base : 0;\n var clientNum = typeof client === \"number\" ? client : 0;\n var serverNum = typeof server === \"number\" ? server : 0;\n var clientDelta = clientNum - baseNum;\n var serverDelta = serverNum - baseNum;\n return {\n value: baseNum + clientDelta + serverDelta,\n hasConflict: false\n };\n }\n case \"max\": {\n if (typeof base !== \"number\" && base !== null && base !== void 0 || typeof client !== \"number\" && client !== null && client !== void 0 || typeof server !== \"number\" && server !== null && server !== void 0) {\n throw new TypeError(`merge strategy max requires numeric values for field ${fieldName}`);\n }\n var baseNum1 = typeof base === \"number\" ? base : 0;\n var clientNum1 = typeof client === \"number\" ? client : 0;\n var serverNum1 = typeof server === \"number\" ? server : 0;\n return {\n value: Math.max(baseNum1, clientNum1, serverNum1),\n hasConflict: false\n };\n }\n case \"min\": {\n if (typeof base !== \"number\" && base !== null && base !== void 0 || typeof client !== \"number\" && client !== null && client !== void 0 || typeof server !== \"number\" && server !== null && server !== void 0) {\n throw new TypeError(`merge strategy min requires numeric values for field ${fieldName}`);\n }\n var baseNum2 = typeof base === \"number\" ? base : 0;\n var clientNum2 = typeof client === \"number\" ? client : 0;\n var serverNum2 = typeof server === \"number\" ? server : 0;\n return {\n value: Math.min(baseNum2, clientNum2, serverNum2),\n hasConflict: false\n };\n }\n case \"union-set\": {\n if (!Array.isArray(base) && base !== null && base !== void 0 || !Array.isArray(client) && client !== null && client !== void 0 || !Array.isArray(server) && server !== null && server !== void 0) {\n throw new TypeError(`merge strategy union requires array values for field ${fieldName}`);\n }\n var baseArray = Array.isArray(base) ? base : [];\n var baseSet = new Set(baseArray);\n var clientSet = new Set(Array.isArray(client) ? client : []);\n var serverSet = new Set(Array.isArray(server) ? server : []);\n var result = new Set(baseArray);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = clientSet[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var item = _step.value;\n if (!baseSet.has(item)) {\n result.add(item);\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 var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = serverSet[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var item1 = _step1.value;\n if (!baseSet.has(item1)) {\n result.add(item1);\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 var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = baseArray[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var item2 = _step2.value;\n if (!clientSet.has(item2) && !serverSet.has(item2)) {\n result.delete(item2);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n return {\n value: Array.from(result),\n hasConflict: false\n };\n }\n default:\n return {\n value: server,\n hasConflict: true\n };\n }\n}\nfunction mergeFieldValue(base, client) {\n var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n if (client === null || client === void 0) {\n return client;\n }\n if (Array.isArray(client)) {\n var baseArray = Array.isArray(base) ? base : [];\n if (options.isChildTable || isChildTableArray(baseArray, client)) {\n return mergeChildTable(baseArray, client);\n }\n return client;\n }\n if ((typeof client === \"undefined\" ? \"undefined\" : _type_of(client)) === \"object\" && client !== null) {\n return {\n ...(typeof base === \"undefined\" ? \"undefined\" : _type_of(base)) === \"object\" && base !== null && !Array.isArray(base) ? base : {},\n ...client\n };\n }\n return client;\n}\nfunction merge(base, client, server, config, doctype) {\n doctype = doctype || server.doctype || client.doctype || (base === null || base === void 0 ? void 0 : base.doctype);\n var merged = {};\n var conflicts = [];\n var allKeys = /* @__PURE__ */ new Set();\n if (base) Object.keys(base).forEach(function(key2) {\n return allKeys.add(key2);\n });\n Object.keys(client).forEach(function(key2) {\n return allKeys.add(key2);\n });\n Object.keys(server).forEach(function(key2) {\n return allKeys.add(key2);\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = allKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n var baseValue = base === null || base === void 0 ? void 0 : base[key];\n var clientValue = client[key];\n var serverValue = server[key];\n var clientChanged = !deepEqual(baseValue, clientValue);\n var serverChanged = !deepEqual(baseValue, serverValue);\n if (!clientChanged && !serverChanged) {\n merged[key] = baseValue;\n } else if (clientChanged && !serverChanged) {\n merged[key] = mergeFieldValue(baseValue, clientValue);\n } else if (!clientChanged && serverChanged) {\n merged[key] = mergeFieldValue(baseValue, serverValue);\n } else {\n if (deepEqual(clientValue, serverValue)) {\n merged[key] = serverValue;\n } else {\n if (isChildTableArray(baseValue, clientValue, serverValue)) {\n merged[key] = mergeChildTable(Array.isArray(baseValue) ? baseValue : [], Array.isArray(clientValue) ? clientValue : [], Array.isArray(serverValue) ? serverValue : [], config);\n } else if (isObject(clientValue) && isObject(serverValue)) {\n var baseObject = isObject(baseValue) ? baseValue : {};\n var objectMergeResult = mergeObject(baseObject, clientValue, serverValue, config, doctype);\n merged[key] = objectMergeResult.merged;\n if (objectMergeResult.hasConflicts) {\n conflicts.push(key);\n }\n } else {\n var strategy = getFieldMergeStrategy(key, config, doctype);\n var result = applyMergeStrategy(key, baseValue, clientValue, serverValue, strategy);\n merged[key] = result.value;\n if (result.hasConflict || !config || !doctype) {\n conflicts.push(key);\n }\n }\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 return {\n merged,\n conflicts,\n hasConflicts: conflicts.length > 0\n };\n}\nfunction mergeObject(base, client, server, config, doctype) {\n var merged = {};\n var allKeys = /* @__PURE__ */ new Set([\n ...Object.keys(base),\n ...Object.keys(client),\n ...Object.keys(server)\n ]);\n var hasConflicts = false;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = allKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n var baseValue = base[key];\n var clientValue = client[key];\n var serverValue = server[key];\n var clientChanged = !deepEqual(baseValue, clientValue);\n var serverChanged = !deepEqual(baseValue, serverValue);\n if (!clientChanged && !serverChanged) {\n merged[key] = baseValue;\n } else if (clientChanged && !serverChanged) {\n merged[key] = clientValue;\n } else if (!clientChanged && serverChanged) {\n merged[key] = serverValue;\n } else if (deepEqual(clientValue, serverValue)) {\n merged[key] = serverValue;\n } else {\n var strategy = getFieldMergeStrategy(key, config, doctype);\n var result = applyMergeStrategy(key, baseValue, clientValue, serverValue, strategy);\n merged[key] = result.value;\n if (result.hasConflict) hasConflicts = true;\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 merged,\n hasConflicts\n };\n}\nfunction mergeChildTable(baseArray, clientArray, serverArray, config) {\n var isChildTable = isChildTableArray(baseArray, clientArray, serverArray);\n if (!isChildTable) return serverArray !== null && serverArray !== void 0 ? serverArray : clientArray;\n if (!serverArray) {\n var rowsByName = /* @__PURE__ */ new Map();\n var result = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = baseArray[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var row = _step.value;\n if (isChildTableRow(row)) {\n rowsByName.set(row.name, {\n ...row\n });\n result.push(rowsByName.get(row.name));\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 var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = clientArray[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var row1 = _step1.value;\n if (isChildTableRow(row1)) {\n var existingRow = rowsByName.get(row1.name);\n if (existingRow && isObject(existingRow)) {\n Object.assign(existingRow, row1);\n } else {\n rowsByName.set(row1.name, {\n ...row1\n });\n result.push(rowsByName.get(row1.name));\n }\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 return sortChildTableByIdx(result);\n }\n var result1 = [];\n var baseRowsByName = /* @__PURE__ */ new Map();\n var clientRowsByName = /* @__PURE__ */ new Map();\n var serverRowsByName = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = baseArray[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var row2 = _step2.value;\n if (isChildTableRow(row2)) baseRowsByName.set(row2.name, row2);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = clientArray[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var row3 = _step3.value;\n if (isChildTableRow(row3)) clientRowsByName.set(row3.name, row3);\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = serverArray[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var row4 = _step4.value;\n if (isChildTableRow(row4)) serverRowsByName.set(row4.name, row4);\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return != null) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n var allRowNames = /* @__PURE__ */ new Set([\n ...baseRowsByName.keys(),\n ...clientRowsByName.keys(),\n ...serverRowsByName.keys()\n ]);\n var _iteratorNormalCompletion5 = true, _didIteratorError5 = false, _iteratorError5 = void 0;\n try {\n for (var _iterator5 = allRowNames[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {\n var rowName = _step5.value;\n var baseRow = baseRowsByName.get(rowName);\n var clientRow = clientRowsByName.get(rowName);\n var serverRow = serverRowsByName.get(rowName);\n var clientDeleted = baseRow && !clientRow;\n var serverDeleted = baseRow && !serverRow;\n var clientAdded = !baseRow && clientRow;\n var serverAdded = !baseRow && serverRow;\n if (clientDeleted && serverDeleted || clientDeleted && !serverDeleted || !clientDeleted && serverDeleted) {\n continue;\n }\n if (clientAdded && !serverAdded) {\n if (clientRow && isObject(clientRow)) {\n result1.push({\n ...clientRow\n });\n }\n } else if (!clientAdded && serverAdded) {\n if (serverRow && isObject(serverRow)) {\n result1.push({\n ...serverRow\n });\n }\n } else if (clientAdded && serverAdded) {\n if (isFrappeDoc(clientRow) && isFrappeDoc(serverRow)) {\n var childDoctype = serverRow.doctype || clientRow.doctype;\n if (childDoctype) {\n var merged = merge(void 0, clientRow, serverRow, config, childDoctype);\n result1.push(merged.merged);\n }\n }\n } else if (baseRow && clientRow && serverRow) {\n if (isFrappeDoc(baseRow) && isFrappeDoc(clientRow) && isFrappeDoc(serverRow)) {\n var childDoctype1 = serverRow.doctype || clientRow.doctype || baseRow.doctype;\n if (childDoctype1) {\n var merged1 = merge(baseRow, clientRow, serverRow, config, childDoctype1);\n result1.push(merged1.merged);\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError5 = true;\n _iteratorError5 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion5 && _iterator5.return != null) {\n _iterator5.return();\n }\n } finally {\n if (_didIteratorError5) {\n throw _iteratorError5;\n }\n }\n }\n return sortChildTableByIdx(result1);\n}\nfunction sortChildTableByIdx(value) {\n var hasIndexField = value.some(function(row) {\n return isChildTableRow(row) && row.idx !== null && typeof row.idx === \"number\";\n });\n if (hasIndexField) {\n value.sort(function(a, b) {\n var indexA = isChildTableRow(a) && typeof a.idx === \"number\" ? a.idx : Number.MAX_SAFE_INTEGER;\n var indexB = isChildTableRow(b) && typeof b.idx === \"number\" ? b.idx : Number.MAX_SAFE_INTEGER;\n return indexA - indexB;\n });\n }\n return value;\n}\nfunction deepEqual(valueA, valueB) {\n if (valueA === valueB) return true;\n if (valueA == null || valueB == null) return valueA === valueB;\n if ((typeof valueA === \"undefined\" ? \"undefined\" : _type_of(valueA)) !== (typeof valueB === \"undefined\" ? \"undefined\" : _type_of(valueB))) return false;\n if (Array.isArray(valueA) && Array.isArray(valueB)) {\n if (valueA.length !== valueB.length) return false;\n return valueA.every(function(value, index) {\n return deepEqual(value, valueB[index]);\n });\n }\n if (isObject(valueA) && isObject(valueB)) {\n var keysA = Object.keys(valueA);\n var keysB = Object.keys(valueB);\n if (keysA.length !== keysB.length) return false;\n return keysA.every(function(key) {\n return deepEqual(valueA[key], valueB[key]);\n });\n }\n return false;\n}\nfunction isChildTableRow(value) {\n if ((typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) !== \"object\" || value === null) return false;\n var row = value;\n if (typeof row.name !== \"string\") return false;\n if (!(\"idx\" in row) || row.idx !== null && typeof row.idx !== \"number\") {\n return false;\n }\n if (!(\"parent\" in row) || row.parent !== null && typeof row.parent !== \"string\") {\n return false;\n }\n if (!(\"parentfield\" in row) || row.parentfield !== null && typeof row.parentfield !== \"string\") {\n return false;\n }\n if (!(\"parenttype\" in row) || row.parenttype !== null && typeof row.parenttype !== \"string\") {\n return false;\n }\n if (\"doctype\" in row && row.doctype !== null && typeof row.doctype !== \"string\") {\n return false;\n }\n return true;\n}\nfunction isChildTableArray() {\n for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {\n values[_key] = arguments[_key];\n }\n if (values.length === 1) {\n var value = values[0];\n if (!Array.isArray(value)) return false;\n if (value.length === 0) return null;\n var validRows = value.filter(function(row) {\n return row !== null && row !== void 0;\n });\n if (validRows.length === 0) return null;\n return [\n validRows[0],\n validRows[validRows.length - 1],\n validRows[Math.floor(validRows.length / 2)]\n ].filter(Boolean).every(function(row) {\n return isChildTableRow(row);\n });\n }\n var validArrays = values.filter(function(arr2) {\n return Array.isArray(arr2);\n });\n if (validArrays.length === 0) return false;\n var hasChildTableEvidence = false;\n var hasNonChildTableEvidence = false;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = validArrays[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var arr = _step.value;\n if (!Array.isArray(arr)) return false;\n if (arr.length === 0) continue;\n var validRows1 = arr.filter(function(row) {\n return row !== null && row !== void 0;\n });\n if (validRows1.length === 0) continue;\n if ([\n validRows1[0],\n validRows1.length >= 2 ? validRows1[validRows1.length - 1] : null,\n validRows1.length >= 3 ? validRows1[Math.floor(validRows1.length / 2)] : null\n ].filter(Boolean).every(function(row) {\n return isChildTableRow(row);\n })) {\n hasChildTableEvidence = true;\n } else {\n hasNonChildTableEvidence = true;\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 hasChildTableEvidence && !hasNonChildTableEvidence;\n}\nfunction stripNullsFromChildRow(row) {\n var cleaned = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(row)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, value] = _step.value;\n if (value !== null) {\n cleaned[key] = value;\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}\nexport {\n FieldMergeStrategy,\n MergeStrategy,\n applyMergeStrategy,\n deepEqual,\n getFieldMergeStrategy,\n isChildTableArray,\n isChildTableRow,\n isObject,\n merge,\n mergeChildTable,\n mergeFieldValue,\n stripNullsFromChildRow\n};\n//# sourceMappingURL=merge.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_type_of","obj","Symbol","constructor","MergeStrategy","MergeStrategy2","FieldMergeStrategy","FieldMergeStrategy2","isObject","value","Array","isArray","isFrappeDoc","name","doctype","getFieldMergeStrategy","fieldName","config","_config_doctypes_doctype_fields","_config_doctypes_doctype","_config_doctypes","_config_doctypes_doctype1","_config_doctypes1","fieldStrategy","doctypes","fields","doctypeDefault","defaultStrategy","applyMergeStrategy","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","from","mergeFieldValue","options","arguments","length","isChildTable","isChildTableArray","mergeChildTable","merge","merged","conflicts","allKeys","Object","keys","forEach","key2","key","baseValue","clientValue","serverValue","clientChanged","deepEqual","serverChanged","baseObject","objectMergeResult","mergeObject","hasConflicts","push","clientArray","serverArray","rowsByName","Map","row","isChildTableRow","set","get","row1","existingRow","assign","sortChildTableByIdx","result1","baseRowsByName","clientRowsByName","serverRowsByName","row2"],"sources":["../../../src/sync/merge.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Debouncer","matchesFilters","merge","MergeStrategy","Order","Operation","PendingRehydrationType","PlacementType","RehydrationReason","Status","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","_instanceof","left","right","Symbol","hasInstance","toJournalError","err","Error","message","String","MutationEngine","MutationEngine2","db","realtime","normalizedCache","mutationJournal","subscriptionManager","rehydrationManager","_this","options","arguments","_options_batchDelay","Map","batchDelay","batchDebouncer","flushBatch","wait","queueForBatch","mutation","Promise","resolve","reject","_this_options_batchMaxSize","pendingBatch","push","maxSize","batchMaxSize","maybeExecute","batch","_this_options_batchAtomic","batchMutations","map","param","mutation2","operationMap","Create","Update","Delete","type","operation","doctype","doc","name","data","results","mutations","atomic","batchAtomic","result","success","confirm","mutationId","upsert","_mutation_temporaryName","temporaryName","handleTemporaryToRealMapping","registerTempIdMapping","_this_globalOptimisticDocIds_get","globalOptimisticDocIds","get","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","call","_this_options_onStoreChange1","_this_options1","handleOptimisticCreate","_this_options_versionFields1","getDoc","versionField1","cachedVersion1","onTrace","event","details","values","add","docname","status","Pending","snapshot","_this_options_onStoreChange2","_this_options2","applyOptimisticDelete","enableBatching","execute","getAllSubscriptions","subscription","query","scheduleRehydration","handleMutationError","_this_realtime","handleServerCreate","handleServerUpdate","handleServerDelete","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","subscription1","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","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","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","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","ServerWins","getTemporaryIdToRealNameMap","clearTemporaryMappings","clear","dispose","crypto","randomUUID","random","toString","slice"],"sources":["mutationEngine.native.js"],"sourcesContent":["import { Debouncer } from \"@tanstack/pacer\";\nimport { matchesFilters } from \"./filters\";\nimport { merge, MergeStrategy } from \"./merge\";\nimport { Order } from \"./types\";\nimport { Operation, PendingRehydrationType, PlacementType, RehydrationReason, Status } from \"./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 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 [Operation.Create]: \"create\",\n [Operation.Update]: \"update\",\n [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 === 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 === 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 === Operation.Update || mutation.operation === 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 === 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 === 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 === Operation.Update || mutation.operation === 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 === Operation.Delete ? void 0 : mutation.operation === 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 === 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: Status.Pending,\n snapshot: doc.name ? cachedDoc : void 0\n });\n if (mutation.operation === 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 === 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, 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 === Operation.Create) {\n await this.handleServerCreate(mutation);\n } else if (mutation.operation === Operation.Update && doc.name) {\n await this.handleServerUpdate(mutation, version);\n } else if (mutation.operation === 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 === 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, 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 = 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 PlacementType.Before:\n if (subscription.metadata) {\n subscription.metadata.itemsBeforePage = (subscription.metadata.itemsBeforePage || 0) + 1;\n }\n continue;\n case PlacementType.After:\n if (subscription.metadata) {\n subscription.metadata.itemsAfterPage = (subscription.metadata.itemsAfterPage || 0) + 1;\n }\n continue;\n case PlacementType.Unknown:\n subscription.pendingRehydration = PendingRehydrationType.FullRefresh;\n this.rehydrationManager.scheduleRehydration(subscription, RehydrationReason.Uncertain);\n break;\n case 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, 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 === 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 Operation.Create:\n await this.handleFailedCreate(mutation);\n break;\n case 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 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 = 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 === 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 === 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 = 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 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 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 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 PlacementType.Before;\n if (candidateValue > lastValue) return PlacementType.After;\n } else {\n if (candidateValue > firstValue) return PlacementType.Before;\n if (candidateValue < lastValue) return PlacementType.After;\n }\n if (candidateValue !== firstValue && candidateValue !== lastValue) {\n return 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 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 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 PlacementType.Before;\n if (candidateValue > lastValue) return PlacementType.After;\n } else {\n if (candidateValue > firstValue) return PlacementType.Before;\n if (candidateValue < lastValue) return PlacementType.After;\n }\n if (candidateValue !== firstValue && candidateValue !== lastValue) {\n return 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 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 !== 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 === 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 === 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 === 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 === Operation.Create) {\n var doc = entry.values || {\n doctype: entry.doctype,\n name: entry.docname\n };\n mutation = {\n mutationId: id,\n operation: Operation.Create,\n doc,\n version: entry.version,\n affected: []\n };\n } else if (entry.operation === Operation.Update) {\n mutation = {\n mutationId: id,\n operation: 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: 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: 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}\nexport {\n MutationEngine\n};\n//# sourceMappingURL=mutationEngine.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Debouncer","matchesFilters","merge","MergeStrategy","Order","Operation","PendingRehydrationType","PlacementType","RehydrationReason","Status","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","_instanceof","left","right","Symbol","hasInstance","toJournalError","err","Error","message","String","MutationEngine","MutationEngine2","db","realtime","normalizedCache","mutationJournal","subscriptionManager","rehydrationManager","_this","options","arguments","_options_batchDelay","Map","batchDelay","batchDebouncer","flushBatch","wait","queueForBatch","mutation","Promise","resolve","reject","_this_options_batchMaxSize","pendingBatch","push","maxSize","batchMaxSize","maybeExecute","batch","_this_options_batchAtomic","batchMutations","map","param","mutation2","operationMap","Create","Update","Delete","type","operation","doctype","doc","name","data","results","mutations","atomic","batchAtomic","result","success","confirm","mutationId","upsert","_mutation_temporaryName","temporaryName","handleTemporaryToRealMapping","registerTempIdMapping","_this_globalOptimisticDocIds_get","globalOptimisticDocIds","get","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","call","_this_options_onStoreChange1","_this_options1","handleOptimisticCreate","_this_options_versionFields1","getDoc","versionField1","cachedVersion1","onTrace","event","details","values","add","docname","status","Pending","snapshot","_this_options_onStoreChange2","_this_options2","applyOptimisticDelete","enableBatching","execute","getAllSubscriptions","subscription","query","scheduleRehydration","handleMutationError","_this_realtime","handleServerCreate","handleServerUpdate","handleServerDelete","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","subscription1","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","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","hasConflicts"],"sources":["../../../src/sync/mutationEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Status","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","frappeSyncSequence","MutationJournal","MutationJournal2","options","Map","ttl","storage","loadSequenceNumber","autoCleanupEnabled","enableAutoCleanup","add","id","entry","sequence","getNextSequence","createdAt","Date","now","retryCount","pending","set","startAutoCleanup","persistSequenceNumber","get","isExpired","delete","confirm","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":["import { Status } from \"./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 = 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 = 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 === Status.Pending || entry.status === 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})();\nexport {\n MutationJournal,\n frappeSyncSequence\n};\n//# sourceMappingURL=mutationJournal.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Status","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","frappeSyncSequence","MutationJournal","MutationJournal2","options","Map","ttl","storage","loadSequenceNumber","autoCleanupEnabled","enableAutoCleanup","add","id","entry","sequence","getNextSequence","createdAt","Date","now","retryCount","pending","set","startAutoCleanup","persistSequenceNumber","get","isExpired","delete","confirm","status","Confirmed","fail","err","Failed","error","remove","listPending","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","Pending","push"],"sources":["../../../src/sync/mutationJournal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","NormalizedCache","NormalizedCache2","options","arguments","_options_maxSize","Map","maxSize","Infinity","onEvict","makeKey","doctype","name","parseKey","colonIndex","indexOf","slice","upsert","doc","bucket","state","byId","allIds","id","existing","isNew","push","replace","accessOrder","set","Date","now","evictIfNeeded","remove","filter","currentId","delete","get","_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":["function _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})();\nexport {\n NormalizedCache\n};\n//# sourceMappingURL=normalizedCache.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","NormalizedCache","NormalizedCache2","options","arguments","_options_maxSize","Map","maxSize","Infinity","onEvict","makeKey","doctype","name","parseKey","colonIndex","indexOf","slice","upsert","doc","bucket","state","byId","allIds","id","existing","isNew","push","replace","accessOrder","set","Date","now","evictIfNeeded","remove","filter","currentId"],"sources":["../../../src/sync/normalizedCache.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|