@selfcommunity/react-core 0.4.0-alpha.20 → 0.4.0-alpha.22
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/lib/cjs/constants/ContextProviders.js +2 -2
- package/lib/cjs/constants/ContextProviders.js.map +1 -1
- package/lib/cjs/constants/Notifications.d.ts +1 -0
- package/lib/cjs/constants/Notifications.d.ts.map +1 -1
- package/lib/cjs/constants/Notifications.js +2 -1
- package/lib/cjs/constants/Notifications.js.map +1 -1
- package/lib/cjs/hooks/useSCWebPushMessaging.d.ts +2 -0
- package/lib/cjs/hooks/useSCWebPushMessaging.d.ts.map +1 -1
- package/lib/cjs/hooks/useSCWebPushMessaging.js +60 -8
- package/lib/cjs/hooks/useSCWebPushMessaging.js.map +1 -1
- package/lib/esm/constants/ContextProviders.js +2 -2
- package/lib/esm/constants/ContextProviders.js.map +1 -1
- package/lib/esm/constants/Notifications.d.ts +1 -0
- package/lib/esm/constants/Notifications.d.ts.map +1 -1
- package/lib/esm/constants/Notifications.js +1 -0
- package/lib/esm/constants/Notifications.js.map +1 -1
- package/lib/esm/hooks/useSCWebPushMessaging.d.ts +2 -0
- package/lib/esm/hooks/useSCWebPushMessaging.d.ts.map +1 -1
- package/lib/esm/hooks/useSCWebPushMessaging.js +57 -8
- package/lib/esm/hooks/useSCWebPushMessaging.js.map +1 -1
- package/lib/umd/react-core.js +1 -1
- package/package.json +6 -4
|
@@ -19,9 +19,9 @@ exports.DEFAULT_CONTEXT_PROVIDERS = [
|
|
|
19
19
|
SCPreferencesProvider_1.default,
|
|
20
20
|
SCRoutingProvider_1.default,
|
|
21
21
|
SCUserProvider_1.default,
|
|
22
|
-
SCNotificationProvider_1.default,
|
|
23
|
-
SCThemeProvider_1.default,
|
|
24
22
|
SCLocaleProvider_1.default,
|
|
23
|
+
SCThemeProvider_1.default,
|
|
25
24
|
SCAlertMessagesProvider_1.default,
|
|
25
|
+
SCNotificationProvider_1.default,
|
|
26
26
|
];
|
|
27
27
|
//# sourceMappingURL=ContextProviders.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextProviders.js","sourceRoot":"","sources":["../../../src/constants/ContextProviders.ts"],"names":[],"mappings":";;;;;;AAAA,yGAAiF;AACjF,iGAAyE;AACzE,2FAAmE;AACnE,2GAAmF;AACnF,6FAAqE;AACrE,+FAAuE;AACvE,6GAAqF;AAExE,QAAA,wBAAwB,GAAG,kBAAkB,CAAC;AAE3D;;GAEG;AACU,QAAA,yBAAyB,GAAkC;IACtE,+BAAqB;IACrB,2BAAiB;IACjB,wBAAc;IACd,
|
|
1
|
+
{"version":3,"file":"ContextProviders.js","sourceRoot":"","sources":["../../../src/constants/ContextProviders.ts"],"names":[],"mappings":";;;;;;AAAA,yGAAiF;AACjF,iGAAyE;AACzE,2FAAmE;AACnE,2GAAmF;AACnF,6FAAqE;AACrE,+FAAuE;AACvE,6GAAqF;AAExE,QAAA,wBAAwB,GAAG,kBAAkB,CAAC;AAE3D;;GAEG;AACU,QAAA,yBAAyB,GAAkC;IACtE,+BAAqB;IACrB,2BAAiB;IACjB,wBAAc;IACd,0BAAgB;IAChB,yBAAe;IACf,iCAAuB;IACvB,gCAAsB;CACvB,CAAC"}
|
|
@@ -5,6 +5,7 @@ import { SCNotificationsType } from '../types/context';
|
|
|
5
5
|
export declare const NOTIFICATIONS_OPTION = "notifications";
|
|
6
6
|
export declare const NOTIFICATIONS_WEB_SOCKET_OPTION = "webSocket";
|
|
7
7
|
export declare const NOTIFICATIONS_WEB_PUSH_MESSAGING_OPTION = "webPushMessaging";
|
|
8
|
+
export declare const NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE = "wpndEnable";
|
|
8
9
|
export declare const NOTIFICATIONS_DISABLE_TOAST_MESSAGE_OPTION = "disableToastMessage";
|
|
9
10
|
export declare const NOTIFICATIONS_SECURE_OPTION = "secure";
|
|
10
11
|
export declare const NOTIFICATIONS_APPLICATION_SERVER_KEY_OPTION = "applicationServerKey";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notifications.d.ts","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAErD,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AACpD,eAAO,MAAM,+BAA+B,cAAc,CAAC;AAC3D,eAAO,MAAM,uCAAuC,qBAAqB,CAAC;AAC1E,eAAO,MAAM,0CAA0C,wBAAwB,CAAC;AAChF,eAAO,MAAM,2BAA2B,WAAW,CAAC;AACpD,eAAO,MAAM,2CAA2C,yBAAyB,CAAC;AAClF,eAAO,MAAM,qBAAqB,EAAE,mBAQnC,CAAC"}
|
|
1
|
+
{"version":3,"file":"Notifications.d.ts","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAErD,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AACpD,eAAO,MAAM,+BAA+B,cAAc,CAAC;AAC3D,eAAO,MAAM,uCAAuC,qBAAqB,CAAC;AAC1E,eAAO,MAAM,8CAA8C,eAAe,CAAC;AAC3E,eAAO,MAAM,0CAA0C,wBAAwB,CAAC;AAChF,eAAO,MAAM,2BAA2B,WAAW,CAAC;AACpD,eAAO,MAAM,2CAA2C,yBAAyB,CAAC;AAClF,eAAO,MAAM,qBAAqB,EAAE,mBAQnC,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DEFAULT_NOTIFICATIONS = exports.NOTIFICATIONS_APPLICATION_SERVER_KEY_OPTION = exports.NOTIFICATIONS_SECURE_OPTION = exports.NOTIFICATIONS_DISABLE_TOAST_MESSAGE_OPTION = exports.NOTIFICATIONS_WEB_PUSH_MESSAGING_OPTION = exports.NOTIFICATIONS_WEB_SOCKET_OPTION = exports.NOTIFICATIONS_OPTION = void 0;
|
|
3
|
+
exports.DEFAULT_NOTIFICATIONS = exports.NOTIFICATIONS_APPLICATION_SERVER_KEY_OPTION = exports.NOTIFICATIONS_SECURE_OPTION = exports.NOTIFICATIONS_DISABLE_TOAST_MESSAGE_OPTION = exports.NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE = exports.NOTIFICATIONS_WEB_PUSH_MESSAGING_OPTION = exports.NOTIFICATIONS_WEB_SOCKET_OPTION = exports.NOTIFICATIONS_OPTION = void 0;
|
|
4
4
|
exports.NOTIFICATIONS_OPTION = 'notifications';
|
|
5
5
|
exports.NOTIFICATIONS_WEB_SOCKET_OPTION = 'webSocket';
|
|
6
6
|
exports.NOTIFICATIONS_WEB_PUSH_MESSAGING_OPTION = 'webPushMessaging';
|
|
7
|
+
exports.NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE = 'wpndEnable';
|
|
7
8
|
exports.NOTIFICATIONS_DISABLE_TOAST_MESSAGE_OPTION = 'disableToastMessage';
|
|
8
9
|
exports.NOTIFICATIONS_SECURE_OPTION = 'secure';
|
|
9
10
|
exports.NOTIFICATIONS_APPLICATION_SERVER_KEY_OPTION = 'applicationServerKey';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notifications.js","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":";;;AAKa,QAAA,oBAAoB,GAAG,eAAe,CAAC;AACvC,QAAA,+BAA+B,GAAG,WAAW,CAAC;AAC9C,QAAA,uCAAuC,GAAG,kBAAkB,CAAC;AAC7D,QAAA,0CAA0C,GAAG,qBAAqB,CAAC;AACnE,QAAA,2BAA2B,GAAG,QAAQ,CAAC;AACvC,QAAA,2CAA2C,GAAG,sBAAsB,CAAC;AACrE,QAAA,qBAAqB,GAAwB;IACxD,CAAC,uCAA+B,CAAC,EAAE;QACjC,CAAC,kDAA0C,CAAC,EAAE,KAAK;QACnD,CAAC,mCAA2B,CAAC,EAAE,IAAI;KACpC;IACD,CAAC,+CAAuC,CAAC,EAAE;QACzC,CAAC,kDAA0C,CAAC,EAAE,IAAI;KACnD;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"Notifications.js","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":";;;AAKa,QAAA,oBAAoB,GAAG,eAAe,CAAC;AACvC,QAAA,+BAA+B,GAAG,WAAW,CAAC;AAC9C,QAAA,uCAAuC,GAAG,kBAAkB,CAAC;AAC7D,QAAA,8CAA8C,GAAG,YAAY,CAAC;AAC9D,QAAA,0CAA0C,GAAG,qBAAqB,CAAC;AACnE,QAAA,2BAA2B,GAAG,QAAQ,CAAC;AACvC,QAAA,2CAA2C,GAAG,sBAAsB,CAAC;AACrE,QAAA,qBAAqB,GAAwB;IACxD,CAAC,uCAA+B,CAAC,EAAE;QACjC,CAAC,kDAA0C,CAAC,EAAE,KAAK;QACnD,CAAC,mCAA2B,CAAC,EAAE,IAAI;KACpC;IACD,CAAC,+CAAuC,CAAC,EAAE;QACzC,CAAC,kDAA0C,CAAC,EAAE,IAAI;KACnD;CACF,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SnackbarKey } from 'notistack';
|
|
1
2
|
/**
|
|
2
3
|
:::info
|
|
3
4
|
This custom hook is used to to init web push messaging.
|
|
@@ -5,5 +6,6 @@
|
|
|
5
6
|
*/
|
|
6
7
|
export default function useSCWebPushMessaging(): {
|
|
7
8
|
wpSubscription: any;
|
|
9
|
+
requestNotificationPermission: (snackbarId: SnackbarKey | null) => void;
|
|
8
10
|
};
|
|
9
11
|
//# sourceMappingURL=useSCWebPushMessaging.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCWebPushMessaging.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.
|
|
1
|
+
{"version":3,"file":"useSCWebPushMessaging.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAC,WAAW,EAAc,MAAM,WAAW,CAAC;AAMnD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB;;gDA8MQ,WAAW,GAAG,IAAI;EAqGtE"}
|
|
@@ -22,17 +22,25 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
25
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
const react_1 = require("react");
|
|
29
|
+
const react_1 = __importStar(require("react"));
|
|
27
30
|
const SCContextProvider_1 = require("../components/provider/SCContextProvider");
|
|
28
31
|
const SCUserProvider_1 = require("../components/provider/SCUserProvider");
|
|
29
32
|
const utils_1 = require("@selfcommunity/utils");
|
|
33
|
+
const Button_1 = __importDefault(require("@mui/material/Button"));
|
|
30
34
|
const utils_2 = require("@selfcommunity/utils");
|
|
31
35
|
const Errors_1 = require("../constants/Errors");
|
|
32
36
|
const api_services_1 = require("@selfcommunity/api-services");
|
|
33
37
|
const Device_1 = require("../constants/Device");
|
|
34
38
|
const SCPreferencesProvider_1 = require("../components/provider/SCPreferencesProvider");
|
|
39
|
+
const notistack_1 = require("notistack");
|
|
35
40
|
const SCPreferences = __importStar(require("../constants/Preferences"));
|
|
41
|
+
const Notifications_1 = require("../constants/Notifications");
|
|
42
|
+
const js_cookie_1 = __importDefault(require("js-cookie"));
|
|
43
|
+
const react_intl_1 = require("react-intl");
|
|
36
44
|
/**
|
|
37
45
|
:::info
|
|
38
46
|
This custom hook is used to to init web push messaging.
|
|
@@ -43,6 +51,8 @@ function useSCWebPushMessaging() {
|
|
|
43
51
|
const scContext = (0, SCContextProvider_1.useSCContext)();
|
|
44
52
|
const scUserContext = (0, SCUserProvider_1.useSCUser)();
|
|
45
53
|
const scPreferencesContext = (0, react_1.useContext)(SCPreferencesProvider_1.SCPreferencesContext);
|
|
54
|
+
const intl = (0, react_intl_1.useIntl)();
|
|
55
|
+
const { enqueueSnackbar, closeSnackbar } = (0, notistack_1.useSnackbar)();
|
|
46
56
|
// STATE
|
|
47
57
|
const [wpSubscription, setWpSubscription] = (0, react_1.useState)(null);
|
|
48
58
|
// REFS
|
|
@@ -57,6 +67,33 @@ function useSCWebPushMessaging() {
|
|
|
57
67
|
scPreferencesContext.preferences[SCPreferences.PROVIDERS_WEB_PUSH_ENABLED].value
|
|
58
68
|
? scPreferencesContext.preferences[SCPreferences.PROVIDERS_WEB_PUSH_ENABLED].value
|
|
59
69
|
: false;
|
|
70
|
+
/**
|
|
71
|
+
* Show custom Snackbar dialog to request permission
|
|
72
|
+
* User action required for some browser (ex. Safari)
|
|
73
|
+
*/
|
|
74
|
+
const showCustomRequestNotificationSnackbar = () => {
|
|
75
|
+
if (!js_cookie_1.default.get(Notifications_1.NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE)) {
|
|
76
|
+
enqueueSnackbar(intl.formatMessage({ id: 'ui.webPushNotification.requestPermission', defaultMessage: 'ui.webPushNotification.requestPermission' }), {
|
|
77
|
+
action: (snackbarId) => (react_1.default.createElement(react_1.default.Fragment, null,
|
|
78
|
+
react_1.default.createElement(Button_1.default, { size: "small", onClick: () => requestNotificationPermission(snackbarId) }, intl.formatMessage({ id: 'ui.webPushNotification.allow', defaultMessage: 'ui.webPushNotification.allow' })),
|
|
79
|
+
react_1.default.createElement(Button_1.default, { size: "small", onClick: () => closeRequestNotificationSnackbar(snackbarId) }, intl.formatMessage({ id: 'ui.webPushNotification.block', defaultMessage: 'ui.webPushNotification.block' })))),
|
|
80
|
+
variant: 'default',
|
|
81
|
+
anchorOrigin: { horizontal: 'center', vertical: 'bottom' },
|
|
82
|
+
preventDuplicate: true,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* Close the SnackBar dialog if the request notification permission
|
|
88
|
+
* came from the custom dialog
|
|
89
|
+
* @param snackbarid
|
|
90
|
+
*/
|
|
91
|
+
const closeRequestNotificationSnackbar = (snackbarId) => {
|
|
92
|
+
if (snackbarId) {
|
|
93
|
+
closeSnackbar(snackbarId);
|
|
94
|
+
js_cookie_1.default.set(Notifications_1.NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE, '1');
|
|
95
|
+
}
|
|
96
|
+
};
|
|
60
97
|
/**
|
|
61
98
|
* perform update the Subscription
|
|
62
99
|
* @param data
|
|
@@ -152,7 +189,9 @@ function useSCWebPushMessaging() {
|
|
|
152
189
|
* Get subscription
|
|
153
190
|
*/
|
|
154
191
|
const subscribe = () => {
|
|
155
|
-
navigator.serviceWorker.
|
|
192
|
+
navigator.serviceWorker.getRegistration().then(function (serviceWorkerRegistration) {
|
|
193
|
+
console.log(serviceWorkerRegistration);
|
|
194
|
+
console.log(serviceWorkerRegistration.pushManager);
|
|
156
195
|
serviceWorkerRegistration.pushManager
|
|
157
196
|
.subscribe({ userVisibleOnly: true, applicationServerKey: (0, utils_2.urlB64ToUint8Array)(applicationServerKey) })
|
|
158
197
|
.then(function (subscription) {
|
|
@@ -164,6 +203,8 @@ function useSCWebPushMessaging() {
|
|
|
164
203
|
}
|
|
165
204
|
})
|
|
166
205
|
.catch(function (e) {
|
|
206
|
+
console.log('Error on subscribe web push notification!');
|
|
207
|
+
console.log(e);
|
|
167
208
|
if (Notification.permission === 'denied') {
|
|
168
209
|
// The user denied the notification permission which
|
|
169
210
|
// means we failed to subscribe and the user will need
|
|
@@ -189,9 +230,10 @@ function useSCWebPushMessaging() {
|
|
|
189
230
|
* Request web push notification permission
|
|
190
231
|
* @type {(function(): void)|*}
|
|
191
232
|
*/
|
|
192
|
-
const requestNotificationPermission = () => {
|
|
233
|
+
const requestNotificationPermission = (snackbarId) => {
|
|
193
234
|
if (Notification.permission !== 'granted') {
|
|
194
|
-
Notification.requestPermission()
|
|
235
|
+
Notification.requestPermission()
|
|
236
|
+
.then(function (permission) {
|
|
195
237
|
if (permission === 'granted') {
|
|
196
238
|
navigator.serviceWorker.ready.then((serviceWorkerRegistration) => {
|
|
197
239
|
// Do we already have a push message subscription?
|
|
@@ -216,8 +258,13 @@ function useSCWebPushMessaging() {
|
|
|
216
258
|
else {
|
|
217
259
|
utils_1.Logger.info(Errors_1.SCOPE_SC_CORE, 'Permission for Notifications was denied');
|
|
218
260
|
}
|
|
261
|
+
})
|
|
262
|
+
.catch((err) => {
|
|
263
|
+
console.log(err);
|
|
264
|
+
utils_1.Logger.info(Errors_1.SCOPE_SC_CORE, 'Request web push permission by a user generated gesture');
|
|
219
265
|
});
|
|
220
266
|
}
|
|
267
|
+
closeRequestNotificationSnackbar(snackbarId);
|
|
221
268
|
};
|
|
222
269
|
/**
|
|
223
270
|
* Initialize state
|
|
@@ -235,7 +282,7 @@ function useSCWebPushMessaging() {
|
|
|
235
282
|
* so your development environment must serve content over HTTPS to match a production environment.
|
|
236
283
|
* Check if push messaging is supported.
|
|
237
284
|
*/
|
|
238
|
-
if (!('PushManager' in window && 'serviceWorker' in navigator)) {
|
|
285
|
+
if (!('PushManager' in window && 'serviceWorker' in navigator && 'Notification' in window)) {
|
|
239
286
|
utils_1.Logger.info(Errors_1.SCOPE_SC_CORE, "Service Worker or Push messaging aren't supported.");
|
|
240
287
|
return;
|
|
241
288
|
}
|
|
@@ -249,8 +296,13 @@ function useSCWebPushMessaging() {
|
|
|
249
296
|
}
|
|
250
297
|
else {
|
|
251
298
|
if (Notification.permission === 'default') {
|
|
252
|
-
utils_1.Logger.info(Errors_1.SCOPE_SC_CORE, 'Request permission
|
|
253
|
-
|
|
299
|
+
utils_1.Logger.info(Errors_1.SCOPE_SC_CORE, 'Request permission');
|
|
300
|
+
if (navigator.userAgent.includes('Safari') && !navigator.userAgent.includes('Chrome')) {
|
|
301
|
+
showCustomRequestNotificationSnackbar();
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
requestNotificationPermission(null);
|
|
305
|
+
}
|
|
254
306
|
}
|
|
255
307
|
else if (Notification.permission === 'granted') {
|
|
256
308
|
subscribe();
|
|
@@ -278,7 +330,7 @@ function useSCWebPushMessaging() {
|
|
|
278
330
|
unsubscribe();
|
|
279
331
|
}
|
|
280
332
|
}, [scUserContext.user, scContext.settings.notifications.webPushMessaging, wpSubscription]);
|
|
281
|
-
return { wpSubscription };
|
|
333
|
+
return { wpSubscription, requestNotificationPermission };
|
|
282
334
|
}
|
|
283
335
|
exports.default = useSCWebPushMessaging;
|
|
284
336
|
//# sourceMappingURL=useSCWebPushMessaging.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCWebPushMessaging.js","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.
|
|
1
|
+
{"version":3,"file":"useSCWebPushMessaging.js","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,9 +13,9 @@ export const DEFAULT_CONTEXT_PROVIDERS = [
|
|
|
13
13
|
SCPreferencesProvider,
|
|
14
14
|
SCRoutingProvider,
|
|
15
15
|
SCUserProvider,
|
|
16
|
-
SCNotificationProvider,
|
|
17
|
-
SCThemeProvider,
|
|
18
16
|
SCLocaleProvider,
|
|
17
|
+
SCThemeProvider,
|
|
19
18
|
SCAlertMessagesProvider,
|
|
19
|
+
SCNotificationProvider,
|
|
20
20
|
];
|
|
21
21
|
//# sourceMappingURL=ContextProviders.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextProviders.js","sourceRoot":"","sources":["../../../src/constants/ContextProviders.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,8CAA8C,CAAC;AACjF,OAAO,iBAAiB,MAAM,0CAA0C,CAAC;AACzE,OAAO,cAAc,MAAM,uCAAuC,CAAC;AACnE,OAAO,sBAAsB,MAAM,+CAA+C,CAAC;AACnF,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AACvE,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AAErF,MAAM,CAAC,MAAM,wBAAwB,GAAG,kBAAkB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAkC;IACtE,qBAAqB;IACrB,iBAAiB;IACjB,cAAc;IACd,
|
|
1
|
+
{"version":3,"file":"ContextProviders.js","sourceRoot":"","sources":["../../../src/constants/ContextProviders.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,8CAA8C,CAAC;AACjF,OAAO,iBAAiB,MAAM,0CAA0C,CAAC;AACzE,OAAO,cAAc,MAAM,uCAAuC,CAAC;AACnE,OAAO,sBAAsB,MAAM,+CAA+C,CAAC;AACnF,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AACvE,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AAErF,MAAM,CAAC,MAAM,wBAAwB,GAAG,kBAAkB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAkC;IACtE,qBAAqB;IACrB,iBAAiB;IACjB,cAAc;IACd,gBAAgB;IAChB,eAAe;IACf,uBAAuB;IACvB,sBAAsB;CACvB,CAAC"}
|
|
@@ -5,6 +5,7 @@ import { SCNotificationsType } from '../types/context';
|
|
|
5
5
|
export declare const NOTIFICATIONS_OPTION = "notifications";
|
|
6
6
|
export declare const NOTIFICATIONS_WEB_SOCKET_OPTION = "webSocket";
|
|
7
7
|
export declare const NOTIFICATIONS_WEB_PUSH_MESSAGING_OPTION = "webPushMessaging";
|
|
8
|
+
export declare const NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE = "wpndEnable";
|
|
8
9
|
export declare const NOTIFICATIONS_DISABLE_TOAST_MESSAGE_OPTION = "disableToastMessage";
|
|
9
10
|
export declare const NOTIFICATIONS_SECURE_OPTION = "secure";
|
|
10
11
|
export declare const NOTIFICATIONS_APPLICATION_SERVER_KEY_OPTION = "applicationServerKey";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notifications.d.ts","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAErD,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AACpD,eAAO,MAAM,+BAA+B,cAAc,CAAC;AAC3D,eAAO,MAAM,uCAAuC,qBAAqB,CAAC;AAC1E,eAAO,MAAM,0CAA0C,wBAAwB,CAAC;AAChF,eAAO,MAAM,2BAA2B,WAAW,CAAC;AACpD,eAAO,MAAM,2CAA2C,yBAAyB,CAAC;AAClF,eAAO,MAAM,qBAAqB,EAAE,mBAQnC,CAAC"}
|
|
1
|
+
{"version":3,"file":"Notifications.d.ts","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAErD,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AACpD,eAAO,MAAM,+BAA+B,cAAc,CAAC;AAC3D,eAAO,MAAM,uCAAuC,qBAAqB,CAAC;AAC1E,eAAO,MAAM,8CAA8C,eAAe,CAAC;AAC3E,eAAO,MAAM,0CAA0C,wBAAwB,CAAC;AAChF,eAAO,MAAM,2BAA2B,WAAW,CAAC;AACpD,eAAO,MAAM,2CAA2C,yBAAyB,CAAC;AAClF,eAAO,MAAM,qBAAqB,EAAE,mBAQnC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export const NOTIFICATIONS_OPTION = 'notifications';
|
|
2
2
|
export const NOTIFICATIONS_WEB_SOCKET_OPTION = 'webSocket';
|
|
3
3
|
export const NOTIFICATIONS_WEB_PUSH_MESSAGING_OPTION = 'webPushMessaging';
|
|
4
|
+
export const NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE = 'wpndEnable';
|
|
4
5
|
export const NOTIFICATIONS_DISABLE_TOAST_MESSAGE_OPTION = 'disableToastMessage';
|
|
5
6
|
export const NOTIFICATIONS_SECURE_OPTION = 'secure';
|
|
6
7
|
export const NOTIFICATIONS_APPLICATION_SERVER_KEY_OPTION = 'applicationServerKey';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notifications.js","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,WAAW,CAAC;AAC3D,MAAM,CAAC,MAAM,uCAAuC,GAAG,kBAAkB,CAAC;AAC1E,MAAM,CAAC,MAAM,0CAA0C,GAAG,qBAAqB,CAAC;AAChF,MAAM,CAAC,MAAM,2BAA2B,GAAG,QAAQ,CAAC;AACpD,MAAM,CAAC,MAAM,2CAA2C,GAAG,sBAAsB,CAAC;AAClF,MAAM,CAAC,MAAM,qBAAqB,GAAwB;IACxD,CAAC,+BAA+B,CAAC,EAAE;QACjC,CAAC,0CAA0C,CAAC,EAAE,KAAK;QACnD,CAAC,2BAA2B,CAAC,EAAE,IAAI;KACpC;IACD,CAAC,uCAAuC,CAAC,EAAE;QACzC,CAAC,0CAA0C,CAAC,EAAE,IAAI;KACnD;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"Notifications.js","sourceRoot":"","sources":["../../../src/constants/Notifications.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,WAAW,CAAC;AAC3D,MAAM,CAAC,MAAM,uCAAuC,GAAG,kBAAkB,CAAC;AAC1E,MAAM,CAAC,MAAM,8CAA8C,GAAG,YAAY,CAAC;AAC3E,MAAM,CAAC,MAAM,0CAA0C,GAAG,qBAAqB,CAAC;AAChF,MAAM,CAAC,MAAM,2BAA2B,GAAG,QAAQ,CAAC;AACpD,MAAM,CAAC,MAAM,2CAA2C,GAAG,sBAAsB,CAAC;AAClF,MAAM,CAAC,MAAM,qBAAqB,GAAwB;IACxD,CAAC,+BAA+B,CAAC,EAAE;QACjC,CAAC,0CAA0C,CAAC,EAAE,KAAK;QACnD,CAAC,2BAA2B,CAAC,EAAE,IAAI;KACpC;IACD,CAAC,uCAAuC,CAAC,EAAE;QACzC,CAAC,0CAA0C,CAAC,EAAE,IAAI;KACnD;CACF,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SnackbarKey } from 'notistack';
|
|
1
2
|
/**
|
|
2
3
|
:::info
|
|
3
4
|
This custom hook is used to to init web push messaging.
|
|
@@ -5,5 +6,6 @@
|
|
|
5
6
|
*/
|
|
6
7
|
export default function useSCWebPushMessaging(): {
|
|
7
8
|
wpSubscription: any;
|
|
9
|
+
requestNotificationPermission: (snackbarId: SnackbarKey | null) => void;
|
|
8
10
|
};
|
|
9
11
|
//# sourceMappingURL=useSCWebPushMessaging.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCWebPushMessaging.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.
|
|
1
|
+
{"version":3,"file":"useSCWebPushMessaging.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAC,WAAW,EAAc,MAAM,WAAW,CAAC;AAMnD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB;;gDA8MQ,WAAW,GAAG,IAAI;EAqGtE"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import { useContext, useEffect, useRef, useState } from 'react';
|
|
1
|
+
import React, { useContext, useEffect, useRef, useState } from 'react';
|
|
2
2
|
import { useSCContext } from '../components/provider/SCContextProvider';
|
|
3
3
|
import { useSCUser } from '../components/provider/SCUserProvider';
|
|
4
4
|
import { Logger } from '@selfcommunity/utils';
|
|
5
|
+
import Button from '@mui/material/Button';
|
|
5
6
|
import { loadVersionBrowser, urlB64ToUint8Array } from '@selfcommunity/utils';
|
|
6
7
|
import { SCOPE_SC_CORE } from '../constants/Errors';
|
|
7
8
|
import { http, Endpoints } from '@selfcommunity/api-services';
|
|
8
9
|
import { WEB_PUSH_NOTIFICATION_DEVICE_TYPE } from '../constants/Device';
|
|
9
10
|
import { SCPreferencesContext } from '../components/provider/SCPreferencesProvider';
|
|
11
|
+
import { useSnackbar } from 'notistack';
|
|
10
12
|
import * as SCPreferences from '../constants/Preferences';
|
|
13
|
+
import { NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE } from '../constants/Notifications';
|
|
14
|
+
import Cookies from 'js-cookie';
|
|
15
|
+
import { useIntl } from 'react-intl';
|
|
11
16
|
/**
|
|
12
17
|
:::info
|
|
13
18
|
This custom hook is used to to init web push messaging.
|
|
@@ -18,6 +23,8 @@ export default function useSCWebPushMessaging() {
|
|
|
18
23
|
const scContext = useSCContext();
|
|
19
24
|
const scUserContext = useSCUser();
|
|
20
25
|
const scPreferencesContext = useContext(SCPreferencesContext);
|
|
26
|
+
const intl = useIntl();
|
|
27
|
+
const { enqueueSnackbar, closeSnackbar } = useSnackbar();
|
|
21
28
|
// STATE
|
|
22
29
|
const [wpSubscription, setWpSubscription] = useState(null);
|
|
23
30
|
// REFS
|
|
@@ -32,6 +39,33 @@ export default function useSCWebPushMessaging() {
|
|
|
32
39
|
scPreferencesContext.preferences[SCPreferences.PROVIDERS_WEB_PUSH_ENABLED].value
|
|
33
40
|
? scPreferencesContext.preferences[SCPreferences.PROVIDERS_WEB_PUSH_ENABLED].value
|
|
34
41
|
: false;
|
|
42
|
+
/**
|
|
43
|
+
* Show custom Snackbar dialog to request permission
|
|
44
|
+
* User action required for some browser (ex. Safari)
|
|
45
|
+
*/
|
|
46
|
+
const showCustomRequestNotificationSnackbar = () => {
|
|
47
|
+
if (!Cookies.get(NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE)) {
|
|
48
|
+
enqueueSnackbar(intl.formatMessage({ id: 'ui.webPushNotification.requestPermission', defaultMessage: 'ui.webPushNotification.requestPermission' }), {
|
|
49
|
+
action: (snackbarId) => (React.createElement(React.Fragment, null,
|
|
50
|
+
React.createElement(Button, { size: "small", onClick: () => requestNotificationPermission(snackbarId) }, intl.formatMessage({ id: 'ui.webPushNotification.allow', defaultMessage: 'ui.webPushNotification.allow' })),
|
|
51
|
+
React.createElement(Button, { size: "small", onClick: () => closeRequestNotificationSnackbar(snackbarId) }, intl.formatMessage({ id: 'ui.webPushNotification.block', defaultMessage: 'ui.webPushNotification.block' })))),
|
|
52
|
+
variant: 'default',
|
|
53
|
+
anchorOrigin: { horizontal: 'center', vertical: 'bottom' },
|
|
54
|
+
preventDuplicate: true,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Close the SnackBar dialog if the request notification permission
|
|
60
|
+
* came from the custom dialog
|
|
61
|
+
* @param snackbarid
|
|
62
|
+
*/
|
|
63
|
+
const closeRequestNotificationSnackbar = (snackbarId) => {
|
|
64
|
+
if (snackbarId) {
|
|
65
|
+
closeSnackbar(snackbarId);
|
|
66
|
+
Cookies.set(NOTIFICATIONS_WEB_PUSH_MESSAGING_DIALOG_COOKIE, '1');
|
|
67
|
+
}
|
|
68
|
+
};
|
|
35
69
|
/**
|
|
36
70
|
* perform update the Subscription
|
|
37
71
|
* @param data
|
|
@@ -127,7 +161,9 @@ export default function useSCWebPushMessaging() {
|
|
|
127
161
|
* Get subscription
|
|
128
162
|
*/
|
|
129
163
|
const subscribe = () => {
|
|
130
|
-
navigator.serviceWorker.
|
|
164
|
+
navigator.serviceWorker.getRegistration().then(function (serviceWorkerRegistration) {
|
|
165
|
+
console.log(serviceWorkerRegistration);
|
|
166
|
+
console.log(serviceWorkerRegistration.pushManager);
|
|
131
167
|
serviceWorkerRegistration.pushManager
|
|
132
168
|
.subscribe({ userVisibleOnly: true, applicationServerKey: urlB64ToUint8Array(applicationServerKey) })
|
|
133
169
|
.then(function (subscription) {
|
|
@@ -139,6 +175,8 @@ export default function useSCWebPushMessaging() {
|
|
|
139
175
|
}
|
|
140
176
|
})
|
|
141
177
|
.catch(function (e) {
|
|
178
|
+
console.log('Error on subscribe web push notification!');
|
|
179
|
+
console.log(e);
|
|
142
180
|
if (Notification.permission === 'denied') {
|
|
143
181
|
// The user denied the notification permission which
|
|
144
182
|
// means we failed to subscribe and the user will need
|
|
@@ -164,9 +202,10 @@ export default function useSCWebPushMessaging() {
|
|
|
164
202
|
* Request web push notification permission
|
|
165
203
|
* @type {(function(): void)|*}
|
|
166
204
|
*/
|
|
167
|
-
const requestNotificationPermission = () => {
|
|
205
|
+
const requestNotificationPermission = (snackbarId) => {
|
|
168
206
|
if (Notification.permission !== 'granted') {
|
|
169
|
-
Notification.requestPermission()
|
|
207
|
+
Notification.requestPermission()
|
|
208
|
+
.then(function (permission) {
|
|
170
209
|
if (permission === 'granted') {
|
|
171
210
|
navigator.serviceWorker.ready.then((serviceWorkerRegistration) => {
|
|
172
211
|
// Do we already have a push message subscription?
|
|
@@ -191,8 +230,13 @@ export default function useSCWebPushMessaging() {
|
|
|
191
230
|
else {
|
|
192
231
|
Logger.info(SCOPE_SC_CORE, 'Permission for Notifications was denied');
|
|
193
232
|
}
|
|
233
|
+
})
|
|
234
|
+
.catch((err) => {
|
|
235
|
+
console.log(err);
|
|
236
|
+
Logger.info(SCOPE_SC_CORE, 'Request web push permission by a user generated gesture');
|
|
194
237
|
});
|
|
195
238
|
}
|
|
239
|
+
closeRequestNotificationSnackbar(snackbarId);
|
|
196
240
|
};
|
|
197
241
|
/**
|
|
198
242
|
* Initialize state
|
|
@@ -210,7 +254,7 @@ export default function useSCWebPushMessaging() {
|
|
|
210
254
|
* so your development environment must serve content over HTTPS to match a production environment.
|
|
211
255
|
* Check if push messaging is supported.
|
|
212
256
|
*/
|
|
213
|
-
if (!('PushManager' in window && 'serviceWorker' in navigator)) {
|
|
257
|
+
if (!('PushManager' in window && 'serviceWorker' in navigator && 'Notification' in window)) {
|
|
214
258
|
Logger.info(SCOPE_SC_CORE, "Service Worker or Push messaging aren't supported.");
|
|
215
259
|
return;
|
|
216
260
|
}
|
|
@@ -224,8 +268,13 @@ export default function useSCWebPushMessaging() {
|
|
|
224
268
|
}
|
|
225
269
|
else {
|
|
226
270
|
if (Notification.permission === 'default') {
|
|
227
|
-
Logger.info(SCOPE_SC_CORE, 'Request permission
|
|
228
|
-
|
|
271
|
+
Logger.info(SCOPE_SC_CORE, 'Request permission');
|
|
272
|
+
if (navigator.userAgent.includes('Safari') && !navigator.userAgent.includes('Chrome')) {
|
|
273
|
+
showCustomRequestNotificationSnackbar();
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
requestNotificationPermission(null);
|
|
277
|
+
}
|
|
229
278
|
}
|
|
230
279
|
else if (Notification.permission === 'granted') {
|
|
231
280
|
subscribe();
|
|
@@ -253,6 +302,6 @@ export default function useSCWebPushMessaging() {
|
|
|
253
302
|
unsubscribe();
|
|
254
303
|
}
|
|
255
304
|
}, [scUserContext.user, scContext.settings.notifications.webPushMessaging, wpSubscription]);
|
|
256
|
-
return { wpSubscription };
|
|
305
|
+
return { wpSubscription, requestNotificationPermission };
|
|
257
306
|
}
|
|
258
307
|
//# sourceMappingURL=useSCWebPushMessaging.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCWebPushMessaging.js","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.
|
|
1
|
+
{"version":3,"file":"useSCWebPushMessaging.js","sourceRoot":"","sources":["../../../src/hooks/useSCWebPushMessaging.tsx"],"names":[],"mappings":"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"}
|