@intuitionrobotics/push-pub-sub 0.47.32 → 0.47.33
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,9 +1,6 @@
|
|
|
1
1
|
import { Module } from "@intuitionrobotics/ts-common";
|
|
2
|
-
import {
|
|
2
|
+
import { SubscriptionDataRegistration } from "../../index";
|
|
3
3
|
export declare const Command_SwToApp = "SwToApp";
|
|
4
|
-
export interface OnPushMessageReceived<M extends MessageType<any, any, any> = never, S extends string = IFP<M>, P extends SubscribeProps = ISP<M>, D = ITP<M>> {
|
|
5
|
-
__onMessageReceived(notification: DB_Notifications): void;
|
|
6
|
-
}
|
|
7
4
|
type FirebaseConfig = {
|
|
8
5
|
apiKey: string;
|
|
9
6
|
authDomain: string;
|
|
@@ -22,7 +19,6 @@ export declare class PushPubSubModule_Class extends Module<PushPubSubConfig> {
|
|
|
22
19
|
private subscriptions;
|
|
23
20
|
private firebaseToken?;
|
|
24
21
|
private messaging?;
|
|
25
|
-
private dispatch_pushMessage;
|
|
26
22
|
private readonly pushSessionId;
|
|
27
23
|
protected timeout: number;
|
|
28
24
|
constructor();
|
|
@@ -36,10 +32,10 @@ export declare class PushPubSubModule_Class extends Module<PushPubSubConfig> {
|
|
|
36
32
|
}) => Promise<void>;
|
|
37
33
|
private processMessageFromSw;
|
|
38
34
|
private processMessage;
|
|
39
|
-
subscribe: (subscription:
|
|
35
|
+
subscribe: (subscription: SubscriptionDataRegistration) => void;
|
|
40
36
|
private subscribeImpl;
|
|
41
|
-
subscribeMulti: (subscriptions:
|
|
42
|
-
unsubscribe: (subscription:
|
|
37
|
+
subscribeMulti: (subscriptions: SubscriptionDataRegistration[]) => void;
|
|
38
|
+
unsubscribe: (subscription: SubscriptionDataRegistration) => void;
|
|
43
39
|
private register;
|
|
44
40
|
}
|
|
45
41
|
export declare const PushPubSubModule: PushPubSubModule_Class;
|
|
@@ -39,7 +39,6 @@ class PushPubSubModule_Class extends ts_common_1.Module {
|
|
|
39
39
|
constructor() {
|
|
40
40
|
super("PushPubSubModule");
|
|
41
41
|
this.subscriptions = [];
|
|
42
|
-
this.dispatch_pushMessage = new frontend_1.ThunderDispatcher("__onMessageReceived");
|
|
43
42
|
this.timeout = 800;
|
|
44
43
|
this.registerServiceWorker = () => __awaiter(this, void 0, void 0, function* () {
|
|
45
44
|
console.log("Registering service worker...");
|
|
@@ -114,19 +113,36 @@ class PushPubSubModule_Class extends ts_common_1.Module {
|
|
|
114
113
|
const arr = JSON.parse(data.messages);
|
|
115
114
|
arr.forEach(s => {
|
|
116
115
|
s.persistent && NotificationModule_1.NotificationsModule.addNotification(s);
|
|
117
|
-
this.
|
|
116
|
+
this.subscriptions
|
|
117
|
+
.filter(d => d.pushKey === s.pushKey && (0, ts_common_1.compare)(s.props, d.props))
|
|
118
|
+
.forEach(d => d.callBacks.forEach(c => c(s.data)));
|
|
118
119
|
});
|
|
119
120
|
};
|
|
120
121
|
this.subscribe = (subscription) => {
|
|
121
122
|
this.subscribeImpl(subscription);
|
|
122
123
|
return this.register();
|
|
123
124
|
};
|
|
125
|
+
this.subscribeImpl = (subscription) => {
|
|
126
|
+
const foundSubscription = this.subscriptions.find(d => d.pushKey === subscription.pushKey && (0, ts_common_1.compare)(subscription.props, d.props));
|
|
127
|
+
if (foundSubscription) {
|
|
128
|
+
foundSubscription.callBacks.push(subscription.callBack);
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const moduleItem = Object.assign(Object.assign({}, subscription), { callBacks: [subscription.callBack] });
|
|
132
|
+
this.subscriptions.push(moduleItem);
|
|
133
|
+
};
|
|
124
134
|
this.subscribeMulti = (subscriptions) => {
|
|
125
135
|
subscriptions.forEach(subscription => this.subscribeImpl(subscription));
|
|
126
136
|
return this.register();
|
|
127
137
|
};
|
|
128
138
|
this.unsubscribe = (subscription) => {
|
|
129
|
-
|
|
139
|
+
const idx = this.subscriptions.findIndex(d => d.pushKey === subscription.pushKey && (0, ts_common_1.compare)(subscription.props, d.props));
|
|
140
|
+
const foundSubscription = idx !== -1 ? this.subscriptions[idx] : undefined;
|
|
141
|
+
if (foundSubscription) {
|
|
142
|
+
foundSubscription.callBacks = foundSubscription.callBacks.filter(cb => cb !== subscription.callBack);
|
|
143
|
+
if (!foundSubscription.callBacks.length)
|
|
144
|
+
this.subscriptions.splice(idx, 1);
|
|
145
|
+
}
|
|
130
146
|
return this.register();
|
|
131
147
|
};
|
|
132
148
|
this.register = () => {
|
|
@@ -166,11 +182,6 @@ class PushPubSubModule_Class extends ts_common_1.Module {
|
|
|
166
182
|
getPushSessionId() {
|
|
167
183
|
return this.pushSessionId;
|
|
168
184
|
}
|
|
169
|
-
subscribeImpl(subscription) {
|
|
170
|
-
if (this.subscriptions.find(d => d.pushKey === subscription.pushKey && (0, ts_common_1.compare)(subscription.props, d.props)))
|
|
171
|
-
return;
|
|
172
|
-
(0, ts_common_1.addItemToArray)(this.subscriptions, subscription);
|
|
173
|
-
}
|
|
174
185
|
}
|
|
175
186
|
exports.PushPubSubModule_Class = PushPubSubModule_Class;
|
|
176
187
|
exports.PushPubSubModule = new PushPubSubModule_Class();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushPubSubModule.js","sourceRoot":"","sources":["../../../src/main/app-frontend/modules/PushPubSubModule.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;AAEH,
|
|
1
|
+
{"version":3,"file":"PushPubSubModule.js","sourceRoot":"","sources":["../../../src/main/app-frontend/modules/PushPubSubModule.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/shared/types.d.ts
CHANGED
|
@@ -6,6 +6,12 @@ export type BaseSubscriptionData = {
|
|
|
6
6
|
props?: SubscribeProps;
|
|
7
7
|
pushKey: string;
|
|
8
8
|
};
|
|
9
|
+
export type SubscriptionDataModule<D = any> = BaseSubscriptionData & {
|
|
10
|
+
callBacks: ((data?: D) => void)[];
|
|
11
|
+
};
|
|
12
|
+
export type SubscriptionDataRegistration<D = any> = BaseSubscriptionData & {
|
|
13
|
+
callBack: (data?: D) => void;
|
|
14
|
+
};
|
|
9
15
|
export type SubscriptionData = BaseSubscriptionData & {
|
|
10
16
|
data?: any;
|
|
11
17
|
};
|