@aws-amplify/pubsub 5.5.6-api-v6-models.b3abc9b.0 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/iot/packages.json +7 -0
- package/lib/Providers/AWSIot.d.ts +10 -0
- package/lib/Providers/AWSIot.js +34 -0
- package/lib/Providers/{MqttOverWSProvider.d.ts → MqttOverWS.d.ts} +16 -16
- package/lib/Providers/MqttOverWS.js +274 -0
- package/lib/Providers/PubSub.d.ts +11 -0
- package/lib/Providers/PubSub.js +19 -0
- package/lib/Providers/constants.d.ts +1 -1
- package/lib/Providers/constants.js +3 -4
- package/lib/Providers/index.d.ts +3 -4
- package/lib/Providers/index.js +8 -10
- package/lib/clients/iot.d.ts +1 -0
- package/lib/clients/iot.js +7 -0
- package/lib/clients/mqtt.d.ts +1 -0
- package/lib/clients/mqtt.js +7 -0
- package/lib/index.d.ts +2 -2
- package/lib/index.js +7 -11
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib/types/PubSub.d.ts +21 -3
- package/lib/types/PubSub.js +1 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/types/index.js +5 -3
- package/lib/utils/ConnectionStateMonitor.d.ts +5 -5
- package/lib/utils/ConnectionStateMonitor.js +52 -64
- package/lib/utils/ReachabilityMonitor/index.d.ts +1 -3
- package/lib/utils/ReachabilityMonitor/index.js +4 -3
- package/lib/utils/ReachabilityMonitor/index.native.d.ts +1 -3
- package/lib/utils/ReachabilityMonitor/index.native.js +7 -8
- package/lib/utils/ReconnectionMonitor.d.ts +1 -1
- package/lib/utils/ReconnectionMonitor.js +21 -25
- package/lib-esm/Providers/AWSIot.d.ts +10 -0
- package/lib-esm/Providers/AWSIot.js +30 -0
- package/lib-esm/Providers/{MqttOverWSProvider.d.ts → MqttOverWS.d.ts} +16 -16
- package/lib-esm/Providers/MqttOverWS.js +268 -0
- package/lib-esm/Providers/PubSub.d.ts +11 -0
- package/lib-esm/Providers/PubSub.js +15 -0
- package/lib-esm/Providers/constants.d.ts +1 -1
- package/lib-esm/Providers/constants.js +11 -14
- package/lib-esm/Providers/index.d.ts +3 -4
- package/lib-esm/Providers/index.js +3 -5
- package/lib-esm/clients/iot.d.ts +1 -0
- package/{src/internals/index.ts → lib-esm/clients/iot.js} +1 -1
- package/lib-esm/clients/mqtt.d.ts +1 -0
- package/lib-esm/{internals/index.js → clients/mqtt.js} +1 -2
- package/lib-esm/index.d.ts +2 -2
- package/lib-esm/index.js +2 -3
- package/lib-esm/tsconfig.tsbuildinfo +1 -0
- package/lib-esm/types/PubSub.d.ts +21 -3
- package/lib-esm/types/PubSub.js +0 -1
- package/lib-esm/types/index.d.ts +0 -1
- package/lib-esm/types/index.js +2 -1
- package/lib-esm/utils/ConnectionStateMonitor.d.ts +5 -5
- package/lib-esm/utils/ConnectionStateMonitor.js +50 -64
- package/lib-esm/utils/ReachabilityMonitor/index.d.ts +1 -3
- package/lib-esm/utils/ReachabilityMonitor/index.js +2 -3
- package/lib-esm/utils/ReachabilityMonitor/index.native.d.ts +1 -3
- package/lib-esm/utils/ReachabilityMonitor/index.native.js +2 -5
- package/lib-esm/utils/ReconnectionMonitor.d.ts +1 -1
- package/lib-esm/utils/ReconnectionMonitor.js +19 -25
- package/mqtt/packages.json +7 -0
- package/package.json +146 -126
- package/src/Providers/{AWSIotProvider.ts → AWSIot.ts} +17 -15
- package/src/Providers/{MqttOverWSProvider.ts → MqttOverWS.ts} +38 -50
- package/src/Providers/PubSub.ts +40 -0
- package/src/Providers/constants.ts +2 -6
- package/src/Providers/index.ts +3 -12
- package/src/clients/iot.ts +4 -0
- package/src/clients/mqtt.ts +7 -0
- package/src/index.ts +3 -12
- package/src/types/PubSub.ts +28 -5
- package/src/types/index.ts +0 -1
- package/src/utils/ConnectionStateMonitor.ts +17 -13
- package/src/utils/ReachabilityMonitor/index.native.ts +2 -1
- package/src/utils/ReachabilityMonitor/index.ts +1 -1
- package/src/utils/ReconnectionMonitor.ts +1 -1
- package/internals/package.json +0 -8
- package/lib/.tsbuildinfo +0 -3
- package/lib/Providers/AWSAppSyncRealTimeProvider/index.d.ts +0 -77
- package/lib/Providers/AWSAppSyncRealTimeProvider/index.js +0 -856
- package/lib/Providers/AWSAppSyncRealTimeProvider/index.js.map +0 -1
- package/lib/Providers/AWSIotProvider.d.ts +0 -11
- package/lib/Providers/AWSIotProvider.js +0 -53
- package/lib/Providers/AWSIotProvider.js.map +0 -1
- package/lib/Providers/MqttOverWSProvider.js +0 -396
- package/lib/Providers/MqttOverWSProvider.js.map +0 -1
- package/lib/Providers/PubSubProvider.d.ts +0 -15
- package/lib/Providers/PubSubProvider.js +0 -28
- package/lib/Providers/PubSubProvider.js.map +0 -1
- package/lib/Providers/constants.js.map +0 -1
- package/lib/Providers/index.js.map +0 -1
- package/lib/PubSub.d.ts +0 -13
- package/lib/PubSub.js +0 -22
- package/lib/PubSub.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/internals/InternalPubSub.d.ts +0 -50
- package/lib/internals/InternalPubSub.js +0 -136
- package/lib/internals/InternalPubSub.js.map +0 -1
- package/lib/internals/index.d.ts +0 -1
- package/lib/internals/index.js +0 -8
- package/lib/internals/index.js.map +0 -1
- package/lib/types/Provider.d.ts +0 -18
- package/lib/types/Provider.js +0 -3
- package/lib/types/Provider.js.map +0 -1
- package/lib/types/PubSub.js.map +0 -1
- package/lib/types/index.js.map +0 -1
- package/lib/utils/ConnectionStateMonitor.js.map +0 -1
- package/lib/utils/ReachabilityMonitor/index.js.map +0 -1
- package/lib/utils/ReachabilityMonitor/index.native.js.map +0 -1
- package/lib/utils/ReconnectionMonitor.js.map +0 -1
- package/lib/vendor/paho-mqtt.d.ts +0 -2
- package/lib/vendor/paho-mqtt.js.map +0 -1
- package/lib-esm/.tsbuildinfo +0 -3
- package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.d.ts +0 -77
- package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.js +0 -854
- package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.js.map +0 -1
- package/lib-esm/Providers/AWSIotProvider.d.ts +0 -11
- package/lib-esm/Providers/AWSIotProvider.js +0 -51
- package/lib-esm/Providers/AWSIotProvider.js.map +0 -1
- package/lib-esm/Providers/MqttOverWSProvider.js +0 -393
- package/lib-esm/Providers/MqttOverWSProvider.js.map +0 -1
- package/lib-esm/Providers/PubSubProvider.d.ts +0 -15
- package/lib-esm/Providers/PubSubProvider.js +0 -26
- package/lib-esm/Providers/PubSubProvider.js.map +0 -1
- package/lib-esm/Providers/constants.js.map +0 -1
- package/lib-esm/Providers/index.js.map +0 -1
- package/lib-esm/PubSub.d.ts +0 -13
- package/lib-esm/PubSub.js +0 -20
- package/lib-esm/PubSub.js.map +0 -1
- package/lib-esm/index.js.map +0 -1
- package/lib-esm/internals/InternalPubSub.d.ts +0 -50
- package/lib-esm/internals/InternalPubSub.js +0 -134
- package/lib-esm/internals/InternalPubSub.js.map +0 -1
- package/lib-esm/internals/index.d.ts +0 -1
- package/lib-esm/internals/index.js.map +0 -1
- package/lib-esm/types/Provider.d.ts +0 -18
- package/lib-esm/types/Provider.js +0 -1
- package/lib-esm/types/Provider.js.map +0 -1
- package/lib-esm/types/PubSub.js.map +0 -1
- package/lib-esm/types/index.js.map +0 -1
- package/lib-esm/utils/ConnectionStateMonitor.js.map +0 -1
- package/lib-esm/utils/ReachabilityMonitor/index.js.map +0 -1
- package/lib-esm/utils/ReachabilityMonitor/index.native.js.map +0 -1
- package/lib-esm/utils/ReconnectionMonitor.js.map +0 -1
- package/lib-esm/vendor/paho-mqtt.d.ts +0 -2
- package/lib-esm/vendor/paho-mqtt.js.map +0 -1
- package/src/Providers/AWSAppSyncRealTimeProvider/index.ts +0 -1049
- package/src/Providers/PubSubProvider.ts +0 -53
- package/src/PubSub.ts +0 -33
- package/src/internals/InternalPubSub.ts +0 -185
- package/src/types/Provider.ts +0 -37
package/src/index.ts
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
export { PubSub } from './PubSub';
|
|
5
4
|
export { CONNECTION_STATE_CHANGE } from './Providers/constants';
|
|
6
5
|
export { ConnectionState, CONTROL_MSG } from './types';
|
|
7
|
-
export {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
AWSIoTProvider,
|
|
11
|
-
AWSIoTProviderOptions,
|
|
12
|
-
AbstractPubSubProvider,
|
|
13
|
-
MqttOverWSProvider,
|
|
14
|
-
MqttProviderOptions,
|
|
15
|
-
ObserverQuery,
|
|
16
|
-
mqttTopicMatch,
|
|
17
|
-
} from './Providers';
|
|
6
|
+
export { mqttTopicMatch } from './Providers';
|
|
7
|
+
|
|
8
|
+
export { PubSub, PubSubOptions } from './clients/iot';
|
package/src/types/PubSub.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
import {
|
|
4
|
-
|
|
3
|
+
import { Observer, Observable } from 'rxjs';
|
|
5
4
|
export interface SubscriptionObserver<T> {
|
|
6
5
|
closed: boolean;
|
|
7
6
|
next(value: T): void;
|
|
@@ -53,6 +52,30 @@ export enum ConnectionState {
|
|
|
53
52
|
ConnectedPendingKeepAlive = 'ConnectedPendingKeepAlive',
|
|
54
53
|
}
|
|
55
54
|
|
|
56
|
-
export type PubSubContent = Record<string, unknown
|
|
57
|
-
export type PubSubContentObserver =
|
|
58
|
-
|
|
55
|
+
export type PubSubContent = Record<string, unknown>;
|
|
56
|
+
export type PubSubContentObserver = Observer<PubSubContent>;
|
|
57
|
+
|
|
58
|
+
export interface PubSubOptions {
|
|
59
|
+
[key: string]: any;
|
|
60
|
+
provider?: string | symbol;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface PubSubBase {
|
|
64
|
+
// configure your provider
|
|
65
|
+
configure(config: Record<string, unknown>): Record<string, unknown>;
|
|
66
|
+
|
|
67
|
+
publish(input: PublishInput): void;
|
|
68
|
+
|
|
69
|
+
subscribe(input: SubscribeInput): Observable<PubSubContent>;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export type PublishInput = {
|
|
73
|
+
topics: string[] | string;
|
|
74
|
+
message: PubSubContent;
|
|
75
|
+
options?: PubSubOptions;
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export type SubscribeInput = {
|
|
79
|
+
topics: string[] | string;
|
|
80
|
+
options?: PubSubOptions;
|
|
81
|
+
};
|
package/src/types/index.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
import Observable,
|
|
4
|
+
import { Observable, Observer, SubscriptionLike, map, filter } from 'rxjs';
|
|
5
5
|
import { ConnectionState } from '../types/PubSub';
|
|
6
6
|
import { ReachabilityMonitor } from './ReachabilityMonitor';
|
|
7
7
|
|
|
@@ -50,9 +50,9 @@ export class ConnectionStateMonitor {
|
|
|
50
50
|
*/
|
|
51
51
|
private _linkedConnectionState: LinkedConnectionStates;
|
|
52
52
|
private _linkedConnectionStateObservable: Observable<LinkedConnectionStates>;
|
|
53
|
-
private _linkedConnectionStateObserver
|
|
54
|
-
private _networkMonitoringSubscription?:
|
|
55
|
-
private _initialNetworkStateSubscription?:
|
|
53
|
+
private _linkedConnectionStateObserver?: Observer<LinkedConnectionStates>;
|
|
54
|
+
private _networkMonitoringSubscription?: SubscriptionLike;
|
|
55
|
+
private _initialNetworkStateSubscription?: SubscriptionLike;
|
|
56
56
|
|
|
57
57
|
constructor() {
|
|
58
58
|
this._networkMonitoringSubscription = undefined;
|
|
@@ -121,14 +121,18 @@ export class ConnectionStateMonitor {
|
|
|
121
121
|
|
|
122
122
|
// After translating from linked states to ConnectionState, then remove any duplicates
|
|
123
123
|
return this._linkedConnectionStateObservable
|
|
124
|
-
.
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
124
|
+
.pipe(
|
|
125
|
+
map(value => {
|
|
126
|
+
return this.connectionStatesTranslator(value);
|
|
127
|
+
})
|
|
128
|
+
)
|
|
129
|
+
.pipe(
|
|
130
|
+
filter(current => {
|
|
131
|
+
const toInclude = current !== previous;
|
|
132
|
+
previous = current;
|
|
133
|
+
return toInclude;
|
|
134
|
+
})
|
|
135
|
+
);
|
|
132
136
|
}
|
|
133
137
|
|
|
134
138
|
/*
|
|
@@ -150,7 +154,7 @@ export class ConnectionStateMonitor {
|
|
|
150
154
|
|
|
151
155
|
this._linkedConnectionState = { ...newSocketStatus };
|
|
152
156
|
|
|
153
|
-
this._linkedConnectionStateObserver
|
|
157
|
+
this._linkedConnectionStateObserver?.next(this._linkedConnectionState);
|
|
154
158
|
}
|
|
155
159
|
|
|
156
160
|
/*
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
3
|
+
|
|
4
|
+
import { Reachability } from '@aws-amplify/core/internals/utils';
|
|
4
5
|
import { default as NetInfo } from '@react-native-community/netinfo';
|
|
5
6
|
|
|
6
7
|
export const ReachabilityMonitor = () =>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
import { Reachability } from '@aws-amplify/core';
|
|
3
|
+
import { Reachability } from '@aws-amplify/core/internals/utils';
|
|
4
4
|
|
|
5
5
|
export const ReachabilityMonitor = () => new Reachability().networkMonitor();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
import { Observer } from '
|
|
3
|
+
import { Observer } from 'rxjs';
|
|
4
4
|
import { RECONNECT_DELAY, RECONNECT_INTERVAL } from '../Providers/constants';
|
|
5
5
|
|
|
6
6
|
export enum ReconnectEvent {
|
package/internals/package.json
DELETED
package/lib/.tsbuildinfo
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import Observable from 'zen-observable-ts';
|
|
2
|
-
import { ProviderOptions } from '../../types/Provider';
|
|
3
|
-
import { CustomUserAgentDetails } from '@aws-amplify/core';
|
|
4
|
-
import { GRAPHQL_AUTH_MODE } from '@aws-amplify/auth';
|
|
5
|
-
import { AbstractPubSubProvider } from '../PubSubProvider';
|
|
6
|
-
import { PubSubContent, PubSubContentObserver } from '../../types/PubSub';
|
|
7
|
-
import { SUBSCRIPTION_STATUS } from '../constants';
|
|
8
|
-
export declare type ObserverQuery = {
|
|
9
|
-
observer: PubSubContentObserver;
|
|
10
|
-
query: string;
|
|
11
|
-
variables: Record<string, unknown>;
|
|
12
|
-
subscriptionState: SUBSCRIPTION_STATUS;
|
|
13
|
-
subscriptionReadyCallback?: Function;
|
|
14
|
-
subscriptionFailedCallback?: Function;
|
|
15
|
-
startAckTimeoutId?: ReturnType<typeof setTimeout>;
|
|
16
|
-
};
|
|
17
|
-
declare type GraphqlAuthModes = keyof typeof GRAPHQL_AUTH_MODE;
|
|
18
|
-
export interface AWSAppSyncRealTimeProviderOptions extends ProviderOptions {
|
|
19
|
-
appSyncGraphqlEndpoint?: string;
|
|
20
|
-
authenticationType?: GraphqlAuthModes;
|
|
21
|
-
query?: string;
|
|
22
|
-
variables?: Record<string, unknown>;
|
|
23
|
-
apiKey?: string;
|
|
24
|
-
region?: string;
|
|
25
|
-
graphql_headers?: () => {} | (() => Promise<{}>);
|
|
26
|
-
additionalHeaders?: {
|
|
27
|
-
[key: string]: string;
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
export declare class AWSAppSyncRealTimeProvider extends AbstractPubSubProvider<AWSAppSyncRealTimeProviderOptions> {
|
|
31
|
-
private awsRealTimeSocket?;
|
|
32
|
-
private socketStatus;
|
|
33
|
-
private keepAliveTimeoutId?;
|
|
34
|
-
private keepAliveTimeout;
|
|
35
|
-
private keepAliveAlertTimeoutId?;
|
|
36
|
-
private subscriptionObserverMap;
|
|
37
|
-
private promiseArray;
|
|
38
|
-
private connectionState;
|
|
39
|
-
private readonly connectionStateMonitor;
|
|
40
|
-
private readonly reconnectionMonitor;
|
|
41
|
-
private connectionStateMonitorSubscription;
|
|
42
|
-
constructor(options?: ProviderOptions);
|
|
43
|
-
/**
|
|
44
|
-
* Mark the socket closed and release all active listeners
|
|
45
|
-
*/
|
|
46
|
-
close(): void;
|
|
47
|
-
getNewWebSocket(url: string, protocol: string): WebSocket;
|
|
48
|
-
getProviderName(): string;
|
|
49
|
-
newClient(): Promise<any>;
|
|
50
|
-
publish(_topics: string[] | string, _msg: PubSubContent, _options?: AWSAppSyncRealTimeProviderOptions): Promise<void>;
|
|
51
|
-
private isCustomDomain;
|
|
52
|
-
subscribe(_topics: string[] | string, options?: AWSAppSyncRealTimeProviderOptions, customUserAgentDetails?: CustomUserAgentDetails): Observable<Record<string, unknown>>;
|
|
53
|
-
protected get isSSLEnabled(): boolean;
|
|
54
|
-
private _startSubscriptionWithAWSAppSyncRealTime;
|
|
55
|
-
private _logStartSubscriptionError;
|
|
56
|
-
private _waitForSubscriptionToBeConnected;
|
|
57
|
-
private _sendUnsubscriptionMessage;
|
|
58
|
-
private _removeSubscriptionObserver;
|
|
59
|
-
private _closeSocketIfRequired;
|
|
60
|
-
private _handleIncomingSubscriptionMessage;
|
|
61
|
-
private _errorDisconnect;
|
|
62
|
-
private _timeoutStartSubscriptionAck;
|
|
63
|
-
private _initializeWebSocketConnection;
|
|
64
|
-
private _initializeRetryableHandshake;
|
|
65
|
-
private _initializeHandshake;
|
|
66
|
-
private _awsRealTimeHeaderBasedAuth;
|
|
67
|
-
private _awsRealTimeCUPHeader;
|
|
68
|
-
private _awsRealTimeOPENIDHeader;
|
|
69
|
-
private _awsRealTimeApiKeyHeader;
|
|
70
|
-
private _awsRealTimeIAMHeader;
|
|
71
|
-
private _customAuthHeader;
|
|
72
|
-
/**
|
|
73
|
-
* @private
|
|
74
|
-
*/
|
|
75
|
-
_ensureCredentials(): any;
|
|
76
|
-
}
|
|
77
|
-
export {};
|