@grupalia/rn-ui-kit 0.120.0 → 0.121.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/lib/commonjs/hooks/useNotifications.js +2 -0
- package/lib/commonjs/hooks/useNotifications.js.map +1 -1
- package/lib/commonjs/utils/createFcmDispatcher.js +26 -0
- package/lib/commonjs/utils/createFcmDispatcher.js.map +1 -0
- package/lib/commonjs/utils/index.js +24 -0
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/commonjs/utils/pendingResourceEventQueue.js +59 -0
- package/lib/commonjs/utils/pendingResourceEventQueue.js.map +1 -0
- package/lib/module/hooks/useNotifications.js +2 -0
- package/lib/module/hooks/useNotifications.js.map +1 -1
- package/lib/module/utils/createFcmDispatcher.js +22 -0
- package/lib/module/utils/createFcmDispatcher.js.map +1 -0
- package/lib/module/utils/index.js +2 -0
- package/lib/module/utils/index.js.map +1 -1
- package/lib/module/utils/pendingResourceEventQueue.js +54 -0
- package/lib/module/utils/pendingResourceEventQueue.js.map +1 -0
- package/lib/typescript/commonjs/hooks/useNotifications.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/createFcmDispatcher.d.ts +13 -0
- package/lib/typescript/commonjs/utils/createFcmDispatcher.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts +2 -0
- package/lib/typescript/commonjs/utils/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/pendingResourceEventQueue.d.ts +5 -0
- package/lib/typescript/commonjs/utils/pendingResourceEventQueue.d.ts.map +1 -0
- package/lib/typescript/module/hooks/useNotifications.d.ts.map +1 -1
- package/lib/typescript/module/utils/createFcmDispatcher.d.ts +13 -0
- package/lib/typescript/module/utils/createFcmDispatcher.d.ts.map +1 -0
- package/lib/typescript/module/utils/index.d.ts +2 -0
- package/lib/typescript/module/utils/index.d.ts.map +1 -1
- package/lib/typescript/module/utils/pendingResourceEventQueue.d.ts +5 -0
- package/lib/typescript/module/utils/pendingResourceEventQueue.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -16,6 +16,7 @@ var _reactNative = _interopRequireWildcard(require("@notifee/react-native"));
|
|
|
16
16
|
var _messaging = require("@react-native-firebase/messaging");
|
|
17
17
|
var _react = require("react");
|
|
18
18
|
var _reactNative2 = require("react-native");
|
|
19
|
+
var _pendingResourceEventQueue = require("../utils/pendingResourceEventQueue");
|
|
19
20
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
20
21
|
async function requestUserPermission() {
|
|
21
22
|
const settings = await _reactNative.default.requestPermission();
|
|
@@ -133,6 +134,7 @@ function registerBackgroundFcmHandler(handler) {
|
|
|
133
134
|
(0, _messaging.setBackgroundMessageHandler)((0, _messaging.getMessaging)(), async message => {
|
|
134
135
|
const data = extractNotificationData(message);
|
|
135
136
|
await handler(data);
|
|
137
|
+
await (0, _pendingResourceEventQueue.appendPendingResourceEvent)(data);
|
|
136
138
|
});
|
|
137
139
|
}
|
|
138
140
|
async function unsubscribeFromTopics(topics) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","_interopRequireWildcard","require","_messaging","_react","_reactNative2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","requestUserPermission","settings","notifee","requestPermission","authorizationStatus","AuthorizationStatus","AUTHORIZED","getDeviceToken","enabled","getToken","getMessaging","registerChannels","channels","registered","getChannels","registeredIds","Set","map","channel","id","Promise","all","filter","createChannel","extractNotificationData","message","data","displayForegroundNotification","config","notification","displayNotification","title","undefined","body","android","channelId","defaultChannelId","smallIcon","androidSmallIcon","pressAction","useNotifications","isSignedIn","messaging","useEffect","androidChannels","length","Platform","OS","getInitialNotification","then","onNotificationOpened","messageId","unsubscribeOnMessage","onMessage","onMessageData","unsubscribeOnOpened","onNotificationOpenedApp","unsubscribeOnForegroundTap","onForegroundEvent","event","type","EventType","PRESS","detail","acquireAndRegisterToken","token","onTokenAcquired","error","console","deleteAllChannels","deleteChannel","subscribeToTopics","topics","topic","subscribeToTopic","registerBackgroundFcmHandler","handler","setBackgroundMessageHandler","unsubscribeFromTopics","unsubscribeFromTopic","_default","exports"],"sourceRoot":"../../../src","sources":["hooks/useNotifications.ts"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,uBAAA,CAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAD,OAAA;AAYA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNative","_interopRequireWildcard","require","_messaging","_react","_reactNative2","_pendingResourceEventQueue","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","requestUserPermission","settings","notifee","requestPermission","authorizationStatus","AuthorizationStatus","AUTHORIZED","getDeviceToken","enabled","getToken","getMessaging","registerChannels","channels","registered","getChannels","registeredIds","Set","map","channel","id","Promise","all","filter","createChannel","extractNotificationData","message","data","displayForegroundNotification","config","notification","displayNotification","title","undefined","body","android","channelId","defaultChannelId","smallIcon","androidSmallIcon","pressAction","useNotifications","isSignedIn","messaging","useEffect","androidChannels","length","Platform","OS","getInitialNotification","then","onNotificationOpened","messageId","unsubscribeOnMessage","onMessage","onMessageData","unsubscribeOnOpened","onNotificationOpenedApp","unsubscribeOnForegroundTap","onForegroundEvent","event","type","EventType","PRESS","detail","acquireAndRegisterToken","token","onTokenAcquired","error","console","deleteAllChannels","deleteChannel","subscribeToTopics","topics","topic","subscribeToTopic","registerBackgroundFcmHandler","handler","setBackgroundMessageHandler","appendPendingResourceEvent","unsubscribeFromTopics","unsubscribeFromTopic","_default","exports"],"sourceRoot":"../../../src","sources":["hooks/useNotifications.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createFcmDispatcher = createFcmDispatcher;
|
|
7
|
+
var _log = _interopRequireDefault(require("./log"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
function createFcmDispatcher(handlers, options = {}) {
|
|
10
|
+
return data => {
|
|
11
|
+
if (!data.resource_type || !data.action) return;
|
|
12
|
+
const key = `${data.resource_type}:${data.action}`;
|
|
13
|
+
const handler = handlers[key];
|
|
14
|
+
if (!handler) return;
|
|
15
|
+
try {
|
|
16
|
+
handler(data);
|
|
17
|
+
} catch (err) {
|
|
18
|
+
if (options.onError) {
|
|
19
|
+
options.onError(err, key);
|
|
20
|
+
} else {
|
|
21
|
+
(0, _log.default)('fcm', `handler error: ${key}`, err instanceof Error ? err : String(err));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=createFcmDispatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_log","_interopRequireDefault","require","e","__esModule","default","createFcmDispatcher","handlers","options","data","resource_type","action","key","handler","err","onError","log","Error","String"],"sourceRoot":"../../../src","sources":["utils/createFcmDispatcher.ts"],"mappings":";;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAwB,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAsBxB,SAASG,mBAAmBA,CAC1BC,QAA4C,EAC5CC,OAAmC,GAAG,CAAC,CAAC,EACP;EACjC,OAAQC,IAAI,IAAK;IACf,IAAI,CAACA,IAAI,CAACC,aAAa,IAAI,CAACD,IAAI,CAACE,MAAM,EAAE;IAEzC,MAAMC,GAAG,GAAG,GAAGH,IAAI,CAACC,aAAa,IAAID,IAAI,CAACE,MAAM,EAAsC;IACtF,MAAME,OAAO,GAAGN,QAAQ,CAACK,GAAG,CAAC;IAC7B,IAAI,CAACC,OAAO,EAAE;IAEd,IAAI;MACFA,OAAO,CAACJ,IAAI,CAAC;IACf,CAAC,CAAC,OAAOK,GAAG,EAAE;MACZ,IAAIN,OAAO,CAACO,OAAO,EAAE;QACnBP,OAAO,CAACO,OAAO,CAACD,GAAG,EAAEF,GAAG,CAAC;MAC3B,CAAC,MAAM;QACL,IAAAI,YAAG,EAAC,KAAK,EAAE,kBAAkBJ,GAAG,EAAE,EAAEE,GAAG,YAAYG,KAAK,GAAGH,GAAG,GAAGI,MAAM,CAACJ,GAAG,CAAC,CAAC;MAC/E;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -132,6 +132,30 @@ Object.keys(_keyboard).forEach(function (key) {
|
|
|
132
132
|
}
|
|
133
133
|
});
|
|
134
134
|
});
|
|
135
|
+
var _createFcmDispatcher = require("./createFcmDispatcher");
|
|
136
|
+
Object.keys(_createFcmDispatcher).forEach(function (key) {
|
|
137
|
+
if (key === "default" || key === "__esModule") return;
|
|
138
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
139
|
+
if (key in exports && exports[key] === _createFcmDispatcher[key]) return;
|
|
140
|
+
Object.defineProperty(exports, key, {
|
|
141
|
+
enumerable: true,
|
|
142
|
+
get: function () {
|
|
143
|
+
return _createFcmDispatcher[key];
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
var _pendingResourceEventQueue = require("./pendingResourceEventQueue");
|
|
148
|
+
Object.keys(_pendingResourceEventQueue).forEach(function (key) {
|
|
149
|
+
if (key === "default" || key === "__esModule") return;
|
|
150
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
151
|
+
if (key in exports && exports[key] === _pendingResourceEventQueue[key]) return;
|
|
152
|
+
Object.defineProperty(exports, key, {
|
|
153
|
+
enumerable: true,
|
|
154
|
+
get: function () {
|
|
155
|
+
return _pendingResourceEventQueue[key];
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
});
|
|
135
159
|
var _delay = _interopRequireDefault(require("./delay"));
|
|
136
160
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
137
161
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clabe","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_fileDirectoryUtils","_timeConstants","_filters","_log","_svg","_openExternalURL","_openFileInSystemViewer","_downloadFileToLocalStorage","_keyboard","_delay","_interopRequireDefault","e","__esModule","default"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_clabe","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_fileDirectoryUtils","_timeConstants","_filters","_log","_svg","_openExternalURL","_openFileInSystemViewer","_downloadFileToLocalStorage","_keyboard","_createFcmDispatcher","_pendingResourceEventQueue","_delay","_interopRequireDefault","e","__esModule","default"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.appendPendingResourceEvent = appendPendingResourceEvent;
|
|
7
|
+
exports.flushPendingResourceEventQueue = flushPendingResourceEventQueue;
|
|
8
|
+
var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
|
|
9
|
+
var _reactNative = require("@sentry/react-native");
|
|
10
|
+
var _log = _interopRequireDefault(require("./log"));
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
// Resource events extracted from killed-state FCM data messages are persisted
|
|
13
|
+
// here by the bg-handler so they can be dispatched on the next cold mount
|
|
14
|
+
// after the queryClient hydrates. Catches the "killed + open without tap" and
|
|
15
|
+
// "data-only killed" cases that `getInitialNotification` can't observe.
|
|
16
|
+
const PENDING_RESOURCE_EVENT_QUEUE_KEY = 'PENDING_RESOURCE_EVENTS';
|
|
17
|
+
async function readQueue() {
|
|
18
|
+
try {
|
|
19
|
+
const raw = await _asyncStorage.default.getItem(PENDING_RESOURCE_EVENT_QUEUE_KEY);
|
|
20
|
+
if (!raw) return [];
|
|
21
|
+
const parsed = JSON.parse(raw);
|
|
22
|
+
return Array.isArray(parsed) ? parsed : [];
|
|
23
|
+
} catch (err) {
|
|
24
|
+
(0, _log.default)('fcm', 'pendingResourceEventQueue.read error', err instanceof Error ? err : String(err));
|
|
25
|
+
return [];
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
async function doAppend(data) {
|
|
29
|
+
if (!data.resource_type || !data.action) return;
|
|
30
|
+
const queue = await readQueue();
|
|
31
|
+
const deduped = queue.filter(e => !(e.resource_type === data.resource_type && e.action === data.action));
|
|
32
|
+
deduped.push(data);
|
|
33
|
+
try {
|
|
34
|
+
await _asyncStorage.default.setItem(PENDING_RESOURCE_EVENT_QUEUE_KEY, JSON.stringify(deduped));
|
|
35
|
+
} catch (err) {
|
|
36
|
+
(0, _log.default)('fcm', 'pendingResourceEventQueue.append error', err instanceof Error ? err : String(err));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// "atomize" AsyncStorage read-modify-write
|
|
41
|
+
let appendChain = Promise.resolve();
|
|
42
|
+
function appendPendingResourceEvent(data) {
|
|
43
|
+
const next = appendChain.then(() => doAppend(data)).catch(err => {
|
|
44
|
+
(0, _reactNative.captureException)(err);
|
|
45
|
+
});
|
|
46
|
+
appendChain = next;
|
|
47
|
+
return next;
|
|
48
|
+
}
|
|
49
|
+
async function flushPendingResourceEventQueue(handler) {
|
|
50
|
+
const queue = await readQueue();
|
|
51
|
+
if (queue.length === 0) return;
|
|
52
|
+
try {
|
|
53
|
+
await _asyncStorage.default.removeItem(PENDING_RESOURCE_EVENT_QUEUE_KEY);
|
|
54
|
+
} catch (err) {
|
|
55
|
+
(0, _log.default)('fcm', 'pendingResourceEventQueue.clear error', err instanceof Error ? err : String(err));
|
|
56
|
+
}
|
|
57
|
+
queue.forEach(event => handler(event));
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=pendingResourceEventQueue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_asyncStorage","_interopRequireDefault","require","_reactNative","_log","e","__esModule","default","PENDING_RESOURCE_EVENT_QUEUE_KEY","readQueue","raw","AsyncStorage","getItem","parsed","JSON","parse","Array","isArray","err","log","Error","String","doAppend","data","resource_type","action","queue","deduped","filter","push","setItem","stringify","appendChain","Promise","resolve","appendPendingResourceEvent","next","then","catch","captureException","flushPendingResourceEventQueue","handler","length","removeItem","forEach","event"],"sourceRoot":"../../../src","sources":["utils/pendingResourceEventQueue.ts"],"mappings":";;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,IAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAwB,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAMxB;AACA;AACA;AACA;AACA,MAAMG,gCAAgC,GAAG,yBAAyB;AAElE,eAAeC,SAASA,CAAA,EAEyB;EAC/C,IAAI;IACF,MAAMC,GAAG,GAAG,MAAMC,qBAAY,CAACC,OAAO,CAACJ,gCAAgC,CAAC;IACxE,IAAI,CAACE,GAAG,EAAE,OAAO,EAAE;IACnB,MAAMG,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACL,GAAG,CAAC;IAC9B,OAAOM,KAAK,CAACC,OAAO,CAACJ,MAAM,CAAC,GAAGA,MAAM,GAAG,EAAE;EAC5C,CAAC,CAAC,OAAOK,GAAG,EAAE;IACZ,IAAAC,YAAG,EAAC,KAAK,EAAE,sCAAsC,EAAED,GAAG,YAAYE,KAAK,GAAGF,GAAG,GAAGG,MAAM,CAACH,GAAG,CAAC,CAAC;IAC5F,OAAO,EAAE;EACX;AACF;AAEA,eAAeI,QAAQA,CAErBC,IAAsC,EAAiB;EACvD,IAAI,CAACA,IAAI,CAACC,aAAa,IAAI,CAACD,IAAI,CAACE,MAAM,EAAE;EAEzC,MAAMC,KAAK,GAAG,MAAMjB,SAAS,CAAiB,CAAC;EAC/C,MAAMkB,OAAO,GAAGD,KAAK,CAACE,MAAM,CACzBvB,CAAC,IAAK,EAAEA,CAAC,CAACmB,aAAa,KAAKD,IAAI,CAACC,aAAa,IAAInB,CAAC,CAACoB,MAAM,KAAKF,IAAI,CAACE,MAAM,CAC7E,CAAC;EACDE,OAAO,CAACE,IAAI,CAACN,IAAI,CAAC;EAElB,IAAI;IACF,MAAMZ,qBAAY,CAACmB,OAAO,CAACtB,gCAAgC,EAAEM,IAAI,CAACiB,SAAS,CAACJ,OAAO,CAAC,CAAC;EACvF,CAAC,CAAC,OAAOT,GAAG,EAAE;IACZ,IAAAC,YAAG,EAAC,KAAK,EAAE,wCAAwC,EAAED,GAAG,YAAYE,KAAK,GAAGF,GAAG,GAAGG,MAAM,CAACH,GAAG,CAAC,CAAC;EAChG;AACF;;AAEA;AACA,IAAIc,WAA6B,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;AAErD,SAASC,0BAA0BA,CAEjCZ,IAAsC,EAAiB;EACvD,MAAMa,IAAI,GAAGJ,WAAW,CACrBK,IAAI,CAAC,MAAMf,QAAQ,CAACC,IAAI,CAAC,CAAC,CAC1Be,KAAK,CAAEpB,GAAG,IAAK;IACd,IAAAqB,6BAAgB,EAACrB,GAAG,CAAC;EACvB,CAAC,CAAC;EACJc,WAAW,GAAGI,IAAI;EAClB,OAAOA,IAAI;AACb;AAEA,eAAeI,8BAA8BA,CAE3CC,OAAyD,EAAiB;EAC1E,MAAMf,KAAK,GAAG,MAAMjB,SAAS,CAAiB,CAAC;EAC/C,IAAIiB,KAAK,CAACgB,MAAM,KAAK,CAAC,EAAE;EAExB,IAAI;IACF,MAAM/B,qBAAY,CAACgC,UAAU,CAACnC,gCAAgC,CAAC;EACjE,CAAC,CAAC,OAAOU,GAAG,EAAE;IACZ,IAAAC,YAAG,EAAC,KAAK,EAAE,uCAAuC,EAAED,GAAG,YAAYE,KAAK,GAAGF,GAAG,GAAGG,MAAM,CAACH,GAAG,CAAC,CAAC;EAC/F;EAEAQ,KAAK,CAACkB,OAAO,CAAEC,KAAK,IAAKJ,OAAO,CAACI,KAAK,CAAC,CAAC;AAC1C","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import notifee, { EventType } from '@notifee/react-native';
|
|
|
4
4
|
import { getMessaging, getToken, AuthorizationStatus, getInitialNotification, onMessage, onNotificationOpenedApp, setBackgroundMessageHandler, subscribeToTopic, unsubscribeFromTopic } from '@react-native-firebase/messaging';
|
|
5
5
|
import { useEffect } from 'react';
|
|
6
6
|
import { Platform } from 'react-native';
|
|
7
|
+
import { appendPendingResourceEvent } from "../utils/pendingResourceEventQueue.js";
|
|
7
8
|
async function requestUserPermission() {
|
|
8
9
|
const settings = await notifee.requestPermission();
|
|
9
10
|
return settings.authorizationStatus >= AuthorizationStatus.AUTHORIZED;
|
|
@@ -120,6 +121,7 @@ function registerBackgroundFcmHandler(handler) {
|
|
|
120
121
|
setBackgroundMessageHandler(getMessaging(), async message => {
|
|
121
122
|
const data = extractNotificationData(message);
|
|
122
123
|
await handler(data);
|
|
124
|
+
await appendPendingResourceEvent(data);
|
|
123
125
|
});
|
|
124
126
|
}
|
|
125
127
|
async function unsubscribeFromTopics(topics) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["notifee","EventType","getMessaging","getToken","AuthorizationStatus","getInitialNotification","onMessage","onNotificationOpenedApp","setBackgroundMessageHandler","subscribeToTopic","unsubscribeFromTopic","useEffect","Platform","requestUserPermission","settings","requestPermission","authorizationStatus","AUTHORIZED","getDeviceToken","enabled","registerChannels","channels","registered","getChannels","registeredIds","Set","map","channel","id","Promise","all","filter","has","createChannel","extractNotificationData","message","data","displayForegroundNotification","config","notification","displayNotification","title","undefined","body","android","channelId","defaultChannelId","smallIcon","androidSmallIcon","pressAction","useNotifications","isSignedIn","messaging","androidChannels","length","OS","then","onNotificationOpened","messageId","unsubscribeOnMessage","onMessageData","unsubscribeOnOpened","unsubscribeOnForegroundTap","onForegroundEvent","event","type","PRESS","detail","acquireAndRegisterToken","token","onTokenAcquired","error","console","deleteAllChannels","deleteChannel","subscribeToTopics","topics","topic","registerBackgroundFcmHandler","handler","unsubscribeFromTopics"],"sourceRoot":"../../../src","sources":["hooks/useNotifications.ts"],"mappings":";;AAAA,OAAOA,OAAO,IACZC,SAAS,QAGJ,uBAAuB;AAC9B,SACEC,YAAY,EACZC,QAAQ,EACRC,mBAAmB,EACnBC,sBAAsB,EACtBC,SAAS,EACTC,uBAAuB,EACvBC,2BAA2B,EAC3BC,gBAAgB,EAChBC,oBAAoB,QAEf,kCAAkC;AACzC,SAASC,SAAS,QAAQ,OAAO;AACjC,SAASC,QAAQ,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["notifee","EventType","getMessaging","getToken","AuthorizationStatus","getInitialNotification","onMessage","onNotificationOpenedApp","setBackgroundMessageHandler","subscribeToTopic","unsubscribeFromTopic","useEffect","Platform","appendPendingResourceEvent","requestUserPermission","settings","requestPermission","authorizationStatus","AUTHORIZED","getDeviceToken","enabled","registerChannels","channels","registered","getChannels","registeredIds","Set","map","channel","id","Promise","all","filter","has","createChannel","extractNotificationData","message","data","displayForegroundNotification","config","notification","displayNotification","title","undefined","body","android","channelId","defaultChannelId","smallIcon","androidSmallIcon","pressAction","useNotifications","isSignedIn","messaging","androidChannels","length","OS","then","onNotificationOpened","messageId","unsubscribeOnMessage","onMessageData","unsubscribeOnOpened","unsubscribeOnForegroundTap","onForegroundEvent","event","type","PRESS","detail","acquireAndRegisterToken","token","onTokenAcquired","error","console","deleteAllChannels","deleteChannel","subscribeToTopics","topics","topic","registerBackgroundFcmHandler","handler","unsubscribeFromTopics"],"sourceRoot":"../../../src","sources":["hooks/useNotifications.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import log from "./log.js";
|
|
4
|
+
function createFcmDispatcher(handlers, options = {}) {
|
|
5
|
+
return data => {
|
|
6
|
+
if (!data.resource_type || !data.action) return;
|
|
7
|
+
const key = `${data.resource_type}:${data.action}`;
|
|
8
|
+
const handler = handlers[key];
|
|
9
|
+
if (!handler) return;
|
|
10
|
+
try {
|
|
11
|
+
handler(data);
|
|
12
|
+
} catch (err) {
|
|
13
|
+
if (options.onError) {
|
|
14
|
+
options.onError(err, key);
|
|
15
|
+
} else {
|
|
16
|
+
log('fcm', `handler error: ${key}`, err instanceof Error ? err : String(err));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export { createFcmDispatcher };
|
|
22
|
+
//# sourceMappingURL=createFcmDispatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["log","createFcmDispatcher","handlers","options","data","resource_type","action","key","handler","err","onError","Error","String"],"sourceRoot":"../../../src","sources":["utils/createFcmDispatcher.ts"],"mappings":";;AAAA,OAAOA,GAAG,MAAM,UAAO;AAsBvB,SAASC,mBAAmBA,CAC1BC,QAA4C,EAC5CC,OAAmC,GAAG,CAAC,CAAC,EACP;EACjC,OAAQC,IAAI,IAAK;IACf,IAAI,CAACA,IAAI,CAACC,aAAa,IAAI,CAACD,IAAI,CAACE,MAAM,EAAE;IAEzC,MAAMC,GAAG,GAAG,GAAGH,IAAI,CAACC,aAAa,IAAID,IAAI,CAACE,MAAM,EAAsC;IACtF,MAAME,OAAO,GAAGN,QAAQ,CAACK,GAAG,CAAC;IAC7B,IAAI,CAACC,OAAO,EAAE;IAEd,IAAI;MACFA,OAAO,CAACJ,IAAI,CAAC;IACf,CAAC,CAAC,OAAOK,GAAG,EAAE;MACZ,IAAIN,OAAO,CAACO,OAAO,EAAE;QACnBP,OAAO,CAACO,OAAO,CAACD,GAAG,EAAEF,GAAG,CAAC;MAC3B,CAAC,MAAM;QACLP,GAAG,CAAC,KAAK,EAAE,kBAAkBO,GAAG,EAAE,EAAEE,GAAG,YAAYE,KAAK,GAAGF,GAAG,GAAGG,MAAM,CAACH,GAAG,CAAC,CAAC;MAC/E;IACF;EACF,CAAC;AACH;AAEA,SACER,mBAAmB","ignoreList":[]}
|
|
@@ -10,5 +10,7 @@ export * from "./openExternalURL.js";
|
|
|
10
10
|
export * from "./openFileInSystemViewer.js";
|
|
11
11
|
export * from "./downloadFileToLocalStorage.js";
|
|
12
12
|
export * from "./keyboard.js";
|
|
13
|
+
export * from "./createFcmDispatcher.js";
|
|
14
|
+
export * from "./pendingResourceEventQueue.js";
|
|
13
15
|
export { default as delay } from "./delay.js";
|
|
14
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["default","delay"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAAA,cAAc,YAAS;AACvB,cAAc,yBAAsB;AACpC,cAAc,oBAAiB;AAC/B,cAAc,cAAW;AACzB,cAAc,UAAO;AACrB,cAAc,UAAO;AACrB,cAAc,sBAAmB;AACjC,cAAc,6BAA0B;AACxC,cAAc,iCAA8B;AAC5C,cAAc,eAAY;AAC1B,SAASA,OAAO,IAAIC,KAAK,QAAQ,YAAS","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["default","delay"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAAA,cAAc,YAAS;AACvB,cAAc,yBAAsB;AACpC,cAAc,oBAAiB;AAC/B,cAAc,cAAW;AACzB,cAAc,UAAO;AACrB,cAAc,UAAO;AACrB,cAAc,sBAAmB;AACjC,cAAc,6BAA0B;AACxC,cAAc,iCAA8B;AAC5C,cAAc,eAAY;AAC1B,cAAc,0BAAuB;AACrC,cAAc,gCAA6B;AAC3C,SAASA,OAAO,IAAIC,KAAK,QAAQ,YAAS","ignoreList":[]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
4
|
+
import { captureException } from '@sentry/react-native';
|
|
5
|
+
import log from "./log.js";
|
|
6
|
+
// Resource events extracted from killed-state FCM data messages are persisted
|
|
7
|
+
// here by the bg-handler so they can be dispatched on the next cold mount
|
|
8
|
+
// after the queryClient hydrates. Catches the "killed + open without tap" and
|
|
9
|
+
// "data-only killed" cases that `getInitialNotification` can't observe.
|
|
10
|
+
const PENDING_RESOURCE_EVENT_QUEUE_KEY = 'PENDING_RESOURCE_EVENTS';
|
|
11
|
+
async function readQueue() {
|
|
12
|
+
try {
|
|
13
|
+
const raw = await AsyncStorage.getItem(PENDING_RESOURCE_EVENT_QUEUE_KEY);
|
|
14
|
+
if (!raw) return [];
|
|
15
|
+
const parsed = JSON.parse(raw);
|
|
16
|
+
return Array.isArray(parsed) ? parsed : [];
|
|
17
|
+
} catch (err) {
|
|
18
|
+
log('fcm', 'pendingResourceEventQueue.read error', err instanceof Error ? err : String(err));
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
async function doAppend(data) {
|
|
23
|
+
if (!data.resource_type || !data.action) return;
|
|
24
|
+
const queue = await readQueue();
|
|
25
|
+
const deduped = queue.filter(e => !(e.resource_type === data.resource_type && e.action === data.action));
|
|
26
|
+
deduped.push(data);
|
|
27
|
+
try {
|
|
28
|
+
await AsyncStorage.setItem(PENDING_RESOURCE_EVENT_QUEUE_KEY, JSON.stringify(deduped));
|
|
29
|
+
} catch (err) {
|
|
30
|
+
log('fcm', 'pendingResourceEventQueue.append error', err instanceof Error ? err : String(err));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// "atomize" AsyncStorage read-modify-write
|
|
35
|
+
let appendChain = Promise.resolve();
|
|
36
|
+
function appendPendingResourceEvent(data) {
|
|
37
|
+
const next = appendChain.then(() => doAppend(data)).catch(err => {
|
|
38
|
+
captureException(err);
|
|
39
|
+
});
|
|
40
|
+
appendChain = next;
|
|
41
|
+
return next;
|
|
42
|
+
}
|
|
43
|
+
async function flushPendingResourceEventQueue(handler) {
|
|
44
|
+
const queue = await readQueue();
|
|
45
|
+
if (queue.length === 0) return;
|
|
46
|
+
try {
|
|
47
|
+
await AsyncStorage.removeItem(PENDING_RESOURCE_EVENT_QUEUE_KEY);
|
|
48
|
+
} catch (err) {
|
|
49
|
+
log('fcm', 'pendingResourceEventQueue.clear error', err instanceof Error ? err : String(err));
|
|
50
|
+
}
|
|
51
|
+
queue.forEach(event => handler(event));
|
|
52
|
+
}
|
|
53
|
+
export { appendPendingResourceEvent, flushPendingResourceEventQueue };
|
|
54
|
+
//# sourceMappingURL=pendingResourceEventQueue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AsyncStorage","captureException","log","PENDING_RESOURCE_EVENT_QUEUE_KEY","readQueue","raw","getItem","parsed","JSON","parse","Array","isArray","err","Error","String","doAppend","data","resource_type","action","queue","deduped","filter","e","push","setItem","stringify","appendChain","Promise","resolve","appendPendingResourceEvent","next","then","catch","flushPendingResourceEventQueue","handler","length","removeItem","forEach","event"],"sourceRoot":"../../../src","sources":["utils/pendingResourceEventQueue.ts"],"mappings":";;AAAA,OAAOA,YAAY,MAAM,2CAA2C;AACpE,SAASC,gBAAgB,QAAQ,sBAAsB;AAEvD,OAAOC,GAAG,MAAM,UAAO;AAMvB;AACA;AACA;AACA;AACA,MAAMC,gCAAgC,GAAG,yBAAyB;AAElE,eAAeC,SAASA,CAAA,EAEyB;EAC/C,IAAI;IACF,MAAMC,GAAG,GAAG,MAAML,YAAY,CAACM,OAAO,CAACH,gCAAgC,CAAC;IACxE,IAAI,CAACE,GAAG,EAAE,OAAO,EAAE;IACnB,MAAME,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACJ,GAAG,CAAC;IAC9B,OAAOK,KAAK,CAACC,OAAO,CAACJ,MAAM,CAAC,GAAGA,MAAM,GAAG,EAAE;EAC5C,CAAC,CAAC,OAAOK,GAAG,EAAE;IACZV,GAAG,CAAC,KAAK,EAAE,sCAAsC,EAAEU,GAAG,YAAYC,KAAK,GAAGD,GAAG,GAAGE,MAAM,CAACF,GAAG,CAAC,CAAC;IAC5F,OAAO,EAAE;EACX;AACF;AAEA,eAAeG,QAAQA,CAErBC,IAAsC,EAAiB;EACvD,IAAI,CAACA,IAAI,CAACC,aAAa,IAAI,CAACD,IAAI,CAACE,MAAM,EAAE;EAEzC,MAAMC,KAAK,GAAG,MAAMf,SAAS,CAAiB,CAAC;EAC/C,MAAMgB,OAAO,GAAGD,KAAK,CAACE,MAAM,CACzBC,CAAC,IAAK,EAAEA,CAAC,CAACL,aAAa,KAAKD,IAAI,CAACC,aAAa,IAAIK,CAAC,CAACJ,MAAM,KAAKF,IAAI,CAACE,MAAM,CAC7E,CAAC;EACDE,OAAO,CAACG,IAAI,CAACP,IAAI,CAAC;EAElB,IAAI;IACF,MAAMhB,YAAY,CAACwB,OAAO,CAACrB,gCAAgC,EAAEK,IAAI,CAACiB,SAAS,CAACL,OAAO,CAAC,CAAC;EACvF,CAAC,CAAC,OAAOR,GAAG,EAAE;IACZV,GAAG,CAAC,KAAK,EAAE,wCAAwC,EAAEU,GAAG,YAAYC,KAAK,GAAGD,GAAG,GAAGE,MAAM,CAACF,GAAG,CAAC,CAAC;EAChG;AACF;;AAEA;AACA,IAAIc,WAA6B,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;AAErD,SAASC,0BAA0BA,CAEjCb,IAAsC,EAAiB;EACvD,MAAMc,IAAI,GAAGJ,WAAW,CACrBK,IAAI,CAAC,MAAMhB,QAAQ,CAACC,IAAI,CAAC,CAAC,CAC1BgB,KAAK,CAAEpB,GAAG,IAAK;IACdX,gBAAgB,CAACW,GAAG,CAAC;EACvB,CAAC,CAAC;EACJc,WAAW,GAAGI,IAAI;EAClB,OAAOA,IAAI;AACb;AAEA,eAAeG,8BAA8BA,CAE3CC,OAAyD,EAAiB;EAC1E,MAAMf,KAAK,GAAG,MAAMf,SAAS,CAAiB,CAAC;EAC/C,IAAIe,KAAK,CAACgB,MAAM,KAAK,CAAC,EAAE;EAExB,IAAI;IACF,MAAMnC,YAAY,CAACoC,UAAU,CAACjC,gCAAgC,CAAC;EACjE,CAAC,CAAC,OAAOS,GAAG,EAAE;IACZV,GAAG,CAAC,KAAK,EAAE,uCAAuC,EAAEU,GAAG,YAAYC,KAAK,GAAGD,GAAG,GAAGE,MAAM,CAACF,GAAG,CAAC,CAAC;EAC/F;EAEAO,KAAK,CAACkB,OAAO,CAAEC,KAAK,IAAKJ,OAAO,CAACI,KAAK,CAAC,CAAC;AAC1C;AAEA,SAAST,0BAA0B,EAAEI,8BAA8B","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNotifications.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useNotifications.ts"],"names":[],"mappings":"AAAA,OAAgB,EAGd,cAAc,EACf,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useNotifications.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useNotifications.ts"],"names":[],"mappings":"AAAA,OAAgB,EAGd,cAAc,EACf,MAAM,uBAAuB,CAAC;AAkB/B,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B,MAAM,MAAM,yBAAyB,GAAG;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF,MAAM,MAAM,gBAAgB,CAC1B,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,IAC1E,CAAC,cAAc,GAAG;IAAE,aAAa,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC,GAAG;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,mBAAmB,CAClC,cAAc,SAAS,yBAAyB,GAAG,yBAAyB;IAE5E,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5F,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CAClE;AAED,iBAAe,qBAAqB,qBAInC;AAED,iBAAe,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKtD;AAED,iBAAe,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CASzE;AA4BD,iBAAS,gBAAgB,CACvB,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAC5E,MAAM,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,IAAI,CAuEnD;AAED,iBAAe,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAGhD;AAED,iBAAe,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;AAKD,iBAAS,4BAA4B,CACnC,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAE5E,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACxE,IAAI,CAMN;AAED,iBAAe,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpE;AAED,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,GACjB,CAAC;AACF,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { NotificationData, NotificationResourceEvent } from '../hooks/useNotifications';
|
|
2
|
+
type ResourceEventKey<TResourceEvent extends NotificationResourceEvent> = TResourceEvent extends {
|
|
3
|
+
resource_type: infer R extends string;
|
|
4
|
+
action: infer A extends string;
|
|
5
|
+
} ? `${R}:${A}` : never;
|
|
6
|
+
type FcmEventHandler<TResourceEvent extends NotificationResourceEvent = NotificationResourceEvent> = (data: NotificationData<TResourceEvent>) => void;
|
|
7
|
+
type FcmEventHandlerMap<TResourceEvent extends NotificationResourceEvent> = Record<ResourceEventKey<TResourceEvent>, FcmEventHandler<TResourceEvent>>;
|
|
8
|
+
interface CreateFcmDispatcherOptions {
|
|
9
|
+
onError?: (err: unknown, key: string) => void;
|
|
10
|
+
}
|
|
11
|
+
declare function createFcmDispatcher<TResourceEvent extends NotificationResourceEvent>(handlers: FcmEventHandlerMap<TResourceEvent>, options?: CreateFcmDispatcherOptions): FcmEventHandler<TResourceEvent>;
|
|
12
|
+
export { createFcmDispatcher, type CreateFcmDispatcherOptions, type FcmEventHandler, type FcmEventHandlerMap, type ResourceEventKey, };
|
|
13
|
+
//# sourceMappingURL=createFcmDispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFcmDispatcher.d.ts","sourceRoot":"","sources":["../../../../src/utils/createFcmDispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,KAAK,gBAAgB,CAAC,cAAc,SAAS,yBAAyB,IACpE,cAAc,SAAS;IAAE,aAAa,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,SAAS,MAAM,CAAA;CAAE,GAC5F,GAAG,CAAC,IAAI,CAAC,EAAE,GACX,KAAK,CAAC;AAEZ,KAAK,eAAe,CAClB,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,IAC1E,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;AAErD,KAAK,kBAAkB,CAAC,cAAc,SAAS,yBAAyB,IACtE,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;AAE5E,UAAU,0BAA0B;IAClC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAED,iBAAS,mBAAmB,CAAC,cAAc,SAAS,yBAAyB,EAC3E,QAAQ,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAC5C,OAAO,GAAE,0BAA+B,GACvC,eAAe,CAAC,cAAc,CAAC,CAkBjC;AAED,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,EAC/B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,GACtB,CAAC"}
|
|
@@ -8,5 +8,7 @@ export * from './openExternalURL';
|
|
|
8
8
|
export * from './openFileInSystemViewer';
|
|
9
9
|
export * from './downloadFileToLocalStorage';
|
|
10
10
|
export * from './keyboard';
|
|
11
|
+
export * from './createFcmDispatcher';
|
|
12
|
+
export * from './pendingResourceEventQueue';
|
|
11
13
|
export { default as delay } from './delay';
|
|
12
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { NotificationData, NotificationResourceEvent } from '../hooks/useNotifications';
|
|
2
|
+
declare function appendPendingResourceEvent<TResourceEvent extends NotificationResourceEvent = NotificationResourceEvent>(data: NotificationData<TResourceEvent>): Promise<void>;
|
|
3
|
+
declare function flushPendingResourceEventQueue<TResourceEvent extends NotificationResourceEvent = NotificationResourceEvent>(handler: (data: NotificationData<TResourceEvent>) => void): Promise<void>;
|
|
4
|
+
export { appendPendingResourceEvent, flushPendingResourceEventQueue };
|
|
5
|
+
//# sourceMappingURL=pendingResourceEventQueue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pendingResourceEventQueue.d.ts","sourceRoot":"","sources":["../../../../src/utils/pendingResourceEventQueue.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AA2CnC,iBAAS,0BAA0B,CACjC,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAC5E,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAQvD;AAED,iBAAe,8BAA8B,CAC3C,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAC5E,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAW1E;AAED,OAAO,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNotifications.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useNotifications.ts"],"names":[],"mappings":"AAAA,OAAgB,EAGd,cAAc,EACf,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useNotifications.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useNotifications.ts"],"names":[],"mappings":"AAAA,OAAgB,EAGd,cAAc,EACf,MAAM,uBAAuB,CAAC;AAkB/B,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B,MAAM,MAAM,yBAAyB,GAAG;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF,MAAM,MAAM,gBAAgB,CAC1B,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,IAC1E,CAAC,cAAc,GAAG;IAAE,aAAa,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC,GAAG;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,mBAAmB,CAClC,cAAc,SAAS,yBAAyB,GAAG,yBAAyB;IAE5E,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5F,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CAClE;AAED,iBAAe,qBAAqB,qBAInC;AAED,iBAAe,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKtD;AAED,iBAAe,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CASzE;AA4BD,iBAAS,gBAAgB,CACvB,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAC5E,MAAM,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,IAAI,CAuEnD;AAED,iBAAe,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAGhD;AAED,iBAAe,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;AAKD,iBAAS,4BAA4B,CACnC,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAE5E,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACxE,IAAI,CAMN;AAED,iBAAe,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpE;AAED,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,GACjB,CAAC;AACF,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { NotificationData, NotificationResourceEvent } from '../hooks/useNotifications';
|
|
2
|
+
type ResourceEventKey<TResourceEvent extends NotificationResourceEvent> = TResourceEvent extends {
|
|
3
|
+
resource_type: infer R extends string;
|
|
4
|
+
action: infer A extends string;
|
|
5
|
+
} ? `${R}:${A}` : never;
|
|
6
|
+
type FcmEventHandler<TResourceEvent extends NotificationResourceEvent = NotificationResourceEvent> = (data: NotificationData<TResourceEvent>) => void;
|
|
7
|
+
type FcmEventHandlerMap<TResourceEvent extends NotificationResourceEvent> = Record<ResourceEventKey<TResourceEvent>, FcmEventHandler<TResourceEvent>>;
|
|
8
|
+
interface CreateFcmDispatcherOptions {
|
|
9
|
+
onError?: (err: unknown, key: string) => void;
|
|
10
|
+
}
|
|
11
|
+
declare function createFcmDispatcher<TResourceEvent extends NotificationResourceEvent>(handlers: FcmEventHandlerMap<TResourceEvent>, options?: CreateFcmDispatcherOptions): FcmEventHandler<TResourceEvent>;
|
|
12
|
+
export { createFcmDispatcher, type CreateFcmDispatcherOptions, type FcmEventHandler, type FcmEventHandlerMap, type ResourceEventKey, };
|
|
13
|
+
//# sourceMappingURL=createFcmDispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFcmDispatcher.d.ts","sourceRoot":"","sources":["../../../../src/utils/createFcmDispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,KAAK,gBAAgB,CAAC,cAAc,SAAS,yBAAyB,IACpE,cAAc,SAAS;IAAE,aAAa,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,SAAS,MAAM,CAAA;CAAE,GAC5F,GAAG,CAAC,IAAI,CAAC,EAAE,GACX,KAAK,CAAC;AAEZ,KAAK,eAAe,CAClB,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,IAC1E,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;AAErD,KAAK,kBAAkB,CAAC,cAAc,SAAS,yBAAyB,IACtE,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;AAE5E,UAAU,0BAA0B;IAClC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAED,iBAAS,mBAAmB,CAAC,cAAc,SAAS,yBAAyB,EAC3E,QAAQ,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAC5C,OAAO,GAAE,0BAA+B,GACvC,eAAe,CAAC,cAAc,CAAC,CAkBjC;AAED,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,EAC/B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,GACtB,CAAC"}
|
|
@@ -8,5 +8,7 @@ export * from './openExternalURL';
|
|
|
8
8
|
export * from './openFileInSystemViewer';
|
|
9
9
|
export * from './downloadFileToLocalStorage';
|
|
10
10
|
export * from './keyboard';
|
|
11
|
+
export * from './createFcmDispatcher';
|
|
12
|
+
export * from './pendingResourceEventQueue';
|
|
11
13
|
export { default as delay } from './delay';
|
|
12
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { NotificationData, NotificationResourceEvent } from '../hooks/useNotifications';
|
|
2
|
+
declare function appendPendingResourceEvent<TResourceEvent extends NotificationResourceEvent = NotificationResourceEvent>(data: NotificationData<TResourceEvent>): Promise<void>;
|
|
3
|
+
declare function flushPendingResourceEventQueue<TResourceEvent extends NotificationResourceEvent = NotificationResourceEvent>(handler: (data: NotificationData<TResourceEvent>) => void): Promise<void>;
|
|
4
|
+
export { appendPendingResourceEvent, flushPendingResourceEventQueue };
|
|
5
|
+
//# sourceMappingURL=pendingResourceEventQueue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pendingResourceEventQueue.d.ts","sourceRoot":"","sources":["../../../../src/utils/pendingResourceEventQueue.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AA2CnC,iBAAS,0BAA0B,CACjC,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAC5E,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAQvD;AAED,iBAAe,8BAA8B,CAC3C,cAAc,SAAS,yBAAyB,GAAG,yBAAyB,EAC5E,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAW1E;AAED,OAAO,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,CAAC"}
|