@aws-amplify/pubsub 4.4.9-unstable.5 → 4.4.10-next.13

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 (84) hide show
  1. package/CHANGELOG.md +81 -0
  2. package/dist/aws-amplify-pubsub.js +713 -378
  3. package/dist/aws-amplify-pubsub.js.map +1 -1
  4. package/dist/aws-amplify-pubsub.min.js +3 -3
  5. package/dist/aws-amplify-pubsub.min.js.map +1 -1
  6. package/lib/Providers/AWSAppSyncRealTimeProvider/index.d.ts +10 -2
  7. package/lib/Providers/AWSAppSyncRealTimeProvider/index.js +133 -90
  8. package/lib/Providers/AWSAppSyncRealTimeProvider/index.js.map +1 -1
  9. package/lib/Providers/MqttOverWSProvider.d.ts +5 -1
  10. package/lib/Providers/MqttOverWSProvider.js +152 -87
  11. package/lib/Providers/MqttOverWSProvider.js.map +1 -1
  12. package/lib/Providers/PubSubProvider.d.ts +1 -1
  13. package/lib/Providers/{AWSAppSyncRealTimeProvider/constants.d.ts → constants.d.ts} +9 -0
  14. package/lib/Providers/{AWSAppSyncRealTimeProvider/constants.js → constants.js} +9 -0
  15. package/lib/Providers/constants.js.map +1 -0
  16. package/lib/index.d.ts +3 -10
  17. package/lib/index.js +3 -10
  18. package/lib/index.js.map +1 -1
  19. package/lib/types/Provider.d.ts +10 -1
  20. package/lib/types/PubSub.d.ts +22 -8
  21. package/lib/types/PubSub.js +56 -0
  22. package/lib/types/PubSub.js.map +1 -1
  23. package/lib/types/index.d.ts +0 -17
  24. package/lib/types/index.js +4 -36
  25. package/lib/types/index.js.map +1 -1
  26. package/lib/utils/ConnectionStateMonitor.d.ts +2 -1
  27. package/lib/utils/ConnectionStateMonitor.js +21 -13
  28. package/lib/utils/ConnectionStateMonitor.js.map +1 -1
  29. package/lib/utils/ReachabilityMonitor/index.d.ts +3 -0
  30. package/lib/utils/ReachabilityMonitor/index.js +5 -0
  31. package/lib/utils/ReachabilityMonitor/index.js.map +1 -0
  32. package/lib/utils/ReachabilityMonitor/index.native.d.ts +3 -0
  33. package/lib/utils/ReachabilityMonitor/index.native.js +11 -0
  34. package/lib/utils/ReachabilityMonitor/index.native.js.map +1 -0
  35. package/lib/utils/ReconnectionMonitor.d.ts +29 -0
  36. package/lib/utils/ReconnectionMonitor.js +73 -0
  37. package/lib/utils/ReconnectionMonitor.js.map +1 -0
  38. package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.d.ts +10 -2
  39. package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.js +129 -86
  40. package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.js.map +1 -1
  41. package/lib-esm/Providers/MqttOverWSProvider.d.ts +5 -1
  42. package/lib-esm/Providers/MqttOverWSProvider.js +153 -88
  43. package/lib-esm/Providers/MqttOverWSProvider.js.map +1 -1
  44. package/lib-esm/Providers/PubSubProvider.d.ts +1 -1
  45. package/lib-esm/Providers/{AWSAppSyncRealTimeProvider/constants.d.ts → constants.d.ts} +9 -0
  46. package/lib-esm/Providers/{AWSAppSyncRealTimeProvider/constants.js → constants.js} +9 -0
  47. package/lib-esm/Providers/constants.js.map +1 -0
  48. package/lib-esm/index.d.ts +3 -10
  49. package/lib-esm/index.js +3 -11
  50. package/lib-esm/index.js.map +1 -1
  51. package/lib-esm/types/Provider.d.ts +10 -1
  52. package/lib-esm/types/PubSub.d.ts +22 -8
  53. package/lib-esm/types/PubSub.js +56 -0
  54. package/lib-esm/types/PubSub.js.map +1 -1
  55. package/lib-esm/types/index.d.ts +0 -17
  56. package/lib-esm/types/index.js +1 -36
  57. package/lib-esm/types/index.js.map +1 -1
  58. package/lib-esm/utils/ConnectionStateMonitor.d.ts +2 -1
  59. package/lib-esm/utils/ConnectionStateMonitor.js +13 -5
  60. package/lib-esm/utils/ConnectionStateMonitor.js.map +1 -1
  61. package/lib-esm/utils/ReachabilityMonitor/index.d.ts +3 -0
  62. package/lib-esm/utils/ReachabilityMonitor/index.js +3 -0
  63. package/lib-esm/utils/ReachabilityMonitor/index.js.map +1 -0
  64. package/lib-esm/utils/ReachabilityMonitor/index.native.d.ts +3 -0
  65. package/lib-esm/utils/ReachabilityMonitor/index.native.js +6 -0
  66. package/lib-esm/utils/ReachabilityMonitor/index.native.js.map +1 -0
  67. package/lib-esm/utils/ReconnectionMonitor.d.ts +29 -0
  68. package/lib-esm/utils/ReconnectionMonitor.js +71 -0
  69. package/lib-esm/utils/ReconnectionMonitor.js.map +1 -0
  70. package/package.json +5 -5
  71. package/src/Providers/AWSAppSyncRealTimeProvider/index.ts +154 -90
  72. package/src/Providers/MqttOverWSProvider.ts +120 -53
  73. package/src/Providers/PubSubProvider.ts +1 -1
  74. package/src/Providers/{AWSAppSyncRealTimeProvider/constants.ts → constants.ts} +12 -0
  75. package/src/index.ts +3 -10
  76. package/src/types/Provider.ts +13 -1
  77. package/src/types/PubSub.ts +47 -8
  78. package/src/types/index.ts +0 -43
  79. package/src/utils/ConnectionStateMonitor.ts +20 -5
  80. package/src/utils/ReachabilityMonitor/index.native.ts +5 -0
  81. package/src/utils/ReachabilityMonitor/index.ts +3 -0
  82. package/src/utils/ReconnectionMonitor.ts +74 -0
  83. package/lib/Providers/AWSAppSyncRealTimeProvider/constants.js.map +0 -1
  84. package/lib-esm/Providers/AWSAppSyncRealTimeProvider/constants.js.map +0 -1
@@ -1,19 +1,2 @@
1
1
  export * from './Provider';
2
2
  export * from './PubSub';
3
- export interface SubscriptionObserver<T> {
4
- closed: boolean;
5
- next(value: T): void;
6
- error(errorValue: any): void;
7
- complete(): void;
8
- }
9
- /** @enum {string} */
10
- export declare enum ConnectionState {
11
- Connected = "Connected",
12
- ConnectedPendingNetwork = "ConnectedPendingNetwork",
13
- ConnectionDisrupted = "ConnectionDisrupted",
14
- ConnectionDisruptedPendingNetwork = "ConnectionDisruptedPendingNetwork",
15
- Connecting = "Connecting",
16
- ConnectedPendingDisconnect = "ConnectedPendingDisconnect",
17
- Disconnected = "Disconnected",
18
- ConnectedPendingKeepAlive = "ConnectedPendingKeepAlive"
19
- }
@@ -1,37 +1,2 @@
1
- /** @enum {string} */
2
- export var ConnectionState;
3
- (function (ConnectionState) {
4
- /*
5
- * The connection is alive and healthy
6
- */
7
- ConnectionState["Connected"] = "Connected";
8
- /*
9
- * The connection is alive, but the connection is offline
10
- */
11
- ConnectionState["ConnectedPendingNetwork"] = "ConnectedPendingNetwork";
12
- /*
13
- * The connection has been disconnected while in use
14
- */
15
- ConnectionState["ConnectionDisrupted"] = "ConnectionDisrupted";
16
- /*
17
- * The connection has been disconnected and the network is offline
18
- */
19
- ConnectionState["ConnectionDisruptedPendingNetwork"] = "ConnectionDisruptedPendingNetwork";
20
- /*
21
- * The connection is in the process of connecting
22
- */
23
- ConnectionState["Connecting"] = "Connecting";
24
- /*
25
- * The connection is not in use and is being disconnected
26
- */
27
- ConnectionState["ConnectedPendingDisconnect"] = "ConnectedPendingDisconnect";
28
- /*
29
- * The connection is not in use and has been disconnected
30
- */
31
- ConnectionState["Disconnected"] = "Disconnected";
32
- /*
33
- * The connection is alive, but a keep alive message has been missed
34
- */
35
- ConnectionState["ConnectedPendingKeepAlive"] = "ConnectedPendingKeepAlive";
36
- })(ConnectionState || (ConnectionState = {}));
1
+ export * from './PubSub';
37
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAsBA,qBAAqB;AACrB,MAAM,CAAN,IAAY,eAiCX;AAjCD,WAAY,eAAe;IAC1B;;OAEG;IACH,0CAAuB,CAAA;IACvB;;OAEG;IACH,sEAAmD,CAAA;IACnD;;OAEG;IACH,8DAA2C,CAAA;IAC3C;;OAEG;IACH,0FAAuE,CAAA;IACvE;;OAEG;IACH,4CAAyB,CAAA;IACzB;;OAEG;IACH,4EAAyD,CAAA;IACzD;;OAEG;IACH,gDAA6B,CAAA;IAC7B;;OAEG;IACH,0EAAuD,CAAA;AACxD,CAAC,EAjCW,eAAe,KAAf,eAAe,QAiC1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAaA,cAAc,UAAU,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import Observable from 'zen-observable-ts';
2
- import { ConnectionState } from '../index';
2
+ import { ConnectionState } from '../types/PubSub';
3
3
  declare type LinkedConnectionState = 'connected' | 'disconnected';
4
4
  declare type LinkedHealthState = 'healthy' | 'unhealthy';
5
5
  declare type LinkedConnectionStates = {
@@ -19,6 +19,7 @@ export declare class ConnectionStateMonitor {
19
19
  private _linkedConnectionStateObservable;
20
20
  private _linkedConnectionStateObserver;
21
21
  private _networkMonitoringSubscription?;
22
+ private _initialNetworkStateSubscription?;
22
23
  constructor();
23
24
  /**
24
25
  * Turn network state monitoring on if it isn't on already
@@ -21,9 +21,9 @@ var __assign = (this && this.__assign) || function () {
21
21
  };
22
22
  return __assign.apply(this, arguments);
23
23
  };
24
- import { Reachability } from '@aws-amplify/core';
25
24
  import Observable from 'zen-observable-ts';
26
- import { ConnectionState } from '../index';
25
+ import { ConnectionState } from '../types/PubSub';
26
+ import { ReachabilityMonitor } from './ReachabilityMonitor';
27
27
  export var CONNECTION_CHANGE = {
28
28
  KEEP_ALIVE_MISSED: { keepAliveState: 'unhealthy' },
29
29
  KEEP_ALIVE: { keepAliveState: 'healthy' },
@@ -51,6 +51,13 @@ var ConnectionStateMonitor = /** @class */ (function () {
51
51
  intendedConnectionState: 'disconnected',
52
52
  keepAliveState: 'healthy',
53
53
  };
54
+ // Attempt to update the state with the current actual network state
55
+ this._initialNetworkStateSubscription = ReachabilityMonitor().subscribe(function (_a) {
56
+ var online = _a.online;
57
+ var _b;
58
+ _this.record(online ? CONNECTION_CHANGE.ONLINE : CONNECTION_CHANGE.OFFLINE);
59
+ (_b = _this._initialNetworkStateSubscription) === null || _b === void 0 ? void 0 : _b.unsubscribe();
60
+ });
54
61
  this._linkedConnectionStateObservable =
55
62
  new Observable(function (connectionStateObserver) {
56
63
  connectionStateObserver.next(_this._linkedConnectionState);
@@ -62,11 +69,12 @@ var ConnectionStateMonitor = /** @class */ (function () {
62
69
  */
63
70
  ConnectionStateMonitor.prototype.enableNetworkMonitoring = function () {
64
71
  var _this = this;
72
+ var _a;
73
+ // If no initial network state was discovered, stop trying
74
+ (_a = this._initialNetworkStateSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
65
75
  // Maintain the network state based on the reachability monitor
66
76
  if (this._networkMonitoringSubscription === undefined) {
67
- this._networkMonitoringSubscription = new Reachability()
68
- .networkMonitor()
69
- .subscribe(function (_a) {
77
+ this._networkMonitoringSubscription = ReachabilityMonitor().subscribe(function (_a) {
70
78
  var online = _a.online;
71
79
  _this.record(online ? CONNECTION_CHANGE.ONLINE : CONNECTION_CHANGE.OFFLINE);
72
80
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionStateMonitor.js","sourceRoot":"","sources":["../../src/utils/ConnectionStateMonitor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,UAA6B,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAY3C,MAAM,CAAC,IAAM,iBAAiB,GAW1B;IACH,iBAAiB,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE;IAClD,UAAU,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE;IACzC,sBAAsB,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE;IACxD,iBAAiB,EAAE;QAClB,uBAAuB,EAAE,cAAc;QACvC,eAAe,EAAE,cAAc;KAC/B;IACD,kBAAkB,EAAE,EAAE,uBAAuB,EAAE,cAAc,EAAE;IAC/D,kBAAkB,EAAE;QACnB,uBAAuB,EAAE,WAAW;QACpC,eAAe,EAAE,YAAY;KAC7B;IACD,MAAM,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE;IAC3C,MAAM,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE;IACrC,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE;CACzC,CAAC;AAEF;IASC;QAAA,iBAcC;QAbA,IAAI,CAAC,8BAA8B,GAAG,SAAS,CAAC;QAChD,IAAI,CAAC,sBAAsB,GAAG;YAC7B,YAAY,EAAE,WAAW;YACzB,eAAe,EAAE,cAAc;YAC/B,uBAAuB,EAAE,cAAc;YACvC,cAAc,EAAE,SAAS;SACzB,CAAC;QAEF,IAAI,CAAC,gCAAgC;YACpC,IAAI,UAAU,CAAyB,UAAA,uBAAuB;gBAC7D,uBAAuB,CAAC,IAAI,CAAC,KAAI,CAAC,sBAAsB,CAAC,CAAC;gBAC1D,KAAI,CAAC,8BAA8B,GAAG,uBAAuB,CAAC;YAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,wDAAuB,GAA/B;QAAA,iBAWC;QAVA,+DAA+D;QAC/D,IAAI,IAAI,CAAC,8BAA8B,KAAK,SAAS,EAAE;YACtD,IAAI,CAAC,8BAA8B,GAAG,IAAI,YAAY,EAAE;iBACtD,cAAc,EAAE;iBAChB,SAAS,CAAC,UAAC,EAAU;oBAAR,kBAAM;gBACnB,KAAI,CAAC,MAAM,CACV,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAC7D,CAAC;YACH,CAAC,CAAC,CAAC;SACJ;IACF,CAAC;IAED;;OAEG;IACK,yDAAwB,GAAhC;;QACC,MAAA,IAAI,CAAC,8BAA8B,0CAAE,WAAW,GAAG;QACnD,IAAI,CAAC,8BAA8B,GAAG,SAAS,CAAC;IACjD,CAAC;IAOD,sBAAW,6DAAyB;QALpC;;;;WAIG;aACH;YAAA,iBAiBC;YAhBA,IAAI,QAAyB,CAAC;YAE9B,+EAA+E;YAC/E,oFAAoF;YACpF,wDAAwD;YAExD,sFAAsF;YACtF,OAAO,IAAI,CAAC,gCAAgC;iBAC1C,GAAG,CAAC,UAAA,KAAK;gBACT,OAAO,KAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;YAC/C,CAAC,CAAC;iBACD,MAAM,CAAC,UAAA,OAAO;gBACd,IAAM,SAAS,GAAG,OAAO,KAAK,QAAQ,CAAC;gBACvC,QAAQ,GAAG,OAAO,CAAC;gBACnB,OAAO,SAAS,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC;;;OAAA;IAED;;OAEG;IACH,uCAAM,GAAN,UAAO,aAA8C;QACpD,+BAA+B;QAC/B,IAAI,aAAa,CAAC,uBAAuB,KAAK,WAAW,EAAE;YAC1D,IAAI,CAAC,uBAAuB,EAAE,CAAC;SAC/B;aAAM,IAAI,aAAa,CAAC,uBAAuB,KAAK,cAAc,EAAE;YACpE,IAAI,CAAC,wBAAwB,EAAE,CAAC;SAChC;QAED,4BAA4B;QAC5B,IAAM,eAAe,yBACjB,IAAI,CAAC,sBAAsB,GAC3B,aAAa,CAChB,CAAC;QAEF,IAAI,CAAC,sBAAsB,gBAAQ,eAAe,CAAE,CAAC;QAErD,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACK,2DAA0B,GAAlC,UAAmC,EAKV;YAJxB,oCAAe,EACf,8BAAY,EACZ,oDAAuB,EACvB,kCAAc;QAEd,IAAI,eAAe,KAAK,WAAW,IAAI,YAAY,KAAK,cAAc;YACrE,OAAO,eAAe,CAAC,uBAAuB,CAAC;QAEhD,IACC,eAAe,KAAK,WAAW;YAC/B,uBAAuB,KAAK,cAAc;YAE1C,OAAO,eAAe,CAAC,0BAA0B,CAAC;QAEnD,IACC,eAAe,KAAK,cAAc;YAClC,uBAAuB,KAAK,WAAW;YACvC,YAAY,KAAK,cAAc;YAE/B,OAAO,eAAe,CAAC,iCAAiC,CAAC;QAE1D,IACC,eAAe,KAAK,cAAc;YAClC,uBAAuB,KAAK,WAAW;YAEvC,OAAO,eAAe,CAAC,mBAAmB,CAAC;QAE5C,IAAI,eAAe,KAAK,WAAW,IAAI,cAAc,KAAK,WAAW;YACpE,OAAO,eAAe,CAAC,yBAAyB,CAAC;QAElD,mEAAmE;QACnE,IAAI,eAAe,KAAK,YAAY;YAAE,OAAO,eAAe,CAAC,UAAU,CAAC;QACxE,IAAI,eAAe,KAAK,cAAc;YAAE,OAAO,eAAe,CAAC,YAAY,CAAC;QAC5E,OAAO,eAAe,CAAC,SAAS,CAAC;IAClC,CAAC;IACF,6BAAC;AAAD,CAAC,AAtID,IAsIC"}
1
+ {"version":3,"file":"ConnectionStateMonitor.js","sourceRoot":"","sources":["../../src/utils/ConnectionStateMonitor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const ReachabilityMonitor: () => import("zen-observable-ts").default<{
2
+ online: boolean;
3
+ }>;
@@ -0,0 +1,3 @@
1
+ import { Reachability } from '@aws-amplify/core';
2
+ export var ReachabilityMonitor = function () { return new Reachability().networkMonitor(); };
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/ReachabilityMonitor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,IAAM,mBAAmB,GAAG,cAAM,OAAA,IAAI,YAAY,EAAE,CAAC,cAAc,EAAE,EAAnC,CAAmC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const ReachabilityMonitor: () => import("zen-observable-ts").default<{
2
+ online: boolean;
3
+ }>;
@@ -0,0 +1,6 @@
1
+ import { Reachability } from '@aws-amplify/core';
2
+ import { default as NetInfo } from '@react-native-community/netinfo';
3
+ export var ReachabilityMonitor = function () {
4
+ return new Reachability().networkMonitor(NetInfo);
5
+ };
6
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.native.js","sourceRoot":"","sources":["../../../src/utils/ReachabilityMonitor/index.native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,CAAC,IAAM,mBAAmB,GAAG;IAClC,OAAA,IAAI,YAAY,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC;AAA1C,CAA0C,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { Observer } from 'zen-observable-ts';
2
+ export declare enum ReconnectEvent {
3
+ START_RECONNECT = "START_RECONNECT",
4
+ HALT_RECONNECT = "HALT_RECONNECT"
5
+ }
6
+ /**
7
+ * Captures the reconnect event logic used to determine when to reconnect to PubSub providers.
8
+ * Reconnnect attempts are delayed by 5 seconds to let the interface settle.
9
+ * Attempting to reconnect only once creates unrecoverable states when the network state isn't
10
+ * supported by the browser, so this keeps retrying every minute until halted.
11
+ */
12
+ export declare class ReconnectionMonitor {
13
+ private reconnectObservers;
14
+ private reconnectIntervalId?;
15
+ private reconnectSetTimeoutId?;
16
+ /**
17
+ * Add reconnect observer to the list of observers to alert on reconnect
18
+ */
19
+ addObserver(reconnectObserver: Observer<void>): void;
20
+ /**
21
+ * Given a reconnect event, start the appropriate behavior
22
+ */
23
+ record(event: ReconnectEvent): void;
24
+ /**
25
+ * Complete all reconnect observers
26
+ */
27
+ close(): void;
28
+ private _triggerReconnect;
29
+ }
@@ -0,0 +1,71 @@
1
+ import { RECONNECT_DELAY, RECONNECT_INTERVAL } from '../Providers/constants';
2
+ export var ReconnectEvent;
3
+ (function (ReconnectEvent) {
4
+ ReconnectEvent["START_RECONNECT"] = "START_RECONNECT";
5
+ ReconnectEvent["HALT_RECONNECT"] = "HALT_RECONNECT";
6
+ })(ReconnectEvent || (ReconnectEvent = {}));
7
+ /**
8
+ * Captures the reconnect event logic used to determine when to reconnect to PubSub providers.
9
+ * Reconnnect attempts are delayed by 5 seconds to let the interface settle.
10
+ * Attempting to reconnect only once creates unrecoverable states when the network state isn't
11
+ * supported by the browser, so this keeps retrying every minute until halted.
12
+ */
13
+ var ReconnectionMonitor = /** @class */ (function () {
14
+ function ReconnectionMonitor() {
15
+ this.reconnectObservers = [];
16
+ }
17
+ /**
18
+ * Add reconnect observer to the list of observers to alert on reconnect
19
+ */
20
+ ReconnectionMonitor.prototype.addObserver = function (reconnectObserver) {
21
+ this.reconnectObservers.push(reconnectObserver);
22
+ };
23
+ /**
24
+ * Given a reconnect event, start the appropriate behavior
25
+ */
26
+ ReconnectionMonitor.prototype.record = function (event) {
27
+ var _this = this;
28
+ if (event === ReconnectEvent.START_RECONNECT) {
29
+ // If the reconnection hasn't been started
30
+ if (this.reconnectSetTimeoutId === undefined &&
31
+ this.reconnectIntervalId === undefined) {
32
+ this.reconnectSetTimeoutId = setTimeout(function () {
33
+ // Reconnect now
34
+ _this._triggerReconnect();
35
+ // Retry reconnect every periodically until it works
36
+ _this.reconnectIntervalId = setInterval(function () {
37
+ _this._triggerReconnect();
38
+ }, RECONNECT_INTERVAL);
39
+ }, RECONNECT_DELAY);
40
+ }
41
+ }
42
+ if (event === ReconnectEvent.HALT_RECONNECT) {
43
+ if (this.reconnectIntervalId) {
44
+ clearInterval(this.reconnectIntervalId);
45
+ this.reconnectIntervalId = undefined;
46
+ }
47
+ if (this.reconnectSetTimeoutId) {
48
+ clearTimeout(this.reconnectSetTimeoutId);
49
+ this.reconnectSetTimeoutId = undefined;
50
+ }
51
+ }
52
+ };
53
+ /**
54
+ * Complete all reconnect observers
55
+ */
56
+ ReconnectionMonitor.prototype.close = function () {
57
+ this.reconnectObservers.forEach(function (reconnectObserver) {
58
+ var _a;
59
+ (_a = reconnectObserver.complete) === null || _a === void 0 ? void 0 : _a.call(reconnectObserver);
60
+ });
61
+ };
62
+ ReconnectionMonitor.prototype._triggerReconnect = function () {
63
+ this.reconnectObservers.forEach(function (reconnectObserver) {
64
+ var _a;
65
+ (_a = reconnectObserver.next) === null || _a === void 0 ? void 0 : _a.call(reconnectObserver);
66
+ });
67
+ };
68
+ return ReconnectionMonitor;
69
+ }());
70
+ export { ReconnectionMonitor };
71
+ //# sourceMappingURL=ReconnectionMonitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReconnectionMonitor.js","sourceRoot":"","sources":["../../src/utils/ReconnectionMonitor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE7E,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACzB,qDAAmC,CAAA;IACnC,mDAAiC,CAAA;AAClC,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED;;;;;GAKG;AACH;IAAA;QACS,uBAAkB,GAAqB,EAAE,CAAC;IA0DnD,CAAC;IAtDA;;OAEG;IACH,yCAAW,GAAX,UAAY,iBAAiC;QAC5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,oCAAM,GAAN,UAAO,KAAqB;QAA5B,iBA4BC;QA3BA,IAAI,KAAK,KAAK,cAAc,CAAC,eAAe,EAAE;YAC7C,0CAA0C;YAC1C,IACC,IAAI,CAAC,qBAAqB,KAAK,SAAS;gBACxC,IAAI,CAAC,mBAAmB,KAAK,SAAS,EACrC;gBACD,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC;oBACvC,gBAAgB;oBAChB,KAAI,CAAC,iBAAiB,EAAE,CAAC;oBACzB,oDAAoD;oBACpD,KAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;wBACtC,KAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC1B,CAAC,EAAE,kBAAkB,CAAC,CAAC;gBACxB,CAAC,EAAE,eAAe,CAAC,CAAC;aACpB;SACD;QAED,IAAI,KAAK,KAAK,cAAc,CAAC,cAAc,EAAE;YAC5C,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC7B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACxC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;aACrC;YACD,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAC/B,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBACzC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;aACvC;SACD;IACF,CAAC;IAED;;OAEG;IACH,mCAAK,GAAL;QACC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAA,iBAAiB;;YAChD,MAAA,iBAAiB,CAAC,QAAQ,+CAA1B,iBAAiB,EAAc;QAChC,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,+CAAiB,GAAzB;QACC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAA,iBAAiB;;YAChD,MAAA,iBAAiB,CAAC,IAAI,+CAAtB,iBAAiB,EAAU;QAC5B,CAAC,CAAC,CAAC;IACJ,CAAC;IACF,0BAAC;AAAD,CAAC,AA3DD,IA2DC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/pubsub",
3
- "version": "4.4.9-unstable.5+06504e649",
3
+ "version": "4.4.10-next.13+5341c9f6f",
4
4
  "description": "Pubsub category of aws-amplify",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib-esm/index.js",
@@ -45,9 +45,9 @@
45
45
  "cpx": "^1.5.0"
46
46
  },
47
47
  "dependencies": {
48
- "@aws-amplify/auth": "4.6.1-unstable.5+06504e649",
49
- "@aws-amplify/cache": "4.0.50-unstable.5+06504e649",
50
- "@aws-amplify/core": "4.6.1-unstable.5+06504e649",
48
+ "@aws-amplify/auth": "4.6.2-next.13+5341c9f6f",
49
+ "@aws-amplify/cache": "4.0.51-next.13+5341c9f6f",
50
+ "@aws-amplify/core": "4.6.2-next.13+5341c9f6f",
51
51
  "graphql": "15.8.0",
52
52
  "paho-mqtt": "^1.1.0",
53
53
  "uuid": "^3.2.1",
@@ -103,5 +103,5 @@
103
103
  "lib-esm"
104
104
  ]
105
105
  },
106
- "gitHead": "06504e649068f01b85392373fdf80e2ed2a6cada"
106
+ "gitHead": "5341c9f6f1ca10fee8e34706a0e6d47afa338ba2"
107
107
  }