react-native-notify-kit 10.3.3 → 10.4.1

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.
Files changed (37) hide show
  1. package/README.md +102 -12
  2. package/app.plugin.js +3 -0
  3. package/cli/dist/commands/initNse.js +8 -9
  4. package/cli/dist/commands/initNse.js.map +1 -1
  5. package/cli/dist/lib/detectProject.d.ts +1 -4
  6. package/cli/dist/lib/detectProject.js +3 -32
  7. package/cli/dist/lib/detectProject.js.map +1 -1
  8. package/cli/dist/lib/initNseCore.d.ts +8 -0
  9. package/cli/dist/lib/initNseCore.js +197 -0
  10. package/cli/dist/lib/initNseCore.js.map +1 -0
  11. package/cli/dist/lib/patchPodfile.d.ts +9 -0
  12. package/cli/dist/lib/patchPodfile.js +22 -15
  13. package/cli/dist/lib/patchPodfile.js.map +1 -1
  14. package/cli/dist/lib/patchXcodeProject.d.ts +16 -0
  15. package/cli/dist/lib/patchXcodeProject.js +54 -26
  16. package/cli/dist/lib/patchXcodeProject.js.map +1 -1
  17. package/cli/dist/lib/writeTemplates.js +5 -14
  18. package/cli/dist/lib/writeTemplates.js.map +1 -1
  19. package/dist/version.d.ts +1 -1
  20. package/dist/version.js +1 -1
  21. package/ios/RNNotifee/NotifeeApiModule.h +1 -2
  22. package/ios/RNNotifee/NotifeeApiModule.mm +4 -0
  23. package/ios/RNNotifee/NotifeeExtensionHelper.h +2 -2
  24. package/ios/RNNotifee/NotifeeExtensionHelper.m +1 -0
  25. package/package.json +15 -2
  26. package/plugin/build/android/withNotifyKitAndroidManifest.js +236 -0
  27. package/plugin/build/index.js +62 -0
  28. package/plugin/build/ios/withNotifyKitIosNseAppExtension.js +142 -0
  29. package/plugin/build/ios/withNotifyKitIosNseFiles.js +79 -0
  30. package/plugin/build/ios/withNotifyKitIosNsePodfile.js +130 -0
  31. package/plugin/build/ios/withNotifyKitIosNseXcodeProject.js +49 -0
  32. package/plugin/build/options.js +224 -0
  33. package/plugin/build/shared/nse/index.js +7 -0
  34. package/plugin/build/shared/nse/initNseCore.js +220 -0
  35. package/plugin/build/shared/nse/patchPodfile.js +261 -0
  36. package/plugin/build/shared/nse/patchXcodeProject.js +199 -0
  37. package/src/version.ts +1 -1
@@ -34,8 +34,10 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.patchPodfile = patchPodfile;
37
+ exports.patchPodfileForNotifyKitNse = patchPodfileForNotifyKitNse;
37
38
  exports.getPatchedPodfile = getPatchedPodfile;
38
39
  const fs = __importStar(require("fs"));
40
+ const DEFAULT_PACKAGE_PATH_FROM_IOS = '../node_modules/react-native-notify-kit';
39
41
  const RNFB_INFO_PLIST_INPUT_PATH = '$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)';
40
42
  const RNFB_POST_INSTALL_MARKER = 'NotifyKitNSE: avoid an Xcode build cycle between the embedded app extension';
41
43
  /**
@@ -48,27 +50,24 @@ const RNFB_POST_INSTALL_MARKER = 'NotifyKitNSE: avoid an Xcode build cycle betwe
48
50
  */
49
51
  function patchPodfile(podfilePath, targetName, dryRun) {
50
52
  const content = fs.readFileSync(podfilePath, 'utf-8');
51
- const patched = getPatchedPodfile(content, targetName);
52
- if (patched === null) {
53
+ const result = patchPodfileForNotifyKitNse(content, { targetName });
54
+ if (!result.didChange) {
53
55
  return false; // Already patched
54
56
  }
55
57
  if (!dryRun) {
56
- fs.writeFileSync(podfilePath, patched, 'utf-8');
58
+ fs.writeFileSync(podfilePath, result.contents, 'utf-8');
57
59
  }
58
60
  return true;
59
61
  }
60
- /**
61
- * Returns the patched Podfile content without writing to disk (for dry-run
62
- * preview or testing).
63
- */
64
- function getPatchedPodfile(content, targetName) {
65
- let patched = content;
62
+ function patchPodfileForNotifyKitNse(podfileText, options) {
63
+ let patched = podfileText;
66
64
  let changed = false;
65
+ const packagePathFromIos = options.packagePathFromIos ?? DEFAULT_PACKAGE_PATH_FROM_IOS;
67
66
  // Idempotency check — skip commented lines (# prefix)
68
- if (!hasUncommentedTarget(patched, targetName)) {
69
- const withNseTarget = insertNseTarget(patched, targetName);
67
+ if (!hasUncommentedTarget(patched, options.targetName)) {
68
+ const withNseTarget = insertNseTarget(patched, options.targetName, packagePathFromIos);
70
69
  if (withNseTarget === null) {
71
- return null;
70
+ return { contents: patched, didChange: changed };
72
71
  }
73
72
  patched = withNseTarget;
74
73
  changed = true;
@@ -78,7 +77,15 @@ function getPatchedPodfile(content, targetName) {
78
77
  patched = withRnfbPatch;
79
78
  changed = true;
80
79
  }
81
- return changed ? patched : null;
80
+ return { contents: patched, didChange: changed };
81
+ }
82
+ /**
83
+ * Returns the patched Podfile content without writing to disk (for dry-run
84
+ * preview or testing).
85
+ */
86
+ function getPatchedPodfile(content, targetName) {
87
+ const result = patchPodfileForNotifyKitNse(content, { targetName });
88
+ return result.didChange ? result.contents : null;
82
89
  }
83
90
  /**
84
91
  * Inserts the NSE target block inside the main app target, just before
@@ -92,11 +99,11 @@ function getPatchedPodfile(content, targetName) {
92
99
  * sub-target there.
93
100
  * Discovered: F3 Round 3, Check 3 smoke-app integration (2026-04).
94
101
  */
95
- function insertNseTarget(content, targetName) {
102
+ function insertNseTarget(content, targetName, packagePathFromIos) {
96
103
  // Build the NSE block (indented since it's inside the parent target)
97
104
  let block = `\n target '${targetName}' do\n`;
98
105
  block += ` inherit! :search_paths\n`;
99
- block += ` pod 'RNNotifeeCore', :path => '../node_modules/react-native-notify-kit'\n`;
106
+ block += ` pod 'RNNotifeeCore', :path => '${packagePathFromIos}'\n`;
100
107
  block += ` end\n`;
101
108
  // Find the main app target's closing `end`.
102
109
  // Strategy: find the first `target '...' do` and then its matching `end`.
@@ -1 +1 @@
1
- {"version":3,"file":"patchPodfile.js","sourceRoot":"","sources":["../../src/lib/patchPodfile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,oCAaC;AAMD,8CAqBC;AAtDD,uCAAyB;AAEzB,MAAM,0BAA0B,GAAG,yCAAyC,CAAC;AAC7E,MAAM,wBAAwB,GAC5B,6EAA6E,CAAC;AAEhF;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,WAAmB,EAAE,UAAkB,EAAE,MAAe;IACnF,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC,CAAC,kBAAkB;IAClC,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,OAAe,EAAE,UAAkB;IACnE,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,sDAAsD;IACtD,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC;QAC/C,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC3D,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,GAAG,aAAa,CAAC;QACxB,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,MAAM,aAAa,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,aAAa,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,GAAG,aAAa,CAAC;QACxB,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,eAAe,CAAC,OAAe,EAAE,UAAkB;IAC1D,qEAAqE;IACrE,IAAI,KAAK,GAAG,eAAe,UAAU,QAAQ,CAAC;IAC9C,KAAK,IAAI,8BAA8B,CAAC;IACxC,KAAK,IAAI,+EAA+E,CAAC;IACzF,KAAK,IAAI,SAAS,CAAC;IAEnB,4CAA4C;IAC5C,0EAA0E;IAC1E,oCAAoC;IACpC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpE,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACpD,0DAA0D;QAC1D,OAAO,OAAO,GAAG,IAAI,GAAG,KAAK,CAAC;IAChC,CAAC;IAED,MAAM,WAAW,GAAG,wBAAwB,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzE,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;QACvB,oFAAoF;QACpF,MAAM,IAAI,KAAK,CACb,sFAAsF;YACpF,+EAA+E;YAC/E,mDAAmD,CACtD,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAe;IACjD,IAAI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAC/C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,WAAW,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,OAAO,GACX,IAAI,GAAG,2BAA2B,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QACpF,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IACxF,OAAO,CACL,OAAO;QACP,SAAS;QACT,+BAA+B;QAC/B,2BAA2B,CAAC,IAAI,EAAE,WAAW,CAAC;QAC9C,OAAO,CACR,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc,EAAE,kBAA0B;IAC7E,OAAO;QACL,GAAG,MAAM,KAAK,wBAAwB,EAAE;QACxC,GAAG,MAAM,4DAA4D;QACrE,GAAG,MAAM,iCAAiC,0BAA0B,GAAG;QACvE,GAAG,MAAM,sBAAsB;QAC/B,GAAG,MAAM,gCAAgC;QACzC,GAAG,MAAM,0CAA0C;QACnD,GAAG,MAAM,GAAG;QACZ,EAAE;QACF,GAAG,MAAM,GAAG,kBAAkB,+CAA+C;QAC7E,GAAG,MAAM,2EAA2E;QACpF,GAAG,MAAM,gEAAgE;QACzE,GAAG,MAAM,4CAA4C;QACrD,EAAE;QACF,GAAG,MAAM,mEAAmE;QAC5E,GAAG,MAAM,OAAO;QAChB,EAAE;QACF,GAAG,MAAM,gDAAgD;QACzD,GAAG,MAAM,4BAA4B;QACrC,EAAE;QACF,GAAG,MAAM,mCAAmC;QAC5C,EAAE;QACF,GAAG,MAAM,yCAAyC;QAClD,GAAG,MAAM,sDAAsD;QAC/D,GAAG,MAAM,yDAAyD;QAClE,GAAG,MAAM,qCAAqC;QAC9C,EAAE;QACF,GAAG,MAAM,+DAA+D;QACxE,GAAG,MAAM,wCAAwC;QACjD,GAAG,MAAM,WAAW;QACpB,GAAG,MAAM,SAAS;QAClB,GAAG,MAAM,OAAO;QAChB,EAAE;QACF,GAAG,MAAM,gDAAgD;QACzD,GAAG,MAAM,KAAK;QACd,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAe;IAEf,MAAM,kBAAkB,GAAG,wDAAwD,CAAC;IACpF,IAAI,KAA6B,CAAC;IAElC,OAAO,CAAC,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAChE,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,OAAO;gBACL,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI;gBAC3B,QAAQ;gBACR,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;aAC3B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAe,EAAE,UAAkB;IACnE,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,SAAS,GAAG,UAAU,CAAC;IAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAElD,KAAK,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAExC,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YACtB,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,iBAAiB;IACjD,CAAC;IAED,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,sBAAsB,GAAG,4DAA4D,CAAC,IAAI,CAC9F,IAAI,CACL,CAAC;IACF,IAAI,sBAAsB,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe,EAAE,UAAkB;IAC/D,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,iBAAiB,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC3E,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB;QAC7D,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"patchPodfile.js","sourceRoot":"","sources":["../../src/lib/patchPodfile.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@
11
11
  * Round 3 Check 3 smoke-app integration test to confirm which workarounds
12
12
  * remain necessary.
13
13
  */
14
+ import xcode from 'xcode';
15
+ export type XcodeProject = ReturnType<typeof xcode.project>;
14
16
  export interface PatchXcodeOptions {
15
17
  pbxprojPath: string;
16
18
  targetName: string;
@@ -18,8 +20,22 @@ export interface PatchXcodeOptions {
18
20
  iosDir: string;
19
21
  dryRun: boolean;
20
22
  }
23
+ export interface NotifyKitNseXcodePatchOptions {
24
+ targetName: string;
25
+ bundleIdentifier: string;
26
+ parentTargetName?: string;
27
+ deploymentTarget?: string;
28
+ }
29
+ export interface NotifyKitNseXcodePatchResult {
30
+ didChange: boolean;
31
+ targetUuid?: string;
32
+ productUuid?: string;
33
+ hostTargetUuid?: string;
34
+ warnings: string[];
35
+ }
21
36
  /**
22
37
  * Adds an NSE target to the .pbxproj file via the xcode library.
23
38
  * Idempotent: if a target with the given name already exists, returns false.
24
39
  */
25
40
  export declare function patchXcodeProject(opts: PatchXcodeOptions): boolean;
41
+ export declare function patchXcodeProjectForNotifyKitNse(proj: XcodeProject, options: NotifyKitNseXcodePatchOptions): NotifyKitNseXcodePatchResult;
@@ -50,6 +50,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
50
50
  };
51
51
  Object.defineProperty(exports, "__esModule", { value: true });
52
52
  exports.patchXcodeProject = patchXcodeProject;
53
+ exports.patchXcodeProjectForNotifyKitNse = patchXcodeProjectForNotifyKitNse;
53
54
  const crypto = __importStar(require("crypto"));
54
55
  const fs = __importStar(require("fs"));
55
56
  const xcode_1 = __importDefault(require("xcode"));
@@ -60,15 +61,30 @@ const xcode_1 = __importDefault(require("xcode"));
60
61
  function patchXcodeProject(opts) {
61
62
  const proj = xcode_1.default.project(opts.pbxprojPath);
62
63
  proj.parseSync();
64
+ const result = patchXcodeProjectForNotifyKitNse(proj, {
65
+ targetName: opts.targetName,
66
+ bundleIdentifier: opts.bundleId,
67
+ });
68
+ // writeSync() returns content as string, must write manually.
69
+ if (result.didChange && !opts.dryRun) {
70
+ fs.writeFileSync(opts.pbxprojPath, proj.writeSync());
71
+ }
72
+ return result.didChange;
73
+ }
74
+ function patchXcodeProjectForNotifyKitNse(proj, options) {
75
+ const { targetName, bundleIdentifier, parentTargetName, deploymentTarget = '15.1' } = options;
76
+ const warnings = [];
63
77
  // Idempotency: check if target already exists
64
- if (targetExists(proj, opts.targetName)) {
65
- return false;
78
+ if (targetExists(proj, targetName)) {
79
+ return { didChange: false, warnings };
66
80
  }
67
81
  // 1. Add the extension target
68
- const target = proj.addTarget(opts.targetName, 'app_extension', opts.targetName);
82
+ const target = proj.addTarget(targetName, 'app_extension', targetName);
69
83
  if (!target || !target.uuid) {
70
- throw new Error(`xcode library failed to create target '${opts.targetName}'`);
84
+ throw new Error(`xcode library failed to create target '${targetName}'`);
71
85
  }
86
+ const targetUuid = target.uuid;
87
+ const productUuid = getTargetProductUuid(target);
72
88
  // xcode@3.x bug: addTarget creates the .appex product reference with
73
89
  // `fileEncoding = undefined` and `lastKnownFileType = undefined` instead
74
90
  // of omitting these keys entirely. CocoaPods' pbxproj parser rejects
@@ -76,15 +92,15 @@ function patchXcodeProject(opts) {
76
92
  // `pod install`. Strip these fields post-addTarget to restore a clean
77
93
  // product reference that CocoaPods accepts.
78
94
  // Discovered: F3 Round 3, Check 3 smoke-app integration (2026-04).
79
- fixProductFileReference(proj, opts.targetName);
95
+ fixProductFileReference(proj, targetName);
80
96
  // 2. Add build phases
81
- proj.addBuildPhase([], 'PBXSourcesBuildPhase', 'Sources', target.uuid);
82
- proj.addBuildPhase([], 'PBXFrameworksBuildPhase', 'Frameworks', target.uuid);
83
- proj.addBuildPhase([], 'PBXResourcesBuildPhase', 'Resources', target.uuid);
97
+ proj.addBuildPhase([], 'PBXSourcesBuildPhase', 'Sources', targetUuid);
98
+ proj.addBuildPhase([], 'PBXFrameworksBuildPhase', 'Frameworks', targetUuid);
99
+ proj.addBuildPhase([], 'PBXResourcesBuildPhase', 'Resources', targetUuid);
84
100
  // 3. Create PBX group for the NSE target files, then register the source file
85
- const group = proj.addPbxGroup([], opts.targetName, opts.targetName);
86
- proj.addSourceFile(`${opts.targetName}/NotificationService.swift`, {
87
- target: target.uuid,
101
+ const group = proj.addPbxGroup([], targetName, targetName);
102
+ proj.addSourceFile(`${targetName}/NotificationService.swift`, {
103
+ target: targetUuid,
88
104
  }, group.uuid);
89
105
  // xcode@3.x bug: addTargetDependency() adds the dependency to an internal
90
106
  // cache but does not serialize it to the project hash, so writeSync()
@@ -97,20 +113,25 @@ function patchXcodeProject(opts) {
97
113
  // CocoaPods' post_install to crash. Xcode auto-creates the embed phase
98
114
  // when the user opens the project and sees the dependency.
99
115
  // Discovered: F3 Round 3, Check 3 smoke-app integration (2026-04).
100
- const hostUuid = findHostTarget(proj);
116
+ const hostUuid = findHostTarget(proj, parentTargetName);
101
117
  if (hostUuid) {
102
- addTargetDependencyManual(proj, hostUuid, target.uuid, opts.targetName);
118
+ addTargetDependencyManual(proj, hostUuid, targetUuid, targetName);
103
119
  stripRnfbInfoPlistInputPath(proj, hostUuid);
104
120
  }
105
121
  // 5. Set build settings for all configurations
106
- setBuildSettings(proj, opts.targetName, opts.bundleId);
107
- // 6. Write — writeSync() returns content as string, must write manually
108
- if (!opts.dryRun) {
109
- fs.writeFileSync(opts.pbxprojPath, proj.writeSync());
110
- }
111
- return true;
122
+ setBuildSettings(proj, targetName, bundleIdentifier, deploymentTarget);
123
+ return {
124
+ didChange: true,
125
+ targetUuid,
126
+ productUuid,
127
+ hostTargetUuid: hostUuid ?? undefined,
128
+ warnings,
129
+ };
112
130
  }
113
- function findHostTarget(proj) {
131
+ function findHostTarget(proj, parentTargetName) {
132
+ if (parentTargetName) {
133
+ return findTargetByName(proj, parentTargetName);
134
+ }
114
135
  const targets = proj.pbxNativeTargetSection();
115
136
  for (const [key, value] of Object.entries(targets)) {
116
137
  if (typeof value !== 'object' || key.endsWith('_comment'))
@@ -123,20 +144,27 @@ function findHostTarget(proj) {
123
144
  }
124
145
  return null;
125
146
  }
126
- function targetExists(proj, name) {
147
+ function findTargetByName(proj, name) {
127
148
  const targets = proj.pbxNativeTargetSection();
128
- for (const [, value] of Object.entries(targets)) {
149
+ for (const [key, value] of Object.entries(targets)) {
129
150
  if (typeof value !== 'object')
130
151
  continue;
131
152
  const target = value;
132
153
  const targetName = String(target.name ?? '').replace(/"/g, '');
133
154
  if (targetName === name) {
134
- return true;
155
+ return key;
135
156
  }
136
157
  }
137
- return false;
158
+ return null;
159
+ }
160
+ function targetExists(proj, name) {
161
+ return findTargetByName(proj, name) !== null;
162
+ }
163
+ function getTargetProductUuid(target) {
164
+ const productReference = target.pbxNativeTarget?.productReference;
165
+ return typeof productReference === 'string' ? productReference : undefined;
138
166
  }
139
- function setBuildSettings(proj, targetName, bundleId) {
167
+ function setBuildSettings(proj, targetName, bundleId, deploymentTarget) {
140
168
  const configs = proj.pbxXCBuildConfigurationSection();
141
169
  for (const [, value] of Object.entries(configs)) {
142
170
  if (typeof value !== 'object')
@@ -150,7 +178,7 @@ function setBuildSettings(proj, targetName, bundleId) {
150
178
  settings.INFOPLIST_FILE = `"${targetName}/Info.plist"`;
151
179
  settings.PRODUCT_BUNDLE_IDENTIFIER = `"${bundleId}"`;
152
180
  settings.TARGETED_DEVICE_FAMILY = `"1,2"`;
153
- settings.IPHONEOS_DEPLOYMENT_TARGET = '15.1';
181
+ settings.IPHONEOS_DEPLOYMENT_TARGET = deploymentTarget;
154
182
  settings.SWIFT_VERSION = '5.0';
155
183
  settings.CODE_SIGN_ENTITLEMENTS = `"${targetName}/${targetName}.entitlements"`;
156
184
  settings.GENERATE_INFOPLIST_FILE = 'NO';
@@ -1 +1 @@
1
- {"version":3,"file":"patchXcodeProject.js","sourceRoot":"","sources":["../../src/lib/patchXcodeProject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"patchXcodeProject.js","sourceRoot":"","sources":["../../src/lib/patchXcodeProject.ts"],"names":[],"mappings":"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"}
@@ -36,12 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.writeTemplates = writeTemplates;
37
37
  const fs = __importStar(require("fs"));
38
38
  const path = __importStar(require("path"));
39
- // Templates live at dist/templates/ in dev (relative to dist/lib/writeTemplates.js)
40
- // and at cli/dist/templates/ in the bundled prepack (relative to cli/dist/cli.bundle.js).
41
- // The fallback path handles the bundled context where __dirname is the bundle's dir.
42
- const TEMPLATES_DIR = fs.existsSync(path.join(__dirname, 'templates'))
43
- ? path.join(__dirname, 'templates')
44
- : path.join(__dirname, '..', 'templates');
39
+ const initNseCore_1 = require("./initNseCore");
45
40
  /**
46
41
  * Writes the NSE template files (Swift, Info.plist, entitlements) to the
47
42
  * target directory under the iOS project.
@@ -55,24 +50,20 @@ function writeTemplates(opts) {
55
50
  fs.mkdirSync(targetDir, { recursive: true });
56
51
  const files = [
57
52
  {
58
- template: 'NotificationService.swift.tmpl',
59
53
  output: 'NotificationService.swift',
54
+ content: (0, initNseCore_1.renderNotificationServiceSwift)(),
60
55
  },
61
56
  {
62
- template: 'Info.plist.tmpl',
63
57
  output: 'Info.plist',
58
+ content: (0, initNseCore_1.renderNseInfoPlist)({ targetName: opts.targetName }),
64
59
  },
65
60
  {
66
- template: 'NotifyKitNSE.entitlements.tmpl',
67
61
  output: `${opts.targetName}.entitlements`,
62
+ content: (0, initNseCore_1.renderNseEntitlementsPlist)(),
68
63
  },
69
64
  ];
70
65
  const written = [];
71
- for (const { template, output } of files) {
72
- const templatePath = path.join(TEMPLATES_DIR, template);
73
- let content = fs.readFileSync(templatePath, 'utf-8');
74
- content = content.replace(/\{\{TARGET_NAME\}\}/g, opts.targetName);
75
- content = content.replace(/\{\{BUNDLE_ID\}\}/g, opts.bundleId);
66
+ for (const { output, content } of files) {
76
67
  const outputPath = path.join(targetDir, output);
77
68
  fs.writeFileSync(outputPath, content, 'utf-8');
78
69
  written.push(outputPath);
@@ -1 +1 @@
1
- {"version":3,"file":"writeTemplates.js","sourceRoot":"","sources":["../../src/lib/writeTemplates.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,wCAwCC;AA7DD,uCAAyB;AACzB,2CAA6B;AAE7B,oFAAoF;AACpF,0FAA0F;AAC1F,qFAAqF;AACrF,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;IACnC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;AAS5C;;;GAGG;AACH,SAAgB,cAAc,CAAC,IAA2B;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAE1D,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,CAAC,UAAU,yBAAyB,SAAS,KAAK;YACnE,sEAAsE,CACzE,CAAC;IACJ,CAAC;IAED,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG;QACZ;YACE,QAAQ,EAAE,gCAAgC;YAC1C,MAAM,EAAE,2BAA2B;SACpC;QACD;YACE,QAAQ,EAAE,iBAAiB;YAC3B,MAAM,EAAE,YAAY;SACrB;QACD;YACE,QAAQ,EAAE,gCAAgC;YAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,eAAe;SAC1C;KACF,CAAC;IAEF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACxD,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACrD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACnE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE/D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAChD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"writeTemplates.js","sourceRoot":"","sources":["../../src/lib/writeTemplates.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,wCAmCC;AAtDD,uCAAyB;AACzB,2CAA6B;AAC7B,+CAIuB;AASvB;;;GAGG;AACH,SAAgB,cAAc,CAAC,IAA2B;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAE1D,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,CAAC,UAAU,yBAAyB,SAAS,KAAK;YACnE,sEAAsE,CACzE,CAAC;IACJ,CAAC;IAED,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG;QACZ;YACE,MAAM,EAAE,2BAA2B;YACnC,OAAO,EAAE,IAAA,4CAA8B,GAAE;SAC1C;QACD;YACE,MAAM,EAAE,YAAY;YACpB,OAAO,EAAE,IAAA,gCAAkB,EAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;SAC7D;QACD;YACE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,eAAe;YACzC,OAAO,EAAE,IAAA,wCAA0B,GAAE;SACtC;KACF,CAAC;IAEF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,KAAK,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAChD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "10.3.3";
1
+ export declare const version = "10.4.1";
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '10.3.3';
2
+ export const version = '10.4.1';
3
3
  //# sourceMappingURL=version.js.map
@@ -18,8 +18,7 @@
18
18
  #import <Foundation/Foundation.h>
19
19
  #import <NotifeeSpec/NotifeeSpec.h>
20
20
  #import <React/RCTEventEmitter.h>
21
- #import "NotifeeCore.h"
22
21
 
23
- @interface NotifeeApiModule : RCTEventEmitter <NativeNotifeeModuleSpec, NotifeeCoreDelegate>
22
+ @interface NotifeeApiModule : RCTEventEmitter <NativeNotifeeModuleSpec>
24
23
 
25
24
  @end
@@ -18,8 +18,12 @@
18
18
  #import "NotifeeApiModule.h"
19
19
  #import <React/RCTUtils.h>
20
20
  #import <UIKit/UIKit.h>
21
+ #import "../NotifeeCore/NotifeeCore.h"
21
22
  #import "NotifeeCore+UNUserNotificationCenter.h"
22
23
 
24
+ @interface NotifeeApiModule () <NotifeeCoreDelegate>
25
+ @end
26
+
23
27
  @interface NotifeeCoreUNUserNotificationCenter (Rechain)
24
28
  - (void)rechainUserNotificationCenterDelegate;
25
29
  @end
@@ -15,13 +15,13 @@
15
15
  *
16
16
  */
17
17
 
18
+ #import <Foundation/Foundation.h>
19
+
18
20
  #if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 || \
19
21
  __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_10_14
20
22
  #import <UserNotifications/UserNotifications.h>
21
23
  #endif
22
24
 
23
- #import "NotifeeCore.h"
24
-
25
25
  NS_ASSUME_NONNULL_BEGIN
26
26
  @interface NotifeeExtensionHelper : NSObject
27
27
 
@@ -16,6 +16,7 @@
16
16
  */
17
17
 
18
18
  #import "NotifeeExtensionHelper.h"
19
+ #import "../NotifeeCore/NotifeeCore.h"
19
20
 
20
21
  @implementation NotifeeExtensionHelper
21
22
 
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "react-native-notify-kit",
3
- "version": "10.3.3",
3
+ "version": "10.4.1",
4
4
  "author": "Marco Crupi",
5
- "description": "Maintained Notifee-compatible fork for React Native advanced local notifications for Android & iOS.",
5
+ "description": "Maintained Notifee-compatible React Native notifications library for Android, iOS, FCM Mode, rich notifications, foreground services, and Expo CNG development builds.",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
8
8
  "bin": "./cli/bin/react-native-notify-kit",
@@ -11,6 +11,8 @@
11
11
  "types": "./dist/index.d.ts",
12
12
  "default": "./dist/index.js"
13
13
  },
14
+ "./app.plugin": "./app.plugin.js",
15
+ "./app.plugin.js": "./app.plugin.js",
14
16
  "./server": {
15
17
  "types": "./server/dist/index.d.ts",
16
18
  "default": "./server/dist/index.js"
@@ -59,8 +61,14 @@
59
61
  "xcode": "^3.0.1"
60
62
  },
61
63
  "peerDependencies": {
64
+ "expo": "*",
62
65
  "react-native": ">=0.73.0"
63
66
  },
67
+ "peerDependenciesMeta": {
68
+ "expo": {
69
+ "optional": true
70
+ }
71
+ },
64
72
  "codegenConfig": {
65
73
  "name": "NotifeeSpec",
66
74
  "type": "modules",
@@ -87,7 +95,10 @@
87
95
  "ios",
88
96
  "firebase",
89
97
  "fcm",
98
+ "expo",
99
+ "expo-cng",
90
100
  "notifee",
101
+ "rich-notifications",
91
102
  "notifications"
92
103
  ],
93
104
  "publishConfig": {
@@ -103,6 +114,8 @@
103
114
  "!/src/__mocks__",
104
115
  "/dist",
105
116
  "/lib",
117
+ "/app.plugin.js",
118
+ "/plugin/build",
106
119
  "/*.podspec",
107
120
  "/jest-mock.js",
108
121
  "/react-native.config.js",