@multiplatform.one/frappe 7.15.0 → 7.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/esm/auth.native.js.map +1 -1
  2. package/dist/esm/call.native.js.map +1 -1
  3. package/dist/esm/collection.native.js.map +1 -1
  4. package/dist/esm/common/types.native.js.map +1 -1
  5. package/dist/esm/core/http.native.js.map +1 -1
  6. package/dist/esm/core/types.native.js.map +1 -1
  7. package/dist/esm/core/wire.native.js.map +1 -1
  8. package/dist/esm/db.native.js.map +1 -1
  9. package/dist/esm/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  10. package/dist/esm/devtools/index.native.js.map +1 -1
  11. package/dist/esm/devtools/plugin.native.js.map +1 -1
  12. package/dist/esm/devtools/theme.native.js.map +1 -1
  13. package/dist/esm/doctype.native.js.map +1 -1
  14. package/dist/esm/file.native.js.map +1 -1
  15. package/dist/esm/fixtureDb.native.js.map +1 -1
  16. package/dist/esm/fixtures.native.js.map +1 -1
  17. package/dist/esm/frappeApp.native.js.map +1 -1
  18. package/dist/esm/frappeReact.native.js.map +1 -1
  19. package/dist/esm/index.native.js.map +1 -1
  20. package/dist/esm/optimistic.native.js.map +1 -1
  21. package/dist/esm/pacer.native.js.map +1 -1
  22. package/dist/esm/plugin/index.native.js.map +1 -1
  23. package/dist/esm/realtime.native.js.map +1 -1
  24. package/dist/esm/serverLoaders.native.js.map +1 -1
  25. package/dist/esm/sync/backfill.native.js.map +1 -1
  26. package/dist/esm/sync/filters.native.js.map +1 -1
  27. package/dist/esm/sync/index.native.js.map +1 -1
  28. package/dist/esm/sync/merge.native.js.map +1 -1
  29. package/dist/esm/sync/mutationEngine.native.js.map +1 -1
  30. package/dist/esm/sync/mutationJournal.native.js.map +1 -1
  31. package/dist/esm/sync/normalizedCache.native.js.map +1 -1
  32. package/dist/esm/sync/persistence.native.js.map +1 -1
  33. package/dist/esm/sync/realtime.native.js.map +1 -1
  34. package/dist/esm/sync/rehydration.native.js.map +1 -1
  35. package/dist/esm/sync/storage.native.js.map +1 -1
  36. package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
  37. package/dist/esm/sync/types.native.js.map +1 -1
  38. package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
  39. package/dist/esm/syncOptionsKey.native.js.map +1 -1
  40. package/dist/esm/useLiveQuery.native.js.map +1 -1
  41. package/dist/esm/util.native.js.map +1 -1
  42. package/dist/jsx/auth.native.js.map +1 -1
  43. package/dist/jsx/call.native.js.map +1 -1
  44. package/dist/jsx/collection.native.js.map +1 -1
  45. package/dist/jsx/common/types.native.js.map +1 -1
  46. package/dist/jsx/core/http.native.js.map +1 -1
  47. package/dist/jsx/core/types.native.js.map +1 -1
  48. package/dist/jsx/core/wire.native.js.map +1 -1
  49. package/dist/jsx/db.native.js.map +1 -1
  50. package/dist/jsx/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
  51. package/dist/jsx/devtools/index.native.js.map +1 -1
  52. package/dist/jsx/devtools/plugin.native.js.map +1 -1
  53. package/dist/jsx/devtools/theme.native.js.map +1 -1
  54. package/dist/jsx/doctype.native.js.map +1 -1
  55. package/dist/jsx/file.native.js.map +1 -1
  56. package/dist/jsx/fixtureDb.native.js.map +1 -1
  57. package/dist/jsx/fixtures.native.js.map +1 -1
  58. package/dist/jsx/frappeApp.native.js.map +1 -1
  59. package/dist/jsx/frappeReact.native.js +1 -1
  60. package/dist/jsx/frappeReact.native.js.map +1 -1
  61. package/dist/jsx/index.native.js +2 -2
  62. package/dist/jsx/index.native.js.map +1 -1
  63. package/dist/jsx/optimistic.native.js.map +1 -1
  64. package/dist/jsx/pacer.native.js.map +1 -1
  65. package/dist/jsx/plugin/index.native.js.map +1 -1
  66. package/dist/jsx/realtime.native.js.map +1 -1
  67. package/dist/jsx/serverLoaders.native.js.map +1 -1
  68. package/dist/jsx/sync/backfill.native.js.map +1 -1
  69. package/dist/jsx/sync/filters.native.js.map +1 -1
  70. package/dist/jsx/sync/index.native.js.map +1 -1
  71. package/dist/jsx/sync/merge.native.js.map +1 -1
  72. package/dist/jsx/sync/mutationEngine.native.js.map +1 -1
  73. package/dist/jsx/sync/mutationJournal.native.js.map +1 -1
  74. package/dist/jsx/sync/normalizedCache.native.js.map +1 -1
  75. package/dist/jsx/sync/persistence.native.js.map +1 -1
  76. package/dist/jsx/sync/realtime.native.js.map +1 -1
  77. package/dist/jsx/sync/rehydration.native.js.map +1 -1
  78. package/dist/jsx/sync/storage.native.js.map +1 -1
  79. package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
  80. package/dist/jsx/sync/types.native.js.map +1 -1
  81. package/dist/jsx/sync/virtualPageManager.native.js.map +1 -1
  82. package/dist/jsx/syncOptionsKey.native.js.map +1 -1
  83. package/dist/jsx/useLiveQuery.native.js.map +1 -1
  84. package/dist/jsx/util.native.js.map +1 -1
  85. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","subscriptionManager_exports","SubscriptionManager","module","exports","import_backfill","require","import_filters","import_types","import_virtualPageManager","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","_type_of","Symbol","constructor","_this_options_pageSize","SubscriptionManager2","db","normalizedCache","options","arguments","Map","virtualPageManager","VirtualPageManager","batchSize","backfillManager","BackfillManager","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","queryKeyToSubId","subscriptions","has","subRefCounts","set","rows","getDocsForSubscription","checkpoint","subscriptionId","adopted","adoptRestoredSubscription","cryptoRandomId","rows1","cursor","checkpoint1","fetchInitialRows","seedRows","subscription","id","docIds","map","row","tombstones","_query_limitStart","_query_limit","boundaries","firstItem","lastItem","offset","limitStart","limit","defaultPageLength","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","refreshSubscriptions","_this","values","filter","_this_subRefCounts_get","doctypes","includes","doctype","Promise","refreshSubscription","resolve","ok","error","Error","existing","refreshes","requested","promise","state","active","active2","then","_subscription_query_limitStart","_subscription_query_limit","stale","delete","_query_fields","queryFields","fields","Array","Set","singleName","extractSingleName","filters","document","getDoc","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","modified","err","return","upsert","restoredId","restoredByQueryKey","restoredAt","refresh","restoreSubscription","snapshotSub","_snapshotSub_query","activeId","previousId","isArray","Date","now","isRestoredSubscription","gcRestoredSubscriptions","_this_options_restoredSubscriptionTTL","ttl","restoredSubscriptionTTL","restoredAtMs","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","unsubscribe","refCount","persistKey","getSubscription","virtualSub","getProgressiveCache","id2","out","push","out1","name1","document1","getPage","page","getNextBatch","cursorDocId","getPageInfo","backfill","args","scope","BackfillScope","All","backfillSub","Subscriptions","subscription1","Doctypes","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","subscription2","Docs","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","docs","_step3","docTarget","_this_options_backfillMaxPages","deleted","_ref","_response_deleted","modifiedAfter","madeProgress","has_more","_loop","deletedRef","deletedDoctype","remove","currentName","_this1","_loop1","match","matchesFilters","firstDoc","lastDoc","_subscription_boundaries","_subscription_boundaries1","resortSubscriptionDocIds","cleanupTombstones","onBackfill","fetched","orderByArray","sort","firstId","secondId","secondDoc","orderByField","field","ascending","order","Order","Desc","firstValue","secondValue","firstIsNullish","secondIsNullish","updateSubscriptionMembership","doc","subscriptionsNeedingRehydration","isExisting","handleRemoteCreate","docId","handleRemoteDelete","handleRemoteUpdate","removeFromAllSubscriptions","affectedSubscriptions","hadDocument","getAllSubscriptions","getVirtualPageManager","insertDocumentIntoSubscription","insertIndex","findInsertionIndex","splice","left","right","mid","Math","floor","midDoc","comparison","compareDocuments","doc1","doc2","value1","value2","isAsc","isNull1","isNull2","name2","clear","_this_options_tombstoneMaxAge","_this_options_tombstoneMaxCount","maxAge","tombstoneMaxAge","maxCount","tombstoneMaxCount","subscriptionsToClean","Boolean","size","timestamp","entries","a","b","toRemove","slice","crypto","randomUUID","random","toString"],"sources":["subscriptionManager.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar subscriptionManager_exports = {};\n__export(subscriptionManager_exports, {\n SubscriptionManager: () => SubscriptionManager\n});\nmodule.exports = __toCommonJS(subscriptionManager_exports);\nvar import_backfill = require(\"./backfill\");\nvar import_filters = require(\"./filters\");\nvar import_types = require(\"./types\");\nvar import_virtualPageManager = require(\"./virtualPageManager\");\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 _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar _this_options_pageSize;\nvar SubscriptionManager = /* @__PURE__ */ (function() {\n \"use strict\";\n function SubscriptionManager2(db, normalizedCache) {\n var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n _class_call_check(this, SubscriptionManager2);\n _define_property(this, \"refreshes\", /* @__PURE__ */ new Map());\n _define_property(this, \"subscriptions\", /* @__PURE__ */ new Map());\n _define_property(this, \"virtualPageManager\", void 0);\n _define_property(this, \"backfillManager\", void 0);\n _define_property(this, \"queryKeyToSubId\", /* @__PURE__ */ new Map());\n _define_property(this, \"subRefCounts\", /* @__PURE__ */ new Map());\n _define_property(this, \"restoredByQueryKey\", /* @__PURE__ */ new Map());\n _define_property(this, \"restoredAt\", /* @__PURE__ */ new Map());\n _define_property(this, \"db\", void 0);\n _define_property(this, \"normalizedCache\", void 0);\n _define_property(this, \"options\", void 0);\n this.db = db;\n this.normalizedCache = normalizedCache;\n this.options = options;\n this.virtualPageManager = new import_virtualPageManager.VirtualPageManager(this.normalizedCache, this.db, {\n batchSize: this.options.batchSize\n });\n this.backfillManager = new import_backfill.BackfillManager(this.db, this.normalizedCache, {\n pageSize: this.options.pageSize,\n maxPages: this.options.backfillMaxPages\n });\n }\n _create_class(SubscriptionManager2, [\n {\n key: \"subscribe\",\n value: async function subscribe(query) {\n var queryKey = JSON.stringify(query);\n var existingId = this.queryKeyToSubId.get(queryKey);\n if (existingId && this.subscriptions.has(existingId)) {\n this.subRefCounts.set(existingId, (this.subRefCounts.get(existingId) || 1) + 1);\n var rows = this.getDocsForSubscription(existingId);\n var checkpoint = this.subscriptions.get(existingId).checkpoint;\n return {\n subscriptionId: existingId,\n rows,\n checkpoint\n };\n }\n var adopted = this.adoptRestoredSubscription(queryKey, query);\n if (adopted) return adopted;\n var subscriptionId = cryptoRandomId();\n var { rows: rows1, cursor, checkpoint: checkpoint1 } = await this.fetchInitialRows(query);\n this.seedRows(query, rows1);\n var subscription = {\n id: subscriptionId,\n query,\n checkpoint: checkpoint1,\n // For CDC backfill\n cursor,\n // For stable pagination\n docIds: rows1.map(function(row) {\n return row.name;\n }),\n tombstones: /* @__PURE__ */ new Map()\n };\n if (rows1.length > 0) {\n var _query_limitStart, _query_limit;\n subscription.boundaries = {\n firstItem: rows1[0],\n lastItem: rows1[rows1.length - 1],\n offset: (_query_limitStart = query.limitStart) !== null && _query_limitStart !== void 0 ? _query_limitStart : 0,\n pageSize: (_query_limit = query.limit) !== null && _query_limit !== void 0 ? _query_limit : import_types.defaultPageLength\n };\n }\n subscription.metadata = {\n itemsBeforePage: 0,\n itemsAfterPage: 0\n };\n this.subscriptions.set(subscriptionId, subscription);\n this.queryKeyToSubId.set(queryKey, subscriptionId);\n this.subRefCounts.set(subscriptionId, 1);\n if (query.progressive) {\n this.virtualPageManager.registerSubscription(subscriptionId, subscription, subscription.docIds, cursor);\n }\n return {\n subscriptionId,\n rows: rows1,\n checkpoint: checkpoint1\n };\n }\n },\n {\n key: \"refreshSubscriptions\",\n value: async function refreshSubscriptions() {\n var _this = this;\n var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n var subscriptions = [\n ...this.subscriptions.values()\n ].filter(function(subscription) {\n var _this_subRefCounts_get;\n return ((_this_subRefCounts_get = _this.subRefCounts.get(subscription.id)) !== null && _this_subRefCounts_get !== void 0 ? _this_subRefCounts_get : 0) > 0 && (!options.doctypes || options.doctypes.includes(subscription.query.doctype));\n });\n return Promise.all(subscriptions.map(function(subscription) {\n return _this.refreshSubscription(subscription);\n }));\n }\n },\n {\n key: \"refreshSubscription\",\n value: function refreshSubscription(subscription) {\n var _this = this;\n var subscriptionId = subscription.id;\n if (subscription.query.progressive) {\n return Promise.resolve({\n subscriptionId,\n ok: false,\n error: new Error(\"Snapshot refresh does not support progressive subscriptions\")\n });\n }\n var existing = this.refreshes.get(subscriptionId);\n if (existing) {\n existing.requested = true;\n return existing.promise;\n }\n var state = {\n requested: false,\n promise: Promise.resolve({\n subscriptionId,\n ok: false\n })\n };\n var active = function active2() {\n var _this_subRefCounts_get;\n return _this.refreshes.get(subscriptionId) === state && _this.subscriptions.get(subscriptionId) === subscription && ((_this_subRefCounts_get = _this.subRefCounts.get(subscriptionId)) !== null && _this_subRefCounts_get !== void 0 ? _this_subRefCounts_get : 0) > 0;\n };\n state.promise = Promise.resolve().then(async function() {\n try {\n while (true) {\n state.requested = false;\n try {\n var _subscription_query_limitStart, _subscription_query_limit;\n var { rows, cursor, checkpoint } = await _this.fetchInitialRows(subscription.query);\n if (!active()) {\n return {\n subscriptionId,\n ok: false,\n error: new Error(\"Subscription is no longer active\")\n };\n }\n if (state.requested) continue;\n _this.seedRows(subscription.query, rows);\n subscription.docIds = rows.map(function(row) {\n return row.name;\n });\n subscription.cursor = cursor;\n subscription.checkpoint = checkpoint;\n subscription.boundaries = rows.length ? {\n firstItem: rows[0],\n lastItem: rows[rows.length - 1],\n offset: (_subscription_query_limitStart = subscription.query.limitStart) !== null && _subscription_query_limitStart !== void 0 ? _subscription_query_limitStart : 0,\n pageSize: (_subscription_query_limit = subscription.query.limit) !== null && _subscription_query_limit !== void 0 ? _subscription_query_limit : import_types.defaultPageLength\n } : void 0;\n subscription.metadata = {\n itemsBeforePage: 0,\n itemsAfterPage: 0\n };\n subscription.stale = false;\n return {\n subscriptionId,\n ok: true\n };\n } catch (error) {\n if (active() && state.requested) continue;\n if (active()) subscription.stale = true;\n return {\n subscriptionId,\n ok: false,\n error\n };\n }\n }\n } finally {\n if (_this.refreshes.get(subscriptionId) === state) _this.refreshes.delete(subscriptionId);\n }\n });\n this.refreshes.set(subscriptionId, state);\n return state.promise;\n }\n },\n {\n key: \"fetchInitialRows\",\n value: (\n /**\n * Performs the initial subscription fetch (single doc via getDoc, lists via\n * getDocList) and computes the CDC checkpoint\n * as the max `modified` across returned rows. Shared by fresh subscribes\n * and adopted-subscription refreshes so both have identical semantics.\n */\n async function fetchInitialRows(query) {\n var _query_fields;\n var queryFields = ((_query_fields = query.fields) === null || _query_fields === void 0 ? void 0 : _query_fields.length) ? Array.from(/* @__PURE__ */ new Set([\n ...query.fields,\n \"modified\",\n \"name\"\n ])) : void 0;\n var rows = [];\n var cursor;\n var singleName = (0, import_filters.extractSingleName)(query.filters);\n if (singleName) {\n try {\n var document = await this.db.getDoc(query.doctype, singleName);\n rows = document ? [\n document\n ] : [];\n } catch (error) {\n var errorWithStatus = error;\n if ((errorWithStatus === null || errorWithStatus === void 0 ? void 0 : errorWithStatus.status) === 404) {\n rows = [];\n } else {\n throw error;\n }\n }\n } else {\n var _query_limit;\n var listOptions = {\n fields: queryFields,\n filters: query.filters,\n orderBy: query.orderBy\n };\n listOptions.limit = (_query_limit = query.limit) !== null && _query_limit !== void 0 ? _query_limit : import_types.defaultPageLength;\n if (query.limitStart != null) listOptions.limitStart = query.limitStart;\n if (this.options.useCursorPagination) listOptions.cursor = void 0;\n var response = await this.db.getDocList(query.doctype, listOptions);\n if ((typeof response === \"undefined\" ? \"undefined\" : _type_of(response)) === \"object\" && response !== null && \"data\" in response) {\n rows = response.data;\n cursor = response.cursor;\n } else {\n rows = response;\n }\n }\n var checkpoint = void 0;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = rows[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var row = _step.value;\n if (!row.modified) continue;\n if (!checkpoint || row.modified > checkpoint) checkpoint = row.modified;\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 rows,\n cursor,\n checkpoint\n };\n }\n )\n },\n {\n key: \"seedRows\",\n value: function seedRows(query, rows) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = rows[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var row = _step.value;\n if (!row.doctype) row.doctype = query.doctype;\n this.normalizedCache.upsert(row);\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: \"adoptRestoredSubscription\",\n value: (\n /**\n * Re-adopts a subscription restored from a persisted snapshot when an\n * identical query subscribes: the cached membership renders immediately and\n * a background refresh re-seeds from the network. Progressive queries are\n * excluded — their VirtualPageManager state is not persisted, so they take\n * the fresh-subscribe path.\n */\n function adoptRestoredSubscription(queryKey, query) {\n if (query.progressive) return void 0;\n var restoredId = this.restoredByQueryKey.get(queryKey);\n if (!restoredId) return void 0;\n var subscription = this.subscriptions.get(restoredId);\n this.restoredByQueryKey.delete(queryKey);\n this.restoredAt.delete(restoredId);\n if (!subscription) return void 0;\n this.queryKeyToSubId.set(queryKey, restoredId);\n this.subRefCounts.set(restoredId, 1);\n var refresh = this.refreshSubscription(subscription);\n var rows = this.getDocsForSubscription(restoredId);\n return {\n subscriptionId: restoredId,\n rows,\n checkpoint: subscription.checkpoint,\n refresh\n };\n }\n )\n },\n {\n /**\n * Registers a subscription restored from a persisted snapshot. Restored\n * subscriptions are dormant: they hold the persisted query, CDC checkpoint,\n * and membership for cache-first re-adoption, but are skipped by backfill\n * fan-out until adopted. Duplicate snapshot entries for the same query\n * (accumulated by pre-GC versions) collapse last-wins.\n */\n key: \"restoreSubscription\",\n value: function restoreSubscription(snapshotSub) {\n var _snapshotSub_query;\n if (!(snapshotSub === null || snapshotSub === void 0 ? void 0 : snapshotSub.id) || !((_snapshotSub_query = snapshotSub.query) === null || _snapshotSub_query === void 0 ? void 0 : _snapshotSub_query.doctype)) return;\n if (this.subscriptions.has(snapshotSub.id)) return;\n var queryKey = JSON.stringify(snapshotSub.query);\n var activeId = this.queryKeyToSubId.get(queryKey);\n if (activeId && this.subscriptions.has(activeId)) return;\n var previousId = this.restoredByQueryKey.get(queryKey);\n if (previousId) {\n this.subscriptions.delete(previousId);\n this.restoredAt.delete(previousId);\n }\n var subscription = {\n id: snapshotSub.id,\n query: snapshotSub.query,\n checkpoint: snapshotSub.checkpoint,\n cursor: snapshotSub.cursor,\n docIds: Array.isArray(snapshotSub.docIds) ? snapshotSub.docIds : [],\n tombstones: /* @__PURE__ */ new Map(),\n metadata: {\n itemsBeforePage: 0,\n itemsAfterPage: 0\n }\n };\n this.subscriptions.set(subscription.id, subscription);\n this.restoredByQueryKey.set(queryKey, subscription.id);\n this.restoredAt.set(subscription.id, Date.now());\n }\n },\n {\n /** True when the subscription came from a snapshot and is not yet adopted. */\n key: \"isRestoredSubscription\",\n value: function isRestoredSubscription(subscriptionId) {\n return this.restoredAt.has(subscriptionId);\n }\n },\n {\n /**\n * Drops restored subscriptions that no query re-adopted within\n * `restoredSubscriptionTTL` (default 30 minutes). Called before every\n * persistence snapshot so expired entries also leave the snapshot.\n */\n key: \"gcRestoredSubscriptions\",\n value: function gcRestoredSubscriptions() {\n var now = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Date.now();\n var _this_options_restoredSubscriptionTTL;\n var ttl = (_this_options_restoredSubscriptionTTL = this.options.restoredSubscriptionTTL) !== null && _this_options_restoredSubscriptionTTL !== void 0 ? _this_options_restoredSubscriptionTTL : 30 * 60 * 1e3;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.restoredAt[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [subscriptionId, restoredAtMs] = _step.value;\n if (now - restoredAtMs <= ttl) continue;\n this.restoredAt.delete(subscriptionId);\n this.subscriptions.delete(subscriptionId);\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = this.restoredByQueryKey[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [key, id] = _step1.value;\n if (id === subscriptionId) {\n this.restoredByQueryKey.delete(key);\n break;\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 } 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 * Removes a subscription by id. Cached docs remain until evicted by\n * realtime/backfill or explicit resets. This keeps other subs fast if they\n * share the same doctypes.\n *\n * With persistence enabled (`persistKey`), the released subscription is\n * detached into the restored pool instead of deleted: its query,\n * checkpoint, and membership stay in the snapshot so a remount (or a\n * cold offline reload) can re-adopt it cache-first. Detached subscriptions\n * are excluded from backfill and GC'd after `restoredSubscriptionTTL`.\n */\n key: \"unsubscribe\",\n value: function unsubscribe(subscriptionId) {\n var refCount = (this.subRefCounts.get(subscriptionId) || 1) - 1;\n if (refCount > 0) {\n this.subRefCounts.set(subscriptionId, refCount);\n return;\n }\n this.refreshes.delete(subscriptionId);\n this.subRefCounts.delete(subscriptionId);\n var queryKey;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.queryKeyToSubId[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, id] = _step.value;\n if (id === subscriptionId) {\n queryKey = key;\n this.queryKeyToSubId.delete(key);\n break;\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 subscription = this.subscriptions.get(subscriptionId);\n if (this.options.persistKey && subscription && queryKey && !subscription.query.progressive && !this.restoredByQueryKey.has(queryKey)) {\n this.restoredByQueryKey.set(queryKey, subscriptionId);\n this.restoredAt.set(subscriptionId, Date.now());\n return;\n }\n this.subscriptions.delete(subscriptionId);\n }\n },\n {\n /** Returns subscription metadata by id. */\n key: \"getSubscription\",\n value: function getSubscription(id) {\n return this.subscriptions.get(id);\n }\n },\n {\n /**\n * Returns current rows for a subscription from the cache.\n * Note: This is local-only; authoritative refresh happens via backfill/realtime.\n */\n key: \"getDocsForSubscription\",\n value: function getDocsForSubscription(id) {\n var virtualSub = this.virtualPageManager.getSubscription(id);\n if (virtualSub) {\n var docIds = virtualSub.getProgressiveCache().docIds.filter(function(id2) {\n return id2 !== \"\";\n });\n var out = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = docIds[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var name = _step.value;\n var document = this.normalizedCache.get({\n doctype: virtualSub.query.doctype,\n name\n });\n if (document) out.push(document);\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 out;\n }\n var subscription = this.subscriptions.get(id);\n if (!subscription) return [];\n var out1 = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = subscription.docIds[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var name1 = _step1.value;\n var document1 = this.normalizedCache.get({\n doctype: subscription.query.doctype,\n name: name1\n });\n if (document1) out1.push(document1);\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 out1;\n }\n },\n {\n key: \"getPage\",\n value: (\n /**\n * Get a specific page of documents using virtual pagination\n */\n async function getPage(subscriptionId, page) {\n return this.virtualPageManager.getPage(subscriptionId, page);\n }\n )\n },\n {\n key: \"getNextBatch\",\n value: (\n /**\n * Get documents after a cursor (for infinite scroll)\n */\n async function getNextBatch(subscriptionId, cursorDocId, limit) {\n return this.virtualPageManager.getNextBatch(subscriptionId, cursorDocId, limit);\n }\n )\n },\n {\n /**\n * Get page information\n */\n key: \"getPageInfo\",\n value: function getPageInfo(subscriptionId) {\n return this.virtualPageManager.getPageInfo(subscriptionId);\n }\n },\n {\n key: \"backfill\",\n value: (\n /**\n * Reconciles local state by fetching changes since stored cursors.\n *\n * Scopes\n * - all: iterate all subscriptions\n * - subscriptions: selected subscription ids\n * - doctypes: all subscriptions matching any of these doctypes\n * - docs: refetch specific documents (authority refresh)\n */\n async function backfill(args) {\n if (args.scope === import_types.BackfillScope.All) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptions.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (this.restoredAt.has(subscription.id)) continue;\n await this.backfillSub(subscription, args.pageSize);\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 }\n if (args.scope === import_types.BackfillScope.Subscriptions) {\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = (args.subscriptions || [])[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var subscriptionId = _step1.value;\n var subscription1 = this.subscriptions.get(subscriptionId);\n if (subscription1) await this.backfillSub(subscription1, args.pageSize);\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;\n }\n if (args.scope === import_types.BackfillScope.Doctypes) {\n var set = new Set(args.doctypes || []);\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = this.subscriptions.values()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var subscription2 = _step2.value;\n if (this.restoredAt.has(subscription2.id)) continue;\n if (set.has(subscription2.query.doctype)) await this.backfillSub(subscription2, args.pageSize);\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 }\n if (args.scope === import_types.BackfillScope.Docs) {\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = (args.docs || [])[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var docTarget = _step3.value;\n var document = await this.db.getDoc(docTarget.doctype, docTarget.name);\n this.normalizedCache.upsert(document);\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 }\n }\n )\n },\n {\n key: \"backfillSub\",\n value: (\n /**\n * Backfills one subscription using CDC checkpoint and updates membership.\n *\n * Algorithm\n * - Query backfill using checkpoint for CDC (Change Data Capture),\n * draining follow-up pages while the server reports has_more (bounded)\n * so reconnect catch-up is complete rather than one page deep\n * - Upsert each row to cache\n * - For each row: test client-side filters; add/remove membership accordingly\n * - Track tombstones for deleted documents\n * - Advance checkpoint to response checkpoint\n * - If no filters were specified, derive membership directly from returned rows\n */\n async function backfillSub(subscription) {\n var pageSize = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : (_this_options_pageSize = this.options.pageSize) !== null && _this_options_pageSize !== void 0 ? _this_options_pageSize : 200;\n var _this_options_backfillMaxPages;\n var maxPages = (_this_options_backfillMaxPages = this.options.backfillMaxPages) !== null && _this_options_backfillMaxPages !== void 0 ? _this_options_backfillMaxPages : 20;\n var rows = [];\n var deleted = [];\n for (var page = 0; page < maxPages; page++) {\n var _ref;\n var _response_deleted;\n var response = await this.db.backfill({\n doctype: subscription.query.doctype,\n fields: subscription.query.fields,\n filters: subscription.query.filters,\n modifiedAfter: subscription.checkpoint,\n // CDC checkpoint\n limit: pageSize\n });\n if (Array.isArray(response.deleted)) {\n deleted.push(...response.deleted);\n }\n rows.push(...response.rows);\n if (response.checkpoint) subscription.checkpoint = response.checkpoint;\n var madeProgress = response.rows.length > 0 || ((_ref = (_response_deleted = response.deleted) === null || _response_deleted === void 0 ? void 0 : _response_deleted.length) !== null && _ref !== void 0 ? _ref : 0) > 0;\n if (!response.has_more || !response.checkpoint || !madeProgress) break;\n }\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _this, _loop = function() {\n var deletedRef = _step.value;\n if (!(deletedRef === null || deletedRef === void 0 ? void 0 : deletedRef.name)) return \"continue\";\n var deletedDoctype = deletedRef.doctype || subscription.query.doctype;\n if (deletedDoctype === subscription.query.doctype && subscription.tombstones) {\n subscription.tombstones.set(deletedRef.name, Date.now());\n }\n _this.normalizedCache.remove({\n doctype: deletedDoctype,\n name: deletedRef.name\n });\n if (deletedDoctype === subscription.query.doctype) subscription.docIds = subscription.docIds.filter(function(currentName) {\n return currentName !== deletedRef.name;\n });\n };\n for (var _iterator = deleted[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _this = this, _loop();\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 var _this1, _loop1 = function() {\n var row = _step1.value;\n if (!row.doctype) row.doctype = subscription.query.doctype;\n _this1.normalizedCache.upsert(row);\n var name = row.name;\n if (!name) return \"continue\";\n var match = (0, import_filters.matchesFilters)(row, subscription.query.filters);\n if (match && !subscription.docIds.includes(name)) subscription.docIds.push(name);\n if (!match) subscription.docIds = subscription.docIds.filter(function(currentName) {\n return currentName !== name;\n });\n };\n for (var _iterator1 = rows[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _this1 = this, _loop1();\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 if (rows.length && !subscription.query.filters) subscription.docIds = rows.map(function(row) {\n return row.name;\n });\n if (subscription.docIds.length > 0) {\n var firstDoc = this.normalizedCache.get({\n doctype: subscription.query.doctype,\n name: subscription.docIds[0]\n });\n var lastDoc = this.normalizedCache.get({\n doctype: subscription.query.doctype,\n name: subscription.docIds[subscription.docIds.length - 1]\n });\n if (firstDoc && lastDoc) {\n var _subscription_boundaries, _subscription_boundaries1;\n subscription.boundaries = {\n firstItem: firstDoc,\n lastItem: lastDoc,\n offset: ((_subscription_boundaries = subscription.boundaries) === null || _subscription_boundaries === void 0 ? void 0 : _subscription_boundaries.offset) || 0,\n pageSize: ((_subscription_boundaries1 = subscription.boundaries) === null || _subscription_boundaries1 === void 0 ? void 0 : _subscription_boundaries1.pageSize) || subscription.query.limit || 20\n };\n }\n }\n this.resortSubscriptionDocIds(subscription);\n this.cleanupTombstones(subscription.id);\n subscription.stale = false;\n if (this.options.onBackfill) this.options.onBackfill({\n doctype: subscription.query.doctype,\n fetched: rows.length,\n checkpoint: subscription.checkpoint\n });\n }\n )\n },\n {\n key: \"resortSubscriptionDocIds\",\n value: function resortSubscriptionDocIds(subscription) {\n var _this = this;\n var { orderBy, doctype } = subscription.query;\n if (!orderBy) return;\n var orderByArray = Array.isArray(orderBy) ? orderBy : [\n orderBy\n ];\n subscription.docIds.sort(function(firstId, secondId) {\n var firstDoc = _this.normalizedCache.get({\n doctype,\n name: firstId\n });\n var secondDoc = _this.normalizedCache.get({\n doctype,\n name: secondId\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = orderByArray[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var orderByField = _step.value;\n var field = orderByField.field;\n var ascending = orderByField.order !== import_types.Order.Desc;\n var firstValue = firstDoc === null || firstDoc === void 0 ? void 0 : firstDoc[field];\n var secondValue = secondDoc === null || secondDoc === void 0 ? void 0 : secondDoc[field];\n var firstIsNullish = firstValue === null || firstValue === void 0;\n var secondIsNullish = secondValue === null || secondValue === void 0;\n if (firstIsNullish && !secondIsNullish) return ascending ? -1 : 1;\n if (secondIsNullish && !firstIsNullish) return ascending ? 1 : -1;\n if (firstIsNullish && secondIsNullish) continue;\n if (firstIsNullish || secondIsNullish) continue;\n if (firstValue < secondValue) return ascending ? -1 : 1;\n if (firstValue > secondValue) return ascending ? 1 : -1;\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 firstId < secondId ? -1 : firstId > secondId ? 1 : 0;\n });\n }\n },\n {\n key: \"updateSubscriptionMembership\",\n value: function updateSubscriptionMembership(doc) {\n var subscriptionsNeedingRehydration = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptions.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (this.restoredAt.has(subscription.id)) continue;\n if (subscription.query.doctype !== doc.doctype) continue;\n var match = (0, import_filters.matchesFilters)(doc, subscription.query.filters);\n var isExisting = subscription.docIds.includes(doc.name);\n if (match && !isExisting) {\n subscriptionsNeedingRehydration.push(subscription);\n this.virtualPageManager.handleRemoteCreate(subscription.id, doc);\n } else if (isExisting) {\n if (!match) {\n subscription.docIds = subscription.docIds.filter(function(docId) {\n return docId !== doc.name;\n });\n this.virtualPageManager.handleRemoteDelete(subscription.id, doc.name);\n } else {\n this.virtualPageManager.handleRemoteUpdate(subscription.id, doc);\n }\n this.resortSubscriptionDocIds(subscription);\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 subscriptionsNeedingRehydration;\n }\n },\n {\n /**\n * Removes a document from all subscription memberships.\n * Returns subscriptions that had the document removed (for potential backfill).\n */\n key: \"removeFromAllSubscriptions\",\n value: function removeFromAllSubscriptions(doctype, name) {\n var affectedSubscriptions = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.subscriptions.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 hadDocument = subscription.docIds.includes(name);\n if (hadDocument) {\n subscription.docIds = subscription.docIds.filter(function(docId) {\n return docId !== name;\n });\n this.virtualPageManager.handleRemoteDelete(subscription.id, name);\n affectedSubscriptions.push(subscription);\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 affectedSubscriptions;\n }\n },\n {\n /** Gets all active subscriptions. */\n key: \"getAllSubscriptions\",\n value: function getAllSubscriptions() {\n return this.subscriptions;\n }\n },\n {\n key: \"getVirtualPageManager\",\n value: function getVirtualPageManager() {\n return this.virtualPageManager;\n }\n },\n {\n key: \"insertDocumentIntoSubscription\",\n value: function insertDocumentIntoSubscription(subscription, doc) {\n if (subscription.docIds.includes(doc.name)) return;\n if (!subscription.query.orderBy || subscription.docIds.length === 0) {\n return subscription.docIds.push(doc.name);\n }\n var insertIndex = this.findInsertionIndex(subscription, doc);\n subscription.docIds.splice(insertIndex, 0, doc.name);\n }\n },\n {\n key: \"findInsertionIndex\",\n value: function findInsertionIndex(subscription, doc) {\n var { docIds, query } = subscription;\n var orderByArray = Array.isArray(query.orderBy) ? query.orderBy : [\n query.orderBy\n ];\n var left = 0;\n var right = docIds.length - 1;\n while (left <= right) {\n var mid = Math.floor((left + right) / 2);\n var midDoc = this.normalizedCache.get({\n doctype: query.doctype,\n name: docIds[mid]\n });\n if (!midDoc) {\n return docIds.length;\n }\n var comparison = this.compareDocuments(doc, midDoc, orderByArray);\n if (comparison <= 0) {\n right = mid - 1;\n } else {\n left = mid + 1;\n }\n }\n return left;\n }\n },\n {\n key: \"compareDocuments\",\n value: function compareDocuments(doc1, doc2, orderByArray) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = orderByArray[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { field, order } = _step.value;\n var value1 = doc1[field];\n var value2 = doc2[field];\n var isAsc = order !== import_types.Order.Desc;\n var isNull1 = value1 == null;\n var isNull2 = value2 == null;\n if (isNull1 && !isNull2) return isAsc ? -1 : 1;\n if (!isNull1 && isNull2) return isAsc ? 1 : -1;\n if (isNull1 && isNull2) continue;\n if (value1 < value2) return isAsc ? -1 : 1;\n if (value1 > value2) return isAsc ? 1 : -1;\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 name1 = doc1.name || \"\";\n var name2 = doc2.name || \"\";\n return name1 < name2 ? -1 : name1 > name2 ? 1 : 0;\n }\n },\n {\n key: \"clear\",\n value: function clear() {\n this.refreshes.clear();\n this.subscriptions.clear();\n this.queryKeyToSubId.clear();\n this.subRefCounts.clear();\n this.restoredByQueryKey.clear();\n this.restoredAt.clear();\n }\n },\n {\n /**\n * Cleans up expired tombstones based on age and count limits.\n * Should be called periodically or after backfill operations.\n */\n key: \"cleanupTombstones\",\n value: function cleanupTombstones(subscriptionId) {\n var _this_options_tombstoneMaxAge, _this_options_tombstoneMaxCount;\n var maxAge = (_this_options_tombstoneMaxAge = this.options.tombstoneMaxAge) !== null && _this_options_tombstoneMaxAge !== void 0 ? _this_options_tombstoneMaxAge : 30 * 60 * 1e3;\n var maxCount = (_this_options_tombstoneMaxCount = this.options.tombstoneMaxCount) !== null && _this_options_tombstoneMaxCount !== void 0 ? _this_options_tombstoneMaxCount : 1e3;\n var now = Date.now();\n var subscriptionsToClean = subscriptionId ? [\n this.subscriptions.get(subscriptionId)\n ].filter(Boolean) : [\n ...this.subscriptions.values()\n ];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = subscriptionsToClean[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var subscription = _step.value;\n if (!(subscription === null || subscription === void 0 ? void 0 : subscription.tombstones) || subscription.tombstones.size === 0) continue;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = subscription.tombstones[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [name, timestamp] = _step1.value;\n if (now - timestamp > maxAge) {\n subscription.tombstones.delete(name);\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 if (subscription.tombstones.size > maxCount) {\n var entries = [\n ...subscription.tombstones.entries()\n ];\n entries.sort(function(a, b) {\n return a[1] - b[1];\n });\n var toRemove = entries.slice(0, subscription.tombstones.size - maxCount);\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = toRemove[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var [name1] = _step2.value;\n subscription.tombstones.delete(name1);\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 }\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 return SubscriptionManager2;\n})();\nfunction cryptoRandomId() {\n if (typeof crypto !== \"undefined\" && \"randomUUID\" in crypto) {\n return crypto.randomUUID();\n }\n return Math.random().toString(36).slice(2);\n}\n//# sourceMappingURL=subscriptionManager.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","subscriptionManager_exports","SubscriptionManager","module","exports","import_backfill","require","import_filters","import_types","import_virtualPageManager","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","_type_of","Symbol","constructor","_this_options_pageSize","SubscriptionManager2","db","normalizedCache","options","arguments","Map","virtualPageManager","VirtualPageManager","batchSize","backfillManager","BackfillManager","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","queryKeyToSubId","subscriptions","has","subRefCounts","set","rows","getDocsForSubscription","checkpoint","subscriptionId","adopted","adoptRestoredSubscription","cryptoRandomId","rows1","cursor","checkpoint1","fetchInitialRows","seedRows","subscription","id","docIds","map","row","tombstones","_query_limitStart","_query_limit","boundaries","firstItem","lastItem","offset","limitStart","limit","defaultPageLength","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","refreshSubscriptions","_this","values","filter","_this_subRefCounts_get","doctypes","includes","doctype","Promise","refreshSubscription","resolve","ok","error","Error","existing","refreshes","requested","promise","state","active","active2","then","_subscription_query_limitStart","_subscription_query_limit","stale","delete","_query_fields","queryFields","fields","Array","Set","singleName","extractSingleName","filters","document","getDoc","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","modified","err","return","upsert","restoredId","restoredByQueryKey","restoredAt","refresh","restoreSubscription","snapshotSub","_snapshotSub_query","activeId","previousId","isArray","Date","now","isRestoredSubscription","gcRestoredSubscriptions","_this_options_restoredSubscriptionTTL","ttl","restoredSubscriptionTTL","restoredAtMs","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","unsubscribe","refCount","persistKey","getSubscription","virtualSub","getProgressiveCache","id2","out","push","out1","name1","document1","getPage","page","getNextBatch","cursorDocId","getPageInfo"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"AAGA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAAmB;AAE5B,IAAAC,gBAAS,GAAAF,MAAe,CAAAG,wBAAmB;AAQ3C,IAAAC,iBAAS,GAAAJ,MAAA,CAAAK,mBAA0B;AA4B5B,IAAAC,YAAM,GAAAN,MAAA,CAAoBO,SAAA,CAAAC,cAAA;AAAA,IACvBC,QAAA,GAAYA,CAAAC,MAAA,EAAAC,GAAA;EAOZ,SAAAC,IAAA,IAAgBD,GAAA,EAChBZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AACA,IAAAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EAEA,IAAAF,IAAA,WAAkBA,IAAA,iBAAI,OAAoBA,IAAA;IAAA,SAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GAE1C,KAAAX,YAAe,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,CAAI,IAAoBA,GAAA,KAAAF,MAAA,EAAAnB,SAAA,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAAA;EAAA,OAAAE,EAAA;AAAA;AAAA,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IAAAE,2BAAA;AAAAhB,QAOvC,CAAAgB,2BAAqB;EAAwBC,mBAAA,EAAAA,CAAA,KAAAA;AAAA,EAE7C;AAAqCC,MAC5B,CAAAC,OAAA,GAAAN,YAAA,CAAAG,2BAAA;AAAA,IACAI,eAAA,GAAAC,OAAA;AAAA,IACAC,cAAA,GAAAD,OAAA;AAAA,IAEjBE,YAAY,GAAcF,OAAA,oBAAkC;AAC1D,IAAAG,yBAAU,GAAAH,OAAA;AACV,SAAKI,kBAAkBC,QAAA,EAAAC,WAAA;EACvB,MAAAD,QAAK,YAAUC,WAAA;IACf,MAAK,IAAAC,SAAA,oCAAiD;EAA0B;AACtD;AAE1B,SAAKC,kBAAkB5B,MAAI,EAAA6B,KAAA;EAA+C,KACxE,IAAAC,CAAA,IAAU,EAAAA,CAAA,GAAKD,KAAA,CAAAE,MAAQ,EAAAD,CAAA;IAAA,IACvBE,UAAU,GAAKH,KAAA,CAAAC,CAAA,CAAQ;IACzBE,UAAC,CAAA5B,UAAA,GAAA4B,UAAA,CAAA5B,UAAA;IACH4B,UAAA,CAAAC,YAAA;IAEA,IAAM,WACJD,UACgC,EAAAA,UAAA,CAAAE,QAAA;IAEhC5C,MAAM,CAAAC,cAAW,CAAKS,MAAA,EAAAgC,UAAe,CAAAtB,GAAA,EAAAsB,UAAA;EACrC;AACA;AACE,SAAAG,aAAKA,CAAAT,WAAiB,EAAAU,UAAkB,EAAAC,WAAa;EACrD,IAAAD,UAAM,EAAAR,iBAAY,CAAAF,WAAA,CAA6B7B,SAAA,EAAUuC,UAAA;EACzD,IAAAC,WAAM,EAAAT,iBAAkB,CAAAF,WAAc,EAAIW,WAAa;EACvD,OAAAX,WAAS;AAA6C;AAMxD,SAAAY,gBAAqBA,CAAAC,GAAA,EAAA7B,GAAA,EAAAI,KAAA;EACrB,IAAAJ,GAAI,IAAA6B,GAAS;IAEbjD,MAAM,CAAAC,cAAA,CAAAgD,GAAiB,EAAA7B,GAAA;MACvBI,KAAM;MACNV,UAAK,EAAS;MAEd6B,YAAM;MACJC,QAAI;IAAA,EACJ;EAAA,OACA;IAAAK,GAAA,CAAA7B,GAAA,IAAAI,KAAA;EAAA;EACA,OAAAyB,GAAA;AAAA;AACkC,SAClCC,SAAYD,GAAA;EAAwB,uBACtC;;EAGA,OAAIA,GAAA,IAAK,OAASE,MAAG,oBAAAF,GAAA,CAAAG,WAAA,KAAAD,MAAA,qBAAAF,GAAA;AACnB;AAA0B,IAAAI,sBACP;AAAA,IAAA3B,mBACF,kBAAe;EAAA,YAC9B;;EAA4B,SAC5B4B,oBAAgBA,CAAAC,EAAS,EAAAC,eAAA;IAAA,IAC3BC,OAAA,GAAAC,SAAA,CAAAjB,MAAA,QAAAiB,SAAA,iBAAAA,SAAA;IACFxB,iBAAA,OAAAoB,oBAAA;IAGAN,gBAAa,kBAAW,qBAAAW,GAAA;IAAAX,gBACtB,KAAiB,sCAAAW,GAAA;IAAAX,gBACjB,KAAgB;IAClBA,gBAAA;IAGAA,gBAAK,KAAc,EAAI,iBAAgB,iBAAY,IAAAW,GAAA;IACnDX,gBAAK,KAAgB,gBAAc,iBAAc,IAAAW,GAAA;IACjDX,gBAAK,KAAa,EAAI,oBAAiB,qBAAAW,GAAA;IAGvCX,gBAAU,OAAa,iCAAAW,GAAA;IACrBX,gBAAK,WAAmB;IAAAA,gBACtB;IAAAA,gBACA;IAAA,IACA,CAAAO,EAAA,GAAAA,EAAA;IAAa,IACb,CAAAC,eAAA,GAAAA,eAAA;IAAA,IACF,CAAAC,OAAA,GAAAA,OAAA;IACF,KAAAG,kBAAA,OAAA3B,yBAAA,CAAA4B,kBAAA,MAAAL,eAAA,OAAAD,EAAA;MAGAO,SAAS,OAAAL,OAAgC,CAAAK;IAC3C;IAEA,IAAM,CAAAC,eAAA,OACJlC,eACsC,CAAAmC,eAAA,MAAAT,EAAA,OAAAC,eAAA;MACtCS,QAAM,OAAAR,OAAiB,CAAAQ,QAAQ;MAC7BC,QAAC,OAAAT,OACE,CAAAU;IAEL;EACA;EACFtB,aAAA,CAAAS,oBAAA,GAEQ;IACNlC,GAAA,EAAM;IACNI,KAAI,iBAAmB4C,UAAAC,KAAa;MAClC,IAAAC,QAAO,GAAQC,IAAA,CAAAC,SAAQ,CAAAH,KAAA;MACrB,IAAAI,UAAA,QAAAC,eAAA,CAAA7D,GAAA,CAAAyD,QAAA;MACA,IAAIG,UAAA,SAAAE,aAAA,CAAAC,GAAA,CAAAH,UAAA;QACJ,KAAOI,YAAU,CAAAC,GAAA,CAAAL,UAAA,QAAAI,YAAA,CAAAhE,GAAA,CAAA4D,UAAA,UAA6D;QAC/E,IAAAM,IAAA,QAAAC,sBAAA,CAAAP,UAAA;QACH,IAAAQ,UAAA,QAAAN,aAAA,CAAA9D,GAAA,CAAA4D,UAAA,EAAAQ,UAAA;QACM;UACFC,cAAU,EAAAT,UAAA;UACZM,IAAS;UACTE;QACF;MACA;MACE,IAAAE,OAAW,QAAAC,yBAAA,CAAAd,QAAA,EAAAD,KAAA;MACX,IAAAc,OAAS,SAAQA,OAAqC;MACxD,IAAAD,cAAA,GAAAG,cAAA;MACA,IAAM;QAAAN,IAAA,EAASO,KACb;QAAAC,MAAK;QAAAN,UAAc,EAAAO;MAAc,UAAM,IACvC,CAAAC,gBAAK,CAAApB,KAAkB;MAEzB,IAAM,CAAAqB,QAAU,CAAArB,KAAA,EAAQiB,KAAA;MACtB,IAAIK,YAAA;QACFC,EAAA,EAAAV,cAAa;QACXb,KAAA;QACAY,UAAI,EAAAO,WAAA;QACF;QACAD,MAAI;QACF;QAAOM,MACL,EAAAP,KAAA,CAAAQ,GAAA,WAAAC,GAAA;UAAA,OACAA,GAAI,CAAAnF,IAAA;QAAA;QAC+CoF,UACrD,qBAAArC,GAAA;MAAA;MAEF,IAAA2B,KAAI,CAAA7C,MAAM;QACV,IAAAwD,iBAAc,EAAAC,YAAa;QAC3BP,YAAA,CAAAQ,UAAa,GAAS;UACtBC,SAAA,EAAAd,KAAa;UACbe,QAAA,EAAAf,KAAa,CAAAA,KAAA,CAAA7C,MAAa;UAC1B6D,MAAA,GAAAL,iBAA0B,GAAA5B,KAAK,CAAAkC,UAC3B,cAAAN,iBAAA,cAAAA,iBAAA;UAAAhC,QACE,GAAAiC,YAAiB,GAAA7B,KAAA,CAAAmC,KAAA,cAAAN,YAAA,cAAAA,YAAA,GAAAlE,YAAA,CAAAyE;QAAA;MACa;MACWd,YACzC,CAAAe,QAAU;QAA4BC,eAExC;QACJC,cAAA,EAAa;MACb;MACA,KAAAjC,aAAS,CAAAG,GAAA,CAAAI,cAAoB,EAAKS,YAAA;MAAA,IACpC,CAAAjB,eAAgB,CAAAI,GAAA,CAAAR,QAAA,EAAAY,cAAA;MACd,KAAAL,YAAW,CAAAC,GAAK,CAAAI,cAAiB;MACjC,IAAAb,KAAI,CAAAwC,WAAU;QACd,KAAAjD,kBAAS,CAAAkD,oBAAiC,CAAA5B,cAAA,EAAAS,YAAA,EAAAA,YAAA,CAAAE,MAAA,EAAAN,MAAA;MAAA;MAE9C;QACFL,cAAE;QACAH,IAAI,EAAAO,KAAK;QACXL,UAAA,EAAAO;MACD;IACD;EACA,GACF;IAAApE,GAAA;IAAAI,KAAA,iBAAAuF,qBAAA;MAAA,IAAAC,KAAA;MAAA,IAAAvD,OAAA,GAAAC,SAAA,CAAAjB,MAAA,QAAAiB,SAAA,iBAAAA,SAAA;MAAA,IAAAiB,aAAA,YAAAA,aAAA,CAAAsC,MAAA,GAQc,CAAAC,MAAA,WACZvB,YAC4E;QAGtE,IAAAwB,sBAAoB;QAGtB,OAA2B,EAAAA,sBAAA,GAAAH,KAAA,CAAAnC,YAAA,CAAAhE,GAAA,CAAA8E,YAAA,CAAAC,EAAA,eAAAuB,sBAAA,cAAAA,sBAAA,eAAA1D,OAAA,CAAA2D,QAAA,IAAA3D,OAAA,CAAA2D,QAAA,CAAAC,QAAA,CAAA1B,YAAA,CAAAtB,KAAA,CAAAiD,OAAA;MAC3B;MACJ,OAAMC,OAAA,CAAa5G,GAAA,CAAAgE,aAAA,CAAkBmB,GAAA,WAAaH,YAAA;QAC9C,OAAAqB,KAAY,CAAAQ,mBAAA,CAAA7B,YAAA;MACd,EAAI;IACF;EACA,GAAgC;IAGhCvE,GAAA,uBAAwB;IACxBI,KAAA,EAAI,SAAAgG,mBAA4BA,CAAA7B,YAAK;MAEnC,IAAAqB,KAAO,GAAC;MACV,IAAA9B,cAAO,GAAAS,YAAA,CAAAC,EAAA;MAEL,IAAAD,YAAM,CAAAtB,KAAA,CAAAwC,WAAA;QACR,OAAAU,OAAA,CAAAE,OAAA;UACFvC,cAAA;UACKwC,EAAA;UACCC,KAAA,MAAAC,KAA2B;QAC/B;MACA;MACA,IAAAC,QAAS,GAAM,KAAAC,SAAA,CAAAjH,GAAA,CAAAqE,cAAA;MACjB,IAAA2C,QAAA;QAMAA,QAAY,CAAAE,SAAQ,OAAM;QACtB,OAAMF,QAAA,CAAAG,OAAc;MACxB;MACA,IAAMC,KAAA;QAGFF,SAAO;QACTC,OAAQ,EAAAT,OAAiB,CAAAE,OAAA;UACzBvC,cAA2B;UAC7BwC,EAAO;QACL;MACF;MACF,IAAAQ,MAAA,YAAAC,QAAA;QAEI,IAAAhB,sBAAiC;QACrC,OAAWH,KAAO,CAAAc,SAAM,CAAAjH,GAAA,CAAAqE,cAAA,MAAA+C,KAAA,IAAAjB,KAAA,CAAArC,aAAA,CAAA9D,GAAA,CAAAqE,cAAA,MAAAS,YAAA,MAAAwB,sBAAA,GAAAH,KAAA,CAAAnC,YAAA,CAAAhE,GAAA,CAAAqE,cAAA,eAAAiC,sBAAA,cAAAA,sBAAA;MACtB;MACAc,KAAK,CAAAD,OAAA,GAAAT,OAAkB,CAAAE,OAAA,CAAW,EAAAW,IAAA,mBAAY;QAChD;UACO,OAAQ;YACjBH,KAAA,CAAAF,SAAA;YAE6C,IAA0B;cAC1D,IAAAM,8BAAa,EAAAC,yBAAA;cACb;gBAAAvD,IAAS;gBAAIQ,MAAA;gBAAAN;cAAgB,UAAA+B,KAAA,CAAAvB,gBAAA,CAAAE,YAAA,CAAAtB,KAAA;cACjC,KAAA6D,MAAgB;gBACvB;kBACFhD,cAAA;kBAAAwC,EAAA;kBAAAC,KAAA,MAAAC,KAAA;gBAAA;cAAA;cAAA,IAAAK,KAAA,CAAAF,SAAA;cAAAf,KAAA,CAAAtB,QAAA,CAAAC,YAAA,CAAAtB,KAAA,EAAAU,IAAA;cAAAY,YAAA,CAAAE,MAAA,GAAAd,IAAA,CAAAe,GAAA,WAAAC,GAAA;gBASQ,OAAAA,GACN,CAAAnF,IAAA;cAGU;cACJ+E,YAAkB,CAAAJ,MAAA,GAAAA,MAAA;cACnBI,YAAmB,CAAAV,UAAA,GAAAA,UAAA;cAClBU,YAAe,CAAAQ,UAAK,GAAApB,IAAc,CAAAtC,MAAI;gBACvC2D,SAAA,EAAmBrB,IAAA,EAAO;gBAC1BsB,QAAW,EAAOtB,IAAA,CAAAA,IAAU,CAAAtC,MAAA;gBAC5B6D,MAAc,GAAA+B,8BAAO,GAAA1C,YAAA,CAAAtB,KAAA,CAAAkC,UAAA,cAAA8B,8BAAA,cAAAA,8BAAA;gBAGrBpE,QAAgB,GAAIqE,yBAAoB,GAAA3C,YAAA,CAAAtB,KAAA,CAAAmC,KAAA,cAAA8B,yBAAA,cAAAA,yBAAA,GAAAtG,YAAA,CAAAyE;cACxC,SAAa,CAAI;cAEhBd,YAAe,CAAAe,QAAA;gBACRC,eAAK;gBACTC,cAAgB;cAC3B;cAAAjB,YAAA,CAAA4C,KAAA;cAAA;gBAAArD,cAAA;gBAAAwC,EAAA;cAAA;YAAA,SAAAC,KAAA;cAAA,IAAAO,MAAA,MAAAD,KAAA,CAAAF,SAAA;cASA,IAAAG,MACE,IAAAvC,YAEA,CAAA4C,KAAA;cACK,OAAa;gBACTrD,cAAkB;gBACrBwC,EAAA,EAAW,KAAK;gBAGhBC;cACF;YAEE;UACF;QACF,CAAK;UACA,IAAAX,KAAA,CAAWc,SAAO,CAAAjH,GAAA,CAAAqE,cAAU,MAAA+C,KAAA,EAAAjB,KAAA,CAAAc,SAAA,CAAAU,MAAA,CAAAtD,cAAA;QACnC;MACA,EAAM;MACJ,IAAI,CAAA4C,SAAY,CAAAhD,GAAA,CAAAI,cAAA,EAAA+C,KAAA;MAChB,OAAOA,KAAA,CAAAD,OAAY;IACnB;EAAwB,GACJ;IAEpB5G,GAAA,oBAAY;IACZI,KAAA;IACF;AACA;AACA;AACA;AAA+C;AACjD;IAGA,eAAAiE,gBAAuBA,CAAApB,KAAiC;MACtD,IAAOoE,aAAgB;MACzB,IAAAC,WAAA,KAAAD,aAAA,GAAApE,KAAA,CAAAsE,MAAA,cAAAF,aAAA,uBAAAA,aAAA,CAAAhG,MAAA,IAAAmG,KAAA,CAAA3H,IAAA,oBAAA4H,GAAA,KAAAxE,KAAA,CAAAsE,MAAA;MAAA,IAAA5D,IAAA;MAOA,IAAAQ,MAAA;MACQ,IAAAuD,UAAW,KAAQ,EAAA/G,cAAA,CAAAgH,iBAAgC,EAAA1E,KAAK,CAAA2E,OAAA;MAC9D,IAAAF,UAAY;QACN,IAAM;UACL,IAAAG,QAAW,GAAO,WAAA1F,EAAA,CAAc2F,MAAA,CAAA7E,KAAA,CAAAiD,OAAA,EAAAwB,UAAA;UAChC/D,IAAA,GAAAkE,QAAc,GAAO,CAC1BA,QAAiB,CACX,KAAO;QACT,SAAKtB,KAAA;UACL,IAAAwB,eAAA,GAAAxB,KAAA;UACF,KAAAwB,eAAA,aAAAA,eAAA,uBAAAA,eAAA,CAAAC,MAAA;YACFrE,IAAA;UACF;YACF,MAAA4C,KAAA;UAAA;QAAA;MAAA;QAAA,IAAAzB,YAAA;QAAA,IAAAmD,WAAA;UAAAV,MAAA,EAAAD,WAAA;UAAAM,OAAA,EAAA3E,KAAA,CAAA2E,OAAA;UAAAM,OAAA,EAAAjF,KAAA,CAAAiF;QAAA;QAAAD,WAAA,CAAA7C,KAAA,IAAAN,YAAA,GAAA7B,KAAA,CAAAmC,KAAA,cAAAN,YAAA,cAAAA,YAAA,GAAAlE,YAAA,CAAAyE,iBAAA;QAAA,IAAApC,KAAA,CAAAkC,UAAA,UAAA8C,WAAA,CAAA9C,UAAA,GAAAlC,KAAA,CAAAkC,UAAA;QAaA,IAAY,KAAA9C,OAAA,CAAA8F,mBAAwB,EAAAF,WAAA,CAAA9D,MAAA;QAC5B,IAAAiE,QAAY,GAAK,WAAAjG,EAAa,CAAAkG,UAAI,CAAApF,KAAA,CAAciD,OAAK,EAAA+B,WAAK;QAC5D,YAAcG,QAAA,iCAAAtG,QAAA,CAAAsG,QAAA,mBAAAA,QAAA,uBAAAA,QAAA;UACXzE,IAAA,GAAAyE,QAAiB,CAAAE,IAAA;UACtBnE,MAAA,GAAAiE,QAAA,CAAAjE,MAAA;QACF;UACKR,IAAA,GAAUyE,QAAO;QAEjB;MACD;MACJ,IAAAvE,UAAmB,QAAK,CAAK;MACvB,IAAA0E,yBAAuB;QAAAC,iBAAA;QAAAC,cAAA;MACzB;QACA,KAAK,IAAAC,SAAgB,GAAA/E,IAAO,CAAA5B,MAAG,CAAA4G,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UAC/B,IAAA5D,GAAA,GAAAiE,KAAA,CAAAxI,KAAA;UACF,KAAAuE,GAAA,CAAAoE,QAAA;UACF,KAAAlF,UAAA,IAAAc,GAAA,CAAAoE,QAAA,GAAAlF,UAAA,EAAAA,UAAA,GAAAc,GAAA,CAAAoE,QAAA;QACM;MAEJ,SAAKC,GAAQ;QAMRR,iBAAA,GAAmB,IAAI;QACvBC,cAAe,GAAAO,GAAA;MACpB;QACF;UACK,KAAAT,yBAAmC,IAAAG,SAAA,CAAAO,MAAA;YAC1CP,SAAA,CAAAO,MAAA;UAAA;QAGA,UAA4B;UAEnB,IAAKT,iBAAkB,EAAE;YAClC,MAAAC,cAAA;UAAA;QAAA;MAAA;MAAA;QAMA9E,IAAA;QAEQQ,MAAA;QACFN;MAEF;IACA;EAEE,GAA0C;IACd7D,GAAA,EAC1B;IAAAI,KACD,WAAAkE,SAAArB,KAAA,EAAAU,IAAA;MACD,IAAI4E,yBAAmB,GAA2B;QAAAC,iBAAA;QAAAC,cAAA;MACpD;QACA,KAAO,IAAAC,SAAA,GAAA/E,IAAA,CAAA5B,MAAA,CAAA4G,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UACT,IAAA5D,GAAA,GAAAiE,KAAA,CAAAxI,KAAA;UAGM,KAAAuE,GAAA,CAAAuB,OAAe,EAAKvB,GAAA,CAAAuB,OAAA,GAAcjD,KAAI,CAAEiD,OAAA;UACzC,KAAA9D,eAAsB,CAAA8G,MAAA,CAAAvE,GAAA;QACrB;MACN,SAAWqE,GAAA;QACTR,iBAAiB,GAAK;QACpBC,cAAS,GAAAO,GAAa;MACtB;QACD;UACG,KAAAT,yBAA8C,IAAAG,SAAA,CAAAO,MAAA;YACpDP,SAAA,CAAAO,MAAA;UACO;QACT;UAAA,IAAAT,iBAAA;YAAA,MAAAC,cAAA;UAAA;QAKM;MAIJ;IACF;EAAA;IAAAzI,GAAA;IAKAI,KAAM;IAKJ;AAA8E;AAGhF;AAAA;AAAA;AAAA;AAME;IACF,SAAA4D,0BAAAd,QAAA,EAAAD,KAAA;MAAA,IAAAA,KAAA,CAAAwC,WAAA;MAAA,IAAA0D,UAAA,QAAAC,kBAAA,CAAA3J,GAAA,CAAAyD,QAAA;MAAA,KAAAiG,UAAA;MAAA,IAAA5E,YAAA,QAAAhB,aAAA,CAAA9D,GAAA,CAAA0J,UAAA;MAAA,KAAAC,kBAAA,CAAAhC,MAAA,CAAAlE,QAAA;MAAA,KAAAmG,UAAA,CAAAjC,MAAA,CAAA+B,UAAA;MAAA,KAAA5E,YAAA;MAAA,KAAAjB,eAAA,CAAAI,GAAA,CAAAR,QAAA,EAAAiG,UAAA;MAAA,KAAA1F,YAAA,CAAAC,GAAA,CAAAyF,UAAA;MAWM,IAAAG,OAAqC,GAAoB,KAAAlD,mBAAA,CAAA7B,YAAA;MACzD,IAAKZ,IAAA,OAAU,CAAAC,sBAAmB,CAAAuF,UAAA;MACpC,OAAW;QAILrF,cAAK,EAAWqF,UAAI;QACxBxF,IAAM;QACRE,UAAA,EAAAU,YAAA,CAAAV,UAAA;QACAyF;MACF;IACI;EAEA,GACA;IACF;AACA;AAAA;AAEF;AACE;AACA;AACE;IACAtJ,GAAA,uBAAY;IACVI,KAAA,WAAWmJ,mBAAYA,CAAAC,WAAmB;MAC9C,IAAAC,kBAAA;MACA,MAAAD,WAAA,aAAAA,WAAA,uBAAAA,WAAA,CAAAhF,EAAA,QAAAiF,kBAAA,GAAAD,WAAA,CAAAvG,KAAA,cAAAwG,kBAAA,uBAAAA,kBAAA,CAAAvD,OAAA;MACF,SAAA3C,aAAA,CAAAC,GAAA,CAAAgG,WAAA,CAAAhF,EAAA;MACI,IAAAtB,QAAK,GAAUC,IAAA,CAAAC,SAAc,CAAAoG,WAAM,CAAAvG,KAAA;MACrC,IAAAyG,QAAW,QAAApG,eAA0B,CAAC7D,GAAG,CAAAyD,QAAA;MACvC,IAAAwG,QAAM,QAAW,CAAAnG,aAAc,CAAAC,GAAa,CAAAkG,QAAA,CAAU;MACtD,IAAAC,UAAK,OAAgB,CAAAP,kBAAe,CAAA3J,GAAA,CAAAyD,QAAA;MACtC,IAAAyG,UAAA;QACF,KAAApG,aAAA,CAAA6D,MAAA,CAAAuC,UAAA;QACF,KAAAN,UAAA,CAAAjC,MAAA,CAAAuC,UAAA;MAAA;MAAA,IAAApF,YAAA;QAAAC,EAAA,EAAAgF,WAAA,CAAAhF,EAAA;QAAAvB,KAAA,EAAAuG,WAAA,CAAAvG,KAAA;QAAAY,UAAA,EAAA2F,WAAA,CAAA3F,UAAA;QAAAM,MAAA,EAAAqF,WAAA,CAAArF,MAAA;QAAAM,MAAA,EAAA+C,KAAA,CAAAoC,OAAA,CAAAJ,WAAA,CAAA/E,MAAA,IAAA+E,WAAA,CAAA/E,MAAA;QAAAG,UAAA,qBAAArC,GAAA;QAAA+C,QAAA;UAAAC,eAAA;UAAAC,cAAA;QAAA;MAAA;MAeM,KAAAjC,aACJ,CAAAG,GAAA,CAAAa,YACA,CAAAC,EAAW,EAAAD,YAAa;MAExB,IAAM,CAAA6E,kBAAgB,CAAA1F,GAAQ,CAAAR,QAAA,EAAAqB,YAAoB,CAAAC,EAAA;MAClD,IAAM,CAAA6E,UAA2B,CAAA3F,GAAA,CAAAa,YAAA,CAAAC,EAAA,EAAAqF,IAAA,CAAAC,GAAA;IACjC;EACA,GAEE;IAA8C;IAChB9J,GAC5B,0BAA2B;IAAAI,KAC3B,WAAS2J,sBAAmBA,CAAAjG,cAAA;MAC5B,YAAAuF,UAAe,CAAA7F,GAAA,CAAAM,cAAa;IAAA;EAAA,GACrB;IAET;AACE;AAA0E;AAE5E;AAEA;IAIA9D,GAAA,2BAA8B;IAC9BI,KAAK,WAAS4J,uBAAsBA,CAAA;MACtC,IAAAF,GAAA,GAAAxH,SAAA,CAAAjB,MAAA,QAAAiB,SAAA,iBAAAA,SAAA,MAAAuH,IAAA,CAAAC,GAAA;MAIA,IAAAG,qCAAkC;MAChC,IAAKC,GAAA,IAAAD,qCAAkB,QAAA5H,OAAA,CAAA8H,uBAAA,cAAAF,qCAAA,cAAAA,qCAAA;MACvB,IAAM1B,yBAAiB,GAAW;QAAAC,iBAAW,GAAa,KAAM;QAAAC,cAAA;MAGhE,IAAI;QACF,SAAAC,SAAa,OAAW,CAAIW,UAAA,CAAWtH,MAAM,CAAA4G,QAAS,CAAC,IAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UACzD,KAAAzE,cAAA,EAAAsG,YAAA,IAAAxB,KAAA,CAAAxI,KAAA;UAEK,IAAA0J,GAAA,GAAAM,YAAuB,IAAAF,GAAA;UAC1B,KAASb,UAAA,CAAAjC,MAAA,CAAAtD,cAAA;UACT,IAAM,CAAAP,aAAW,CAAA6D,MAAA,CAAAtD,cAAA;UAClB,IAAAuG,0BAAA;YAAAC,kBAAA;YAAAC,eAAA;UACG;YACF,SAAaC,UAAS,QAAApB,kBAAoB,CAAArH,MAAA,CAAA4G,QAAA,KAAA8B,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAD,UAAA,CAAA3B,IAAA,IAAAC,IAAA,GAAAuB,0BAAA;cACvC,KAAArK,GAAA,EAAAwE,EAAgB,IAAAiG,MAAA,CAAArK,KAAgB;cACnC,IAAAoE,EAAA,KAAAV,cAAA;gBACJ,KAAAsF,kBAAA,CAAAhC,MAAA,CAAApH,GAAA;gBAIW;cACA;YACJ;UACC,SAAOgJ,GAAI;YACZsB,kBAAM;YACLC,eAAQ,GAAAvB,GAAe;UACzB,UAAU;YACT;cACH,KAAaqB,0BAAsB,IAAOG,UAAQ,CAAAvB,MAAA,QAAgB;gBACtEuB,UAAA,CAAAvB,MAAA;cAES;YACP,UAAa;cAGX,IAAAqB,kBAA6B,EAAG;gBAC5B,MAAWC,eAAK;cACpB;YACM;UACP;QACD;MACE,SAASvB,GAAA;QACTR,iBAAmB,OAAO;QAC3BC,cAAA,GAAAO,GAAA;MAED,UAAI;QACF;UACE,KAAAT,yBAAW,IAAAG,SAAA,CAAAO,MAAA;YACXP,SAAU,CAAAO,MAAA;UACV;QACA,UAAU;UACZ,IAAAT,iBAAA;YACF,MAAAC,cAAA;UACF;QAGK;MAGL;IAGA;EAEA,GACE;IAAwB;AACM;AACd;AACW;AAC1B;AACL;AAGE;AACA;AACA;AACA;AACE;IACAzI,GAAA,eAAkB;IAClBI,KAAA,WAAWsK,WAAgBA,CAAA5G,cAAc;MACvC,IAAA6G,QAAM,GAAQ,MAAAlH,YAAa,CAAAhE,GAAA,CAAAqE,cAAA;MAC3B,IAAA6G,QAAM,MAAY;QAClB,IAAM,CAAAlH,YAAa,CAAAC,GAAA,CAAAI,cAAgB,EAAA6G,QAAA;QACnC;MACA;MACA,KAAAjE,SAAM,CAAAU,MAAA,CAAAtD,cAAkB;MACxB,IAAI,CAAAL,YAAA,CAAA2D,MAAmB,CAAAtD,cAAiB;MACxC,IAAIZ,QAAA;MACJ,IAAIqF,yBAAkB;QAAiBC,iBAAA;QAAAC,cAAA;MACvC,IAAI;QACJ,KAAI,IAAAC,SAAa,QAAApF,eAAoB,CAAAvB,MAAY,CAAA4G,QAAK,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UAClD,KAAAvI,GAAA,EAAAwE,EAAA,CAAa,GAAAoE,KAAA,CAAAxI,KAAa;UAChC,IAAAoE,EAAA,KAAAV,cAAA;YACOZ,QAAA,GAAUlD,GAAA;YAClB,KAAAsD,eAAA,CAAA8D,MAAA,CAAApH,GAAA;YACH;UAEA;QACQ;MACN,SAAWgJ,GAAA;QAILR,iBAAgB,GAAI;QACpBC,cAAa,GAAAO,GAAM;MACvB,UAAM;QACN,IAAM;UACF,KAAAT,yBAAsB,IAAAG,SAAA,CAAAO,MAAA;YACxBP,SAAA,CAAAO,MAAA;UAEA;QACE;UACA,IAAAT,iBAAA;YACF,MAAAC,cAAA;UACF;QACE;MACE;MACA,IAAAlE,YAAK,QAAAhB,aAAmB,CAAA9D,GAAA,CAAAqE,cAAmB;MAC7C,QAAO,CAAAzB,OAAA,CAAAuI,UAAA,IAAArG,YAAA,IAAArB,QAAA,KAAAqB,YAAA,CAAAtB,KAAA,CAAAwC,WAAA,UAAA2D,kBAAA,CAAA5F,GAAA,CAAAN,QAAA;QACL,KAAKkG,kBAAA,CAAmB1F,GAAA,CAAAR,QAAA,EAAAY,cAAA;QAAA,IACtB,CAAAuF,UAAa,CAAA3F,GAAA,CAAAI,cAAA,EAAA+F,IAAA,CAAAC,GAAA;QAAA;MACb;MAEJ,KAAAvG,aAAA,CAAA6D,MAAA,CAAAtD,cAAA;IACA;EAA0C,GAE9C;IACA;IACF9D,GAAA;IAAAI,KAAA,WAAAyK,gBAAArG,EAAA;MAAA,YAAAjB,aAAA,CAAA9D,GAAA,CAAA+E,EAAA;IAAA;EAAA,GAMA;IAIE;AAEA;AACE;AAEA;IACAxE,GAAA,EAAI,wBAAa;IACfI,KAAA,WAAawD,sBAAsBA,CAAAY,EAAA;MACnC,IAAAsG,UAAK,QAAAtI,kBAAmB,CAAAqI,eAAgC,CAAArG,EAAA,CAAI;MAC5D,IAAAsG,UAAA;QACF,IAAArG,MAAA,GAAAqG,UAAA,CAAAC,mBAAA,GAAAtG,MAAA,CAAAqB,MAAA,WAAAkF,GAAA;UACF,OAAAA,GAAA;QAEA,CAAO;QACT,IAAAC,GAAA;QAAA,IAAA1C,yBAAA;UAAAC,iBAAA;UAAAC,cAAA;QAGA;UACS,KAAK,IAAAC,SAAA,GAAAjE,MAAA,CAAA1C,MAAA,CAAA4G,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;YACd,IAAA/I,IAAA,GAAAoJ,KAAA,CAAAxI,KAAA;YAEA,IAAAyH,QAA4C,QAAAzF,eAAA,CAAA3C,GAAA;cAC9ByG,OAAA,EAAA4E,UAAA,CAAA7H,KAAA,CAAAiD,OAAA;cACd1G;YAEA;YAIM,IAAAqI,QAAa,EAAOoD,GAAA,CAAAC,IAAA,CAASrD,QAAQ;UACpC;QACH,SAAOmB,GAAA;UACTR,iBAAA;UACMC,cAAc,GAAKO,GAAA;QACzB,UAAa;UACf;YAEQ,KAAAT,yBAGE,IAAAG,SAAA,CAAAO,MAAA;cACAP,SAAQ,CAAMO,MAAI;YACpB;UACF,UAAO;YACP,IAAQT,iBAAgB;cACrB,MAAQC,cAAO;YACd;UACA;QACJ;QACA,OAAMwC,GAAA;MACP;MACD,IAAK1G,YAAQ,QAAAhB,aAAA,CAAA9D,GAAA,CAAA+E,EAAA;MACX,KAAAD,YAAc;MAChB,IAAA4G,IAAA;MACA,IAAMd,0BAAkB;QAAiBC,kBAAa,QAAY;QAAAC,eAAA;MAClE,IAAI;QACF,SAAQC,UAAM,GAAAjG,YAAA,CAAAE,MAAA,CAAA1C,MAAA,CAAA4G,QAAA,KAAA8B,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAD,UAAA,CAAA3B,IAAA,IAAAC,IAAA,GAAAuB,0BAAA;UAChB,IAAOe,KAAA,GAAAX,MAAA,CAAArK,KAAA;UACL,IAAOiL,SAAM,QAAAjJ,eAAA,CAAA3C,GAAA;YACfyG,OAAA,EAAA3B,YAAA,CAAAtB,KAAA,CAAAiD,OAAA;YACF1G,IAAA,EAAA4L;UACO;UACT,IAAAC,SAAA,EAAAF,IAAA,CAAAD,IAAA,CAAAG,SAAA;QAEQ;MAKN,SAAarC,GAAA;QACXsB,kBAAoB,GAAK;QACzBC,eAAe,GAAKvB,GAAK;MACzB,UAAM;QACN,IAAM;UACA,KAAAqB,0BAAoB,IAAAG,UAAA,CAAAvB,MAAA;YACtBuB,UAAY,CAAAvB,MAAS;UACpB;QACD;UACA,IAAAqB,kBAA0B;YAC1B,MAAUC,eAAgB;UAChC;QACM;MACN;MACA,OAAOY,IAAQ;IACjB;EAEA,GACE;IACAnL,GAAK;IACLI,KAAK;IACL;AACA;AACA;IACF,eAAAkL,QAAAxH,cAAA,EAAAyH,IAAA;MAAA,YAAA/I,kBAAA,CAAA8I,OAAA,CAAAxH,cAAA,EAAAyH,IAAA;IAAA;EAAA,GAMA;IACEvL,GAAA,EAAM,cAAc;IACpBI,KAAM;IACN;AAEA;AAIA;IACE,eAAKoL,YAAcA,CAAA1H,cAAc,EAAa2H,WAAW,EAAArG,KAAA,EAAS;MAGlE,OAAW,IAAC,CAAA5C,kBAAoB,CAAAgJ,YAAa,CAAA1H,cAAY,EAAA2H,WAAA,EAAArG,KAAA;IACvD;EACqC,GACrC;IAIF;AACE;AAEA;IAEApF,GAAA,eAAM;IACNI,KAAA,WAAYsL,WAASA,CAAA5H,cAAU;MAC7B,YAAAtB,kBAAwB,CAAAkJ,WAAW,CAAA5H,cAAA;IAAA;EACrC,GAEJ;IACF9D,GAAA;IACFI,KAAA;IAEA;AACE;AACE;AAAyB;AAE3B;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","types_exports","BackfillScope","MutationBatchStatus","Operation","Order","PendingRehydrationType","PlacementType","RealtimeEventType","RehydrationReason","RehydrationStrategyType","Status","defaultPageLength","module","exports","Order2","PlacementType2","PendingRehydrationType2","Operation2","Status2","BackfillScope2","RealtimeEventType2","RehydrationStrategyType2","RehydrationReason2","MutationBatchStatus2"],"sources":["types.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar types_exports = {};\n__export(types_exports, {\n BackfillScope: () => BackfillScope,\n MutationBatchStatus: () => MutationBatchStatus,\n Operation: () => Operation,\n Order: () => Order,\n PendingRehydrationType: () => PendingRehydrationType,\n PlacementType: () => PlacementType,\n RealtimeEventType: () => RealtimeEventType,\n RehydrationReason: () => RehydrationReason,\n RehydrationStrategyType: () => RehydrationStrategyType,\n Status: () => Status,\n defaultPageLength: () => defaultPageLength\n});\nmodule.exports = __toCommonJS(types_exports);\nvar Order = /* @__PURE__ */ (function(Order2) {\n Order2[\"Asc\"] = \"asc\";\n Order2[\"Desc\"] = \"desc\";\n return Order2;\n})({});\nvar defaultPageLength = 20;\nvar PlacementType = /* @__PURE__ */ (function(PlacementType2) {\n PlacementType2[\"Before\"] = \"before\";\n PlacementType2[\"Within\"] = \"within\";\n PlacementType2[\"After\"] = \"after\";\n PlacementType2[\"Unknown\"] = \"unknown\";\n return PlacementType2;\n})({});\nvar PendingRehydrationType = /* @__PURE__ */ (function(PendingRehydrationType2) {\n PendingRehydrationType2[\"ItemOnly\"] = \"item-only\";\n PendingRehydrationType2[\"FullRefresh\"] = \"full-refresh\";\n return PendingRehydrationType2;\n})({});\nvar Operation = /* @__PURE__ */ (function(Operation2) {\n Operation2[\"Create\"] = \"create\";\n Operation2[\"Update\"] = \"update\";\n Operation2[\"Delete\"] = \"delete\";\n return Operation2;\n})({});\nvar Status = /* @__PURE__ */ (function(Status2) {\n Status2[\"Pending\"] = \"pending\";\n Status2[\"Confirmed\"] = \"confirmed\";\n Status2[\"Failed\"] = \"failed\";\n return Status2;\n})({});\nvar BackfillScope = /* @__PURE__ */ (function(BackfillScope2) {\n BackfillScope2[\"All\"] = \"all\";\n BackfillScope2[\"Doctypes\"] = \"doctypes\";\n BackfillScope2[\"Subscriptions\"] = \"subscriptions\";\n BackfillScope2[\"Docs\"] = \"docs\";\n return BackfillScope2;\n})({});\nvar RealtimeEventType = /* @__PURE__ */ (function(RealtimeEventType2) {\n RealtimeEventType2[\"DocUpdate\"] = \"doc_update\";\n RealtimeEventType2[\"ListUpdate\"] = \"list_update\";\n RealtimeEventType2[\"DocChanged\"] = \"doc_changed\";\n RealtimeEventType2[\"DocDeleted\"] = \"doc_deleted\";\n RealtimeEventType2[\"Connected\"] = \"connected\";\n RealtimeEventType2[\"PermEpochBump\"] = \"perm_epoch_bump\";\n return RealtimeEventType2;\n})({});\nvar RehydrationStrategyType = /* @__PURE__ */ (function(RehydrationStrategyType2) {\n RehydrationStrategyType2[\"FetchItemOnly\"] = \"fetch-item-only\";\n RehydrationStrategyType2[\"FullRefresh\"] = \"full-refresh\";\n return RehydrationStrategyType2;\n})({});\nvar RehydrationReason = /* @__PURE__ */ (function(RehydrationReason2) {\n RehydrationReason2[\"Create\"] = \"create\";\n RehydrationReason2[\"Delete\"] = \"delete\";\n RehydrationReason2[\"Overflow\"] = \"overflow\";\n RehydrationReason2[\"RemoteCreate\"] = \"remote-create\";\n RehydrationReason2[\"Uncertain\"] = \"uncertain\";\n return RehydrationReason2;\n})({});\nvar MutationBatchStatus = /* @__PURE__ */ (function(MutationBatchStatus2) {\n MutationBatchStatus2[\"Pending\"] = \"pending\";\n MutationBatchStatus2[\"Processing\"] = \"processing\";\n MutationBatchStatus2[\"Completed\"] = \"completed\";\n MutationBatchStatus2[\"Failed\"] = \"failed\";\n return MutationBatchStatus2;\n})({});\n//# sourceMappingURL=types.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","PlacementType","to","from","except","desc","key","call","__toCommonJS","mod","value","types_exports","Operation","BackfillScope","MutationBatchStatus","Order","PendingRehydrationType","Status","RealtimeEventType","RehydrationReason","RehydrationStrategyType","defaultPageLength","module","exports","Order2","PlacementType2","PendingRehydrationType2","Operation2","Status2","BackfillScope2"],"sources":["../../../src/sync/types.ts"],"sourcesContent":[null],"mappings":"AAGO;;AACL,IAAAA,SAAA,GAAAC,MAAM,CAAAC,cAAA;AACN,IAAAC,gBAAO,GAAAF,MAAA,CAAAG,wBAAA;AAFG,IAAAC,iBAAA,GAAAJ,MAAA,CAAAK,mBAAA;AAAA,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAmBL,IAAAC,QAAM,GAAAA,CAAAC,MAAA,EAAAC,GAAoB;EAqB1B,KAAK,IAAAC,IAAA,IAAAD,GAAL,EACLZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAASC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AACT;AACA,IAAAC,WAAA,GAAAC,CAAAC,EAAA,EAAAC,IAAA,EAAQC,MAAA,EAAAC,IAAA;EACR,IAAAF,IAAA,WAAAA,IAAA,KAAU,mBAAAA,IAAA;IAJA,SAAAG,GAAA,IAAAjB,iBAAA,CAAAc,IAAA,QAAAZ,YAAA,CAAAgB,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EAiBApB,SAAA,CAAAkB,EAAA,EAAAI,GAAA;MAALR,GAAA,EAAAA,CAAA,KAAAK,IAAA,CAAAG,GAAK;MAAAP,UAAA,IAAAM,IAAA,GAAAlB,gBAAL,CAAAgB,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAN;IAAA;EACL;EACA,OAAAG,EAAA;AAFU;AAAA,IAAAM,YAAA,GAAAC,GAAA,IAAAT,WAAA,CAAAhB,SAAA;EAAA0B,KAAA;AAAA,IAAAD,GAAA;AAmCL,IAAKE,aAAL;AACLjB,QAAA,CAAAiB,aAAA;EACAC,aAAA,EAAAA,CAAA,KAAAC,aAAS;EACTD,mBAAA,EAAAA,CAAA,KAASE,mBAAA;EAHCF,SAAA,EAAAA,CAAA,KAAAA,SAAA;EAAAG,KAAA,EAAAA,CAAA,KAAAA,KAAA;EAMLC,sBAAA,EAAAA,CAAA,KAAKA,sBAAL;EACLC,aAAA,EAAAA,CAAA,KAAUhB,aAAA;EACVgB,iBAAA,EAAAA,CAAA,KAAYC,iBAAA;EACZD,iBAAA,EAAAA,CAAA,KAASE,iBAAA;EAHCC,uBAAA,EAAAH,CAAA,KAAAG,uBAAA;EAAAH,MAAA,EAAAA,CAAA,KAAAA,MAAA;EAqELI,iBAAK,EAALA,CAAA,KAAAA;AACL;AACAC,MAAA,CAAAC,OAAA,GAAAf,YAAA,CAAAG,aAAW;AACX,IAAAI,KAAA,4BAAgBS,MAAA;EAChBX,MAAA;EAJUW,MAAA;EAAA,OAAAA,MAAA;AAgBL,GAAK;AAEV,IAAAH,iBAAA;AAEA,IAAApB,aAAA,kBAAa,UAAAwB,cAAA;EAEbP,cAAA,qBAAa;EAEbA,cAAA,qBAAa;EACbA,cAAA;EACAA,cAAA;EAVU,OAAAO,cAAA;AAAA;AAuHL,IAAKT,sBAAA,kBAAL,UAAKU,uBAAL;EACLN,uBAAA,0BAAgB;EAChBA,uBAAA,gCAAc;EAFJ,OAAAM,uBAAA;AAAA;AAoBL,IAAKd,SAAA,kBAAL,UAAKe,UAAA;EACVR,UAAA,qBAAS;EACTA,UAAA,qBAAS;EACTA,UAAA;EACA,OAAAQ,UAAA;AACA;AALU,IAAAV,MAAA,4BAAAW,OAAA;EAAAA,OAAA;EAuBLA,OAAK,2BAAL;EACLd,OAAA;EACA,OAAAc,OAAA;AACA;AACA,IAAAf,aAAA,kBAAS,UAAAgB,cAAA;EAJCA,cAAA;EAAAA,cAAA","ignoreList":[]}