react-native-push-signal 0.1.6 → 0.1.8
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/LICENSE +1 -1
- package/PushSignal.podspec +2 -12
- package/README.md +1 -3
- package/README.ru.md +1 -3
- package/android/build.gradle +1 -62
- package/android/consumer-rules.pro +3 -3
- package/android/src/main/AndroidManifest.xml +2 -2
- package/android/src/main/java/com/pushsignal/PushModels.kt +15 -0
- package/android/src/main/java/com/{margelo/nitro/pushsignal → pushsignal}/PushSignalCenter.kt +2 -3
- package/android/src/main/java/com/{margelo/nitro/pushsignal → pushsignal}/PushSignalInitProvider.kt +1 -1
- package/android/src/main/java/com/{margelo/nitro/pushsignal → pushsignal}/PushSignalMessagingService.kt +1 -1
- package/android/src/main/java/com/pushsignal/PushSignalModule.kt +88 -0
- package/android/src/main/java/com/pushsignal/PushSignalPackage.kt +30 -0
- package/ios/PushSignal.h +4 -0
- package/ios/PushSignal.mm +57 -0
- package/ios/PushSignalCenter.h +26 -0
- package/ios/PushSignalCenter.m +583 -0
- package/ios/PushSignalLaunchStore.m +3 -14
- package/lib/module/NativePushSignal.js +5 -0
- package/lib/module/NativePushSignal.js.map +1 -0
- package/lib/module/pushSignal.native.js +33 -7
- package/lib/module/pushSignal.native.js.map +1 -1
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/src/NativePushSignal.d.ts +22 -0
- package/lib/typescript/src/NativePushSignal.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/pushSignal.d.ts +1 -1
- package/lib/typescript/src/pushSignal.d.ts.map +1 -1
- package/lib/typescript/src/pushSignal.native.d.ts +1 -1
- package/lib/typescript/src/pushSignal.native.d.ts.map +1 -1
- package/lib/typescript/src/{PushSignal.nitro.d.ts → types.d.ts} +2 -12
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/package.json +14 -19
- package/src/NativePushSignal.ts +25 -0
- package/src/index.tsx +1 -1
- package/src/pushSignal.native.tsx +54 -11
- package/src/pushSignal.tsx +1 -1
- package/src/types.ts +25 -0
- package/android/CMakeLists.txt +0 -24
- package/android/src/main/cpp/cpp-adapter.cpp +0 -11
- package/android/src/main/java/com/margelo/nitro/pushsignal/PushSignal.kt +0 -38
- package/android/src/main/java/com/margelo/nitro/pushsignal/PushSignalPackage.kt +0 -22
- package/ios/PushSignal.swift +0 -29
- package/ios/PushSignalCenter.swift +0 -604
- package/lib/module/PushSignal.nitro.js +0 -4
- package/lib/module/PushSignal.nitro.js.map +0 -1
- package/lib/typescript/src/PushSignal.nitro.d.ts.map +0 -1
- package/nitro.json +0 -23
- package/nitrogen/generated/android/c++/JAndroidFirebaseConfig.hpp +0 -70
- package/nitrogen/generated/android/c++/JFunc_void_PushMessage.hpp +0 -80
- package/nitrogen/generated/android/c++/JHybridPushSignalSpec.cpp +0 -114
- package/nitrogen/generated/android/c++/JHybridPushSignalSpec.hpp +0 -66
- package/nitrogen/generated/android/c++/JPushCredentials.hpp +0 -70
- package/nitrogen/generated/android/c++/JPushEnvironment.hpp +0 -58
- package/nitrogen/generated/android/c++/JPushMessage.hpp +0 -84
- package/nitrogen/generated/android/c++/JPushPlatform.hpp +0 -58
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/AndroidFirebaseConfig.kt +0 -66
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/Func_void_PushMessage.kt +0 -78
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/HybridPushSignalSpec.kt +0 -79
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/PushCredentials.kt +0 -61
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/PushEnvironment.kt +0 -23
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/PushMessage.kt +0 -66
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/PushPlatform.kt +0 -23
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/pushsignal/pushsignalOnLoad.kt +0 -35
- package/nitrogen/generated/android/pushsignal+autolinking.cmake +0 -81
- package/nitrogen/generated/android/pushsignal+autolinking.gradle +0 -27
- package/nitrogen/generated/android/pushsignalOnLoad.cpp +0 -56
- package/nitrogen/generated/android/pushsignalOnLoad.hpp +0 -34
- package/nitrogen/generated/ios/PushSignal+autolinking.rb +0 -62
- package/nitrogen/generated/ios/PushSignal-Swift-Cxx-Bridge.cpp +0 -65
- package/nitrogen/generated/ios/PushSignal-Swift-Cxx-Bridge.hpp +0 -254
- package/nitrogen/generated/ios/PushSignal-Swift-Cxx-Umbrella.hpp +0 -63
- package/nitrogen/generated/ios/PushSignalAutolinking.mm +0 -33
- package/nitrogen/generated/ios/PushSignalAutolinking.swift +0 -26
- package/nitrogen/generated/ios/c++/HybridPushSignalSpecSwift.cpp +0 -11
- package/nitrogen/generated/ios/c++/HybridPushSignalSpecSwift.hpp +0 -120
- package/nitrogen/generated/ios/swift/AndroidFirebaseConfig.swift +0 -96
- package/nitrogen/generated/ios/swift/Func_void.swift +0 -46
- package/nitrogen/generated/ios/swift/Func_void_PushCredentials.swift +0 -46
- package/nitrogen/generated/ios/swift/Func_void_PushMessage.swift +0 -46
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +0 -46
- package/nitrogen/generated/ios/swift/HybridPushSignalSpec.swift +0 -58
- package/nitrogen/generated/ios/swift/HybridPushSignalSpec_cxx.swift +0 -196
- package/nitrogen/generated/ios/swift/PushCredentials.swift +0 -45
- package/nitrogen/generated/ios/swift/PushEnvironment.swift +0 -40
- package/nitrogen/generated/ios/swift/PushMessage.swift +0 -97
- package/nitrogen/generated/ios/swift/PushPlatform.swift +0 -40
- package/nitrogen/generated/shared/c++/AndroidFirebaseConfig.hpp +0 -96
- package/nitrogen/generated/shared/c++/HybridPushSignalSpec.cpp +0 -24
- package/nitrogen/generated/shared/c++/HybridPushSignalSpec.hpp +0 -74
- package/nitrogen/generated/shared/c++/PushCredentials.hpp +0 -97
- package/nitrogen/generated/shared/c++/PushEnvironment.hpp +0 -76
- package/nitrogen/generated/shared/c++/PushMessage.hpp +0 -97
- package/nitrogen/generated/shared/c++/PushPlatform.hpp +0 -76
- package/src/PushSignal.nitro.ts +0 -39
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["NativePushSignal","messageListeners","Set","pressListeners","nativeCallbacksBound","normalizeMessage","raw","data","key","value","Object","entries","String","id","title","body","normalizeCredentials","platform","token","environment","bindNativeCallbacks","onMessage","message","listener","Promise","resolve","then","undefined","onNotificationPress","forEach","startListening","initialize","config","getCredentials","add","delete"],"sourceRoot":"../../src","sources":["pushSignal.native.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { CodegenTypes, TurboModule } from 'react-native';
|
|
2
|
+
export type NativePushMessage = {
|
|
3
|
+
id?: string;
|
|
4
|
+
title?: string;
|
|
5
|
+
body?: string;
|
|
6
|
+
data: Object;
|
|
7
|
+
};
|
|
8
|
+
export type NativePushCredentials = {
|
|
9
|
+
platform: string;
|
|
10
|
+
token: string;
|
|
11
|
+
environment?: string;
|
|
12
|
+
};
|
|
13
|
+
export interface Spec extends TurboModule {
|
|
14
|
+
initialize(config: Object): Promise<void>;
|
|
15
|
+
getCredentials(): Promise<NativePushCredentials>;
|
|
16
|
+
startListening(): void;
|
|
17
|
+
readonly onMessage: CodegenTypes.EventEmitter<NativePushMessage>;
|
|
18
|
+
readonly onNotificationPress: CodegenTypes.EventEmitter<NativePushMessage>;
|
|
19
|
+
}
|
|
20
|
+
declare const _default: Spec;
|
|
21
|
+
export default _default;
|
|
22
|
+
//# sourceMappingURL=NativePushSignal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativePushSignal.d.ts","sourceRoot":"","sources":["../../../src/NativePushSignal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG9D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,cAAc,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACjD,cAAc,IAAI,IAAI,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IACjE,QAAQ,CAAC,mBAAmB,EAAE,YAAY,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;CAC5E;;AAED,wBAAoE"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export type { AndroidFirebaseConfig, OnMessageListener, PushCredentials, PushEnvironment, PushMessage, PushPlatform, } from './
|
|
1
|
+
export type { AndroidFirebaseConfig, OnMessageListener, PushCredentials, PushEnvironment, PushMessage, PushPlatform, } from './types.js';
|
|
2
2
|
export { getCredentials, initialize, onMessage, onNotificationPress, } from './pushSignal';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,WAAW,EACX,YAAY,GACb,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,WAAW,EACX,YAAY,GACb,MAAM,YAAS,CAAC;AACjB,OAAO,EACL,cAAc,EACd,UAAU,EACV,SAAS,EACT,mBAAmB,GACpB,MAAM,cAAc,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AndroidFirebaseConfig, OnMessageListener, PushCredentials, PushMessage } from './
|
|
1
|
+
import type { AndroidFirebaseConfig, OnMessageListener, PushCredentials, PushMessage } from './types.js';
|
|
2
2
|
export declare function initialize(_config?: AndroidFirebaseConfig): Promise<void>;
|
|
3
3
|
export declare function getCredentials(): Promise<PushCredentials>;
|
|
4
4
|
export declare function onMessage(_listener: OnMessageListener): () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pushSignal.d.ts","sourceRoot":"","sources":["../../../src/pushSignal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,WAAW,EACZ,MAAM,
|
|
1
|
+
{"version":3,"file":"pushSignal.d.ts","sourceRoot":"","sources":["../../../src/pushSignal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,WAAW,EACZ,MAAM,YAAS,CAAC;AAEjB,wBAAsB,UAAU,CAC9B,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,IAAI,CAAC,CAAG;AAEnB,wBAAsB,cAAc,IAAI,OAAO,CAAC,eAAe,CAAC,CAE/D;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,iBAAiB,GAAG,MAAM,IAAI,CAElE;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GACxC,MAAM,IAAI,CAEZ"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AndroidFirebaseConfig, OnMessageListener, PushCredentials, PushMessage } from './
|
|
1
|
+
import type { AndroidFirebaseConfig, OnMessageListener, PushCredentials, PushMessage } from './types.js';
|
|
2
2
|
export declare function initialize(config?: AndroidFirebaseConfig): Promise<void>;
|
|
3
3
|
export declare function getCredentials(): Promise<PushCredentials>;
|
|
4
4
|
export declare function onMessage(listener: OnMessageListener): () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pushSignal.native.d.ts","sourceRoot":"","sources":["../../../src/pushSignal.native.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,
|
|
1
|
+
{"version":3,"file":"pushSignal.native.d.ts","sourceRoot":"","sources":["../../../src/pushSignal.native.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EAEf,WAAW,EAEZ,MAAM,YAAS,CAAC;AAyEjB,wBAAgB,UAAU,CAAC,MAAM,GAAE,qBAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,eAAe,CAAC,CAEzD;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI,CAMjE;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GACvC,MAAM,IAAI,CAMZ"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
/** JS/C++ name cannot be `android`: NDK defines `-DANDROID` and breaks the generated enum. */
|
|
1
|
+
/** JS name cannot be `android`: NDK defines `-DANDROID` and breaks native enums. */
|
|
3
2
|
export type PushPlatform = 'ios' | 'android_os';
|
|
4
3
|
export type PushEnvironment = 'sandbox' | 'production';
|
|
5
4
|
export interface PushCredentials {
|
|
@@ -20,13 +19,4 @@ export interface AndroidFirebaseConfig {
|
|
|
20
19
|
current_key?: string;
|
|
21
20
|
project_number?: string;
|
|
22
21
|
}
|
|
23
|
-
|
|
24
|
-
ios: 'swift';
|
|
25
|
-
android: 'kotlin';
|
|
26
|
-
}> {
|
|
27
|
-
initialize(config: AndroidFirebaseConfig): Promise<void>;
|
|
28
|
-
getCredentials(): Promise<PushCredentials>;
|
|
29
|
-
setOnMessage(callback: (message: PushMessage) => void): void;
|
|
30
|
-
setOnNotificationPress(callback: (message: PushMessage) => void): void;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=PushSignal.nitro.d.ts.map
|
|
22
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,YAAY,CAAC;AAChD,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,YAAY,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE/E,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-push-signal",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "Push",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -18,8 +18,6 @@
|
|
|
18
18
|
"android",
|
|
19
19
|
"ios",
|
|
20
20
|
"cpp",
|
|
21
|
-
"nitrogen",
|
|
22
|
-
"nitro.json",
|
|
23
21
|
"*.podspec",
|
|
24
22
|
"react-native.config.js",
|
|
25
23
|
"!ios/build",
|
|
@@ -37,7 +35,6 @@
|
|
|
37
35
|
"example": "yarn workspace react-native-push-signal-example",
|
|
38
36
|
"clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib",
|
|
39
37
|
"prepare": "bob build",
|
|
40
|
-
"nitrogen": "nitrogen",
|
|
41
38
|
"typecheck": "tsc",
|
|
42
39
|
"lint": "eslint \"**/*.{js,ts,tsx}\"",
|
|
43
40
|
"test": "jest",
|
|
@@ -54,7 +51,7 @@
|
|
|
54
51
|
"type": "git",
|
|
55
52
|
"url": "git+https://antonseagull.com.git"
|
|
56
53
|
},
|
|
57
|
-
"author": "
|
|
54
|
+
"author": "AntonSeagull <hi@antonseagull.com> (https://antonseagull.com)",
|
|
58
55
|
"license": "MIT",
|
|
59
56
|
"bugs": {
|
|
60
57
|
"url": "https://antonseagull.com/issues"
|
|
@@ -82,12 +79,10 @@
|
|
|
82
79
|
"eslint-plugin-prettier": "^5.5.6",
|
|
83
80
|
"jest": "^29.7.0",
|
|
84
81
|
"lefthook": "^2.1.9",
|
|
85
|
-
"nitrogen": "^0.37.0",
|
|
86
82
|
"prettier": "^3.8.3",
|
|
87
83
|
"react": "19.2.3",
|
|
88
84
|
"react-native": "0.85.0",
|
|
89
85
|
"react-native-builder-bob": "^0.43.0",
|
|
90
|
-
"react-native-nitro-modules": "^0.37.0",
|
|
91
86
|
"react-native-web": "~0.21.2",
|
|
92
87
|
"release-it": "^20.2.0",
|
|
93
88
|
"turbo": "^2.9.16",
|
|
@@ -95,8 +90,7 @@
|
|
|
95
90
|
},
|
|
96
91
|
"peerDependencies": {
|
|
97
92
|
"react": "*",
|
|
98
|
-
"react-native": "*"
|
|
99
|
-
"react-native-nitro-modules": "^0.37.0"
|
|
93
|
+
"react-native": "*"
|
|
100
94
|
},
|
|
101
95
|
"workspaces": [
|
|
102
96
|
"example"
|
|
@@ -106,13 +100,6 @@
|
|
|
106
100
|
"source": "src",
|
|
107
101
|
"output": "lib",
|
|
108
102
|
"targets": [
|
|
109
|
-
[
|
|
110
|
-
"custom",
|
|
111
|
-
{
|
|
112
|
-
"script": "nitrogen",
|
|
113
|
-
"clean": "nitrogen/"
|
|
114
|
-
}
|
|
115
|
-
],
|
|
116
103
|
[
|
|
117
104
|
"module",
|
|
118
105
|
{
|
|
@@ -127,6 +114,14 @@
|
|
|
127
114
|
]
|
|
128
115
|
]
|
|
129
116
|
},
|
|
117
|
+
"codegenConfig": {
|
|
118
|
+
"name": "PushSignalSpec",
|
|
119
|
+
"type": "modules",
|
|
120
|
+
"jsSrcsDir": "src",
|
|
121
|
+
"android": {
|
|
122
|
+
"javaPackageName": "com.pushsignal"
|
|
123
|
+
}
|
|
124
|
+
},
|
|
130
125
|
"prettier": {
|
|
131
126
|
"quoteProps": "consistent",
|
|
132
127
|
"singleQuote": true,
|
|
@@ -140,7 +135,7 @@
|
|
|
140
135
|
"customExportConditions": [
|
|
141
136
|
"require",
|
|
142
137
|
"react-native",
|
|
143
|
-
"
|
|
138
|
+
"react-native-push-signal-source"
|
|
144
139
|
]
|
|
145
140
|
},
|
|
146
141
|
"modulePathIgnorePatterns": [
|
|
@@ -173,8 +168,8 @@
|
|
|
173
168
|
}
|
|
174
169
|
},
|
|
175
170
|
"create-react-native-library": {
|
|
176
|
-
"type": "
|
|
177
|
-
"languages": "kotlin-
|
|
171
|
+
"type": "turbo-module",
|
|
172
|
+
"languages": "kotlin-objc",
|
|
178
173
|
"tools": [
|
|
179
174
|
"eslint",
|
|
180
175
|
"jest",
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { CodegenTypes, TurboModule } from 'react-native';
|
|
2
|
+
import { TurboModuleRegistry } from 'react-native';
|
|
3
|
+
|
|
4
|
+
export type NativePushMessage = {
|
|
5
|
+
id?: string;
|
|
6
|
+
title?: string;
|
|
7
|
+
body?: string;
|
|
8
|
+
data: Object;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export type NativePushCredentials = {
|
|
12
|
+
platform: string;
|
|
13
|
+
token: string;
|
|
14
|
+
environment?: string;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export interface Spec extends TurboModule {
|
|
18
|
+
initialize(config: Object): Promise<void>;
|
|
19
|
+
getCredentials(): Promise<NativePushCredentials>;
|
|
20
|
+
startListening(): void;
|
|
21
|
+
readonly onMessage: CodegenTypes.EventEmitter<NativePushMessage>;
|
|
22
|
+
readonly onNotificationPress: CodegenTypes.EventEmitter<NativePushMessage>;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export default TurboModuleRegistry.getEnforcing<Spec>('PushSignal');
|
package/src/index.tsx
CHANGED
|
@@ -1,19 +1,55 @@
|
|
|
1
|
-
import
|
|
1
|
+
import NativePushSignal from './NativePushSignal';
|
|
2
2
|
import type {
|
|
3
3
|
AndroidFirebaseConfig,
|
|
4
4
|
OnMessageListener,
|
|
5
5
|
PushCredentials,
|
|
6
|
+
PushEnvironment,
|
|
6
7
|
PushMessage,
|
|
7
|
-
|
|
8
|
-
} from './
|
|
9
|
-
|
|
10
|
-
const PushSignalHybridObject =
|
|
11
|
-
NitroModules.createHybridObject<PushSignal>('PushSignal');
|
|
8
|
+
PushPlatform,
|
|
9
|
+
} from './types';
|
|
12
10
|
|
|
13
11
|
const messageListeners = new Set<OnMessageListener>();
|
|
14
12
|
const pressListeners = new Set<(message: PushMessage) => void>();
|
|
15
13
|
let nativeCallbacksBound = false;
|
|
16
14
|
|
|
15
|
+
function normalizeMessage(raw: {
|
|
16
|
+
id?: string;
|
|
17
|
+
title?: string;
|
|
18
|
+
body?: string;
|
|
19
|
+
data: Object;
|
|
20
|
+
}): PushMessage {
|
|
21
|
+
const data: Record<string, string> = {};
|
|
22
|
+
if (raw.data && typeof raw.data === 'object') {
|
|
23
|
+
for (const [key, value] of Object.entries(
|
|
24
|
+
raw.data as Record<string, unknown>
|
|
25
|
+
)) {
|
|
26
|
+
if (value == null) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
data[key] = typeof value === 'string' ? value : String(value);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return {
|
|
34
|
+
id: raw.id,
|
|
35
|
+
title: raw.title,
|
|
36
|
+
body: raw.body,
|
|
37
|
+
data,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function normalizeCredentials(raw: {
|
|
42
|
+
platform: string;
|
|
43
|
+
token: string;
|
|
44
|
+
environment?: string;
|
|
45
|
+
}): PushCredentials {
|
|
46
|
+
return {
|
|
47
|
+
platform: raw.platform as PushPlatform,
|
|
48
|
+
token: raw.token,
|
|
49
|
+
environment: raw.environment as PushEnvironment | undefined,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
|
|
17
53
|
function bindNativeCallbacks() {
|
|
18
54
|
if (nativeCallbacksBound) {
|
|
19
55
|
return;
|
|
@@ -21,27 +57,34 @@ function bindNativeCallbacks() {
|
|
|
21
57
|
|
|
22
58
|
nativeCallbacksBound = true;
|
|
23
59
|
|
|
24
|
-
|
|
60
|
+
NativePushSignal.onMessage((raw) => {
|
|
61
|
+
const message = normalizeMessage(raw);
|
|
25
62
|
for (const listener of [...messageListeners]) {
|
|
26
63
|
try {
|
|
27
|
-
|
|
64
|
+
Promise.resolve(listener(message)).then(
|
|
65
|
+
() => undefined,
|
|
66
|
+
() => undefined
|
|
67
|
+
);
|
|
28
68
|
} catch {
|
|
29
69
|
// Ignore listener failures so one bad subscriber cannot break delivery.
|
|
30
70
|
}
|
|
31
71
|
}
|
|
32
72
|
});
|
|
33
73
|
|
|
34
|
-
|
|
74
|
+
NativePushSignal.onNotificationPress((raw) => {
|
|
75
|
+
const message = normalizeMessage(raw);
|
|
35
76
|
pressListeners.forEach((listener) => listener(message));
|
|
36
77
|
});
|
|
78
|
+
|
|
79
|
+
NativePushSignal.startListening();
|
|
37
80
|
}
|
|
38
81
|
|
|
39
82
|
export function initialize(config: AndroidFirebaseConfig = {}): Promise<void> {
|
|
40
|
-
return
|
|
83
|
+
return NativePushSignal.initialize(config);
|
|
41
84
|
}
|
|
42
85
|
|
|
43
86
|
export function getCredentials(): Promise<PushCredentials> {
|
|
44
|
-
return
|
|
87
|
+
return NativePushSignal.getCredentials().then(normalizeCredentials);
|
|
45
88
|
}
|
|
46
89
|
|
|
47
90
|
export function onMessage(listener: OnMessageListener): () => void {
|
package/src/pushSignal.tsx
CHANGED
package/src/types.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** JS name cannot be `android`: NDK defines `-DANDROID` and breaks native enums. */
|
|
2
|
+
export type PushPlatform = 'ios' | 'android_os';
|
|
3
|
+
export type PushEnvironment = 'sandbox' | 'production';
|
|
4
|
+
|
|
5
|
+
export interface PushCredentials {
|
|
6
|
+
platform: PushPlatform;
|
|
7
|
+
token: string;
|
|
8
|
+
environment?: PushEnvironment;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface PushMessage {
|
|
12
|
+
id?: string;
|
|
13
|
+
title?: string;
|
|
14
|
+
body?: string;
|
|
15
|
+
data: Record<string, string>;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type OnMessageListener = (message: PushMessage) => void | Promise<void>;
|
|
19
|
+
|
|
20
|
+
export interface AndroidFirebaseConfig {
|
|
21
|
+
project_id?: string;
|
|
22
|
+
mobilesdk_app_id?: string;
|
|
23
|
+
current_key?: string;
|
|
24
|
+
project_number?: string;
|
|
25
|
+
}
|
package/android/CMakeLists.txt
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
project(pushsignal)
|
|
2
|
-
cmake_minimum_required(VERSION 3.9.0)
|
|
3
|
-
|
|
4
|
-
set(PACKAGE_NAME pushsignal)
|
|
5
|
-
set(CMAKE_VERBOSE_MAKEFILE ON)
|
|
6
|
-
set(CMAKE_CXX_STANDARD 20)
|
|
7
|
-
|
|
8
|
-
# Define C++ library and add all sources
|
|
9
|
-
add_library(${PACKAGE_NAME} SHARED src/main/cpp/cpp-adapter.cpp)
|
|
10
|
-
|
|
11
|
-
# Add Nitrogen specs :)
|
|
12
|
-
include(${CMAKE_SOURCE_DIR}/../nitrogen/generated/android/pushsignal+autolinking.cmake)
|
|
13
|
-
|
|
14
|
-
# Set up local includes
|
|
15
|
-
include_directories("src/main/cpp" "../cpp")
|
|
16
|
-
|
|
17
|
-
find_library(LOG_LIB log)
|
|
18
|
-
|
|
19
|
-
# Link all libraries together
|
|
20
|
-
target_link_libraries(
|
|
21
|
-
${PACKAGE_NAME}
|
|
22
|
-
${LOG_LIB}
|
|
23
|
-
android # <-- Android core
|
|
24
|
-
)
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
package com.margelo.nitro.pushsignal
|
|
2
|
-
|
|
3
|
-
import com.facebook.proguard.annotations.DoNotStrip
|
|
4
|
-
import com.margelo.nitro.core.Promise
|
|
5
|
-
|
|
6
|
-
@DoNotStrip
|
|
7
|
-
class PushSignal : HybridPushSignalSpec() {
|
|
8
|
-
override fun initialize(config: AndroidFirebaseConfig): Promise<Unit> {
|
|
9
|
-
val promise = Promise<Unit>()
|
|
10
|
-
PushSignalCenter.initialize(config) { error ->
|
|
11
|
-
if (error == null) {
|
|
12
|
-
promise.resolve(Unit)
|
|
13
|
-
} else {
|
|
14
|
-
promise.reject(error)
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return promise
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
override fun getCredentials(): Promise<PushCredentials> {
|
|
21
|
-
return Promise.async {
|
|
22
|
-
val token = PushSignalCenter.fetchToken()
|
|
23
|
-
PushCredentials(
|
|
24
|
-
PushPlatform.ANDROID_OS,
|
|
25
|
-
token,
|
|
26
|
-
null
|
|
27
|
-
)
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
override fun setOnMessage(callback: (message: PushMessage) -> Unit) {
|
|
32
|
-
PushSignalCenter.setOnMessage(callback)
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
override fun setOnNotificationPress(callback: (message: PushMessage) -> Unit) {
|
|
36
|
-
PushSignalCenter.setOnNotificationPress(callback)
|
|
37
|
-
}
|
|
38
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
package com.margelo.nitro.pushsignal
|
|
2
|
-
|
|
3
|
-
import com.facebook.react.BaseReactPackage
|
|
4
|
-
import com.facebook.react.bridge.NativeModule
|
|
5
|
-
import com.facebook.react.bridge.ReactApplicationContext
|
|
6
|
-
import com.facebook.react.module.model.ReactModuleInfoProvider
|
|
7
|
-
|
|
8
|
-
class PushSignalPackage : BaseReactPackage() {
|
|
9
|
-
override fun getModule(name: String, reactContext: ReactApplicationContext): NativeModule? {
|
|
10
|
-
return null
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
override fun getReactModuleInfoProvider(): ReactModuleInfoProvider {
|
|
14
|
-
return ReactModuleInfoProvider { HashMap() }
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
companion object {
|
|
18
|
-
init {
|
|
19
|
-
System.loadLibrary("pushsignal")
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
package/ios/PushSignal.swift
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import NitroModules
|
|
2
|
-
|
|
3
|
-
class PushSignal: HybridPushSignalSpec {
|
|
4
|
-
override init() {
|
|
5
|
-
super.init()
|
|
6
|
-
PushSignalCenter.shared.install()
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
func initialize(config: AndroidFirebaseConfig) throws -> Promise<Void> {
|
|
10
|
-
_ = config
|
|
11
|
-
return Promise.async {
|
|
12
|
-
()
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
func getCredentials() throws -> Promise<PushCredentials> {
|
|
17
|
-
return Promise.async {
|
|
18
|
-
try await PushSignalCenter.shared.fetchCredentials()
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
func setOnMessage(callback: @escaping (PushMessage) -> Void) throws {
|
|
23
|
-
PushSignalCenter.shared.onMessage = callback
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
func setOnNotificationPress(callback: @escaping (PushMessage) -> Void) throws {
|
|
27
|
-
PushSignalCenter.shared.onNotificationPress = callback
|
|
28
|
-
}
|
|
29
|
-
}
|