@nanolink/mirrors 1.0.33 → 1.0.34

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.
@@ -1,64 +1,59 @@
1
- var DelegatingMap = /** @class */ (function () {
2
- function DelegatingMap(resolver) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DelegatingObject = exports.DelegatingMap = void 0;
4
+ class DelegatingMap {
5
+ constructor(resolver) {
3
6
  this.resolver = resolver;
4
7
  }
5
- DelegatingMap.prototype.t = function () { return this.resolver(); };
6
- Object.defineProperty(DelegatingMap.prototype, "size", {
7
- get: function () { return this.t().size; },
8
- enumerable: false,
9
- configurable: true
10
- });
11
- DelegatingMap.prototype.get = function (key) { return this.t().get(key); };
12
- DelegatingMap.prototype.has = function (key) { return this.t().has(key); };
13
- DelegatingMap.prototype.entries = function () { return this.t().entries(); };
14
- DelegatingMap.prototype.keys = function () { return this.t().keys(); };
15
- DelegatingMap.prototype.values = function () { return this.t().values(); };
16
- DelegatingMap.prototype.forEach = function (callbackfn, thisArg) {
17
- var _this = this;
18
- this.t().forEach((function (v, k) { return callbackfn(v, k, _this); }), thisArg);
19
- };
20
- DelegatingMap.prototype[Symbol.iterator] = function () { return this.t()[Symbol.iterator](); };
21
- return DelegatingMap;
22
- }());
23
- export { DelegatingMap };
8
+ t() { return this.resolver(); }
9
+ get size() { return this.t().size; }
10
+ get(key) { return this.t().get(key); }
11
+ has(key) { return this.t().has(key); }
12
+ entries() { return this.t().entries(); }
13
+ keys() { return this.t().keys(); }
14
+ values() { return this.t().values(); }
15
+ forEach(callbackfn, thisArg) {
16
+ this.t().forEach(((v, k) => callbackfn(v, k, this)), thisArg);
17
+ }
18
+ [Symbol.iterator]() { return this.t()[Symbol.iterator](); }
19
+ }
20
+ exports.DelegatingMap = DelegatingMap;
24
21
  /**
25
22
  * Presents a ReadonlyMapView<K,V> as an immutable plain object via Proxy.
26
23
  * Optionally maps values through a mapper function on access.
27
24
  */
28
- var DelegatingObject = /** @class */ (function () {
29
- function DelegatingObject(source, mapFn) {
30
- var _this = this;
25
+ class DelegatingObject {
26
+ constructor(source, mapFn) {
31
27
  this.source = source;
32
28
  this.mapFn = mapFn;
33
- var mapper = function (v, k) { return (_this.mapFn ? _this.mapFn(v, k) : v); };
34
- var handler = {
35
- get: function (_target, prop, receiver) {
29
+ const mapper = (v, k) => (this.mapFn ? this.mapFn(v, k) : v);
30
+ const handler = {
31
+ get: (_target, prop, receiver) => {
36
32
  if (prop === Symbol.toStringTag)
37
33
  return 'Object';
38
34
  if (typeof prop !== 'string')
39
35
  return Reflect.get(Object.prototype, prop, receiver);
40
- var key = prop;
41
- var v = _this.source.get(key);
36
+ const key = prop;
37
+ const v = this.source.get(key);
42
38
  return v === undefined ? undefined : mapper(v, key);
43
39
  },
44
- set: function () { return false; }, // immutable
45
- has: function (_target, prop) { return typeof prop === 'string' && _this.source.has(prop); },
46
- deleteProperty: function () { return false; }, // immutable
47
- ownKeys: function () { return Array.from(_this.source.keys()); },
48
- getOwnPropertyDescriptor: function (_target, prop) {
49
- if (typeof prop === 'string' && _this.source.has(prop)) {
50
- var key = prop;
51
- var v = _this.source.get(key);
40
+ set: () => false, // immutable
41
+ has: (_target, prop) => typeof prop === 'string' && this.source.has(prop),
42
+ deleteProperty: () => false, // immutable
43
+ ownKeys: () => Array.from(this.source.keys()),
44
+ getOwnPropertyDescriptor: (_target, prop) => {
45
+ if (typeof prop === 'string' && this.source.has(prop)) {
46
+ const key = prop;
47
+ const v = this.source.get(key);
52
48
  return { configurable: true, enumerable: true, value: mapper(v, key) };
53
49
  }
54
50
  return undefined;
55
51
  },
56
- defineProperty: function () { return false; }, // immutable
52
+ defineProperty: () => false, // immutable
57
53
  };
58
54
  this.proxy = new Proxy(Object.create(null), handler);
59
55
  }
60
- DelegatingObject.prototype.asObject = function () { return this.proxy; };
61
- return DelegatingObject;
62
- }());
63
- export { DelegatingObject };
56
+ asObject() { return this.proxy; }
57
+ }
58
+ exports.DelegatingObject = DelegatingObject;
64
59
  //# sourceMappingURL=DelegateMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DelegateMap.js","sourceRoot":"","sources":["../src/DelegateMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DelegateMap.js","sourceRoot":"","sources":["../src/DelegateMap.ts"],"names":[],"mappings":"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"}
@@ -1,100 +1,58 @@
1
- var __extends = (this && this.__extends) || (function () {
2
- var extendStatics = function (d, b) {
3
- extendStatics = Object.setPrototypeOf ||
4
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
- return extendStatics(d, b);
7
- };
8
- return function (d, b) {
9
- if (typeof b !== "function" && b !== null)
10
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
- extendStatics(d, b);
12
- function __() { this.constructor = d; }
13
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
- };
15
- })();
16
- var __assign = (this && this.__assign) || function () {
17
- __assign = Object.assign || function(t) {
18
- for (var s, i = 1, n = arguments.length; i < n; i++) {
19
- s = arguments[i];
20
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
21
- t[p] = s[p];
22
- }
23
- return t;
24
- };
25
- return __assign.apply(this, arguments);
26
- };
27
- var __values = (this && this.__values) || function(o) {
28
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
29
- if (m) return m.call(o);
30
- if (o && typeof o.length === "number") return {
31
- next: function () {
32
- if (o && i >= o.length) o = void 0;
33
- return { value: o && o[i++], done: !o };
34
- }
35
- };
36
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
4
  };
38
- import EventEmitter from 'eventemitter3';
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MirrorSync = exports.SyncType = void 0;
7
+ const eventemitter3_1 = __importDefault(require("eventemitter3"));
39
8
  // SyncType enum as described
40
- export var SyncType;
9
+ var SyncType;
41
10
  (function (SyncType) {
42
11
  SyncType["DELETED"] = "DELETED";
43
12
  SyncType["UPDATED"] = "UPDATED";
44
13
  SyncType["START"] = "START";
45
14
  SyncType["DONE"] = "DONE";
46
15
  SyncType["VERSION_ERROR"] = "VERSION_ERROR";
47
- })(SyncType || (SyncType = {}));
16
+ })(SyncType || (exports.SyncType = SyncType = {}));
48
17
  /**
49
18
  * MirrorSync maintains an in-memory mirror of server state based on CacheSyncResult messages.
50
19
  * Generic TBase is the item shape (must include id & version).
51
20
  */
52
- var MirrorSync = /** @class */ (function (_super) {
53
- __extends(MirrorSync, _super);
54
- function MirrorSync(client, options) {
55
- var _this = _super.call(this) || this;
56
- _this._mirror = new Map();
57
- _this.buffer = null; // used during full/resubscription phase
58
- _this.currentVersion = -1; // numeric cursor (-1 => full sync needed)
59
- _this.currentOpVersion = null; // op cursor (null => full sync needed)
60
- _this.unsub = null;
61
- _this.fullSyncPhase = false; // only true during START..DONE when initiating from version -1
62
- _this.backlog = [];
63
- _this.client = client;
64
- _this.options = options;
65
- _this.log = options.log;
66
- _this.attachClientEvents();
67
- _this.resetLoaded();
68
- return _this;
21
+ class MirrorSync extends eventemitter3_1.default {
22
+ get mirror() { return this._mirror; }
23
+ get Storage() { return this.mirror; }
24
+ constructor(client, options) {
25
+ super();
26
+ this._mirror = new Map();
27
+ this.buffer = null; // used during full/resubscription phase
28
+ this.currentVersion = -1; // numeric cursor (-1 => full sync needed)
29
+ this.currentOpVersion = null; // op cursor (null => full sync needed)
30
+ this.unsub = null;
31
+ this.fullSyncPhase = false; // only true during START..DONE when initiating from version -1
32
+ this.backlog = [];
33
+ this.client = client;
34
+ this.options = options;
35
+ this.log = options.log;
36
+ this.attachClientEvents();
37
+ this.resetLoaded();
69
38
  }
70
- Object.defineProperty(MirrorSync.prototype, "mirror", {
71
- get: function () { return this._mirror; },
72
- enumerable: false,
73
- configurable: true
74
- });
75
- Object.defineProperty(MirrorSync.prototype, "Storage", {
76
- get: function () { return this.mirror; },
77
- enumerable: false,
78
- configurable: true
79
- });
80
- MirrorSync.prototype.l = function (msg, meta) { if (this.log)
81
- this.log(msg, meta); };
82
- MirrorSync.prototype.attachClientEvents = function () {
83
- var _this = this;
84
- this.__onReconnected = function () {
85
- _this.emit('resubscribe', { fromVersion: _this.currentVersion });
86
- _this.resubscribe();
39
+ l(msg, meta) { if (this.log)
40
+ this.log(msg, meta); }
41
+ attachClientEvents() {
42
+ this.__onReconnected = () => {
43
+ this.emit('resubscribe', { fromVersion: this.currentVersion });
44
+ this.resubscribe();
87
45
  };
88
- this.__onConnected = function () {
89
- if ((_this.currentVersion === -1 || _this.currentOpVersion === null) && !_this.unsub) {
90
- _this.l('initial connected subscribe', { version: _this.currentVersion, opVersion: _this.currentOpVersion });
91
- _this.subscribeInternal(_this.currentVersion, _this.currentOpVersion);
46
+ this.__onConnected = () => {
47
+ if ((this.currentVersion === -1 || this.currentOpVersion === null) && !this.unsub) {
48
+ this.l('initial connected subscribe', { version: this.currentVersion, opVersion: this.currentOpVersion });
49
+ this.subscribeInternal(this.currentVersion, this.currentOpVersion);
92
50
  }
93
51
  };
94
52
  this.client.on('reconnected', this.__onReconnected);
95
53
  this.client.on('connected', this.__onConnected);
96
- };
97
- MirrorSync.prototype.detachClientEvents = function () {
54
+ }
55
+ detachClientEvents() {
98
56
  if (this.__onReconnected) {
99
57
  this.client.off('reconnected', this.__onReconnected);
100
58
  this.__onReconnected = undefined;
@@ -103,75 +61,72 @@ var MirrorSync = /** @class */ (function (_super) {
103
61
  this.client.off('connected', this.__onConnected);
104
62
  this.__onConnected = undefined;
105
63
  }
106
- };
107
- MirrorSync.prototype.targetMap = function () { return (this.fullSyncPhase && this.buffer) ? this.buffer : this.mirror; };
108
- MirrorSync.prototype.advanceNumeric = function (v) { if (typeof v === 'number' && v > this.currentVersion)
109
- this.currentVersion = v; };
110
- MirrorSync.prototype.advanceOp = function (v) { if (v && (!this.currentOpVersion || v > this.currentOpVersion))
111
- this.currentOpVersion = v; };
112
- MirrorSync.prototype.subscribeInternal = function (version, opVersion) {
113
- var _this = this;
64
+ }
65
+ targetMap() { return (this.fullSyncPhase && this.buffer) ? this.buffer : this.mirror; }
66
+ advanceNumeric(v) { if (typeof v === 'number' && v > this.currentVersion)
67
+ this.currentVersion = v; }
68
+ advanceOp(v) { if (v && (!this.currentOpVersion || v > this.currentOpVersion))
69
+ this.currentOpVersion = v; }
70
+ subscribeInternal(version, opVersion) {
114
71
  if (!this.client)
115
72
  throw new Error('SubscriptionClient missing');
116
73
  if (this.unsub) {
117
74
  this.unsub();
118
75
  this.unsub = null;
119
76
  }
120
- var variables = __assign({ version: version, opVersion: opVersion }, (this.options.baseVariables || {}));
121
- this.l('subscribe', { version: version, opVersion: opVersion });
122
- this.unsub = this.client.clientsubscribe({ query: this.options.subscription, variables: variables }, {
123
- next: function (envelope) {
77
+ const variables = Object.assign({ version, opVersion }, (this.options.baseVariables || {}));
78
+ this.l('subscribe', { version, opVersion });
79
+ this.unsub = this.client.clientsubscribe({ query: this.options.subscription, variables }, {
80
+ next: (envelope) => {
124
81
  if (envelope.errors) {
125
- _this.l('graphql errors', envelope.errors);
126
- _this.emit('error', envelope.errors);
82
+ this.l('graphql errors', envelope.errors);
83
+ this.emit('error', envelope.errors);
127
84
  }
128
- var payload = envelope.data;
85
+ const payload = envelope.data;
129
86
  if (payload)
130
- _this.handlePayload(payload);
87
+ this.handlePayload(payload);
131
88
  },
132
- error: function (err) { return _this.l('subscription error', err); },
133
- complete: function () { return _this.l('subscription complete'); },
89
+ error: (err) => this.l('subscription error', err),
90
+ complete: () => this.l('subscription complete'),
134
91
  });
135
- };
136
- MirrorSync.prototype.resubscribe = function () {
92
+ }
93
+ resubscribe() {
137
94
  // Resubscribe starting from current cursors
138
95
  this.subscribeInternal(this.currentVersion, this.currentOpVersion);
139
- };
140
- MirrorSync.prototype.start = function () {
96
+ }
97
+ start() {
141
98
  if (!this.client.isConnected()) {
142
99
  this.l('start deferred (not connected)');
143
100
  return;
144
101
  }
145
102
  this.subscribeInternal(this.currentVersion, this.currentOpVersion);
146
- };
147
- MirrorSync.prototype.load = function () {
103
+ }
104
+ load() {
148
105
  if (!this.unsub)
149
106
  this.start();
150
107
  return this.loaded;
151
- };
152
- MirrorSync.prototype.resetLoaded = function () {
153
- var _this = this;
154
- this.loaded = new Promise(function (resolve) {
155
- _this.resolveLoaded = resolve;
108
+ }
109
+ resetLoaded() {
110
+ this.loaded = new Promise(resolve => {
111
+ this.resolveLoaded = resolve;
156
112
  });
157
- };
158
- MirrorSync.prototype.handlePayload = function (raw) {
159
- var e_1, _a;
113
+ }
114
+ handlePayload(raw) {
160
115
  if (!raw)
161
116
  return;
162
117
  // Always pick the first field in the payload object regardless of configured rootField
163
- var firstKey = Object.keys(raw)[0];
118
+ const firstKey = Object.keys(raw)[0];
164
119
  if (!firstKey)
165
120
  return;
166
- var msg = raw[firstKey];
121
+ const msg = raw[firstKey];
167
122
  if (!msg)
168
123
  return;
169
- var type = msg.type;
124
+ const { type } = msg;
170
125
  switch (type) {
171
126
  case SyncType.START: {
172
127
  // Only allocate a new buffer for a true full sync; for delta/resubscribe we append directly
173
128
  this.buffer = this.fullSyncPhase ? new Map() : null;
174
- var payload = { full: this.fullSyncPhase };
129
+ const payload = { full: this.fullSyncPhase };
175
130
  this.emit('start', payload);
176
131
  break;
177
132
  }
@@ -182,40 +137,29 @@ var MirrorSync = /** @class */ (function (_super) {
182
137
  this.applyDeleted(msg.deleteId, msg.deleteVersion, msg.deleteOpVersion);
183
138
  break;
184
139
  case SyncType.DONE: {
185
- var wasFull = this.fullSyncPhase;
140
+ const wasFull = this.fullSyncPhase;
186
141
  if (wasFull && this.buffer) {
187
142
  this._mirror = this.buffer;
188
143
  this.buffer = null;
189
144
  }
190
145
  this.fullSyncPhase = false;
191
- var d = { full: wasFull };
146
+ const d = { full: wasFull };
192
147
  if (wasFull) {
193
- try {
194
- for (var _b = __values(this.backlog), _c = _b.next(); !_c.done; _c = _b.next()) {
195
- var b = _c.value;
196
- b();
197
- }
198
- }
199
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
200
- finally {
201
- try {
202
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
203
- }
204
- finally { if (e_1) throw e_1.error; }
205
- }
148
+ for (const b of this.backlog)
149
+ b();
206
150
  this.backlog = [];
207
151
  }
208
152
  this.emit('done', d);
209
153
  // Resolve deferred if pending
210
154
  if (this.resolveLoaded) {
211
- var r = this.resolveLoaded;
155
+ const r = this.resolveLoaded;
212
156
  this.resolveLoaded = undefined;
213
157
  r(this.mirror);
214
158
  }
215
159
  break;
216
160
  }
217
161
  case SyncType.VERSION_ERROR:
218
- var ve = { currentVersion: this.currentVersion };
162
+ const ve = { currentVersion: this.currentVersion };
219
163
  this.emit('versionError', ve);
220
164
  // restart as full sync
221
165
  this.currentVersion = -1;
@@ -226,78 +170,62 @@ var MirrorSync = /** @class */ (function (_super) {
226
170
  this.subscribeInternal(this.currentVersion, this.currentOpVersion);
227
171
  break;
228
172
  }
229
- };
230
- MirrorSync.prototype.normalizeItems = function (data) {
173
+ }
174
+ normalizeItems(data) {
231
175
  if (!data)
232
176
  return [];
233
177
  return Array.isArray(data) ? data : [data];
234
- };
235
- MirrorSync.prototype.applyUpdated = function (data) {
236
- var e_2, _a;
237
- var _this = this;
238
- var _loop_1 = function (item) {
178
+ }
179
+ applyUpdated(data) {
180
+ for (const item of this.normalizeItems(data)) {
239
181
  if (!item || typeof item.id !== 'string')
240
- return "continue";
182
+ continue;
241
183
  if (item.deleted) {
242
- this_1.applyDeleted(item.id, item.version, item.opVersion);
243
- return "continue";
184
+ this.applyDeleted(item.id, item.version, item.opVersion);
185
+ continue;
244
186
  }
245
- var hasNumeric = typeof item.version === 'number';
246
- var hasOp = typeof item.opVersion === 'string';
187
+ const hasNumeric = typeof item.version === 'number';
188
+ const hasOp = typeof item.opVersion === 'string';
247
189
  if (!hasNumeric && !hasOp)
248
- return "continue";
249
- var existing = this_1.targetMap().get(item.id);
250
- var newerNumeric = hasNumeric && (!(existing === null || existing === void 0 ? void 0 : existing.version) || item.version >= existing.version);
251
- var newerOp = hasOp && (!(existing === null || existing === void 0 ? void 0 : existing.opVersion) || item.opVersion >= existing.opVersion);
190
+ continue;
191
+ const existing = this.targetMap().get(item.id);
192
+ const newerNumeric = hasNumeric && (!(existing === null || existing === void 0 ? void 0 : existing.version) || item.version >= existing.version);
193
+ const newerOp = hasOp && (!(existing === null || existing === void 0 ? void 0 : existing.opVersion) || item.opVersion >= existing.opVersion);
252
194
  if (!existing || newerNumeric || newerOp) {
253
- this_1.targetMap().set(item.id, item);
254
- this_1.advanceNumeric(item.version);
255
- this_1.advanceOp(item.opVersion);
256
- if (this_1.fullSyncPhase) {
257
- this_1.backlog.push(function () { return _this.emit('updated', { doc: item, orgDoc: existing, full: _this.fullSyncPhase }); });
195
+ this.targetMap().set(item.id, item);
196
+ this.advanceNumeric(item.version);
197
+ this.advanceOp(item.opVersion);
198
+ if (this.fullSyncPhase) {
199
+ this.backlog.push(() => this.emit('updated', { doc: item, orgDoc: existing, full: this.fullSyncPhase }));
258
200
  }
259
201
  else {
260
- this_1.emit('updated', { doc: item, orgDoc: existing, full: this_1.fullSyncPhase });
202
+ this.emit('updated', { doc: item, orgDoc: existing, full: this.fullSyncPhase });
261
203
  }
262
204
  }
263
- };
264
- var this_1 = this;
265
- try {
266
- for (var _b = __values(this.normalizeItems(data)), _c = _b.next(); !_c.done; _c = _b.next()) {
267
- var item = _c.value;
268
- _loop_1(item);
269
- }
270
205
  }
271
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
272
- finally {
273
- try {
274
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
275
- }
276
- finally { if (e_2) throw e_2.error; }
277
- }
278
- };
279
- MirrorSync.prototype.applyDeleted = function (id, deleteVersion, deleteOpVersion) {
206
+ }
207
+ applyDeleted(id, deleteVersion, deleteOpVersion) {
280
208
  var _a;
281
209
  if (!id || this.fullSyncPhase)
282
210
  return;
283
- var numericStale = !this.fullSyncPhase && typeof deleteVersion === 'number' && this.currentVersion >= 0 && deleteVersion < this.currentVersion;
284
- var opStale = !this.fullSyncPhase && deleteOpVersion && this.currentOpVersion && deleteOpVersion < this.currentOpVersion;
211
+ const numericStale = !this.fullSyncPhase && typeof deleteVersion === 'number' && this.currentVersion >= 0 && deleteVersion < this.currentVersion;
212
+ const opStale = !this.fullSyncPhase && deleteOpVersion && this.currentOpVersion && deleteOpVersion < this.currentOpVersion;
285
213
  if (numericStale && opStale) {
286
- (_a = this.l) === null || _a === void 0 ? void 0 : _a.call(this, 'skip stale delete', { id: id, deleteVersion: deleteVersion, deleteOpVersion: deleteOpVersion });
214
+ (_a = this.l) === null || _a === void 0 ? void 0 : _a.call(this, 'skip stale delete', { id, deleteVersion, deleteOpVersion });
287
215
  return;
288
216
  }
289
- var toDelete = this.mirror.get(id);
217
+ let toDelete = this.mirror.get(id);
290
218
  this.advanceNumeric(deleteVersion);
291
219
  this.advanceOp(deleteOpVersion);
292
220
  if (!this.fullSyncPhase && !!toDelete) {
293
221
  this.mirror.delete(id);
294
222
  this.emit('deleted', { orgDoc: toDelete });
295
223
  }
296
- };
297
- MirrorSync.prototype.get = function (id) { return this.mirror.get(id); };
298
- MirrorSync.prototype.values = function () { return Array.from(this.mirror.values()); };
299
- MirrorSync.prototype.stats = function () { return { version: this.currentVersion, opVersion: this.currentOpVersion, size: this.mirror.size, fullSyncInProgress: this.fullSyncPhase }; };
300
- MirrorSync.prototype.stop = function () {
224
+ }
225
+ get(id) { return this.mirror.get(id); }
226
+ values() { return Array.from(this.mirror.values()); }
227
+ stats() { return { version: this.currentVersion, opVersion: this.currentOpVersion, size: this.mirror.size, fullSyncInProgress: this.fullSyncPhase }; }
228
+ stop() {
301
229
  if (this.unsub) {
302
230
  this.unsub();
303
231
  this.unsub = null;
@@ -307,13 +235,12 @@ var MirrorSync = /** @class */ (function (_super) {
307
235
  this.currentOpVersion = null;
308
236
  this.buffer = null;
309
237
  if (this.resolveLoaded) {
310
- var r = this.resolveLoaded;
238
+ const r = this.resolveLoaded;
311
239
  this.resolveLoaded = undefined;
312
240
  r(this.mirror);
313
241
  }
314
242
  this.resetLoaded();
315
- };
316
- return MirrorSync;
317
- }(EventEmitter));
318
- export { MirrorSync };
243
+ }
244
+ }
245
+ exports.MirrorSync = MirrorSync;
319
246
  //# sourceMappingURL=MirrorSync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MirrorSync.js","sourceRoot":"","sources":["../src/MirrorSync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MirrorSync.js","sourceRoot":"","sources":["../src/MirrorSync.ts"],"names":[],"mappings":"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"}