react-native-notify-kit 9.7.0 → 10.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/README.md +71 -2
- package/RNNotifeeCore.podspec +2 -0
- package/cli/bin/react-native-notify-kit +2 -0
- package/cli/dist/cli.bundle.js +20834 -0
- package/cli/dist/cli.d.ts +2 -0
- package/cli/dist/cli.js +87 -0
- package/cli/dist/cli.js.map +1 -0
- package/cli/dist/commands/initNse.d.ts +12 -0
- package/cli/dist/commands/initNse.js +212 -0
- package/cli/dist/commands/initNse.js.map +1 -0
- package/cli/dist/lib/detectProject.d.ts +15 -0
- package/cli/dist/lib/detectProject.js +156 -0
- package/cli/dist/lib/detectProject.js.map +1 -0
- package/cli/dist/lib/logger.d.ts +4 -0
- package/cli/dist/lib/logger.js +24 -0
- package/cli/dist/lib/logger.js.map +1 -0
- package/cli/dist/lib/patchPodfile.d.ts +12 -0
- package/cli/dist/lib/patchPodfile.js +143 -0
- package/cli/dist/lib/patchPodfile.js.map +1 -0
- package/cli/dist/lib/patchXcodeProject.d.ts +25 -0
- package/cli/dist/lib/patchXcodeProject.js +239 -0
- package/cli/dist/lib/patchXcodeProject.js.map +1 -0
- package/cli/dist/lib/writeTemplates.d.ts +11 -0
- package/cli/dist/lib/writeTemplates.js +82 -0
- package/cli/dist/lib/writeTemplates.js.map +1 -0
- package/cli/dist/templates/Info.plist.tmpl +29 -0
- package/cli/dist/templates/NotificationService.swift.tmpl +32 -0
- package/cli/dist/templates/NotifyKitNSE.entitlements.tmpl +6 -0
- package/cli/dist/templates/templates/Info.plist.tmpl +29 -0
- package/cli/dist/templates/templates/NotificationService.swift.tmpl +73 -0
- package/cli/dist/templates/templates/NotifyKitNSE.entitlements.tmpl +6 -0
- package/dist/NotifeeApiModule.d.ts +17 -0
- package/dist/NotifeeApiModule.js +66 -1
- package/dist/NotifeeApiModule.js.map +1 -1
- package/dist/fcm/index.d.ts +4 -0
- package/dist/fcm/index.js +3 -0
- package/dist/fcm/index.js.map +1 -0
- package/dist/fcm/parseFcmPayload.d.ts +16 -0
- package/dist/fcm/parseFcmPayload.js +37 -0
- package/dist/fcm/parseFcmPayload.js.map +1 -0
- package/dist/fcm/reconstructNotification.d.ts +8 -0
- package/dist/fcm/reconstructNotification.js +167 -0
- package/dist/fcm/reconstructNotification.js.map +1 -0
- package/dist/fcm/types.d.ts +51 -0
- package/dist/fcm/types.js +6 -0
- package/dist/fcm/types.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/types/Module.d.ts +21 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +38 -3
- package/server/README.md +129 -0
- package/server/dist/android.d.ts +8 -0
- package/server/dist/android.d.ts.map +1 -0
- package/server/dist/android.js +20 -0
- package/server/dist/android.js.map +1 -0
- package/server/dist/buildPayload.d.ts +3 -0
- package/server/dist/buildPayload.d.ts.map +1 -0
- package/server/dist/buildPayload.js +82 -0
- package/server/dist/buildPayload.js.map +1 -0
- package/server/dist/index.d.ts +6 -0
- package/server/dist/index.d.ts.map +1 -0
- package/server/dist/index.js +12 -0
- package/server/dist/index.js.map +1 -0
- package/server/dist/ios.d.ts +11 -0
- package/server/dist/ios.d.ts.map +1 -0
- package/server/dist/ios.js +61 -0
- package/server/dist/ios.js.map +1 -0
- package/server/dist/serialize.d.ts +11 -0
- package/server/dist/serialize.d.ts.map +1 -0
- package/server/dist/serialize.js +32 -0
- package/server/dist/serialize.js.map +1 -0
- package/server/dist/types.d.ts +2 -0
- package/server/dist/types.d.ts.map +1 -0
- package/server/dist/types.js +3 -0
- package/server/dist/types.js.map +1 -0
- package/server/dist/validation.d.ts +3 -0
- package/server/dist/validation.d.ts.map +1 -0
- package/server/dist/validation.js +101 -0
- package/server/dist/validation.js.map +1 -0
- package/server/package.json +5 -0
- package/server/src/android.ts +27 -0
- package/server/src/buildPayload.ts +91 -0
- package/server/src/index.ts +12 -0
- package/server/src/ios.ts +88 -0
- package/server/src/serialize.ts +39 -0
- package/server/src/types.ts +24 -0
- package/server/src/validation.ts +134 -0
- package/server/tsconfig.json +25 -0
- package/src/NotifeeApiModule.ts +80 -1
- package/src/fcm/index.ts +4 -0
- package/src/fcm/parseFcmPayload.ts +56 -0
- package/src/fcm/reconstructNotification.ts +201 -0
- package/src/fcm/types.ts +57 -0
- package/src/index.ts +2 -0
- package/src/internal/fcmContract.d.ts +150 -0
- package/src/types/Module.ts +23 -0
- package/src/version.ts +1 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import Foundation
|
|
2
|
+
import UserNotifications
|
|
3
|
+
import RNNotifeeCore
|
|
4
|
+
|
|
5
|
+
private func nseLog(_ message: String) {
|
|
6
|
+
NSLog("[NotifyKitNSE] %@", message)
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
private func requestedAttachmentURLs(from userInfo: [AnyHashable: Any]) -> [String] {
|
|
10
|
+
guard let serializedOptions = userInfo["notifee_options"] as? String,
|
|
11
|
+
let data = serializedOptions.data(using: .utf8),
|
|
12
|
+
let json = try? JSONSerialization.jsonObject(with: data) as? [String: Any],
|
|
13
|
+
let ios = json["ios"] as? [String: Any],
|
|
14
|
+
let attachments = ios["attachments"] as? [[String: Any]] else {
|
|
15
|
+
return []
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return attachments.compactMap { attachment in
|
|
19
|
+
attachment["url"] as? String
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
class NotificationService: UNNotificationServiceExtension {
|
|
24
|
+
var contentHandler: ((UNNotificationContent) -> Void)?
|
|
25
|
+
var bestAttemptContent: UNMutableNotificationContent?
|
|
26
|
+
|
|
27
|
+
override func didReceive(
|
|
28
|
+
_ request: UNNotificationRequest,
|
|
29
|
+
withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void
|
|
30
|
+
) {
|
|
31
|
+
self.contentHandler = contentHandler
|
|
32
|
+
self.bestAttemptContent = request.content.mutableCopy() as? UNMutableNotificationContent
|
|
33
|
+
let requestedAttachmentUrls = requestedAttachmentURLs(from: request.content.userInfo)
|
|
34
|
+
|
|
35
|
+
nseLog(
|
|
36
|
+
"didReceive id=\(request.identifier) title=\(request.content.title) " +
|
|
37
|
+
"hasNotifeeOptions=\(request.content.userInfo["notifee_options"] != nil) " +
|
|
38
|
+
"requestedAttachments=\(requestedAttachmentUrls.count) " +
|
|
39
|
+
"urls=\(requestedAttachmentUrls.joined(separator: ","))"
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
guard let bestAttemptContent = bestAttemptContent else {
|
|
43
|
+
nseLog("mutableCopy failed for id=\(request.identifier); delivering original content")
|
|
44
|
+
contentHandler(request.content)
|
|
45
|
+
return
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
NotifeeExtensionHelper.populateNotificationContent(
|
|
49
|
+
request,
|
|
50
|
+
with: bestAttemptContent,
|
|
51
|
+
withContentHandler: { [weak self] content in
|
|
52
|
+
let deliveredAttachmentIds = content.attachments.map(\.identifier).joined(separator: ",")
|
|
53
|
+
nseLog(
|
|
54
|
+
"contentHandler id=\(request.identifier) title=\(content.title) " +
|
|
55
|
+
"deliveredAttachments=\(content.attachments.count) " +
|
|
56
|
+
"identifiers=\(deliveredAttachmentIds)"
|
|
57
|
+
)
|
|
58
|
+
self?.contentHandler?(content)
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
override func serviceExtensionTimeWillExpire() {
|
|
64
|
+
if let contentHandler = contentHandler, let bestAttemptContent = bestAttemptContent {
|
|
65
|
+
nseLog(
|
|
66
|
+
"serviceExtensionTimeWillExpire id=\(bestAttemptContent.userInfo["gcm.message_id"] ?? "n/a") " +
|
|
67
|
+
"title=\(bestAttemptContent.title) " +
|
|
68
|
+
"deliveredAttachments=\(bestAttemptContent.attachments.count)"
|
|
69
|
+
)
|
|
70
|
+
contentHandler(bestAttemptContent)
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
@@ -5,6 +5,7 @@ import { PowerManagerInfo } from './types/PowerManagerInfo';
|
|
|
5
5
|
import { Trigger } from './types/Trigger';
|
|
6
6
|
import NotifeeNativeModule, { NativeModuleConfig } from './NotifeeNativeModule';
|
|
7
7
|
import { IOSNotificationCategory, IOSNotificationConfig, IOSNotificationPermissions } from './types/NotificationIOS';
|
|
8
|
+
import type { FcmConfig, FcmRemoteMessage } from './fcm/types';
|
|
8
9
|
export default class NotifeeApiModule extends NotifeeNativeModule implements Module {
|
|
9
10
|
constructor(config: NativeModuleConfig);
|
|
10
11
|
getTriggerNotificationIds: () => Promise<string[]>;
|
|
@@ -54,4 +55,20 @@ export default class NotifeeApiModule extends NotifeeNativeModule implements Mod
|
|
|
54
55
|
stopForegroundService: () => Promise<void>;
|
|
55
56
|
prewarmForegroundService: () => Promise<void>;
|
|
56
57
|
hideNotificationDrawer: () => void;
|
|
58
|
+
/**
|
|
59
|
+
* Processes an FCM remote message produced by the NotifyKit server SDK and
|
|
60
|
+
* displays a Notifee notification according to the embedded `notifee_options`.
|
|
61
|
+
*
|
|
62
|
+
* Safe to call from both `setBackgroundMessageHandler` and `onMessage`.
|
|
63
|
+
*/
|
|
64
|
+
handleFcmMessage: (remoteMessage: FcmRemoteMessage) => Promise<string | null>;
|
|
65
|
+
/**
|
|
66
|
+
* Configures defaults for {@link handleFcmMessage}. Call once at app startup,
|
|
67
|
+
* typically in `index.js` before `registerComponent`.
|
|
68
|
+
*
|
|
69
|
+
* Returns Promise for forward compatibility — a future version may persist
|
|
70
|
+
* config across cold starts (AsyncStorage / MMKV), which would be async.
|
|
71
|
+
* Currently resolves synchronously.
|
|
72
|
+
*/
|
|
73
|
+
setFcmConfig: (config: FcmConfig) => Promise<void>;
|
|
57
74
|
}
|
package/dist/NotifeeApiModule.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* Copyright (c) 2016-present Invertase Limited
|
|
3
3
|
*/
|
|
4
|
-
import { AppRegistry, Platform } from 'react-native';
|
|
4
|
+
import { AppRegistry, AppState, Platform } from 'react-native';
|
|
5
5
|
import { AndroidNotificationSetting, } from './types/NotificationAndroid';
|
|
6
6
|
import { AuthorizationStatus, } from './types/Notification';
|
|
7
7
|
import NotifeeNativeModule from './NotifeeNativeModule';
|
|
@@ -12,7 +12,10 @@ import validateAndroidChannel from './validators/validateAndroidChannel';
|
|
|
12
12
|
import validateAndroidChannelGroup from './validators/validateAndroidChannelGroup';
|
|
13
13
|
import validateIOSCategory from './validators/validateIOSCategory';
|
|
14
14
|
import validateIOSPermissions from './validators/validateIOSPermissions';
|
|
15
|
+
import { parseFcmPayload } from './fcm/parseFcmPayload';
|
|
16
|
+
import { reconstructNotification } from './fcm/reconstructNotification';
|
|
15
17
|
let backgroundEventHandler;
|
|
18
|
+
let fcmConfig = {};
|
|
16
19
|
let registeredForegroundServiceTask;
|
|
17
20
|
if (isAndroid) {
|
|
18
21
|
// Register foreground service
|
|
@@ -601,5 +604,67 @@ export default class NotifeeApiModule extends NotifeeNativeModule {
|
|
|
601
604
|
}
|
|
602
605
|
return this.native.hideNotificationDrawer();
|
|
603
606
|
};
|
|
607
|
+
/**
|
|
608
|
+
* Processes an FCM remote message produced by the NotifyKit server SDK and
|
|
609
|
+
* displays a Notifee notification according to the embedded `notifee_options`.
|
|
610
|
+
*
|
|
611
|
+
* Safe to call from both `setBackgroundMessageHandler` and `onMessage`.
|
|
612
|
+
*/
|
|
613
|
+
handleFcmMessage = async (remoteMessage) => {
|
|
614
|
+
if (remoteMessage == null || typeof remoteMessage !== 'object') {
|
|
615
|
+
throw new Error("notifee.handleFcmMessage(*) 'remoteMessage' expected an object.");
|
|
616
|
+
}
|
|
617
|
+
// Snapshot config at entry — Rule C10 (mid-flight setFcmConfig won't affect this call).
|
|
618
|
+
// Deep-copy nested ios sub-object to prevent caller mutation leaking through.
|
|
619
|
+
const config = {
|
|
620
|
+
...fcmConfig,
|
|
621
|
+
ios: fcmConfig.ios ? { ...fcmConfig.ios } : undefined,
|
|
622
|
+
};
|
|
623
|
+
const parsed = parseFcmPayload(remoteMessage.data);
|
|
624
|
+
// Fallback path — no notifee_options present
|
|
625
|
+
if (parsed === null && config.fallbackBehavior === 'ignore') {
|
|
626
|
+
return null;
|
|
627
|
+
}
|
|
628
|
+
const notification = reconstructNotification(parsed, remoteMessage, config);
|
|
629
|
+
// iOS background/killed no-op — Rule C3 (NSE already displayed)
|
|
630
|
+
if (isIOS) {
|
|
631
|
+
const state = AppState.currentState;
|
|
632
|
+
if (state !== 'active') {
|
|
633
|
+
return null;
|
|
634
|
+
}
|
|
635
|
+
// iOS foreground suppress — Rule C2 exception
|
|
636
|
+
if (config.ios?.suppressForegroundBanner === true) {
|
|
637
|
+
return null;
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
// Diagnostic warnings before display
|
|
641
|
+
if (!notification.title && !notification.body) {
|
|
642
|
+
console.warn('[react-native-notify-kit] handleFcmMessage: displaying notification with empty title and body. Check your FCM payload.');
|
|
643
|
+
}
|
|
644
|
+
if (isAndroid && !notification.android?.channelId) {
|
|
645
|
+
console.warn('[react-native-notify-kit] handleFcmMessage: Android fallback path has no channelId (no payload channelId, no defaultChannelId configured). Notification may be dropped by the OS.');
|
|
646
|
+
}
|
|
647
|
+
// Android always displays (Rule C1), iOS foreground displays (Rule C2)
|
|
648
|
+
return this.displayNotification(notification);
|
|
649
|
+
};
|
|
650
|
+
/**
|
|
651
|
+
* Configures defaults for {@link handleFcmMessage}. Call once at app startup,
|
|
652
|
+
* typically in `index.js` before `registerComponent`.
|
|
653
|
+
*
|
|
654
|
+
* Returns Promise for forward compatibility — a future version may persist
|
|
655
|
+
* config across cold starts (AsyncStorage / MMKV), which would be async.
|
|
656
|
+
* Currently resolves synchronously.
|
|
657
|
+
*/
|
|
658
|
+
setFcmConfig = (config) => {
|
|
659
|
+
if (config == null || typeof config !== 'object' || Array.isArray(config)) {
|
|
660
|
+
const got = config === null ? 'null' : Array.isArray(config) ? 'array' : typeof config;
|
|
661
|
+
throw new Error(`notifee.setFcmConfig(*) config must be a plain object. Got: ${got}`);
|
|
662
|
+
}
|
|
663
|
+
fcmConfig = {
|
|
664
|
+
...config,
|
|
665
|
+
ios: config.ios ? { ...config.ios } : undefined,
|
|
666
|
+
};
|
|
667
|
+
return Promise.resolve();
|
|
668
|
+
};
|
|
604
669
|
}
|
|
605
670
|
//# sourceMappingURL=NotifeeApiModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotifeeApiModule.js","sourceRoot":"","sources":["../src/NotifeeApiModule.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NotifeeApiModule.js","sourceRoot":"","sources":["../src/NotifeeApiModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fcm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type ParsedPayload = {
|
|
2
|
+
_v?: number;
|
|
3
|
+
title?: string;
|
|
4
|
+
body?: string;
|
|
5
|
+
android?: Record<string, unknown>;
|
|
6
|
+
ios?: Record<string, unknown>;
|
|
7
|
+
[key: string]: unknown;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Extracts and JSON-parses the `notifee_options` value from the FCM data map.
|
|
11
|
+
* Returns the parsed object on success, or `null` when:
|
|
12
|
+
* - `data` is undefined/null
|
|
13
|
+
* - `data.notifee_options` is missing
|
|
14
|
+
* - JSON parsing fails (a `console.warn` is emitted)
|
|
15
|
+
*/
|
|
16
|
+
export declare function parseFcmPayload(data: Record<string, string> | undefined): ParsedPayload | null;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Pure function — parses the `notifee_options` blob from an FCM data payload.
|
|
3
|
+
*/
|
|
4
|
+
const PREFIX = '[react-native-notify-kit]';
|
|
5
|
+
/**
|
|
6
|
+
* Extracts and JSON-parses the `notifee_options` value from the FCM data map.
|
|
7
|
+
* Returns the parsed object on success, or `null` when:
|
|
8
|
+
* - `data` is undefined/null
|
|
9
|
+
* - `data.notifee_options` is missing
|
|
10
|
+
* - JSON parsing fails (a `console.warn` is emitted)
|
|
11
|
+
*/
|
|
12
|
+
export function parseFcmPayload(data) {
|
|
13
|
+
if (!data || typeof data.notifee_options !== 'string') {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
let parsed;
|
|
17
|
+
try {
|
|
18
|
+
parsed = JSON.parse(data.notifee_options);
|
|
19
|
+
}
|
|
20
|
+
catch (e) {
|
|
21
|
+
const detail = e instanceof Error ? e.message : String(e);
|
|
22
|
+
console.warn(`${PREFIX} Failed to parse notifee_options: ${detail}. Falling back to raw title/body.`);
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
26
|
+
console.warn(`${PREFIX} notifee_options parsed to a non-object value. Falling back to raw title/body.`);
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
// Version check (Rule C5) — coerce to number to handle string _v from
|
|
30
|
+
// intermediaries that stringify FCM data values.
|
|
31
|
+
const versionNum = Number(parsed._v);
|
|
32
|
+
if (!Number.isNaN(versionNum) && versionNum > 1) {
|
|
33
|
+
console.warn(`${PREFIX} notifee_options version ${versionNum} is newer than supported version 1. Display may be incomplete.`);
|
|
34
|
+
}
|
|
35
|
+
return parsed;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=parseFcmPayload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseFcmPayload.js","sourceRoot":"","sources":["../../src/fcm/parseFcmPayload.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,GAAG,2BAA2B,CAAC;AAW3C;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,IAAwC;IACtE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CACV,GAAG,MAAM,qCAAqC,MAAM,mCAAmC,CACxF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,OAAO,CAAC,IAAI,CACV,GAAG,MAAM,gFAAgF,CAC1F,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sEAAsE;IACtE,iDAAiD;IACjD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,IAAI,CACV,GAAG,MAAM,4BAA4B,UAAU,gEAAgE,CAChH,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Notification } from '../types/Notification';
|
|
2
|
+
import type { FcmConfig, FcmRemoteMessage } from './types';
|
|
3
|
+
import type { ParsedPayload } from './parseFcmPayload';
|
|
4
|
+
/**
|
|
5
|
+
* Reconstructs a {@link Notification} object suitable for
|
|
6
|
+
* `displayNotification` from the parsed FCM payload + config defaults.
|
|
7
|
+
*/
|
|
8
|
+
export declare function reconstructNotification(parsed: ParsedPayload | null, remoteMessage: FcmRemoteMessage, config: FcmConfig): Notification;
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Pure function — builds a Notification object from a parsed notifee_options
|
|
3
|
+
* blob, an FCM remote message, and the current FcmConfig.
|
|
4
|
+
*/
|
|
5
|
+
import { AndroidStyle } from '../types/NotificationAndroid';
|
|
6
|
+
import { isAndroid, isIOS } from '../utils';
|
|
7
|
+
const PREFIX = '[react-native-notify-kit]';
|
|
8
|
+
const RESERVED_DATA_KEYS = new Set(['notifee_options', 'notifee_data']);
|
|
9
|
+
const VALID_INTERRUPTION_LEVELS = new Set(['active', 'critical', 'passive', 'timeSensitive']);
|
|
10
|
+
const STYLE_TYPE_MAP = {
|
|
11
|
+
BIG_TEXT: AndroidStyle.BIGTEXT,
|
|
12
|
+
BIG_PICTURE: AndroidStyle.BIGPICTURE,
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Reconstructs a {@link Notification} object suitable for
|
|
16
|
+
* `displayNotification` from the parsed FCM payload + config defaults.
|
|
17
|
+
*/
|
|
18
|
+
export function reconstructNotification(parsed, remoteMessage, config) {
|
|
19
|
+
const data = rebuildData(remoteMessage.data);
|
|
20
|
+
const title = parsed?.title ?? remoteMessage.notification?.title ?? remoteMessage.data?.title ?? '';
|
|
21
|
+
const body = parsed?.body ?? remoteMessage.notification?.body ?? remoteMessage.data?.body ?? '';
|
|
22
|
+
const notification = {
|
|
23
|
+
id: parsed?.id ??
|
|
24
|
+
remoteMessage.messageId,
|
|
25
|
+
title,
|
|
26
|
+
body,
|
|
27
|
+
};
|
|
28
|
+
if (Object.keys(data).length > 0) {
|
|
29
|
+
notification.data = data;
|
|
30
|
+
}
|
|
31
|
+
if (isAndroid && (parsed?.android || config.defaultChannelId || config.defaultPressAction)) {
|
|
32
|
+
notification.android = buildAndroidConfig(parsed?.android, config);
|
|
33
|
+
}
|
|
34
|
+
if (isIOS && parsed?.ios) {
|
|
35
|
+
notification.ios = buildIosConfig(parsed.ios);
|
|
36
|
+
}
|
|
37
|
+
return notification;
|
|
38
|
+
}
|
|
39
|
+
// ---------------------------------------------------------------------------
|
|
40
|
+
// Data reconstruction (Rules C6 / C7)
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
function rebuildData(rawData) {
|
|
43
|
+
if (!rawData) {
|
|
44
|
+
return {};
|
|
45
|
+
}
|
|
46
|
+
// Start with top-level data keys (excluding reserved)
|
|
47
|
+
const result = {};
|
|
48
|
+
for (const [key, value] of Object.entries(rawData)) {
|
|
49
|
+
if (!RESERVED_DATA_KEYS.has(key)) {
|
|
50
|
+
result[key] = value;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
// Merge notifee_data blob — overrides top-level on conflict (Rule C7)
|
|
54
|
+
const notifeeDataRaw = rawData.notifee_data;
|
|
55
|
+
if (typeof notifeeDataRaw === 'string') {
|
|
56
|
+
try {
|
|
57
|
+
const notifeeData = JSON.parse(notifeeDataRaw);
|
|
58
|
+
if (notifeeData && typeof notifeeData === 'object') {
|
|
59
|
+
Object.assign(result, notifeeData);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
console.warn(`${PREFIX} Failed to parse notifee_data. Using top-level data keys only.`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// Post-merge strip: notifee_data blob could contain reserved keys
|
|
67
|
+
for (const key of RESERVED_DATA_KEYS) {
|
|
68
|
+
delete result[key];
|
|
69
|
+
}
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
72
|
+
// ---------------------------------------------------------------------------
|
|
73
|
+
// Android config mapping
|
|
74
|
+
// ---------------------------------------------------------------------------
|
|
75
|
+
function buildAndroidConfig(raw, config) {
|
|
76
|
+
const android = {};
|
|
77
|
+
// channelId: payload > config default
|
|
78
|
+
const channelId = raw?.channelId ?? config.defaultChannelId;
|
|
79
|
+
if (typeof channelId === 'string') {
|
|
80
|
+
android.channelId = channelId;
|
|
81
|
+
}
|
|
82
|
+
// pressAction: payload > config default
|
|
83
|
+
const pressAction = raw?.pressAction ?? config.defaultPressAction;
|
|
84
|
+
if (pressAction && typeof pressAction === 'object') {
|
|
85
|
+
android.pressAction = pressAction;
|
|
86
|
+
}
|
|
87
|
+
// Direct string copies
|
|
88
|
+
if (typeof raw?.smallIcon === 'string')
|
|
89
|
+
android.smallIcon = raw.smallIcon;
|
|
90
|
+
if (typeof raw?.largeIcon === 'string')
|
|
91
|
+
android.largeIcon = raw.largeIcon;
|
|
92
|
+
if (typeof raw?.color === 'string')
|
|
93
|
+
android.color = raw.color;
|
|
94
|
+
// Actions array — pass through (trust server validation)
|
|
95
|
+
if (Array.isArray(raw?.actions)) {
|
|
96
|
+
android.actions = raw.actions;
|
|
97
|
+
}
|
|
98
|
+
// Style — enum mapping with defense-in-depth for unknown types
|
|
99
|
+
if (raw?.style && typeof raw.style === 'object') {
|
|
100
|
+
const style = raw.style;
|
|
101
|
+
if (typeof style.type === 'string') {
|
|
102
|
+
const mappedType = STYLE_TYPE_MAP[style.type];
|
|
103
|
+
if (mappedType !== undefined) {
|
|
104
|
+
if (mappedType === AndroidStyle.BIGTEXT && typeof style.text === 'string') {
|
|
105
|
+
android.style = { type: AndroidStyle.BIGTEXT, text: style.text };
|
|
106
|
+
}
|
|
107
|
+
else if (mappedType === AndroidStyle.BIGPICTURE && typeof style.picture === 'string') {
|
|
108
|
+
android.style = { type: AndroidStyle.BIGPICTURE, picture: style.picture };
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
const field = mappedType === AndroidStyle.BIGTEXT ? 'text' : 'picture';
|
|
112
|
+
console.warn(`${PREFIX} android.style.type '${style.type}' present but required '${field}' field missing or not a string. Style ignored.`);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
console.warn(`${PREFIX} Unknown android.style.type '${style.type}'. Style ignored.`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return android;
|
|
121
|
+
}
|
|
122
|
+
// ---------------------------------------------------------------------------
|
|
123
|
+
// iOS config mapping
|
|
124
|
+
// ---------------------------------------------------------------------------
|
|
125
|
+
function buildIosConfig(raw) {
|
|
126
|
+
const ios = {};
|
|
127
|
+
if (typeof raw.sound === 'string')
|
|
128
|
+
ios.sound = raw.sound;
|
|
129
|
+
if (typeof raw.categoryId === 'string')
|
|
130
|
+
ios.categoryId = raw.categoryId;
|
|
131
|
+
if (typeof raw.threadId === 'string')
|
|
132
|
+
ios.threadId = raw.threadId;
|
|
133
|
+
// interruptionLevel — defense-in-depth for unknown values
|
|
134
|
+
if (typeof raw.interruptionLevel === 'string') {
|
|
135
|
+
if (VALID_INTERRUPTION_LEVELS.has(raw.interruptionLevel)) {
|
|
136
|
+
ios.interruptionLevel = raw.interruptionLevel;
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
console.warn(`${PREFIX} Unknown ios.interruptionLevel '${raw.interruptionLevel}'. Ignored.`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
// Attachments — rename identifier → id, filter out invalid entries
|
|
143
|
+
if (Array.isArray(raw.attachments)) {
|
|
144
|
+
ios.attachments = raw.attachments
|
|
145
|
+
.filter((att) => {
|
|
146
|
+
if (att == null || typeof att !== 'object')
|
|
147
|
+
return false;
|
|
148
|
+
const a = att;
|
|
149
|
+
if (typeof a.url !== 'string' || a.url.length === 0) {
|
|
150
|
+
console.warn(`${PREFIX} ios.attachments entry has missing or empty url. Skipped.`);
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
return true;
|
|
154
|
+
})
|
|
155
|
+
.map(att => {
|
|
156
|
+
const mapped = {
|
|
157
|
+
url: att.url,
|
|
158
|
+
};
|
|
159
|
+
if (typeof att.identifier === 'string') {
|
|
160
|
+
mapped.id = att.identifier;
|
|
161
|
+
}
|
|
162
|
+
return mapped;
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
return ios;
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=reconstructNotification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconstructNotification.js","sourceRoot":"","sources":["../../src/fcm/reconstructNotification.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal subset of `@react-native-firebase/messaging`'s RemoteMessage that
|
|
3
|
+
* `handleFcmMessage` actually reads.
|
|
4
|
+
*/
|
|
5
|
+
export type FcmRemoteMessage = {
|
|
6
|
+
messageId?: string;
|
|
7
|
+
data?: Record<string, string>;
|
|
8
|
+
notification?: {
|
|
9
|
+
title?: string;
|
|
10
|
+
body?: string;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Configuration for `handleFcmMessage`. Call `setFcmConfig` once
|
|
15
|
+
* at app startup (typically in `index.js` before `registerComponent`).
|
|
16
|
+
*/
|
|
17
|
+
export type FcmConfig = {
|
|
18
|
+
/**
|
|
19
|
+
* Default channelId used when `notifee_options.android.channelId` is absent.
|
|
20
|
+
* If this is also absent and the payload has no channelId,
|
|
21
|
+
* `displayNotification` will throw on Android — same behavior as calling
|
|
22
|
+
* `displayNotification` without a channel.
|
|
23
|
+
*/
|
|
24
|
+
defaultChannelId?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Default pressAction when `notifee_options.android.pressAction` is absent.
|
|
27
|
+
* Mirrors the existing behavior: `{ id: 'default', launchActivity: 'default' }`.
|
|
28
|
+
*/
|
|
29
|
+
defaultPressAction?: {
|
|
30
|
+
id: string;
|
|
31
|
+
launchActivity?: string;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* What to do when `remoteMessage.data.notifee_options` is absent entirely.
|
|
35
|
+
* - `'display'`: build a minimal notification from `remoteMessage.notification`
|
|
36
|
+
* title/body (or `data.title`/`data.body` as a fallback). Uses `defaultChannelId`.
|
|
37
|
+
* - `'ignore'`: return `null` without displaying anything.
|
|
38
|
+
*
|
|
39
|
+
* @default 'display'
|
|
40
|
+
*/
|
|
41
|
+
fallbackBehavior?: 'display' | 'ignore';
|
|
42
|
+
/** iOS-specific options. */
|
|
43
|
+
ios?: {
|
|
44
|
+
/**
|
|
45
|
+
* When `true`, foreground notifications delivered via `handleFcmMessage`
|
|
46
|
+
* are NOT displayed (only events are emitted).
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
49
|
+
suppressForegroundBanner?: boolean;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/fcm/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EACL,KAAK,EACL,8CAA8C,EAC9C,oCAAoC,GACrC,MAAM,SAAS,CAAC;AAEjB,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC;IACrC,OAAO,EAAE,WAAW;IACpB,gBAAgB,EAAE,kBAAkB;IACpC,YAAY,EAAE,KAAK;QACjB,CAAC,CAAC,CAAC,oCAAoC,EAAE,8CAA8C,CAAC;QACxF,CAAC,CAAC,CAAC,oCAAoC,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,OAAO,GAAkB;IAC7B,WAAW;CACZ,CAAC;AAEF,MAAM,cAAc,GAAsB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC5E,eAAe,cAAc,CAAC;AAE9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EACL,KAAK,EACL,8CAA8C,EAC9C,oCAAoC,GACrC,MAAM,SAAS,CAAC;AAEjB,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC;IACrC,OAAO,EAAE,WAAW;IACpB,gBAAgB,EAAE,kBAAkB;IACpC,YAAY,EAAE,KAAK;QACjB,CAAC,CAAC,CAAC,oCAAoC,EAAE,8CAA8C,CAAC;QACxF,CAAC,CAAC,CAAC,oCAAoC,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,OAAO,GAAkB;IAC7B,WAAW;CACZ,CAAC;AAEF,MAAM,cAAc,GAAsB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC5E,eAAe,cAAc,CAAC;AAE9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC"}
|