@onekeyfe/react-native-jpush 0.0.0-stage → 6.7.0-22

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 (183) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +56 -2
  3. package/ReactNativeJpush.podspec +66 -0
  4. package/android/CMakeLists.txt +24 -0
  5. package/android/build.gradle +144 -0
  6. package/android/fcm/build.gradle +36 -0
  7. package/android/fcm/consumer-rules.pro +2 -0
  8. package/android/fcm/src/main/AndroidManifest.xml +25 -0
  9. package/android/fcm/src/main/java/com/onekey/jpush/fcm/FcmInitProvider.java +25 -0
  10. package/android/fcm/src/main/java/com/onekey/jpush/fcm/FcmMessagingService.java +84 -0
  11. package/android/fcm/src/main/java/com/onekey/jpush/fcm/FcmPushManager.java +69 -0
  12. package/android/fcm/src/test/java/com/onekey/jpush/fcm/FcmAdapterTest.java +684 -0
  13. package/android/fcm/src/test/java/com/onekey/jpush/fcm/FcmManifestTest.java +54 -0
  14. package/android/gradle.properties +4 -0
  15. package/android/src/main/AndroidManifest.xml +143 -0
  16. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  17. package/android/src/main/java/cn/android/service/JTransitActivity.java +19 -0
  18. package/android/src/main/java/cn/jiguang/android/BuildConfig.java +10 -0
  19. package/android/src/main/java/cn/jiguang/android/IDataShare.java +190 -0
  20. package/android/src/main/java/cn/jiguang/api/BaseLogger.java +82 -0
  21. package/android/src/main/java/cn/jiguang/api/JAction.java +22 -0
  22. package/android/src/main/java/cn/jiguang/api/JActionExtra.java +21 -0
  23. package/android/src/main/java/cn/jiguang/api/JAnalyticsAction.java +11 -0
  24. package/android/src/main/java/cn/jiguang/api/JCoreInterface.java +228 -0
  25. package/android/src/main/java/cn/jiguang/api/JCoreManager.java +156 -0
  26. package/android/src/main/java/cn/jiguang/api/JDispatchAction.java +66 -0
  27. package/android/src/main/java/cn/jiguang/api/MultiSpHelper.java +114 -0
  28. package/android/src/main/java/cn/jiguang/api/ReportCallBack.java +9 -0
  29. package/android/src/main/java/cn/jiguang/api/SdkType.java +13 -0
  30. package/android/src/main/java/cn/jiguang/api/utils/JCollectionAuth.java +28 -0
  31. package/android/src/main/java/cn/jiguang/core/JCoreCrypto.java +545 -0
  32. package/android/src/main/java/cn/jiguang/core/JCoreStorage.java +737 -0
  33. package/android/src/main/java/cn/jiguang/core/JCoreTcpEngine.java +1395 -0
  34. package/android/src/main/java/cn/jiguang/core/JCoreWireCodec.java +1716 -0
  35. package/android/src/main/java/cn/jiguang/internal/ActionManager.java +63 -0
  36. package/android/src/main/java/cn/jiguang/internal/JConstants.java +61 -0
  37. package/android/src/main/java/cn/jiguang/internal/JCoreHelperAction.java +12 -0
  38. package/android/src/main/java/cn/jiguang/internal/JCoreInternalHelper.java +102 -0
  39. package/android/src/main/java/cn/jiguang/net/DefaultHostVerifier.java +40 -0
  40. package/android/src/main/java/cn/jiguang/net/HttpRequest.java +78 -0
  41. package/android/src/main/java/cn/jiguang/net/HttpResponse.java +48 -0
  42. package/android/src/main/java/cn/jiguang/net/HttpUtils.java +106 -0
  43. package/android/src/main/java/cn/jiguang/plugins/core/JCoreModule.java +91 -0
  44. package/android/src/main/java/cn/jiguang/plugins/core/JCorePackage.java +27 -0
  45. package/android/src/main/java/cn/jiguang/plugins/push/JPushModule.java +773 -0
  46. package/android/src/main/java/cn/jiguang/plugins/push/JPushPackage.java +25 -0
  47. package/android/src/main/java/cn/jiguang/plugins/push/common/JConstants.java +88 -0
  48. package/android/src/main/java/cn/jiguang/plugins/push/common/JLogger.java +122 -0
  49. package/android/src/main/java/cn/jiguang/plugins/push/helper/JPushHelper.java +710 -0
  50. package/android/src/main/java/cn/jiguang/plugins/push/receiver/JPushBroadcastReceiver.java +37 -0
  51. package/android/src/main/java/cn/jiguang/plugins/push/receiver/JPushModuleReceiver.java +264 -0
  52. package/android/src/main/java/cn/jiguang/plugins/service/JCoreModuleService.java +7 -0
  53. package/android/src/main/java/cn/jpush/android/api/BasicPushNotificationBuilder.java +83 -0
  54. package/android/src/main/java/cn/jpush/android/api/CallBackParams.java +50 -0
  55. package/android/src/main/java/cn/jpush/android/api/CmdMessage.java +33 -0
  56. package/android/src/main/java/cn/jpush/android/api/CustomMessage.java +28 -0
  57. package/android/src/main/java/cn/jpush/android/api/CustomPushNotificationBuilder.java +81 -0
  58. package/android/src/main/java/cn/jpush/android/api/DefaultPushNotificationBuilder.java +90 -0
  59. package/android/src/main/java/cn/jpush/android/api/InAppSlotParams.java +65 -0
  60. package/android/src/main/java/cn/jpush/android/api/InstrumentedActivity.java +17 -0
  61. package/android/src/main/java/cn/jpush/android/api/InstrumentedListActivity.java +17 -0
  62. package/android/src/main/java/cn/jpush/android/api/JPushInterface.java +490 -0
  63. package/android/src/main/java/cn/jpush/android/api/JPushMessage.java +121 -0
  64. package/android/src/main/java/cn/jpush/android/api/JThirdPlatFormInterface.java +247 -0
  65. package/android/src/main/java/cn/jpush/android/api/MultiActionsNotificationBuilder.java +72 -0
  66. package/android/src/main/java/cn/jpush/android/api/NotificationCustomButton.java +50 -0
  67. package/android/src/main/java/cn/jpush/android/api/NotificationMessage.java +67 -0
  68. package/android/src/main/java/cn/jpush/android/api/PushNotificationBuilder.java +13 -0
  69. package/android/src/main/java/cn/jpush/android/api/TagAliasCallback.java +8 -0
  70. package/android/src/main/java/cn/jpush/android/data/JPushCollectControl.java +96 -0
  71. package/android/src/main/java/cn/jpush/android/data/JPushConfig.java +79 -0
  72. package/android/src/main/java/cn/jpush/android/data/JPushConfigEx.java +41 -0
  73. package/android/src/main/java/cn/jpush/android/data/JPushLocalNotification.java +155 -0
  74. package/android/src/main/java/cn/jpush/android/helper/JCoreHelper.java +70 -0
  75. package/android/src/main/java/cn/jpush/android/helper/Logger.java +82 -0
  76. package/android/src/main/java/cn/jpush/android/local/ActionHelper.java +1293 -0
  77. package/android/src/main/java/cn/jpush/android/local/ActivityLifeCallBack.java +47 -0
  78. package/android/src/main/java/cn/jpush/android/local/JPushAction.java +67 -0
  79. package/android/src/main/java/cn/jpush/android/local/JPushConstants.java +34 -0
  80. package/android/src/main/java/cn/jpush/android/local/JPushResponse.java +26 -0
  81. package/android/src/main/java/cn/jpush/android/local/ProxyActivityAction.java +34 -0
  82. package/android/src/main/java/cn/jpush/android/service/AlarmReceiver.java +15 -0
  83. package/android/src/main/java/cn/jpush/android/service/BActivity.java +19 -0
  84. package/android/src/main/java/cn/jpush/android/service/DActivity.java +19 -0
  85. package/android/src/main/java/cn/jpush/android/service/DaemonService.java +17 -0
  86. package/android/src/main/java/cn/jpush/android/service/DataProvider.java +136 -0
  87. package/android/src/main/java/cn/jpush/android/service/DataShare.java +129 -0
  88. package/android/src/main/java/cn/jpush/android/service/DownloadProvider.java +139 -0
  89. package/android/src/main/java/cn/jpush/android/service/InitProvider.java +48 -0
  90. package/android/src/main/java/cn/jpush/android/service/JCommonService.java +79 -0
  91. package/android/src/main/java/cn/jpush/android/service/JNotifyActivity.java +28 -0
  92. package/android/src/main/java/cn/jpush/android/service/JPushMessageReceiver.java +94 -0
  93. package/android/src/main/java/cn/jpush/android/service/PushReceiver.java +26 -0
  94. package/android/src/main/java/cn/jpush/android/service/PushService.java +28 -0
  95. package/android/src/main/java/cn/jpush/android/service/SchedulerReceiver.java +17 -0
  96. package/android/src/main/java/cn/jpush/android/service/TagAliasReceiver.java +11 -0
  97. package/android/src/main/java/cn/jpush/android/service/WakedResultReceiver.java +24 -0
  98. package/android/src/main/java/cn/jpush/android/ui/FullScreenView.java +11 -0
  99. package/android/src/main/java/cn/jpush/android/ui/PopWinActivity.java +16 -0
  100. package/android/src/main/java/cn/jpush/android/ui/PushActivity.java +27 -0
  101. package/android/src/main/java/cn/jpush/android/ui/RoundedImageView.java +63 -0
  102. package/android/src/main/java/cn/jpush/android/ui/ShadowViewCard.java +56 -0
  103. package/android/src/main/java/cn/jpush/android/ups/ICallbackResult.java +5 -0
  104. package/android/src/main/java/cn/jpush/android/ups/JPushUPSManager.java +37 -0
  105. package/android/src/main/java/cn/jpush/android/ups/TokenResult.java +47 -0
  106. package/android/src/main/java/cn/jpush/android/ups/UPSRegisterCallBack.java +4 -0
  107. package/android/src/main/java/cn/jpush/android/ups/UPSTurnCallBack.java +4 -0
  108. package/android/src/main/java/cn/jpush/android/ups/UPSUnRegisterCallBack.java +4 -0
  109. package/android/src/main/java/com/margelo/nitro/reactnativejpush/ReactNativeJpush.kt +455 -0
  110. package/android/src/main/java/com/margelo/nitro/reactnativejpush/ReactNativeJpushPackage.kt +50 -0
  111. package/android/src/main/res/values/jpush_string.xml +7 -0
  112. package/android/src/main/res/values/jpush_style.xml +22 -0
  113. package/android/src/test/java/com/margelo/nitro/reactnativejpush/JPushCloudHandshakeTest.java +110 -0
  114. package/android/src/test/java/com/margelo/nitro/reactnativejpush/JPushHandshakeFailureTest.java +73 -0
  115. package/android/src/test/java/com/margelo/nitro/reactnativejpush/ReactNativeJpushProtocolTest.java +908 -0
  116. package/ios/ReactNativeJpush.swift +522 -0
  117. package/ios/bridge/RCTJCoreModule.h +5 -0
  118. package/ios/bridge/RCTJCoreModule.m +31 -0
  119. package/ios/bridge/RCTJPushEventQueue.h +14 -0
  120. package/ios/bridge/RCTJPushEventQueue.m +23 -0
  121. package/ios/bridge/RCTJPushModule.h +37 -0
  122. package/ios/bridge/RCTJPushModule.m +1165 -0
  123. package/ios/include/JCOREService.h +3 -0
  124. package/ios/include/JGCOREAPI.h +14 -0
  125. package/ios/include/JGInforCollectionAuth.h +17 -0
  126. package/ios/include/JGInforCollectionAuthItems.h +2 -0
  127. package/ios/include/JGPushNotificationTrigger.h +2 -0
  128. package/ios/include/JPUSHService.h +359 -0
  129. package/ios/jcore/JCOREConfiguration.h +141 -0
  130. package/ios/jcore/JCOREConfiguration.m +703 -0
  131. package/ios/jcore/JCORECrypto.h +73 -0
  132. package/ios/jcore/JCORECrypto.m +649 -0
  133. package/ios/jcore/JCORESisResolver.h +56 -0
  134. package/ios/jcore/JCORESisResolver.m +525 -0
  135. package/ios/jcore/JCORETcpSession.h +42 -0
  136. package/ios/jcore/JCORETcpSession.m +956 -0
  137. package/ios/jcore/JCOREWireProtocol.h +274 -0
  138. package/ios/jcore/JCOREWireProtocol.m +1453 -0
  139. package/ios/jpush/JPUSHModels.m +214 -0
  140. package/ios/jpush/JPUSHNotificationManager.h +34 -0
  141. package/ios/jpush/JPUSHNotificationManager.m +360 -0
  142. package/ios/jpush/JPUSHService.m +794 -0
  143. package/ios/tests/ReactNativeJpushTests.m +148 -0
  144. package/lib/module/ReactNativeJpush.nitro.js +4 -0
  145. package/lib/module/ReactNativeJpush.nitro.js.map +1 -0
  146. package/lib/module/index.js +801 -0
  147. package/lib/module/index.js.map +1 -0
  148. package/lib/module/package.json +1 -0
  149. package/lib/typescript/package.json +1 -0
  150. package/lib/typescript/src/ReactNativeJpush.nitro.d.ts +60 -0
  151. package/lib/typescript/src/ReactNativeJpush.nitro.d.ts.map +1 -0
  152. package/lib/typescript/src/index.d.ts +235 -0
  153. package/lib/typescript/src/index.d.ts.map +1 -0
  154. package/nitro.json +23 -0
  155. package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +75 -0
  156. package/nitrogen/generated/android/c++/JFunc_void_std__string_std__string.hpp +76 -0
  157. package/nitrogen/generated/android/c++/JHybridReactNativeJpushSpec.cpp +310 -0
  158. package/nitrogen/generated/android/c++/JHybridReactNativeJpushSpec.hpp +115 -0
  159. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativejpush/Func_void_bool.kt +78 -0
  160. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativejpush/Func_void_std__string_std__string.kt +78 -0
  161. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativejpush/HybridReactNativeJpushSpec.kt +274 -0
  162. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativejpush/reactnativejpushOnLoad.kt +35 -0
  163. package/nitrogen/generated/android/reactnativejpush+autolinking.cmake +81 -0
  164. package/nitrogen/generated/android/reactnativejpush+autolinking.gradle +27 -0
  165. package/nitrogen/generated/android/reactnativejpushOnLoad.cpp +58 -0
  166. package/nitrogen/generated/android/reactnativejpushOnLoad.hpp +34 -0
  167. package/nitrogen/generated/ios/ReactNativeJpush+autolinking.rb +62 -0
  168. package/nitrogen/generated/ios/ReactNativeJpush-Swift-Cxx-Bridge.cpp +49 -0
  169. package/nitrogen/generated/ios/ReactNativeJpush-Swift-Cxx-Bridge.hpp +147 -0
  170. package/nitrogen/generated/ios/ReactNativeJpush-Swift-Cxx-Umbrella.hpp +46 -0
  171. package/nitrogen/generated/ios/ReactNativeJpushAutolinking.mm +33 -0
  172. package/nitrogen/generated/ios/ReactNativeJpushAutolinking.swift +26 -0
  173. package/nitrogen/generated/ios/c++/HybridReactNativeJpushSpecSwift.cpp +11 -0
  174. package/nitrogen/generated/ios/c++/HybridReactNativeJpushSpecSwift.hpp +402 -0
  175. package/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
  176. package/nitrogen/generated/ios/swift/Func_void_std__string_std__string.swift +46 -0
  177. package/nitrogen/generated/ios/swift/HybridReactNativeJpushSpec.swift +107 -0
  178. package/nitrogen/generated/ios/swift/HybridReactNativeJpushSpec_cxx.swift +723 -0
  179. package/nitrogen/generated/shared/c++/HybridReactNativeJpushSpec.cpp +73 -0
  180. package/nitrogen/generated/shared/c++/HybridReactNativeJpushSpec.hpp +116 -0
  181. package/package.json +174 -4
  182. package/src/ReactNativeJpush.nitro.ts +93 -0
  183. package/src/index.tsx +1090 -0
@@ -0,0 +1,310 @@
1
+ ///
2
+ /// JHybridReactNativeJpushSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "JHybridReactNativeJpushSpec.hpp"
9
+
10
+
11
+
12
+ #include <string>
13
+ #include <functional>
14
+ #include "JFunc_void_bool.hpp"
15
+ #include <NitroModules/JNICallable.hpp>
16
+ #include <vector>
17
+ #include "JFunc_void_std__string_std__string.hpp"
18
+
19
+ namespace margelo::nitro::reactnativejpush {
20
+
21
+ std::shared_ptr<JHybridReactNativeJpushSpec> JHybridReactNativeJpushSpec::JavaPart::getJHybridReactNativeJpushSpec() {
22
+ auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
23
+ auto castHybridObject = std::dynamic_pointer_cast<JHybridReactNativeJpushSpec>(hybridObject);
24
+ if (castHybridObject == nullptr) [[unlikely]] {
25
+ throw std::runtime_error("Failed to downcast JHybridObject to JHybridReactNativeJpushSpec!");
26
+ }
27
+ return castHybridObject;
28
+ }
29
+
30
+ jni::local_ref<JHybridReactNativeJpushSpec::CxxPart::jhybriddata> JHybridReactNativeJpushSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
31
+ return makeCxxInstance(jThis);
32
+ }
33
+
34
+ std::shared_ptr<JHybridObject> JHybridReactNativeJpushSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
35
+ auto castJavaPart = jni::dynamic_ref_cast<JHybridReactNativeJpushSpec::JavaPart>(javaPart);
36
+ if (castJavaPart == nullptr) [[unlikely]] {
37
+ throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridReactNativeJpushSpec::JavaPart!");
38
+ }
39
+ return std::make_shared<JHybridReactNativeJpushSpec>(castJavaPart);
40
+ }
41
+
42
+ void JHybridReactNativeJpushSpec::CxxPart::registerNatives() {
43
+ registerHybrid({
44
+ makeNativeMethod("initHybrid", JHybridReactNativeJpushSpec::CxxPart::initHybrid),
45
+ });
46
+ }
47
+
48
+ // Properties
49
+
50
+
51
+ // Methods
52
+ void JHybridReactNativeJpushSpec::setDebugMode(bool enable) {
53
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setDebugMode");
54
+ method(_javaPart, enable);
55
+ }
56
+ void JHybridReactNativeJpushSpec::initPush() {
57
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("initPush");
58
+ method(_javaPart);
59
+ }
60
+ void JHybridReactNativeJpushSpec::setupWithConfig(const std::string& appKey, const std::string& channel, bool production) {
61
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* appKey */, jni::alias_ref<jni::JString> /* channel */, jboolean /* production */)>("setupWithConfig");
62
+ method(_javaPart, jni::make_jstring(appKey), jni::make_jstring(channel), production);
63
+ }
64
+ void JHybridReactNativeJpushSpec::loadJS() {
65
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("loadJS");
66
+ method(_javaPart);
67
+ }
68
+ void JHybridReactNativeJpushSpec::stopPush() {
69
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("stopPush");
70
+ method(_javaPart);
71
+ }
72
+ void JHybridReactNativeJpushSpec::resumePush() {
73
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("resumePush");
74
+ method(_javaPart);
75
+ }
76
+ bool JHybridReactNativeJpushSpec::isPushStopped() {
77
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("isPushStopped");
78
+ auto __result = method(_javaPart);
79
+ return static_cast<bool>(__result);
80
+ }
81
+ std::string JHybridReactNativeJpushSpec::getRegistrationID() {
82
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getRegistrationID");
83
+ auto __result = method(_javaPart);
84
+ return __result->toStdString();
85
+ }
86
+ void JHybridReactNativeJpushSpec::isNotificationEnabled(const std::function<void(bool /* enabled */)>& callback) {
87
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_bool::javaobject> /* callback */)>("isNotificationEnabled_cxx");
88
+ method(_javaPart, JFunc_void_bool_cxx::fromCpp(callback));
89
+ }
90
+ void JHybridReactNativeJpushSpec::addTags(double sequence, const std::vector<std::string>& tags) {
91
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JArrayClass<jni::JString>> /* tags */)>("addTags");
92
+ method(_javaPart, sequence, [&](auto&& __input) {
93
+ size_t __size = __input.size();
94
+ jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
95
+ for (size_t __i = 0; __i < __size; __i++) {
96
+ const auto& __element = __input[__i];
97
+ auto __elementJni = jni::make_jstring(__element);
98
+ __array->setElement(__i, *__elementJni);
99
+ }
100
+ return __array;
101
+ }(tags));
102
+ }
103
+ void JHybridReactNativeJpushSpec::setTags(double sequence, const std::vector<std::string>& tags) {
104
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JArrayClass<jni::JString>> /* tags */)>("setTags");
105
+ method(_javaPart, sequence, [&](auto&& __input) {
106
+ size_t __size = __input.size();
107
+ jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
108
+ for (size_t __i = 0; __i < __size; __i++) {
109
+ const auto& __element = __input[__i];
110
+ auto __elementJni = jni::make_jstring(__element);
111
+ __array->setElement(__i, *__elementJni);
112
+ }
113
+ return __array;
114
+ }(tags));
115
+ }
116
+ void JHybridReactNativeJpushSpec::deleteTags(double sequence, const std::vector<std::string>& tags) {
117
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JArrayClass<jni::JString>> /* tags */)>("deleteTags");
118
+ method(_javaPart, sequence, [&](auto&& __input) {
119
+ size_t __size = __input.size();
120
+ jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
121
+ for (size_t __i = 0; __i < __size; __i++) {
122
+ const auto& __element = __input[__i];
123
+ auto __elementJni = jni::make_jstring(__element);
124
+ __array->setElement(__i, *__elementJni);
125
+ }
126
+ return __array;
127
+ }(tags));
128
+ }
129
+ void JHybridReactNativeJpushSpec::cleanTags(double sequence) {
130
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */)>("cleanTags");
131
+ method(_javaPart, sequence);
132
+ }
133
+ void JHybridReactNativeJpushSpec::getAllTags(double sequence) {
134
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */)>("getAllTags");
135
+ method(_javaPart, sequence);
136
+ }
137
+ void JHybridReactNativeJpushSpec::checkTagBindState(double sequence, const std::string& tag) {
138
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JString> /* tag */)>("checkTagBindState");
139
+ method(_javaPart, sequence, jni::make_jstring(tag));
140
+ }
141
+ void JHybridReactNativeJpushSpec::setAlias(double sequence, const std::string& alias) {
142
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JString> /* alias */)>("setAlias");
143
+ method(_javaPart, sequence, jni::make_jstring(alias));
144
+ }
145
+ void JHybridReactNativeJpushSpec::deleteAlias(double sequence) {
146
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */)>("deleteAlias");
147
+ method(_javaPart, sequence);
148
+ }
149
+ void JHybridReactNativeJpushSpec::getAlias(double sequence) {
150
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */)>("getAlias");
151
+ method(_javaPart, sequence);
152
+ }
153
+ void JHybridReactNativeJpushSpec::setProperties(double sequence, const std::string& propertiesJson) {
154
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JString> /* propertiesJson */)>("setProperties");
155
+ method(_javaPart, sequence, jni::make_jstring(propertiesJson));
156
+ }
157
+ void JHybridReactNativeJpushSpec::deleteProperties(double sequence, const std::vector<std::string>& keys) {
158
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JArrayClass<jni::JString>> /* keys */)>("deleteProperties");
159
+ method(_javaPart, sequence, [&](auto&& __input) {
160
+ size_t __size = __input.size();
161
+ jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
162
+ for (size_t __i = 0; __i < __size; __i++) {
163
+ const auto& __element = __input[__i];
164
+ auto __elementJni = jni::make_jstring(__element);
165
+ __array->setElement(__i, *__elementJni);
166
+ }
167
+ return __array;
168
+ }(keys));
169
+ }
170
+ void JHybridReactNativeJpushSpec::cleanProperties(double sequence) {
171
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */)>("cleanProperties");
172
+ method(_javaPart, sequence);
173
+ }
174
+ void JHybridReactNativeJpushSpec::setBadge(double badge, double appBadge) {
175
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* badge */, double /* appBadge */)>("setBadge");
176
+ method(_javaPart, badge, appBadge);
177
+ }
178
+ void JHybridReactNativeJpushSpec::setMobileNumber(double sequence, const std::string& mobileNumber) {
179
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* sequence */, jni::alias_ref<jni::JString> /* mobileNumber */)>("setMobileNumber");
180
+ method(_javaPart, sequence, jni::make_jstring(mobileNumber));
181
+ }
182
+ void JHybridReactNativeJpushSpec::initCrashHandler() {
183
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("initCrashHandler");
184
+ method(_javaPart);
185
+ }
186
+ void JHybridReactNativeJpushSpec::setPowerSaveMode(bool enable) {
187
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setPowerSaveMode");
188
+ method(_javaPart, enable);
189
+ }
190
+ void JHybridReactNativeJpushSpec::addLocalNotification(const std::string& messageID, const std::string& title, const std::string& content, const std::string& broadcastTime, const std::string& extrasJson) {
191
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* messageID */, jni::alias_ref<jni::JString> /* title */, jni::alias_ref<jni::JString> /* content */, jni::alias_ref<jni::JString> /* broadcastTime */, jni::alias_ref<jni::JString> /* extrasJson */)>("addLocalNotification");
192
+ method(_javaPart, jni::make_jstring(messageID), jni::make_jstring(title), jni::make_jstring(content), jni::make_jstring(broadcastTime), jni::make_jstring(extrasJson));
193
+ }
194
+ void JHybridReactNativeJpushSpec::removeLocalNotification(const std::string& messageID) {
195
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* messageID */)>("removeLocalNotification");
196
+ method(_javaPart, jni::make_jstring(messageID));
197
+ }
198
+ void JHybridReactNativeJpushSpec::clearLocalNotifications() {
199
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("clearLocalNotifications");
200
+ method(_javaPart);
201
+ }
202
+ void JHybridReactNativeJpushSpec::clearAllNotifications() {
203
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("clearAllNotifications");
204
+ method(_javaPart);
205
+ }
206
+ void JHybridReactNativeJpushSpec::clearNotificationById(double notificationId) {
207
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* notificationId */)>("clearNotificationById");
208
+ method(_javaPart, notificationId);
209
+ }
210
+ void JHybridReactNativeJpushSpec::requestPermission() {
211
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("requestPermission");
212
+ method(_javaPart);
213
+ }
214
+ void JHybridReactNativeJpushSpec::setPushTime(const std::vector<double>& days, double startHour, double endHour) {
215
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JArrayDouble> /* days */, double /* startHour */, double /* endHour */)>("setPushTime");
216
+ method(_javaPart, [&]() {
217
+ size_t __size = days.size();
218
+ jni::local_ref<jni::JArrayDouble> __array = jni::JArrayDouble::newArray(__size);
219
+ __array->setRegion(0, __size, days.data());
220
+ return __array;
221
+ }(), startHour, endHour);
222
+ }
223
+ void JHybridReactNativeJpushSpec::setSilenceTime(double startHour, double startMinute, double endHour, double endMinute) {
224
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* startHour */, double /* startMinute */, double /* endHour */, double /* endMinute */)>("setSilenceTime");
225
+ method(_javaPart, startHour, startMinute, endHour, endMinute);
226
+ }
227
+ void JHybridReactNativeJpushSpec::setLatestNotificationNumber(double maxNumber) {
228
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* maxNumber */)>("setLatestNotificationNumber");
229
+ method(_javaPart, maxNumber);
230
+ }
231
+ void JHybridReactNativeJpushSpec::setChannel(const std::string& channel) {
232
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* channel */)>("setChannel");
233
+ method(_javaPart, jni::make_jstring(channel));
234
+ }
235
+ void JHybridReactNativeJpushSpec::setChannelAndSound(const std::string& channel, const std::string& channelId, const std::string& sound) {
236
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* channel */, jni::alias_ref<jni::JString> /* channelId */, jni::alias_ref<jni::JString> /* sound */)>("setChannelAndSound");
237
+ method(_javaPart, jni::make_jstring(channel), jni::make_jstring(channelId), jni::make_jstring(sound));
238
+ }
239
+ void JHybridReactNativeJpushSpec::setLinkMergeEnable(bool enable) {
240
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setLinkMergeEnable");
241
+ method(_javaPart, enable);
242
+ }
243
+ void JHybridReactNativeJpushSpec::setSmartPushEnable(bool enable) {
244
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setSmartPushEnable");
245
+ method(_javaPart, enable);
246
+ }
247
+ void JHybridReactNativeJpushSpec::setDataInsightsEnable(bool enable) {
248
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setDataInsightsEnable");
249
+ method(_javaPart, enable);
250
+ }
251
+ void JHybridReactNativeJpushSpec::setGeofenceEnable(bool enable) {
252
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setGeofenceEnable");
253
+ method(_javaPart, enable);
254
+ }
255
+ void JHybridReactNativeJpushSpec::setBackgroundEnable(bool enable) {
256
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("setBackgroundEnable");
257
+ method(_javaPart, enable);
258
+ }
259
+ void JHybridReactNativeJpushSpec::setMaxGeofenceNumber(double maxNumber) {
260
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* maxNumber */)>("setMaxGeofenceNumber");
261
+ method(_javaPart, maxNumber);
262
+ }
263
+ void JHybridReactNativeJpushSpec::deleteGeofence(const std::string& geoFenceID) {
264
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* geoFenceID */)>("deleteGeofence");
265
+ method(_javaPart, jni::make_jstring(geoFenceID));
266
+ }
267
+ void JHybridReactNativeJpushSpec::pageEnterTo(const std::string& pageName) {
268
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* pageName */)>("pageEnterTo");
269
+ method(_javaPart, jni::make_jstring(pageName));
270
+ }
271
+ void JHybridReactNativeJpushSpec::pageLeave(const std::string& pageName) {
272
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* pageName */)>("pageLeave");
273
+ method(_javaPart, jni::make_jstring(pageName));
274
+ }
275
+ void JHybridReactNativeJpushSpec::setCollectControl(bool imei, bool imsi, bool mac, bool wifi, bool bssid, bool ssid, bool cell, bool gps) {
276
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* imei */, jboolean /* imsi */, jboolean /* mac */, jboolean /* wifi */, jboolean /* bssid */, jboolean /* ssid */, jboolean /* cell */, jboolean /* gps */)>("setCollectControl");
277
+ method(_javaPart, imei, imsi, mac, wifi, bssid, ssid, cell, gps);
278
+ }
279
+ void JHybridReactNativeJpushSpec::setAuth(bool auth) {
280
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* auth */)>("setAuth");
281
+ method(_javaPart, auth);
282
+ }
283
+ void JHybridReactNativeJpushSpec::setCountryCode(const std::string& code) {
284
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* code */)>("setCountryCode");
285
+ method(_javaPart, jni::make_jstring(code));
286
+ }
287
+ void JHybridReactNativeJpushSpec::enableAutoWakeup(bool enable) {
288
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */)>("enableAutoWakeup");
289
+ method(_javaPart, enable);
290
+ }
291
+ void JHybridReactNativeJpushSpec::enableSDKLocalLog(bool enable, bool uploadJgToServer) {
292
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* enable */, jboolean /* uploadJgToServer */)>("enableSDKLocalLog");
293
+ method(_javaPart, enable, uploadJgToServer);
294
+ }
295
+ std::string JHybridReactNativeJpushSpec::readNewLogs() {
296
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("readNewLogs");
297
+ auto __result = method(_javaPart);
298
+ return __result->toStdString();
299
+ }
300
+ double JHybridReactNativeJpushSpec::addEventListener(const std::function<void(const std::string& /* eventName */, const std::string& /* payloadJson */)>& callback) {
301
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double(jni::alias_ref<JFunc_void_std__string_std__string::javaobject> /* callback */)>("addEventListener_cxx");
302
+ auto __result = method(_javaPart, JFunc_void_std__string_std__string_cxx::fromCpp(callback));
303
+ return __result;
304
+ }
305
+ void JHybridReactNativeJpushSpec::removeEventListener(double id) {
306
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* id */)>("removeEventListener");
307
+ method(_javaPart, id);
308
+ }
309
+
310
+ } // namespace margelo::nitro::reactnativejpush
@@ -0,0 +1,115 @@
1
+ ///
2
+ /// HybridReactNativeJpushSpec.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <NitroModules/JHybridObject.hpp>
11
+ #include <fbjni/fbjni.h>
12
+ #include "HybridReactNativeJpushSpec.hpp"
13
+
14
+
15
+
16
+
17
+ namespace margelo::nitro::reactnativejpush {
18
+
19
+ using namespace facebook;
20
+
21
+ class JHybridReactNativeJpushSpec: public virtual HybridReactNativeJpushSpec, public virtual JHybridObject {
22
+ public:
23
+ struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativejpush/HybridReactNativeJpushSpec;";
25
+ std::shared_ptr<JHybridReactNativeJpushSpec> getJHybridReactNativeJpushSpec();
26
+ };
27
+ struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
28
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/reactnativejpush/HybridReactNativeJpushSpec$CxxPart;";
29
+ static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
30
+ static void registerNatives();
31
+ using HybridBase::HybridBase;
32
+ protected:
33
+ std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
34
+ };
35
+
36
+ public:
37
+ explicit JHybridReactNativeJpushSpec(const jni::local_ref<JHybridReactNativeJpushSpec::JavaPart>& javaPart):
38
+ HybridObject(HybridReactNativeJpushSpec::TAG),
39
+ JHybridObject(javaPart),
40
+ _javaPart(jni::make_global(javaPart)) {}
41
+ ~JHybridReactNativeJpushSpec() override {
42
+ // Hermes GC can destroy JS objects on a non-JNI Thread.
43
+ jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
44
+ }
45
+
46
+ public:
47
+ inline const jni::global_ref<JHybridReactNativeJpushSpec::JavaPart>& getJavaPart() const noexcept {
48
+ return _javaPart;
49
+ }
50
+
51
+ public:
52
+ // Properties
53
+
54
+
55
+ public:
56
+ // Methods
57
+ void setDebugMode(bool enable) override;
58
+ void initPush() override;
59
+ void setupWithConfig(const std::string& appKey, const std::string& channel, bool production) override;
60
+ void loadJS() override;
61
+ void stopPush() override;
62
+ void resumePush() override;
63
+ bool isPushStopped() override;
64
+ std::string getRegistrationID() override;
65
+ void isNotificationEnabled(const std::function<void(bool /* enabled */)>& callback) override;
66
+ void addTags(double sequence, const std::vector<std::string>& tags) override;
67
+ void setTags(double sequence, const std::vector<std::string>& tags) override;
68
+ void deleteTags(double sequence, const std::vector<std::string>& tags) override;
69
+ void cleanTags(double sequence) override;
70
+ void getAllTags(double sequence) override;
71
+ void checkTagBindState(double sequence, const std::string& tag) override;
72
+ void setAlias(double sequence, const std::string& alias) override;
73
+ void deleteAlias(double sequence) override;
74
+ void getAlias(double sequence) override;
75
+ void setProperties(double sequence, const std::string& propertiesJson) override;
76
+ void deleteProperties(double sequence, const std::vector<std::string>& keys) override;
77
+ void cleanProperties(double sequence) override;
78
+ void setBadge(double badge, double appBadge) override;
79
+ void setMobileNumber(double sequence, const std::string& mobileNumber) override;
80
+ void initCrashHandler() override;
81
+ void setPowerSaveMode(bool enable) override;
82
+ void addLocalNotification(const std::string& messageID, const std::string& title, const std::string& content, const std::string& broadcastTime, const std::string& extrasJson) override;
83
+ void removeLocalNotification(const std::string& messageID) override;
84
+ void clearLocalNotifications() override;
85
+ void clearAllNotifications() override;
86
+ void clearNotificationById(double notificationId) override;
87
+ void requestPermission() override;
88
+ void setPushTime(const std::vector<double>& days, double startHour, double endHour) override;
89
+ void setSilenceTime(double startHour, double startMinute, double endHour, double endMinute) override;
90
+ void setLatestNotificationNumber(double maxNumber) override;
91
+ void setChannel(const std::string& channel) override;
92
+ void setChannelAndSound(const std::string& channel, const std::string& channelId, const std::string& sound) override;
93
+ void setLinkMergeEnable(bool enable) override;
94
+ void setSmartPushEnable(bool enable) override;
95
+ void setDataInsightsEnable(bool enable) override;
96
+ void setGeofenceEnable(bool enable) override;
97
+ void setBackgroundEnable(bool enable) override;
98
+ void setMaxGeofenceNumber(double maxNumber) override;
99
+ void deleteGeofence(const std::string& geoFenceID) override;
100
+ void pageEnterTo(const std::string& pageName) override;
101
+ void pageLeave(const std::string& pageName) override;
102
+ void setCollectControl(bool imei, bool imsi, bool mac, bool wifi, bool bssid, bool ssid, bool cell, bool gps) override;
103
+ void setAuth(bool auth) override;
104
+ void setCountryCode(const std::string& code) override;
105
+ void enableAutoWakeup(bool enable) override;
106
+ void enableSDKLocalLog(bool enable, bool uploadJgToServer) override;
107
+ std::string readNewLogs() override;
108
+ double addEventListener(const std::function<void(const std::string& /* eventName */, const std::string& /* payloadJson */)>& callback) override;
109
+ void removeEventListener(double id) override;
110
+
111
+ private:
112
+ jni::global_ref<JHybridReactNativeJpushSpec::JavaPart> _javaPart;
113
+ };
114
+
115
+ } // namespace margelo::nitro::reactnativejpush
@@ -0,0 +1,78 @@
1
+ ///
2
+ /// Func_void_bool.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.reactnativejpush
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript callback `(enabled: boolean) => void`.
17
+ * This can be either implemented in C++ (in which case it might be a callback coming from JS),
18
+ * or in Kotlin/Java (in which case it is a native callback).
19
+ */
20
+ @DoNotStrip
21
+ @Keep
22
+ @Suppress("ClassName", "RedundantUnitReturnType")
23
+ fun interface Func_void_bool: (Boolean) -> Unit {
24
+ /**
25
+ * Call the given JS callback.
26
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
27
+ */
28
+ @DoNotStrip
29
+ @Keep
30
+ override fun invoke(enabled: Boolean): Unit
31
+ }
32
+
33
+ /**
34
+ * Represents the JavaScript callback `(enabled: boolean) => void`.
35
+ * This is implemented in C++, via a `std::function<...>`.
36
+ * The callback might be coming from JS.
37
+ */
38
+ @DoNotStrip
39
+ @Keep
40
+ @Suppress(
41
+ "KotlinJniMissingFunction", "unused",
42
+ "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
43
+ "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
44
+ )
45
+ class Func_void_bool_cxx: Func_void_bool {
46
+ @DoNotStrip
47
+ @Keep
48
+ private val mHybridData: HybridData
49
+
50
+ @DoNotStrip
51
+ @Keep
52
+ private constructor(hybridData: HybridData) {
53
+ mHybridData = hybridData
54
+ }
55
+
56
+ @DoNotStrip
57
+ @Keep
58
+ override fun invoke(enabled: Boolean): Unit
59
+ = invoke_cxx(enabled)
60
+
61
+ private external fun invoke_cxx(enabled: Boolean): Unit
62
+ }
63
+
64
+ /**
65
+ * Represents the JavaScript callback `(enabled: boolean) => void`.
66
+ * This is implemented in Java/Kotlin, via a `(Boolean) -> Unit`.
67
+ * The callback is always coming from native.
68
+ */
69
+ @DoNotStrip
70
+ @Keep
71
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
72
+ class Func_void_bool_java(private val function: (Boolean) -> Unit): Func_void_bool {
73
+ @DoNotStrip
74
+ @Keep
75
+ override fun invoke(enabled: Boolean): Unit {
76
+ return this.function(enabled)
77
+ }
78
+ }
@@ -0,0 +1,78 @@
1
+ ///
2
+ /// Func_void_std__string_std__string.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.reactnativejpush
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript callback `(eventName: string, payloadJson: string) => void`.
17
+ * This can be either implemented in C++ (in which case it might be a callback coming from JS),
18
+ * or in Kotlin/Java (in which case it is a native callback).
19
+ */
20
+ @DoNotStrip
21
+ @Keep
22
+ @Suppress("ClassName", "RedundantUnitReturnType")
23
+ fun interface Func_void_std__string_std__string: (String, String) -> Unit {
24
+ /**
25
+ * Call the given JS callback.
26
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
27
+ */
28
+ @DoNotStrip
29
+ @Keep
30
+ override fun invoke(eventName: String, payloadJson: String): Unit
31
+ }
32
+
33
+ /**
34
+ * Represents the JavaScript callback `(eventName: string, payloadJson: string) => void`.
35
+ * This is implemented in C++, via a `std::function<...>`.
36
+ * The callback might be coming from JS.
37
+ */
38
+ @DoNotStrip
39
+ @Keep
40
+ @Suppress(
41
+ "KotlinJniMissingFunction", "unused",
42
+ "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
43
+ "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
44
+ )
45
+ class Func_void_std__string_std__string_cxx: Func_void_std__string_std__string {
46
+ @DoNotStrip
47
+ @Keep
48
+ private val mHybridData: HybridData
49
+
50
+ @DoNotStrip
51
+ @Keep
52
+ private constructor(hybridData: HybridData) {
53
+ mHybridData = hybridData
54
+ }
55
+
56
+ @DoNotStrip
57
+ @Keep
58
+ override fun invoke(eventName: String, payloadJson: String): Unit
59
+ = invoke_cxx(eventName,payloadJson)
60
+
61
+ private external fun invoke_cxx(eventName: String, payloadJson: String): Unit
62
+ }
63
+
64
+ /**
65
+ * Represents the JavaScript callback `(eventName: string, payloadJson: string) => void`.
66
+ * This is implemented in Java/Kotlin, via a `(String, String) -> Unit`.
67
+ * The callback is always coming from native.
68
+ */
69
+ @DoNotStrip
70
+ @Keep
71
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
72
+ class Func_void_std__string_std__string_java(private val function: (String, String) -> Unit): Func_void_std__string_std__string {
73
+ @DoNotStrip
74
+ @Keep
75
+ override fun invoke(eventName: String, payloadJson: String): Unit {
76
+ return this.function(eventName, payloadJson)
77
+ }
78
+ }