react-native-notify-kit 9.2.1 → 9.3.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 CHANGED
@@ -253,7 +253,7 @@ This fork is a complete migration to React Native's **New Architecture**:
253
253
  - **Toolchain**: Yarn 4, Node 22+, Java 17, compileSdk/targetSdk 35
254
254
  - **Single Android module** — the original Notifee shipped a pre-compiled AAR bundled inside the npm tarball under a frozen Maven coordinate; this fork compiles the core from source as part of the React Native bridge module on every consumer build. Eliminates the `FAIL_ON_PROJECT_REPOS` issue on RN 0.74+ and the Gradle cache staleness bug that could serve outdated bytecode after `yarn upgrade`.
255
255
  - **Core notification logic (NotifeeCore) is unchanged** — the public API is fully compatible with the original Notifee
256
- - **20 upstream bugs fixed** — see [Bugs Fixed from Upstream Notifee](#bugs-fixed-from-upstream-notifee) below
256
+ - **22 upstream bugs fixed** — see [Bugs Fixed from Upstream Notifee](#bugs-fixed-from-upstream-notifee) below
257
257
  - **Reliable trigger notifications** — AlarmManager is the default backend instead of WorkManager, with automatic fallback when exact alarm permission is not granted
258
258
  - **New API: `setNotificationConfig()`** — opt-out flag to prevent Notifee from intercepting iOS remote notification handlers (see [New APIs](#new-apis) below)
259
259
 
@@ -284,6 +284,8 @@ This fork fixes the following bugs that were never resolved in the original Noti
284
284
  | Duplicate symbols linker error when using NSE (`$NotifeeExtension = true`) with static frameworks — `NotifeeExtensionHelper` compiled by both `RNNotifee` and `RNNotifeeCore` pods | iOS | Pre-existing | 9.1.22 |
285
285
  | `FAIL_ON_PROJECT_REPOS` rejection on RN 0.74+ — library injected a Maven repository into the consumer's `rootProject.allprojects` block, rejected by `dependencyResolutionManagement` mode | Android | N/A (architectural) | 9.2.0 |
286
286
  | Stale Gradle cache could serve outdated AAR bytecode after `yarn upgrade` — same Maven coordinate reused across releases violated Gradle's coordinate-immutability assumption | Android | N/A (architectural) | 9.2.0 |
287
+ | `EventType.DELIVERED` not emitted for `displayNotification()` in foreground (only for trigger notifications) — `notifeeTrigger != nil` guard in `willPresentNotification:` suppressed the event, breaking iOS/Android symmetry | iOS | Pre-existing | 9.3.0 |
288
+ | Tapping a notification without explicit `pressAction` does nothing (app doesn't open) — `NotificationPendingIntent.createIntent()` creates a tap-less PendingIntent when `pressActionModelBundle` is null, especially visible on trigger notifications after app kill | Android | Pre-existing (latent) | 9.3.0 |
287
289
 
288
290
  > **Note for apps requiring guaranteed exact alarms (alarm clocks, timers, calendars):**
289
291
  > Add `<uses-permission android:name="android.permission.USE_EXACT_ALARM" />` to your app's
@@ -308,8 +310,12 @@ In addition to bug fixes, the fork makes a few opinionated default changes vs `@
308
310
 
309
311
  - **`pressAction.launchActivity` defaults to `'default'` at the native layer when `pressAction.id === 'default'`** (since 9.1.19). The TypeScript validator already applied this default since upstream PR #141 (Sept 2020), but native code paths bypassing the validator (e.g., trigger notifications restored from the Room database after reboot, headless tasks) could miss it. The fork closes the gap at the native layer as defense-in-depth — eliminates an entire class of "tap doesn't open app" bugs in Android task management edge cases.
310
312
 
313
+ - **`pressAction` defaults to `{ id: 'default', launchActivity: 'default' }` when omitted from the notification payload** (since 9.3.0). Upstream Notifee required an explicit `pressAction` for tap-to-open behavior — without it, the notification displayed but tapping did nothing (only the internal transparent `NotificationReceiverActivity` would launch and finish). The fork injects the default at both the TypeScript validator layer and the native `NotificationManager` layer (defense-in-depth for code paths bypassing the validator, such as trigger notifications rehydrated from Room DB after app kill). Opt out with `pressAction: null` for intentionally non-tappable notifications.
314
+
311
315
  - **Library no longer hardcodes `foregroundServiceType` in its manifest** (since 9.1.13 — **BREAKING vs upstream**). Apps using `asForegroundService: true` on Android 14+ must declare their own `foregroundServiceType` on `app.notifee.core.ForegroundService` in their app manifest. See [Foreground Service Setup](#foreground-service-setup-android-14) below for migration instructions. Upstream hardcoded `shortService`, which caused a manifest merger failure ([#1108](https://github.com/invertase/notifee/issues/1108)) and a 3-minute timeout ANR crash ([#703](https://github.com/invertase/notifee/issues/703)).
312
316
 
317
+ - **iOS `EventType.DELIVERED` now emitted for all foreground notifications** (since 9.3.0 — **BREAKING vs upstream**). Upstream Notifee had a guard in `willPresentNotification:` that suppressed DELIVERED for notifications created via `displayNotification()` (immediate display), emitting it only for trigger notifications. Android always emitted DELIVERED in both cases. The fork removes the guard so iOS matches Android. If you registered `onForegroundEvent` listeners that did heavy work on DELIVERED assuming the event would only fire for trigger notifications, audit them — you may now receive an event per `displayNotification()` call while in foreground. **Known limitation**: trigger notifications that fire while the app is in background or killed still do not emit DELIVERED on iOS — this is a platform limitation (`willPresentNotification:` is only invoked in foreground, and iOS provides no delegate callback for background-delivered triggers). If you need delivery confirmation for background trigger notifications on iOS, check the notification's presence via `getDisplayedNotifications()` after the app returns to foreground.
318
+
313
319
  These changes are documented in the [CHANGELOG](CHANGELOG.md) under the release that introduced them. If you rely on any of the upstream defaults, you can either pin to the specific behavior via the opt-out flags listed above, or open an issue to discuss.
314
320
 
315
321
  ## Foreground Service Setup (Android 14+)
@@ -359,9 +365,11 @@ await notifee.createTriggerNotification(notification, {
359
365
  });
360
366
  ```
361
367
 
362
- ### Android: `pressAction` required for tap handling
368
+ ### Android: `pressAction` defaults to opening the app on tap
369
+
370
+ On Android, `pressAction` now defaults to `{ id: 'default', launchActivity: 'default' }` when omitted from the notification payload. This means tapping a notification opens the app's main activity by default — matching iOS behavior and eliminating a common footgun where trigger notifications appeared to work but tapping them did nothing after an app kill.
363
371
 
364
- On Android, notifications require a `pressAction` to open the app when tapped:
372
+ You can still provide an explicit `pressAction` to customize tap behavior:
365
373
 
366
374
  ```typescript
367
375
  await notifee.displayNotification({
@@ -369,13 +377,23 @@ await notifee.displayNotification({
369
377
  body: 'Tap to open',
370
378
  android: {
371
379
  channelId: 'default',
372
- pressAction: { id: 'default', launchActivity: 'default' },
380
+ pressAction: { id: 'default', launchActivity: 'default' }, // same as the default
373
381
  },
374
382
  });
375
383
  ```
376
384
 
377
- Without `pressAction`, the notification will display but tapping it will do nothing.
378
- This is Android platform behavior, not a bug. iOS opens the app by default on tap.
385
+ To create a non-tappable notification (e.g. purely informative notifications from a background service), pass `pressAction: null` explicitly:
386
+
387
+ ```typescript
388
+ await notifee.displayNotification({
389
+ title: 'Sync in progress',
390
+ body: 'Uploading files...',
391
+ android: {
392
+ channelId: 'default',
393
+ pressAction: null, // notification displays but tapping does nothing
394
+ },
395
+ });
396
+ ```
379
397
 
380
398
  ## New APIs
381
399
 
@@ -59,8 +59,7 @@ android {
59
59
 
60
60
  javaCompileOptions {
61
61
  annotationProcessorOptions {
62
- arguments = ["room.schemaLocation": "$projectDir/schemas".toString(),
63
- eventBusIndex: 'app.notifee.core.EventBusIndex']
62
+ arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]
64
63
  }
65
64
  }
66
65
  }
@@ -138,9 +137,7 @@ dependencies {
138
137
  api 'androidx.sqlite:sqlite-framework:2.6.2'
139
138
  annotationProcessor "androidx.room:room-compiler:$room_version"
140
139
 
141
- def eventbus_version = '3.3.1' // https://github.com/greenrobot/EventBus/releases
142
- api "org.greenrobot:eventbus:$eventbus_version"
143
- annotationProcessor "org.greenrobot:eventbus-annotation-processor:$eventbus_version"
140
+ api 'org.greenrobot:eventbus:3.3.1' // https://github.com/greenrobot/EventBus/releases
144
141
 
145
142
  // --- Bridge dependencies ---
146
143
  implementation 'androidx.lifecycle:lifecycle-process:2.3.1'
@@ -115,6 +115,48 @@ class NotificationManager {
115
115
  ReceiverService.DELETE_INTENT,
116
116
  new String[] {"notification"},
117
117
  notificationModel.toBundle()));
118
+ // Resolve the effective pressAction bundle for the content intent.
119
+ // Three cases:
120
+ // 1. pressAction is null (absent from bundle, e.g. trigger rehydrated from Room DB
121
+ // after app kill): synthesize default { id:'default', launchActivity:'default' }
122
+ // so tapping the notification opens the app (defense-in-depth for paths that
123
+ // bypass the TS validator).
124
+ // 2. pressAction has the opt-out sentinel id: user explicitly passed
125
+ // pressAction: null in JS — pass null to createIntent so no launch intent
126
+ // is created (non-tappable notification).
127
+ // 3. pressAction is a normal bundle: pass through unchanged.
128
+ // Resolve the effective pressAction bundle for the content intent.
129
+ // Three cases:
130
+ // 1. pressAction is null (absent from bundle, e.g. trigger rehydrated from Room DB
131
+ // after app kill): synthesize default { id:'default', launchActivity:'default' }
132
+ // so tapping the notification opens the app (defense-in-depth for paths that
133
+ // bypass the TS validator).
134
+ // 2. pressAction has the opt-out sentinel id: user explicitly passed
135
+ // pressAction: null in JS — pass null to createIntent so no launch intent
136
+ // is created (non-tappable notification).
137
+ // 3. pressAction is a normal bundle: pass through unchanged.
138
+ //
139
+ // pressActionForIntent → used for creating the launch intent (or null for opt-out)
140
+ // pressActionForExtras → used in the receiver intent extras (event payload);
141
+ // null for cases 1 & 2 to avoid leaking synthesized defaults
142
+ // or the sentinel id into the JS event.
143
+ Bundle pressActionForIntent = androidModel.getPressAction();
144
+ Bundle pressActionForExtras = pressActionForIntent;
145
+ if (pressActionForIntent == null) {
146
+ // Case 1: absent — synthesize default for launch, null for extras
147
+ pressActionForIntent = new Bundle();
148
+ pressActionForIntent.putString("id", "default");
149
+ pressActionForIntent.putString("launchActivity", "default");
150
+ // pressActionForExtras stays null: the original notification didn't have
151
+ // pressAction, so the event shouldn't either.
152
+ } else if (NotificationPendingIntent.PRESS_ACTION_OPT_OUT_ID.equals(
153
+ pressActionForIntent.getString("id"))) {
154
+ // Case 2: explicit opt-out sentinel — no launch intent, no sentinel in extras
155
+ pressActionForIntent = null;
156
+ pressActionForExtras = null;
157
+ }
158
+ // Case 3: normal pressAction — both variables point to the original bundle
159
+
118
160
  int targetSdkVersion =
119
161
  ContextHolder.getApplicationContext().getApplicationInfo().targetSdkVersion;
120
162
  if (targetSdkVersion >= Build.VERSION_CODES.S
@@ -122,18 +164,18 @@ class NotificationManager {
122
164
  builder.setContentIntent(
123
165
  NotificationPendingIntent.createIntent(
124
166
  notificationModel.getHashCode(),
125
- androidModel.getPressAction(),
167
+ pressActionForIntent,
126
168
  TYPE_PRESS,
127
169
  new String[] {"notification", "pressAction"},
128
170
  notificationModel.toBundle(),
129
- androidModel.getPressAction()));
171
+ pressActionForExtras));
130
172
  } else {
131
173
  builder.setContentIntent(
132
174
  ReceiverService.createIntent(
133
175
  ReceiverService.PRESS_INTENT,
134
176
  new String[] {"notification", "pressAction"},
135
177
  notificationModel.toBundle(),
136
- androidModel.getPressAction()));
178
+ pressActionForIntent));
137
179
  }
138
180
 
139
181
  if (notificationModel.getTitle() != null) {
@@ -31,6 +31,16 @@ public class NotificationPendingIntent {
31
31
  public static final String NOTIFICATION_ID_INTENT_KEY = "notification_id";
32
32
  private static final String TAG = "NotificationPendingIntent";
33
33
 
34
+ /**
35
+ * Reserved sentinel pressAction id used to signal an explicit opt-out from tap-to-open behavior.
36
+ * When the TS validator sees {@code pressAction: null}, it emits a pressAction bundle with this
37
+ * id so the native layer can distinguish "user opted out" from "pressAction absent" (which
38
+ * triggers the default). DO NOT use this as a real pressAction id.
39
+ *
40
+ * <p>The same constant is mirrored in {@code validateAndroidNotification.ts}.
41
+ */
42
+ public static final String PRESS_ACTION_OPT_OUT_ID = "__NOTIFEE_OPT_OUT__";
43
+
34
44
  /**
35
45
  * Creates a PendingIntent, which when sent triggers this class.
36
46
  *
@@ -0,0 +1,108 @@
1
+ package app.notifee.core;
2
+
3
+ import static org.junit.Assert.assertEquals;
4
+ import static org.junit.Assert.assertFalse;
5
+ import static org.junit.Assert.assertNotNull;
6
+ import static org.junit.Assert.assertTrue;
7
+
8
+ import android.os.Bundle;
9
+ import app.notifee.core.model.NotificationAndroidPressActionModel;
10
+ import org.junit.Test;
11
+ import org.junit.runner.RunWith;
12
+ import org.robolectric.RobolectricTestRunner;
13
+
14
+ @RunWith(RobolectricTestRunner.class)
15
+ public class NotificationPendingIntentTest {
16
+
17
+ /**
18
+ * Regression test: explicit pressAction with launchActivity produces a model that
19
+ * shouldCreateLaunchActivityIntent accepts. This is the most important test — it guards against
20
+ * refactoring breaking the existing "pressAction provided" path.
21
+ */
22
+ @Test
23
+ public void shouldCreateLaunchActivityIntent_withExplicitPressAction_returnsTrue() {
24
+ Bundle bundle = new Bundle();
25
+ bundle.putString("id", "default");
26
+ bundle.putString("launchActivity", "default");
27
+
28
+ NotificationAndroidPressActionModel model =
29
+ NotificationAndroidPressActionModel.fromBundle(bundle);
30
+
31
+ assertTrue(
32
+ "explicit pressAction with launchActivity='default' must create a launch intent",
33
+ NotificationPendingIntent.shouldCreateLaunchActivityIntent(model));
34
+ }
35
+
36
+ /**
37
+ * Verifies that the default pressAction bundle synthesized in NotificationManager when
38
+ * pressAction is absent produces a model that passes shouldCreateLaunchActivityIntent. This
39
+ * proves the null → synthesized-default path routes through the same code as explicit.
40
+ */
41
+ @Test
42
+ public void synthesizedDefaultBundle_producesValidModel() {
43
+ // Replicate the exact bundle synthesized in NotificationManager when pressAction is null
44
+ Bundle defaultBundle = new Bundle();
45
+ defaultBundle.putString("id", "default");
46
+ defaultBundle.putString("launchActivity", "default");
47
+
48
+ NotificationAndroidPressActionModel model =
49
+ NotificationAndroidPressActionModel.fromBundle(defaultBundle);
50
+
51
+ assertEquals("synthesized default model must have id='default'", "default", model.getId());
52
+ assertEquals(
53
+ "synthesized default model must have launchActivity='default'",
54
+ "default",
55
+ model.getLaunchActivity());
56
+ assertNotNull("synthesized default model must produce a non-null toBundle()", model.toBundle());
57
+ assertTrue(
58
+ "synthesized default must pass shouldCreateLaunchActivityIntent",
59
+ NotificationPendingIntent.shouldCreateLaunchActivityIntent(model));
60
+ }
61
+
62
+ /** Null pressActionModel must return false — this is the guard for opt-out and absent cases. */
63
+ @Test
64
+ public void shouldCreateLaunchActivityIntent_withNull_returnsFalse() {
65
+ assertFalse(
66
+ "null pressActionModel must not create a launch intent",
67
+ NotificationPendingIntent.shouldCreateLaunchActivityIntent(null));
68
+ }
69
+
70
+ /**
71
+ * Regression: pressAction with a custom launchActivity (non-default) must also pass. Ensures the
72
+ * fix didn't break custom launch activity resolution.
73
+ */
74
+ @Test
75
+ public void shouldCreateLaunchActivityIntent_withCustomLaunchActivity_returnsTrue() {
76
+ Bundle bundle = new Bundle();
77
+ bundle.putString("id", "custom-action");
78
+ bundle.putString("launchActivity", "com.example.CustomActivity");
79
+
80
+ NotificationAndroidPressActionModel model =
81
+ NotificationAndroidPressActionModel.fromBundle(bundle);
82
+
83
+ assertTrue(
84
+ "explicit pressAction with custom launchActivity must create a launch intent",
85
+ NotificationPendingIntent.shouldCreateLaunchActivityIntent(model));
86
+ }
87
+
88
+ /** Opt-out sentinel must be recognized and result in no launch intent (null pressAction). */
89
+ @Test
90
+ public void optOutSentinel_isRecognizedById() {
91
+ Bundle sentinelBundle = new Bundle();
92
+ sentinelBundle.putString("id", NotificationPendingIntent.PRESS_ACTION_OPT_OUT_ID);
93
+
94
+ NotificationAndroidPressActionModel model =
95
+ NotificationAndroidPressActionModel.fromBundle(sentinelBundle);
96
+
97
+ assertEquals(
98
+ "opt-out sentinel id must match the constant",
99
+ NotificationPendingIntent.PRESS_ACTION_OPT_OUT_ID,
100
+ model.getId());
101
+
102
+ // The sentinel has no launchActivity and a non-'default' id, so getLaunchActivity()
103
+ // returns null. shouldCreateLaunchActivityIntent returns false.
104
+ assertFalse(
105
+ "opt-out sentinel must not create a launch intent",
106
+ NotificationPendingIntent.shouldCreateLaunchActivityIntent(model));
107
+ }
108
+ }
@@ -233,14 +233,18 @@ export interface NotificationAndroid {
233
233
  */
234
234
  onlyAlertOnce?: boolean;
235
235
  /**
236
- * By default notifications have no behaviour when a user presses them. The
237
- * `pressAction` property allows you to set what happens when a user presses
238
- * the notification.
236
+ * Controls what happens when a user presses the notification.
237
+ *
238
+ * Defaults to `{ id: 'default', launchActivity: 'default' }` when omitted,
239
+ * which opens the app's main activity on tap.
240
+ *
241
+ * Pass `null` explicitly to create a non-tappable notification (the notification
242
+ * will display but tapping it will do nothing).
239
243
  *
240
244
  * View the [Interaction](/react-native/android/interaction) documentation to learn
241
245
  * more.
242
246
  */
243
- pressAction?: NotificationPressAction;
247
+ pressAction?: NotificationPressAction | null;
244
248
  /**
245
249
  * The `fullScreenAction` property allows you to show a custom UI
246
250
  * in full screen when the notification is displayed.
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationAndroid.js","sourceRoot":"","sources":["../../src/types/NotificationAndroid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NotificationAndroid.js","sourceRoot":"","sources":["../../src/types/NotificationAndroid.ts"],"names":[],"mappings":"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"}
@@ -324,8 +324,19 @@ export default function validateAndroidNotification(android) {
324
324
  }
325
325
  /**
326
326
  * pressAction
327
- */
328
- if (objectHasProperty(android, 'pressAction') && !isUndefined(android.pressAction)) {
327
+ *
328
+ * Defaults to { id: 'default', launchActivity: 'default' } when omitted,
329
+ * so tapping the notification opens the app. Pass pressAction: null explicitly
330
+ * to opt out (non-tappable notification).
331
+ *
332
+ * The opt-out uses a reserved sentinel id ('__NOTIFEE_OPT_OUT__') in the bundle
333
+ * sent to native, so the native layer can distinguish "absent" (synthesize default)
334
+ * from "explicitly null" (no launch intent). The same constant is defined in
335
+ * NotificationPendingIntent.java as PRESS_ACTION_OPT_OUT_ID.
336
+ */
337
+ if (objectHasProperty(android, 'pressAction') &&
338
+ android.pressAction !== null &&
339
+ !isUndefined(android.pressAction)) {
329
340
  try {
330
341
  out.pressAction = validateAndroidPressAction(android.pressAction);
331
342
  }
@@ -333,6 +344,15 @@ export default function validateAndroidNotification(android) {
333
344
  throw new Error(`'notification.android.pressAction' ${e.message}`);
334
345
  }
335
346
  }
347
+ else if (android.pressAction === null) {
348
+ // Explicit opt-out: emit sentinel so native can distinguish from "absent".
349
+ // DO NOT use '__NOTIFEE_OPT_OUT__' as a real pressAction id — reserved sentinel.
350
+ out.pressAction = { id: '__NOTIFEE_OPT_OUT__' };
351
+ }
352
+ else {
353
+ // pressAction omitted or undefined: inject default so tapping opens the app
354
+ out.pressAction = { id: 'default', launchActivity: 'default' };
355
+ }
336
356
  /**
337
357
  * fullScreenAction
338
358
  */
@@ -1 +1 @@
1
- {"version":3,"file":"validateAndroidNotification.js","sourceRoot":"","sources":["../../src/validators/validateAndroidNotification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateAndroidNotification.js","sourceRoot":"","sources":["../../src/validators/validateAndroidNotification.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export default function validateIOSPermissions(permissions) {
20
20
  }
21
21
  if (objectHasProperty(permissions, 'badge')) {
22
22
  if (!isBoolean(permissions.badge)) {
23
- throw new Error("'alert' badge a boolean value.");
23
+ throw new Error("'badge' expected a boolean value.");
24
24
  }
25
25
  out.badge = permissions.badge;
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validateIOSPermissions.js","sourceRoot":"","sources":["../../src/validators/validateIOSPermissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,WAAuC;IAEvC,MAAM,GAAG,GAA+B;QACtC,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,KAAK;KACrB,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IACpC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QAED,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,GAAG,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;IAChD,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"validateIOSPermissions.js","sourceRoot":"","sources":["../../src/validators/validateIOSPermissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,WAAuC;IAEvC,MAAM,GAAG,GAA+B;QACtC,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,KAAK;KACrB,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IACpC,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QAED,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,GAAG,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,IAAI,iBAAiB,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;IAChD,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "9.2.1";
1
+ export declare const version = "9.3.0";
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '9.2.1';
2
+ export const version = '9.3.0';
3
3
  //# sourceMappingURL=version.js.map
@@ -148,16 +148,16 @@ struct {
148
148
  presentationOptions |= UNNotificationPresentationOptionAlert;
149
149
  }
150
150
 
151
- NSDictionary *notifeeTrigger = notification.request.content.userInfo[kNotifeeUserInfoTrigger];
152
- if (notifeeTrigger != nil) {
153
- // post DELIVERED event
154
- [[NotifeeCoreDelegateHolder instance] didReceiveNotifeeCoreEvent:@{
155
- @"type" : @(NotifeeCoreEventTypeDelivered),
156
- @"detail" : @{
157
- @"notification" : notifeeNotification,
158
- }
159
- }];
160
- }
151
+ // Emit DELIVERED for every Notifee-owned notification presented in foreground.
152
+ // Previously guarded by `notifeeTrigger != nil`, which suppressed the event for
153
+ // displayNotification() calls — only trigger notifications got DELIVERED in foreground.
154
+ // Android emits DELIVERED unconditionally; this aligns iOS behavior.
155
+ [[NotifeeCoreDelegateHolder instance] didReceiveNotifeeCoreEvent:@{
156
+ @"type" : @(NotifeeCoreEventTypeDelivered),
157
+ @"detail" : @{
158
+ @"notification" : notifeeNotification,
159
+ }
160
+ }];
161
161
 
162
162
  completionHandler(presentationOptions);
163
163
 
@@ -211,9 +211,15 @@
211
211
  trigger:nil];
212
212
 
213
213
  dispatch_async(dispatch_get_main_queue(), ^{
214
- [center addNotificationRequest:request
215
- withCompletionHandler:^(NSError *error) {
216
- if (error == nil) {
214
+ [center
215
+ addNotificationRequest:request
216
+ withCompletionHandler:^(NSError *error) {
217
+ if (error == nil) {
218
+ // When the app is in foreground, willPresentNotification: emits
219
+ // DELIVERED for all Notifee-owned notifications. Only emit here
220
+ // when the app is NOT active to avoid duplicate events.
221
+ dispatch_async(dispatch_get_main_queue(), ^{
222
+ if (UIApplication.sharedApplication.applicationState != UIApplicationStateActive) {
217
223
  [[NotifeeCoreDelegateHolder instance] didReceiveNotifeeCoreEvent:@{
218
224
  @"type" : @(NotifeeCoreEventTypeDelivered),
219
225
  @"detail" : @{
@@ -221,8 +227,10 @@
221
227
  }
222
228
  }];
223
229
  }
224
- block(error);
225
- }];
230
+ });
231
+ }
232
+ block(error);
233
+ }];
226
234
  });
227
235
  });
228
236
  }
@@ -40,30 +40,40 @@
40
40
  delegate = aDelegate;
41
41
  self->delegateRespondsTo.didReceiveNotificationEvent =
42
42
  (unsigned int)[delegate respondsToSelector:@selector(didReceiveNotifeeCoreEvent:)];
43
- if (_pendingEvents.count > 0) {
44
- // make sure events are only processed once the module that wraps core has
45
- // set its delegate
46
- static dispatch_once_t once;
47
- // TODO temp workaround to delay initial start until RN module can queue
48
- // events
49
- dispatch_once(&once, ^{
50
- dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)),
51
- dispatch_get_main_queue(), ^{
52
- for (NSDictionary *event in self->_pendingEvents) {
53
- [self didReceiveNotifeeCoreEvent:event];
54
- }
55
- self->_pendingEvents = [[NSMutableArray alloc] init];
56
- });
57
- });
43
+ if (self->delegateRespondsTo.didReceiveNotificationEvent) {
44
+ NSArray *eventsToFlush;
45
+ @synchronized(self) {
46
+ eventsToFlush = [self->_pendingEvents copy];
47
+ [self->_pendingEvents removeAllObjects];
48
+ }
49
+ for (NSDictionary *event in eventsToFlush) {
50
+ [self->delegate didReceiveNotifeeCoreEvent:event];
51
+ }
58
52
  }
59
53
  }
60
54
  }
61
55
 
62
56
  - (void)didReceiveNotifeeCoreEvent:(NSDictionary *)notificationEvent {
63
57
  if (self->delegateRespondsTo.didReceiveNotificationEvent) {
64
- [self->delegate didReceiveNotifeeCoreEvent:notificationEvent];
65
- } else {
66
- [self->_pendingEvents addObject:notificationEvent];
58
+ id<NotifeeCoreDelegate> strongDelegate = self->delegate;
59
+ if (strongDelegate != nil) {
60
+ [strongDelegate didReceiveNotifeeCoreEvent:notificationEvent];
61
+ return;
62
+ }
63
+ }
64
+ id<NotifeeCoreDelegate> delegateToCall = nil;
65
+ @synchronized(self) {
66
+ // Re-check inside the lock: setDelegate: may have run between the
67
+ // first check and acquiring the lock. If so, deliver directly to
68
+ // avoid an orphan event sitting in _pendingEvents forever.
69
+ if (self->delegateRespondsTo.didReceiveNotificationEvent) {
70
+ delegateToCall = self->delegate;
71
+ } else {
72
+ [self->_pendingEvents addObject:notificationEvent];
73
+ }
74
+ }
75
+ if (delegateToCall != nil) {
76
+ [delegateToCall didReceiveNotifeeCoreEvent:notificationEvent];
67
77
  }
68
78
  }
69
79
 
@@ -107,7 +107,8 @@ RCT_EXPORT_MODULE();
107
107
  // API-triggered events require an interactive JS context. If this
108
108
  // becomes a real-world problem, the routing should be split by event
109
109
  // type rather than by state alone.
110
- BOOL isBackground = RCTRunningInAppExtension() ||
110
+ BOOL isBackground =
111
+ RCTRunningInAppExtension() ||
111
112
  [UIApplication sharedApplication].applicationState != UIApplicationStateActive;
112
113
  if (isBackground) {
113
114
  [self sendEventWithName:kReactNativeNotifeeNotificationBackgroundEvent body:eventBody];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-notify-kit",
3
- "version": "9.2.1",
3
+ "version": "9.3.0",
4
4
  "author": "Marco Crupi",
5
5
  "description": "Maintained Notifee-compatible fork for React Native — advanced local notifications for Android & iOS.",
6
6
  "main": "dist/index.js",
@@ -262,14 +262,18 @@ export interface NotificationAndroid {
262
262
  onlyAlertOnce?: boolean;
263
263
 
264
264
  /**
265
- * By default notifications have no behaviour when a user presses them. The
266
- * `pressAction` property allows you to set what happens when a user presses
267
- * the notification.
265
+ * Controls what happens when a user presses the notification.
266
+ *
267
+ * Defaults to `{ id: 'default', launchActivity: 'default' }` when omitted,
268
+ * which opens the app's main activity on tap.
269
+ *
270
+ * Pass `null` explicitly to create a non-tappable notification (the notification
271
+ * will display but tapping it will do nothing).
268
272
  *
269
273
  * View the [Interaction](/react-native/android/interaction) documentation to learn
270
274
  * more.
271
275
  */
272
- pressAction?: NotificationPressAction;
276
+ pressAction?: NotificationPressAction | null;
273
277
 
274
278
  /**
275
279
  * The `fullScreenAction` property allows you to show a custom UI
@@ -458,13 +458,33 @@ export default function validateAndroidNotification(
458
458
 
459
459
  /**
460
460
  * pressAction
461
+ *
462
+ * Defaults to { id: 'default', launchActivity: 'default' } when omitted,
463
+ * so tapping the notification opens the app. Pass pressAction: null explicitly
464
+ * to opt out (non-tappable notification).
465
+ *
466
+ * The opt-out uses a reserved sentinel id ('__NOTIFEE_OPT_OUT__') in the bundle
467
+ * sent to native, so the native layer can distinguish "absent" (synthesize default)
468
+ * from "explicitly null" (no launch intent). The same constant is defined in
469
+ * NotificationPendingIntent.java as PRESS_ACTION_OPT_OUT_ID.
461
470
  */
462
- if (objectHasProperty(android, 'pressAction') && !isUndefined(android.pressAction)) {
471
+ if (
472
+ objectHasProperty(android, 'pressAction') &&
473
+ android.pressAction !== null &&
474
+ !isUndefined(android.pressAction)
475
+ ) {
463
476
  try {
464
477
  out.pressAction = validateAndroidPressAction(android.pressAction);
465
478
  } catch (e: any) {
466
479
  throw new Error(`'notification.android.pressAction' ${e.message}`);
467
480
  }
481
+ } else if (android.pressAction === null) {
482
+ // Explicit opt-out: emit sentinel so native can distinguish from "absent".
483
+ // DO NOT use '__NOTIFEE_OPT_OUT__' as a real pressAction id — reserved sentinel.
484
+ out.pressAction = { id: '__NOTIFEE_OPT_OUT__' };
485
+ } else {
486
+ // pressAction omitted or undefined: inject default so tapping opens the app
487
+ out.pressAction = { id: 'default', launchActivity: 'default' };
468
488
  }
469
489
 
470
490
  /**
@@ -28,7 +28,7 @@ export default function validateIOSPermissions(
28
28
 
29
29
  if (objectHasProperty(permissions, 'badge')) {
30
30
  if (!isBoolean(permissions.badge)) {
31
- throw new Error("'alert' badge a boolean value.");
31
+ throw new Error("'badge' expected a boolean value.");
32
32
  }
33
33
 
34
34
  out.badge = permissions.badge;
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  // Generated by genversion.
2
- export const version = '9.2.1';
2
+ export const version = '9.3.0';