@nymphjs/client 1.0.0-beta.11 → 1.0.0-beta.110

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 (69) hide show
  1. package/CHANGELOG.md +452 -0
  2. package/README.md +6 -6
  3. package/asyncitertest.js +53 -0
  4. package/dist/Entity.d.ts +156 -0
  5. package/{lib → dist}/Entity.js +202 -104
  6. package/dist/Entity.js.map +1 -0
  7. package/dist/Entity.types.d.ts +218 -0
  8. package/dist/Entity.types.js +2 -0
  9. package/{lib → dist}/EntityWeakCache.d.ts +1 -1
  10. package/{lib → dist}/EntityWeakCache.js +5 -9
  11. package/dist/EntityWeakCache.js.map +1 -0
  12. package/{lib → dist}/HttpRequester.d.ts +18 -4
  13. package/dist/HttpRequester.js +365 -0
  14. package/dist/HttpRequester.js.map +1 -0
  15. package/{lib → dist}/Nymph.d.ts +48 -11
  16. package/{lib → dist}/Nymph.js +167 -51
  17. package/dist/Nymph.js.map +1 -0
  18. package/{lib → dist}/Nymph.types.d.ts +82 -2
  19. package/dist/Nymph.types.js +2 -0
  20. package/{lib → dist}/PubSub.d.ts +16 -10
  21. package/{lib → dist}/PubSub.js +172 -108
  22. package/dist/PubSub.js.map +1 -0
  23. package/{lib → dist}/PubSub.types.d.ts +8 -3
  24. package/dist/PubSub.types.js +2 -0
  25. package/{lib → dist}/entityRefresh.d.ts +1 -1
  26. package/{lib → dist}/entityRefresh.js +21 -13
  27. package/dist/entityRefresh.js.map +1 -0
  28. package/dist/index.d.ts +13 -0
  29. package/dist/index.js +13 -2
  30. package/dist/index.js.map +1 -1
  31. package/{lib → dist}/utils.d.ts +1 -1
  32. package/{lib → dist}/utils.js +28 -21
  33. package/dist/utils.js.map +1 -0
  34. package/jest.config.js +11 -2
  35. package/package.json +23 -27
  36. package/src/Entity.ts +173 -107
  37. package/src/Entity.types.ts +29 -47
  38. package/src/EntityWeakCache.ts +8 -6
  39. package/src/HttpRequester.ts +268 -31
  40. package/src/Nymph.ts +191 -88
  41. package/src/Nymph.types.ts +51 -2
  42. package/src/PubSub.ts +214 -141
  43. package/src/PubSub.types.ts +10 -5
  44. package/src/entityRefresh.ts +6 -6
  45. package/src/index.ts +10 -10
  46. package/src/utils.ts +12 -5
  47. package/tsconfig.json +6 -4
  48. package/typedoc.json +4 -0
  49. package/dist/index.js.LICENSE.txt +0 -8
  50. package/lib/Entity.d.ts +0 -51
  51. package/lib/Entity.js.map +0 -1
  52. package/lib/Entity.types.d.ts +0 -65
  53. package/lib/Entity.types.js +0 -3
  54. package/lib/EntityWeakCache.js.map +0 -1
  55. package/lib/HttpRequester.js +0 -190
  56. package/lib/HttpRequester.js.map +0 -1
  57. package/lib/Nymph.js.map +0 -1
  58. package/lib/Nymph.types.js +0 -3
  59. package/lib/PubSub.js.map +0 -1
  60. package/lib/PubSub.types.js +0 -3
  61. package/lib/entityRefresh.js.map +0 -1
  62. package/lib/index.d.ts +0 -13
  63. package/lib/index.js +0 -34
  64. package/lib/index.js.map +0 -1
  65. package/lib/utils.js.map +0 -1
  66. package/webpack.config.js +0 -28
  67. /package/{lib → dist}/Entity.types.js.map +0 -0
  68. /package/{lib → dist}/Nymph.types.js.map +0 -0
  69. /package/{lib → dist}/PubSub.types.js.map +0 -0
@@ -1,18 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PubSubSubscription = void 0;
4
- const Nymph_1 = require("./Nymph");
5
- const utils_1 = require("./utils");
6
- let authToken = null;
7
- class PubSub {
1
+ import { InvalidRequestError } from './Nymph.js';
2
+ import { entityConstructorsToClassNames } from './utils.js';
3
+ import { ClientError } from './HttpRequester.js';
4
+ export default class PubSub {
5
+ nymph;
6
+ authToken = null;
7
+ switchToken = null;
8
+ connection;
9
+ waitForConnectionTimeout;
10
+ pubsubUrl;
11
+ WebSocket;
12
+ subscriptions = {
13
+ queries: {},
14
+ uids: {},
15
+ };
16
+ connectCallbacks = [];
17
+ disconnectCallbacks = [];
18
+ errorCallbacks = [];
19
+ noConsole = false;
8
20
  constructor(nymphOptions, nymph) {
9
- this.subscriptions = {
10
- queries: {},
11
- uids: {},
12
- };
13
- this.connectCallbacks = [];
14
- this.disconnectCallbacks = [];
15
- this.noConsole = false;
16
21
  this.nymph = nymph;
17
22
  this.nymph.pubsub = this;
18
23
  this.pubsubUrl = nymphOptions.pubsubUrl;
@@ -24,20 +29,23 @@ class PubSub {
24
29
  if (typeof addEventListener !== 'undefined') {
25
30
  addEventListener('online', () => this.connect());
26
31
  }
27
- if (typeof navigator === 'undefined' || navigator.onLine) {
32
+ if (!nymphOptions.noAutoconnect &&
33
+ (typeof navigator === 'undefined' || navigator.onLine)) {
28
34
  this.connect();
29
35
  }
30
36
  }
31
37
  subscribeEntities(options, ...selectors) {
32
- const promise = this.nymph.getEntities(options, ...selectors);
33
38
  const query = [
34
- (0, utils_1.entityConstructorsToClassNames)(options),
35
- ...(0, utils_1.entityConstructorsToClassNames)(selectors),
39
+ entityConstructorsToClassNames(options),
40
+ ...entityConstructorsToClassNames(selectors),
36
41
  ];
37
42
  const jsonQuery = JSON.stringify(query);
38
43
  const subscribe = (resolve, reject, count) => {
39
44
  const callbacks = [resolve, reject, count];
40
- promise.then(resolve, reject);
45
+ if (!this.isConnection()) {
46
+ // Fall back to a regular query if we're not connected.
47
+ this.nymph.getEntities(options, ...selectors).then(resolve, reject);
48
+ }
41
49
  this._subscribeQuery(jsonQuery, callbacks);
42
50
  return new PubSubSubscription(jsonQuery, callbacks, () => {
43
51
  this._unsubscribeQuery(jsonQuery, callbacks);
@@ -46,10 +54,9 @@ class PubSub {
46
54
  return subscribe;
47
55
  }
48
56
  subscribeEntity(options, ...selectors) {
49
- const promise = this.nymph.getEntity(options, ...selectors);
50
57
  const query = [
51
- { ...(0, utils_1.entityConstructorsToClassNames)(options), limit: 1 },
52
- ...(0, utils_1.entityConstructorsToClassNames)(selectors),
58
+ { ...entityConstructorsToClassNames(options), limit: 1 },
59
+ ...entityConstructorsToClassNames(selectors),
53
60
  ];
54
61
  const jsonQuery = JSON.stringify(query);
55
62
  const subscribe = (resolve, reject, count) => {
@@ -66,7 +73,10 @@ class PubSub {
66
73
  }
67
74
  };
68
75
  const callbacks = [newResolve, reject, count];
69
- promise.then(resolve, reject);
76
+ if (!this.isConnection()) {
77
+ // Fall back to a regular query if we're not connected.
78
+ this.nymph.getEntity(options, ...selectors).then(resolve, reject);
79
+ }
70
80
  this._subscribeQuery(jsonQuery, callbacks);
71
81
  return new PubSubSubscription(jsonQuery, callbacks, () => {
72
82
  this._unsubscribeQuery(jsonQuery, callbacks);
@@ -75,10 +85,12 @@ class PubSub {
75
85
  return subscribe;
76
86
  }
77
87
  subscribeUID(name) {
78
- const promise = this.nymph.getUID(name);
79
88
  const subscribe = (resolve, reject, count) => {
80
89
  const callbacks = [resolve, reject, count];
81
- promise.then(resolve, reject);
90
+ if (!this.isConnection()) {
91
+ // Fall back to a regular query if we're not connected.
92
+ this.nymph.getUID(name).then(resolve, reject);
93
+ }
82
94
  this._subscribeUID(name, callbacks);
83
95
  return {
84
96
  unsubscribe: () => {
@@ -90,7 +102,7 @@ class PubSub {
90
102
  }
91
103
  subscribeWith(entity, resolve, reject, count) {
92
104
  if (!entity.guid) {
93
- throw new Nymph_1.InvalidRequestError("You can't subscribe to an entity with no GUID.");
105
+ throw new InvalidRequestError("You can't subscribe to an entity with no GUID.");
94
106
  }
95
107
  const query = [
96
108
  { class: entity.constructor.class, limit: 1 },
@@ -99,8 +111,8 @@ class PubSub {
99
111
  const jsonQuery = JSON.stringify(query);
100
112
  const newResolve = (args) => {
101
113
  if (Array.isArray(args)) {
102
- if (args[0].length) {
103
- entity.$init(args[0]);
114
+ if (args.length) {
115
+ entity.$init(args[0].toJSON());
104
116
  }
105
117
  else {
106
118
  entity.guid = null;
@@ -123,6 +135,7 @@ class PubSub {
123
135
  });
124
136
  }
125
137
  connect() {
138
+ // Are we already connected?
126
139
  if (this.connection &&
127
140
  (this.connection.readyState === this.WebSocket.OPEN ||
128
141
  this.connection.readyState === this.WebSocket.CONNECTING)) {
@@ -138,28 +151,32 @@ class PubSub {
138
151
  if (!this.connection) {
139
152
  return;
140
153
  }
141
- this.connection.close(4200, 'Closure requested by application.');
154
+ this.connection.close(1000, 'Closure requested by application.');
142
155
  }
143
- _waitForConnection(attempts = 0) {
156
+ _waitForConnection(attempts = 1) {
157
+ // Wait 5 seconds, then check and attempt connection again if unsuccessful.
158
+ // Keep repeating, adding attempts^2*5 seconds each time to a max of ten
159
+ // minutes, until successful.
144
160
  this.waitForConnectionTimeout = setTimeout(() => {
145
- if (this.connection &&
146
- this.connection.readyState !== this.WebSocket.OPEN) {
147
- if (this.connection.readyState !== this.WebSocket.CONNECTING ||
148
- attempts >= 5) {
149
- this.connection.close();
150
- this._waitForConnection();
151
- this._attemptConnect();
152
- }
153
- else {
154
- this._waitForConnection(attempts + 1);
161
+ if (this.connection) {
162
+ if (this.connection.readyState !== this.WebSocket.OPEN) {
163
+ if (this.connection.readyState !== this.WebSocket.CONNECTING) {
164
+ this.connection.close();
165
+ this._waitForConnection(attempts + 1);
166
+ this._attemptConnect();
167
+ }
168
+ else {
169
+ this._waitForConnection(attempts + 1);
170
+ }
155
171
  }
156
172
  }
157
173
  else {
158
174
  this._attemptConnect();
159
175
  }
160
- }, 5000);
176
+ }, Math.max(Math.pow(attempts, 2) * 5000, 1000 * 60 * 10));
161
177
  }
162
178
  _attemptConnect() {
179
+ // Attempt to connect.
163
180
  if (this.pubsubUrl != null) {
164
181
  this.connection = new this.WebSocket(this.pubsubUrl, 'nymph');
165
182
  this.connection.onopen = this._onopen.bind(this);
@@ -170,16 +187,20 @@ class PubSub {
170
187
  if (typeof console !== 'undefined' && !this.noConsole) {
171
188
  console.log('Nymph-PubSub connection established!');
172
189
  }
190
+ if (this.waitForConnectionTimeout) {
191
+ clearTimeout(this.waitForConnectionTimeout);
192
+ }
173
193
  for (let i = 0; i < this.connectCallbacks.length; i++) {
174
194
  const callback = this.connectCallbacks[i];
175
195
  if (callback) {
176
196
  callback();
177
197
  }
178
198
  }
179
- if (authToken != null) {
199
+ if (this.authToken != null) {
180
200
  this._send({
181
201
  action: 'authenticate',
182
- token: authToken,
202
+ authToken: this.authToken,
203
+ switchToken: this.switchToken,
183
204
  });
184
205
  }
185
206
  for (let query in this.subscriptions.queries) {
@@ -215,15 +236,19 @@ class PubSub {
215
236
  _onmessage(e) {
216
237
  let data = JSON.parse(e.data);
217
238
  let subs = [];
239
+ let set = 'set' in data && data.set;
218
240
  let count = 'count' in data;
241
+ let error = 'error' in data;
219
242
  if (data.hasOwnProperty('query') &&
220
243
  this.subscriptions.queries.hasOwnProperty(data.query)) {
221
244
  subs = [...this.subscriptions.queries[data.query]];
222
- if (!count) {
245
+ if (!count && !error) {
223
246
  for (let i = 0; i < subs.length; i++) {
224
247
  const callback = subs[i][0];
225
248
  if (typeof callback === 'function') {
226
- callback(data);
249
+ callback(set
250
+ ? data.data.map((e) => this.nymph.initEntity(e))
251
+ : data);
227
252
  }
228
253
  }
229
254
  }
@@ -231,15 +256,35 @@ class PubSub {
231
256
  else if (data.hasOwnProperty('uid') &&
232
257
  this.subscriptions.uids.hasOwnProperty(data.uid)) {
233
258
  subs = [...this.subscriptions.uids[data.uid]];
234
- if (!count) {
259
+ if (!count && !error) {
235
260
  for (let i = 0; i < subs.length; i++) {
236
261
  const callback = subs[i][0];
237
- if (typeof callback === 'function') {
238
- callback(data.value ?? null, data.event);
262
+ const errCallback = subs[i][1];
263
+ if (set && data.data == null) {
264
+ if (typeof errCallback === 'function') {
265
+ errCallback(new ClientError({ status: 404, statusText: 'Not Found' }, { textStatus: 'Not Found' }));
266
+ }
267
+ }
268
+ else if (typeof callback === 'function') {
269
+ if (set) {
270
+ callback(data.data);
271
+ }
272
+ else {
273
+ callback(data.value ?? null, data.event);
274
+ }
239
275
  }
240
276
  }
241
277
  }
242
278
  }
279
+ else if (error) {
280
+ for (let i = 0; i < this.errorCallbacks.length; i++) {
281
+ const callback = this.errorCallbacks[i];
282
+ if (callback) {
283
+ callback(data.error);
284
+ }
285
+ }
286
+ return;
287
+ }
243
288
  if (count) {
244
289
  for (let i = 0; i < subs.length; i++) {
245
290
  const callback = subs[i][2];
@@ -248,6 +293,14 @@ class PubSub {
248
293
  }
249
294
  }
250
295
  }
296
+ if (error) {
297
+ for (let i = 0; i < subs.length; i++) {
298
+ const callback = subs[i][1];
299
+ if (typeof callback === 'function') {
300
+ callback(data.error);
301
+ }
302
+ }
303
+ }
251
304
  }
252
305
  _onclose(e) {
253
306
  if (typeof console !== 'undefined' && !this.noConsole) {
@@ -259,7 +312,7 @@ class PubSub {
259
312
  callback();
260
313
  }
261
314
  }
262
- if (e.code !== 4200 &&
315
+ if (e.code !== 1000 &&
263
316
  (typeof navigator === 'undefined' || navigator.onLine)) {
264
317
  if (this.connection) {
265
318
  this.connection.close();
@@ -276,6 +329,13 @@ class PubSub {
276
329
  isConnectionOpen() {
277
330
  return !!(this.connection && this.connection.readyState === this.WebSocket.OPEN);
278
331
  }
332
+ isConnectionConnecting() {
333
+ return !!(this.connection &&
334
+ this.connection.readyState === this.WebSocket.CONNECTING);
335
+ }
336
+ isConnection() {
337
+ return this.isConnectionOpen() || this.isConnectionConnecting();
338
+ }
279
339
  _subscribeQuery(query, callbacks) {
280
340
  let isNewSubscription = false;
281
341
  if (!this.subscriptions.queries.hasOwnProperty(query)) {
@@ -396,101 +456,100 @@ class PubSub {
396
456
  uid: name,
397
457
  });
398
458
  }
399
- updateArray(oldArr, update) {
459
+ updateArray(current, update) {
400
460
  if (Array.isArray(update)) {
401
461
  const newArr = [...update];
402
- if (oldArr.length === 0) {
403
- oldArr.splice(0, 0, ...newArr);
462
+ if (current.length === 0) {
463
+ // This will happen on the first update from a subscribe.
464
+ current.splice(0, 0, ...newArr);
404
465
  return;
405
466
  }
406
467
  const idMap = {};
407
- const Entity = this.nymph.getEntityClass('Entity');
468
+ const newEntities = [];
469
+ while (current.length) {
470
+ const first = current.shift();
471
+ if (!first) {
472
+ continue;
473
+ }
474
+ const guid = first.guid;
475
+ if (!guid) {
476
+ newEntities.push(first);
477
+ continue;
478
+ }
479
+ idMap[guid] = first;
480
+ }
408
481
  for (let i = 0; i < newArr.length; i++) {
409
482
  const entity = newArr[i];
410
- if (entity instanceof Entity && entity.guid != null) {
411
- idMap[entity.guid] = i;
483
+ const guid = entity.guid;
484
+ if (guid == null) {
485
+ continue;
412
486
  }
413
- }
414
- const remove = [];
415
- for (let k in oldArr) {
416
- if (typeof k === 'number' &&
417
- k <= 4294967294 &&
418
- /^0$|^[1-9]\d*$/.test(k) &&
419
- oldArr.hasOwnProperty(k)) {
420
- const guid = oldArr[k].guid;
421
- if (guid != null) {
422
- if (!idMap.hasOwnProperty(guid)) {
423
- remove.push(k);
424
- }
425
- else if (newArr[idMap[guid]].mdate !== oldArr[k].mdate) {
426
- oldArr[k].$init(newArr[idMap[guid]].toJSON());
427
- delete idMap[guid];
428
- }
429
- else {
430
- delete idMap[guid];
431
- }
432
- }
487
+ if (!idMap.hasOwnProperty(guid)) {
488
+ // It was added.
489
+ current.push(entity);
490
+ }
491
+ else if (idMap[guid].mdate !== entity.mdate) {
492
+ // It was modified.
493
+ idMap[guid].$init(entity.toJSON());
494
+ current.push(idMap[guid]);
495
+ }
496
+ else {
497
+ // Item wasn't modified.
498
+ current.push(idMap[guid]);
433
499
  }
434
500
  }
435
- remove.sort(function (a, b) {
436
- if (a > b)
437
- return -1;
438
- if (a < b)
439
- return 1;
440
- return 0;
441
- });
442
- for (let n = 0; n < remove.length; n++) {
443
- oldArr.splice(remove[n], 1);
444
- }
445
- for (let value of Object.values(idMap)) {
446
- oldArr.splice(oldArr.length, 0, newArr[value]);
447
- }
501
+ current.splice(current.length, 0, ...newEntities);
448
502
  }
449
503
  else if (update != null && update.hasOwnProperty('query')) {
450
504
  if ('removed' in update) {
451
- for (let i = 0; i < oldArr.length; i++) {
452
- if (oldArr[i] != null && oldArr[i].guid === update.removed) {
453
- oldArr.splice(i, 1);
505
+ for (let i = 0; i < current.length; i++) {
506
+ if (current[i] != null && current[i].guid === update.removed) {
507
+ current.splice(i, 1);
454
508
  return;
455
509
  }
456
510
  }
457
511
  }
512
+ // Get the entity.
458
513
  let entity = null;
459
514
  if ('added' in update) {
460
- for (let i = 0; i < oldArr.length; i++) {
461
- if (oldArr[i] != null && oldArr[i].guid === update.added) {
462
- entity = oldArr.splice(i, 1)[0].$init(update.data);
515
+ // Check for it in the array already.
516
+ for (let i = 0; i < current.length; i++) {
517
+ if (current[i] != null && current[i].guid === update.added) {
518
+ entity = current.splice(i, 1)[0].$init(update.data);
463
519
  }
464
520
  }
465
521
  if (entity == null) {
522
+ // A new entity.
466
523
  entity = this.nymph.initEntity(update.data);
467
524
  }
468
525
  }
469
526
  if ('updated' in update) {
470
- for (let i = 0; i < oldArr.length; i++) {
471
- if (oldArr[i] != null && oldArr[i].guid === update.updated) {
472
- entity = oldArr.splice(i, 1)[0].$init(update.data);
527
+ // Extract it from the array.
528
+ for (let i = 0; i < current.length; i++) {
529
+ if (current[i] != null && current[i].guid === update.updated) {
530
+ entity = current.splice(i, 1)[0].$init(update.data);
473
531
  }
474
532
  }
475
533
  }
476
534
  const query = JSON.parse(update.query);
477
535
  if (entity != null) {
536
+ // Insert the entity in order.
478
537
  const sort = 'sort' in query[0] ? query[0].sort : 'cdate';
479
538
  const reverse = query[0].hasOwnProperty('reverse')
480
539
  ? query[0].reverse
481
540
  : false;
482
541
  let i;
483
542
  if (reverse) {
484
- for (i = 0; ((oldArr[i] ?? {})[sort] ?? 0) >= (entity[sort] ?? 0) &&
485
- i < oldArr.length; i++)
543
+ for (i = 0; ((current[i] ?? {})[sort] ?? 0) >= (entity[sort] ?? 0) &&
544
+ i < current.length; i++)
486
545
  ;
487
546
  }
488
547
  else {
489
- for (i = 0; ((oldArr[i] ?? {})[sort] ?? 0) < (entity[sort] ?? 0) &&
490
- i < oldArr.length; i++)
548
+ for (i = 0; ((current[i] ?? {})[sort] ?? 0) < (entity[sort] ?? 0) &&
549
+ i < current.length; i++)
491
550
  ;
492
551
  }
493
- oldArr.splice(i, 0, entity);
552
+ current.splice(i, 0, entity);
494
553
  }
495
554
  }
496
555
  }
@@ -499,6 +558,7 @@ class PubSub {
499
558
  if (!(prop in this)) {
500
559
  throw new Error('Invalid event type.');
501
560
  }
561
+ // @ts-ignore: The callback should always be the right type here.
502
562
  this[prop].push(callback);
503
563
  return () => this.off(event, callback);
504
564
  }
@@ -507,29 +567,33 @@ class PubSub {
507
567
  if (!(prop in this)) {
508
568
  return false;
509
569
  }
570
+ // @ts-ignore: The callback should always be the right type here.
510
571
  const i = this[prop].indexOf(callback);
511
572
  if (i > -1) {
512
573
  this[prop].splice(i, 1);
513
574
  }
514
575
  return true;
515
576
  }
516
- setToken(token) {
517
- authToken = token;
577
+ authenticate(authToken, switchToken = null) {
578
+ this.authToken = authToken;
579
+ this.switchToken = switchToken;
518
580
  if (this.isConnectionOpen()) {
519
581
  this._send({
520
582
  action: 'authenticate',
521
- token: authToken,
583
+ authToken: this.authToken,
584
+ switchToken: this.switchToken,
522
585
  });
523
586
  }
524
587
  }
525
588
  }
526
- exports.default = PubSub;
527
- class PubSubSubscription {
589
+ export class PubSubSubscription {
590
+ query;
591
+ callbacks;
592
+ unsubscribe;
528
593
  constructor(query, callbacks, unsubscribe) {
529
594
  this.query = query;
530
595
  this.callbacks = callbacks;
531
596
  this.unsubscribe = unsubscribe;
532
597
  }
533
598
  }
534
- exports.PubSubSubscription = PubSubSubscription;
535
599
  //# sourceMappingURL=PubSub.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PubSub.js","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { EntityJson } from './Entity.types';
2
- import { PubSubSubscription } from './PubSub';
1
+ import { EntityJson } from './Entity.types.js';
2
+ import { PubSubSubscription } from './PubSub.js';
3
3
  export type PubSubResolveCallback<T> = (arg: T, event?: string) => void;
4
4
  export type PubSubRejectCallback = (err: any) => void;
5
5
  export type PubSubCountCallback = (count: number) => void;
@@ -8,9 +8,14 @@ export type PubSubCallbacks<T> = [
8
8
  PubSubRejectCallback | undefined,
9
9
  PubSubCountCallback | undefined
10
10
  ];
11
- export type PubSubEventType = 'connect' | 'disconnect';
11
+ export type PubSubEventType = 'connect' | 'disconnect' | 'error';
12
12
  export type PubSubConnectCallback = () => void;
13
13
  export type PubSubDisconnectCallback = () => void;
14
+ /**
15
+ * The error event is for unknown errors. Query errors fire their own reject
16
+ * callbacks.
17
+ */
18
+ export type PubSubErrorCallback = (err: any) => void;
14
19
  export type PubSubUpdate<T> = T | {
15
20
  query: string;
16
21
  removed: string;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=PubSub.types.js.map
@@ -1,4 +1,4 @@
1
- import Entity from './Entity';
1
+ import Entity from './Entity.js';
2
2
  export declare function saveEntities(entity: Entity): {};
3
3
  export declare function restoreEntities(entity: Entity, savedEntities: {
4
4
  [k: string]: Entity;