react-native-mapp-plugin 1.0.4-beta6 → 1.0.4-beta7
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/.idea/React-native-plugin.iml +12 -0
- package/.idea/modules.xml +8 -0
- package/{android/.idea → .idea}/vcs.xml +5 -5
- package/.idea/workspace.xml +85 -0
- package/.vscode/settings.json +2 -2
- package/CustomEvent.js +47 -47
- package/Mapp.js +414 -414
- package/MappEventEmitter.js +41 -41
- package/README.md +93 -93
- package/RNMappPlugin.podspec +29 -29
- package/__package.json +37 -37
- package/android/.classpath +6 -6
- package/android/.project +34 -34
- package/android/.settings/org.eclipse.buildship.core.prefs +13 -13
- package/android/build.gradle +75 -75
- package/android/gradle/wrapper/gradle-wrapper.properties +7 -7
- package/android/gradle.properties +15 -15
- package/android/src/main/AndroidManifest.xml +65 -65
- package/android/src/main/java/com/reactlibrary/ActivityListener.java +43 -43
- package/android/src/main/java/com/reactlibrary/Event.java +28 -28
- package/android/src/main/java/com/reactlibrary/EventEmitter.java +153 -153
- package/android/src/main/java/com/reactlibrary/HelperActivity.java +254 -254
- package/android/src/main/java/com/reactlibrary/IntentNotificationEvent.java +54 -54
- package/android/src/main/java/com/reactlibrary/MessageService.java +21 -21
- package/android/src/main/java/com/reactlibrary/MyPushBroadcastReceiver.java +43 -43
- package/android/src/main/java/com/reactlibrary/PushNotificationEvent.java +37 -37
- package/android/src/main/java/com/reactlibrary/RNMappPluginModule.java +601 -601
- package/android/src/main/java/com/reactlibrary/RNMappPluginPackage.java +34 -34
- package/android/src/main/java/com/reactlibrary/RNUtils.java +191 -191
- package/android/src/main/java/com/reactlibrary/RequestPermissionsTask.java +58 -58
- package/android/src/main/res/values/styles.xml +14 -14
- package/index.js +8 -8
- package/ios/Frameworks/AppoxeeInapp.framework/Versions/A/Headers/APXInBoxMessage.h +101 -101
- package/ios/Frameworks/AppoxeeInapp.framework/Versions/A/Headers/AppoxeeInapp.h +153 -153
- package/ios/Frameworks/AppoxeeInapp.framework/Versions/A/Headers/AppoxeeInappSDK.h +9 -9
- package/ios/Frameworks/AppoxeeLocationServices.framework/Versions/A/Headers/AppoxeeLocationManager.h +122 -122
- package/ios/Frameworks/AppoxeeLocationServices.framework/Versions/A/Headers/AppoxeeLocationServices.h +10 -10
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXClientDevice.h +26 -26
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXInterfaceService.h +49 -49
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXPushNotification.h +92 -92
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXPushNotificationAction.h +20 -20
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXPushNotificationActionButton.h +19 -19
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXPushNotificationActionButtonAction.h +34 -34
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/APXRichMessage.h +58 -58
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/Appoxee.h +840 -840
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/AppoxeeManager.h +385 -385
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/A/Headers/AppoxeeSDK.h +12 -12
- package/ios/Frameworks/AppoxeeSDKResources.bundle/app_conf.json +340 -340
- package/ios/RNMappEventEmmiter.h +25 -25
- package/ios/RNMappEventEmmiter.m +221 -221
- package/ios/RNMappPluginModule.h +10 -10
- package/ios/RNMappPluginModule.m +311 -311
- package/iospatch.sh +13 -13
- package/jsdoc.conf.json +14 -14
- package/package.json +49 -45
- package/android/.gradle/5.6.4/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/5.6.4/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/5.6.4/fileChanges/last-build.bin +0 -0
- package/android/.gradle/5.6.4/fileContent/fileContent.lock +0 -0
- package/android/.gradle/5.6.4/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/5.6.4/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/5.6.4/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/5.6.4/gc.properties +0 -0
- package/android/.gradle/5.6.4/javaCompile/classAnalysis.bin +0 -0
- package/android/.gradle/5.6.4/javaCompile/jarAnalysis.bin +0 -0
- package/android/.gradle/5.6.4/javaCompile/javaCompile.lock +0 -0
- package/android/.gradle/5.6.4/javaCompile/taskHistory.bin +0 -0
- package/android/.gradle/7.0-rc-1/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.0-rc-1/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.0-rc-1/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.0-rc-1/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.0-rc-1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.0-rc-1/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/android/.gradle/checksums/checksums.lock +0 -0
- package/android/.gradle/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/configuration-cache/gc.properties +0 -0
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/.idea/compiler.xml +0 -6
- package/android/.idea/gradle.xml +0 -21
- package/android/.idea/jarRepositories.xml +0 -35
- package/android/.idea/libraries/Gradle__androidx_activity_activity_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_annotation_annotation_1_1_0.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_1_2_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_resources_1_2_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_arch_core_core_common_2_1_0.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_arch_core_core_runtime_2_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_asynclayoutinflater_asynclayoutinflater_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_collection_collection_1_1_0.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_coordinatorlayout_coordinatorlayout_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_core_core_1_3_1_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_cursoradapter_cursoradapter_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_customview_customview_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_documentfile_documentfile_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_drawerlayout_drawerlayout_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_fragment_fragment_1_1_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_interpolator_interpolator_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_ui_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_utils_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_v13_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_v4_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_common_2_1_0.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_2_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_core_2_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_2_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_2_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_loader_loader_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_localbroadcastmanager_localbroadcastmanager_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_media_media_1_0_1_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_print_print_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_recyclerview_recyclerview_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_savedstate_savedstate_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_slidingpanelayout_slidingpanelayout_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_swiperefreshlayout_swiperefreshlayout_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_1_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_animated_1_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_versionedparcelable_versionedparcelable_1_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_viewpager_viewpager_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_0_8_1_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_0_8_1_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_0_8_1_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_0_8_1_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp_0_8_1_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_20_1_aar.xml +0 -19
- package/android/.idea/libraries/Gradle__com_facebook_stetho_stetho_1_2_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_facebook_stetho_stetho_okhttp_1_2_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_fasterxml_jackson_core_jackson_core_2_2_3.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_base_17_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_basement_17_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_location_16_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_places_placereport_16_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_stats_17_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_tasks_17_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_auto_value_auto_value_annotations_1_6_5.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_code_gson_gson_2_8_5.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_dagger_dagger_2_24.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_firebase_firebase_common_19_0_0_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_google_firebase_firebase_iid_20_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_firebase_firebase_iid_interop_17_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_firebase_firebase_measurement_connector_18_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_firebase_firebase_messaging_20_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_mapp_sdk_mapp_android_6_0_17_special7_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__com_nineoldandroids_library_2_4_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_parse_bolts_bolts_android_1_1_4.xml +0 -13
- package/android/.idea/libraries/Gradle__com_squareup_okhttp_okhttp_2_5_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_squareup_okhttp_okhttp_ws_2_5_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_squareup_okio_okio_1_6_0.xml +0 -13
- package/android/.idea/libraries/Gradle__commons_cli_commons_cli_1_2.xml +0 -13
- package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1.xml +0 -13
- package/android/.idea/libraries/Gradle__org_webkit_android_jsc_r174650_aar.xml +0 -11
- package/android/.idea/misc.xml +0 -9
- package/android/.idea/modules/android.iml +0 -122
- package/android/.idea/modules/app/android.app.iml +0 -26
- package/android/.idea/modules.xml +0 -9
- package/android/build/generated/source/buildConfig/debug/com/reactlibrary/BuildConfig.java +0 -18
- package/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml +0 -70
- package/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output.json +0 -1
- package/android/build/intermediates/aar_main_jar/debug/classes.jar +0 -0
- package/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json +0 -1
- package/android/build/intermediates/annotations_typedef_file/debug/typedefs.txt +0 -0
- package/android/build/intermediates/compile_only_not_namespaced_r_class_jar/debug/R.jar +0 -0
- package/android/build/intermediates/compile_symbol_list/debug/R.txt +0 -2993
- package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
- package/android/build/intermediates/incremental/debug-mergeNativeLibs/merge-state +0 -0
- package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
- package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
- package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
- package/android/build/intermediates/incremental/packageDebugResources/compile-file-map.properties +0 -1
- package/android/build/intermediates/incremental/packageDebugResources/merged.dir/values/values.xml +0 -13
- package/android/build/intermediates/incremental/packageDebugResources/merger.xml +0 -11
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/ActivityListener.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/BuildConfig.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/Event.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/EventEmitter$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/EventEmitter$2.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/EventEmitter$3.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/EventEmitter.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/HelperActivity$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/HelperActivity$2.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/HelperActivity$ActivityResult.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/HelperActivity.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/IntentNotificationEvent.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/MessageService.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/MyPushBroadcastReceiver.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/PushNotificationEvent.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNMappPluginModule$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNMappPluginModule$2.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNMappPluginModule$3.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNMappPluginModule$4.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNMappPluginModule.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNMappPluginPackage.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNUtils$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RNUtils.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RequestPermissionsTask$Callback.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/reactlibrary/RequestPermissionsTask.class +0 -0
- package/android/build/intermediates/library_manifest/debug/AndroidManifest.xml +0 -70
- package/android/build/intermediates/local_only_symbol_list/debug/R-def.txt +0 -3
- package/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt +0 -134
- package/android/build/intermediates/merged_java_res/debug/out.jar +0 -0
- package/android/build/intermediates/merged_manifests/debug/output.json +0 -1
- package/android/build/intermediates/packaged_res/debug/values/values.xml +0 -13
- package/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt +0 -1856
- package/android/build/outputs/aar/android-debug.aar +0 -0
- package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -135
- package/android/local.properties +0 -8
- package/ios/Frameworks/AppoxeeInapp.framework/AppoxeeInapp +0 -1
- package/ios/Frameworks/AppoxeeInapp.framework/Headers +0 -1
- package/ios/Frameworks/AppoxeeInapp.framework/Versions/Current +0 -1
- package/ios/Frameworks/AppoxeeLocationServices.framework/AppoxeeLocationServices +0 -1
- package/ios/Frameworks/AppoxeeLocationServices.framework/Headers +0 -1
- package/ios/Frameworks/AppoxeeLocationServices.framework/Versions/Current +0 -1
- package/ios/Frameworks/AppoxeeSDK.framework/AppoxeeSDK +0 -1
- package/ios/Frameworks/AppoxeeSDK.framework/Headers +0 -1
- package/ios/Frameworks/AppoxeeSDK.framework/Versions/Current +0 -1
package/ios/RNMappEventEmmiter.h
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
//
|
|
2
|
-
// RNMappEventEmmiter.h
|
|
3
|
-
// react-native-apoxee-plugin
|
|
4
|
-
//
|
|
5
|
-
// Created by Miroljub Stoilkovic on 19/02/2021.
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
#import <Foundation/Foundation.h>
|
|
9
|
-
#import <AppoxeeSDK/AppoxeeSDK.h>
|
|
10
|
-
#import <AppoxeeInapp/AppoxeeInapp.h>
|
|
11
|
-
#import <AppoxeeLocationServices/AppoxeeLocationManager.h>
|
|
12
|
-
#import <React/RCTEventEmitter.h>
|
|
13
|
-
|
|
14
|
-
NS_ASSUME_NONNULL_BEGIN
|
|
15
|
-
|
|
16
|
-
@interface RNMappEventEmmiter : RCTEventEmitter <AppoxeeInappDelegate, AppoxeeNotificationDelegate, AppoxeeLocationManagerDelegate >
|
|
17
|
-
|
|
18
|
-
@property (nonatomic, weak) RCTBridge *bridge;
|
|
19
|
-
|
|
20
|
-
+ (nullable instancetype) shared;
|
|
21
|
-
- (APXInBoxMessage *) getMessageWith: (NSNumber *) templateId event: (NSString *) eventId;
|
|
22
|
-
|
|
23
|
-
@end
|
|
24
|
-
|
|
25
|
-
NS_ASSUME_NONNULL_END
|
|
1
|
+
//
|
|
2
|
+
// RNMappEventEmmiter.h
|
|
3
|
+
// react-native-apoxee-plugin
|
|
4
|
+
//
|
|
5
|
+
// Created by Miroljub Stoilkovic on 19/02/2021.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
#import <AppoxeeSDK/AppoxeeSDK.h>
|
|
10
|
+
#import <AppoxeeInapp/AppoxeeInapp.h>
|
|
11
|
+
#import <AppoxeeLocationServices/AppoxeeLocationManager.h>
|
|
12
|
+
#import <React/RCTEventEmitter.h>
|
|
13
|
+
|
|
14
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
15
|
+
|
|
16
|
+
@interface RNMappEventEmmiter : RCTEventEmitter <AppoxeeInappDelegate, AppoxeeNotificationDelegate, AppoxeeLocationManagerDelegate >
|
|
17
|
+
|
|
18
|
+
@property (nonatomic, weak) RCTBridge *bridge;
|
|
19
|
+
|
|
20
|
+
+ (nullable instancetype) shared;
|
|
21
|
+
- (APXInBoxMessage *) getMessageWith: (NSNumber *) templateId event: (NSString *) eventId;
|
|
22
|
+
|
|
23
|
+
@end
|
|
24
|
+
|
|
25
|
+
NS_ASSUME_NONNULL_END
|
package/ios/RNMappEventEmmiter.m
CHANGED
|
@@ -1,221 +1,221 @@
|
|
|
1
|
-
//
|
|
2
|
-
// RNMappEventEmmiter.m
|
|
3
|
-
// react-native-apoxee-plugin
|
|
4
|
-
//
|
|
5
|
-
// Created by Miroljub Stoilkovic on 19/02/2021.
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
#import "RNMappEventEmmiter.h"
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
@interface RNMappEventEmmiter()
|
|
12
|
-
@property (strong, nonatomic) NSMutableArray<APXInBoxMessage *> *messages;
|
|
13
|
-
@property(nonatomic, strong) NSMutableArray *pendingEvents;
|
|
14
|
-
@end
|
|
15
|
-
|
|
16
|
-
NSString *const MappRNInitEvent = @"com.mapp.init";
|
|
17
|
-
NSString *const MappRNInboxMessageReceived = @"com.mapp.inbox_message_received";
|
|
18
|
-
NSString *const MappRNInboxMessagesReceived = @"com.mapp.inbox_messages_received";
|
|
19
|
-
NSString *const MappRNLocationEnter = @"com.mapp.georegion_enter";
|
|
20
|
-
NSString *const MappRNLocationExit = @"com.mapp.georegion_exit";
|
|
21
|
-
NSString *const MappRNCustomLinkReceived = @"com.mapp.custom_link_received";
|
|
22
|
-
NSString *const MappRNDeepLinkReceived = @"com.mapp.deep_link_received";
|
|
23
|
-
NSString *const MappRNRichMessage = @"com.mapp.rich_message";
|
|
24
|
-
NSString *const MappRNPushMessage = @"com.mapp.rich_message_received";
|
|
25
|
-
NSString *const MappErrorMessage = @"com.mapp.error_message";
|
|
26
|
-
NSString *const MappRNInappMessage = @"com.mapp.inapp_message";
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
@implementation RNMappEventEmmiter {
|
|
30
|
-
bool hasListeners;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
+ (nullable instancetype) shared {
|
|
34
|
-
static RNMappEventEmmiter *shared = nil;
|
|
35
|
-
static dispatch_once_t onceToken;
|
|
36
|
-
|
|
37
|
-
dispatch_once(&onceToken, ^{
|
|
38
|
-
shared = [[RNMappEventEmmiter alloc] init];
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
return shared;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
-(void)startObserving {
|
|
45
|
-
hasListeners = YES;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
-(void)stopObserving {
|
|
49
|
-
hasListeners = NO;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
- (NSArray<NSString *> *)supportedEvents {
|
|
53
|
-
return @[MappRNInitEvent, MappRNInboxMessageReceived, MappRNInboxMessagesReceived, MappRNLocationEnter, MappRNCustomLinkReceived, MappRNDeepLinkReceived, MappRNRichMessage,MappRNPushMessage, MappErrorMessage,MappRNInappMessage];
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context {
|
|
57
|
-
if ([keyPath isEqualToString:@"isReady"]) {
|
|
58
|
-
[[Appoxee shared] removeObserver:self forKeyPath:@"isReady"];
|
|
59
|
-
[[AppoxeeLocationManager shared] setDelegate:self];
|
|
60
|
-
[self sendEventWithName: MappRNInitEvent body: @{@"status": @"initialized"}];
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
#pragma mark Helpers
|
|
65
|
-
|
|
66
|
-
-(APXInBoxMessage *) getMessageWith: (NSNumber *) templateId event: (NSString *) eventId {
|
|
67
|
-
for(APXInBoxMessage *message in self.messages) {
|
|
68
|
-
if ([message.messageId isEqualToString:templateId.stringValue] && [message.getMessageIdentifier isEqualToString:eventId]) {
|
|
69
|
-
return message;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
return nil;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
#pragma mark - Notification Delegate
|
|
76
|
-
|
|
77
|
-
- (void)appoxee:(nonnull Appoxee *)appoxee handledRemoteNotification:(nonnull APXPushNotification *)pushNotification andIdentifer:(nonnull NSString *)actionIdentifier {
|
|
78
|
-
if ([self getPushMessage:pushNotification]) {
|
|
79
|
-
[self sendEventWithName: MappRNRichMessage body: [self getPushMessage:pushNotification]];
|
|
80
|
-
}
|
|
81
|
-
NSString* deepLink = pushNotification.extraFields[@"apx_dpl"];
|
|
82
|
-
if (deepLink && ![deepLink isEqualToString:@""] && actionIdentifier) {
|
|
83
|
-
[self sendEventWithName: MappRNDeepLinkReceived body: @{@"action":actionIdentifier, @"url": deepLink, @"event_trigger": @"" }];
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
- (void)appoxee:(nonnull Appoxee *)appoxee handledRichContent:(nonnull APXRichMessage *)richMessage didLaunchApp:(BOOL)didLaunch {
|
|
89
|
-
if ([self getRichMessage:richMessage]) {
|
|
90
|
-
[self sendEventWithName: MappRNRichMessage body: [self getRichMessage:richMessage]];
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
#pragma mark Inapp Delegate
|
|
96
|
-
|
|
97
|
-
- (void)appoxeeInapp:(nonnull AppoxeeInapp *)appoxeeInapp didReceiveInappMessageWithIdentifier:(nonnull NSNumber *)identifier andMessageExtraData:(nullable NSDictionary <NSString *, id> *)messageExtraData {
|
|
98
|
-
if (hasListeners) {
|
|
99
|
-
NSDictionary* dict = [[NSDictionary alloc] init];
|
|
100
|
-
if (messageExtraData) {
|
|
101
|
-
dict = @{@"id": [identifier stringValue], @"extraData": messageExtraData};
|
|
102
|
-
} else {
|
|
103
|
-
dict = @{@"id": [identifier stringValue]};
|
|
104
|
-
}
|
|
105
|
-
[self sendEventWithName: MappRNInappMessage body: dict];
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
- (void)didReceiveDeepLinkWithIdentifier:(nonnull NSNumber *)identifier withMessageString:(nonnull NSString *)message andTriggerEvent:(nonnull NSString *)triggerEvent {
|
|
110
|
-
if (identifier && message && triggerEvent) {
|
|
111
|
-
[self sendEventWithName: MappRNDeepLinkReceived body: @{@"action":[identifier stringValue], @"url": message, @"event_trigger": triggerEvent }];
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
- (void)didReceiveCustomLinkWithIdentifier:(nonnull NSNumber *)identifier withMessageString:(nonnull NSString *)message {
|
|
116
|
-
if (identifier && message) {
|
|
117
|
-
[self sendEventWithName: MappRNCustomLinkReceived body: @{@"id":[identifier stringValue], @"message": message}];
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
- (void)didReceiveInBoxMessages:(NSArray *)messages {
|
|
122
|
-
NSMutableArray *dicts = [[NSMutableArray alloc] init];
|
|
123
|
-
for(APXInBoxMessage *message in messages) {
|
|
124
|
-
[dicts addObject:[message getDictionary]];
|
|
125
|
-
}
|
|
126
|
-
self.messages = [[NSMutableArray alloc] init];
|
|
127
|
-
[self.messages addObjectsFromArray:messages];
|
|
128
|
-
if (dicts) {
|
|
129
|
-
[self sendEventWithName: MappRNInboxMessagesReceived body: dicts];
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
- (void)inAppCallFailedWithResponse:(NSString *_Nullable)response andError:(NSError *_Nullable)error {
|
|
134
|
-
if (hasListeners) {
|
|
135
|
-
NSError* newError = [NSError errorWithDomain:@"com.mapp.reactNativeError" code:200 userInfo:@{@"Error reason": @"No specific error message"}];
|
|
136
|
-
NSString* newResponse = @"There was unhandled error!";
|
|
137
|
-
if (error)
|
|
138
|
-
newError = error;
|
|
139
|
-
if (response)
|
|
140
|
-
newResponse = response;
|
|
141
|
-
[self sendEventWithName: MappErrorMessage body: @{@"error": newError, @"response": newResponse}];
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
- (void)didReceiveInBoxMessage:(APXInBoxMessage *_Nullable)message {
|
|
146
|
-
if ([message getDictionary]) {
|
|
147
|
-
[self sendEventWithName: MappRNInboxMessageReceived body: [message getDictionary]];
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
#pragma mark - Location Manager Delegate
|
|
153
|
-
|
|
154
|
-
- (void)locationManager:(nonnull AppoxeeLocationManager *)manager didFailWithError:(nullable NSError *)error {
|
|
155
|
-
if (error)
|
|
156
|
-
[self sendEventWithName: MappErrorMessage body: @{@"error": error}];
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
- (void)locationManager:(nonnull AppoxeeLocationManager *)manager didEnterGeoRegion:(nonnull CLCircularRegion *)geoRegion {
|
|
160
|
-
if (geoRegion)
|
|
161
|
-
[self sendEventWithName: MappRNLocationEnter body: @{@"latitude": [NSString stringWithFormat:@"%f", geoRegion.center.latitude], @"longitude": [NSString stringWithFormat:@"%f", geoRegion.center.longitude]}];
|
|
162
|
-
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
- (void)locationManager:(nonnull AppoxeeLocationManager *)manager didExitGeoRegion:(nonnull CLCircularRegion *)geoRegion {
|
|
166
|
-
if (geoRegion)
|
|
167
|
-
[self sendEventWithName: MappRNLocationExit body: @{@"latitude": [NSString stringWithFormat:@"%f", geoRegion.center.latitude], @"longitude": [NSString stringWithFormat:@"%f", geoRegion.center.longitude]}];
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
-(NSDictionary *) getRichMessage: (APXRichMessage *) message {
|
|
171
|
-
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
|
|
172
|
-
[dict setObject:[[NSNumber numberWithInteger:message.uniqueID] stringValue] forKey:@"id"];
|
|
173
|
-
[dict setObject:message.title forKey:@"title"];
|
|
174
|
-
[dict setObject:message.content forKey:@"content"];
|
|
175
|
-
[dict setObject:message.title forKey:@"title"];
|
|
176
|
-
[dict setObject:message.messageLink forKey:@"messageLink"];
|
|
177
|
-
[dict setObject:[self stringFromDate: message.postDate inUTC:false] forKey:@"postDate"];
|
|
178
|
-
[dict setObject:[self stringFromDate: message.postDate inUTC:true] forKey:@"postDateUTC"];
|
|
179
|
-
return dict;
|
|
180
|
-
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
-(NSDictionary *) getPushMessage: (APXPushNotification *) pushMessage {
|
|
184
|
-
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
|
|
185
|
-
if (pushMessage.title)
|
|
186
|
-
[dict setObject:pushMessage.title forKey:@"title"];
|
|
187
|
-
if (pushMessage.alert)
|
|
188
|
-
[dict setObject:pushMessage.alert forKey:@"alert"];
|
|
189
|
-
if (pushMessage.body)
|
|
190
|
-
[dict setObject:pushMessage.body forKey:@"body"];
|
|
191
|
-
if (pushMessage.uniqueID)
|
|
192
|
-
[dict setObject:[NSNumber numberWithInteger: pushMessage.uniqueID] forKey: @"id"];
|
|
193
|
-
if (pushMessage.badge)
|
|
194
|
-
[dict setObject:[NSNumber numberWithInteger: pushMessage.badge] forKey: @"badge"];
|
|
195
|
-
if (pushMessage.subtitle)
|
|
196
|
-
[dict setObject:pushMessage.subtitle forKey:@"subtitle"];
|
|
197
|
-
if (pushMessage.pushAction.categoryName)
|
|
198
|
-
[dict setObject:pushMessage.pushAction.categoryName forKey:@"category" ];
|
|
199
|
-
if (pushMessage.extraFields)
|
|
200
|
-
[dict setObject:pushMessage.extraFields forKey:@"extraFields"];
|
|
201
|
-
if (pushMessage.isRich)
|
|
202
|
-
[dict setObject:pushMessage.isRich ? @"true": @"false" forKey:@"isRich"];
|
|
203
|
-
if (pushMessage.isSilent)
|
|
204
|
-
[dict setObject:pushMessage.isSilent ? @"true": @"false" forKey:@"isSilent"];
|
|
205
|
-
if (pushMessage.isTriggerUpdate)
|
|
206
|
-
[dict setObject:pushMessage.isTriggerUpdate ? @"true": @"false" forKey:@"isTriggerUpdate"];
|
|
207
|
-
return dict;
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
- (NSString *)stringFromDate:(NSDate *)date inUTC: (BOOL) isUTC{
|
|
211
|
-
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
|
|
212
|
-
if (isUTC) {
|
|
213
|
-
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
|
|
214
|
-
}
|
|
215
|
-
[dateFormatter setDateFormat: @"yyyy-MM-dd'T'HH:mm:ss"];
|
|
216
|
-
|
|
217
|
-
return [dateFormatter stringFromDate:date];
|
|
218
|
-
}
|
|
219
|
-
@end
|
|
220
|
-
|
|
221
|
-
|
|
1
|
+
//
|
|
2
|
+
// RNMappEventEmmiter.m
|
|
3
|
+
// react-native-apoxee-plugin
|
|
4
|
+
//
|
|
5
|
+
// Created by Miroljub Stoilkovic on 19/02/2021.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "RNMappEventEmmiter.h"
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@interface RNMappEventEmmiter()
|
|
12
|
+
@property (strong, nonatomic) NSMutableArray<APXInBoxMessage *> *messages;
|
|
13
|
+
@property(nonatomic, strong) NSMutableArray *pendingEvents;
|
|
14
|
+
@end
|
|
15
|
+
|
|
16
|
+
NSString *const MappRNInitEvent = @"com.mapp.init";
|
|
17
|
+
NSString *const MappRNInboxMessageReceived = @"com.mapp.inbox_message_received";
|
|
18
|
+
NSString *const MappRNInboxMessagesReceived = @"com.mapp.inbox_messages_received";
|
|
19
|
+
NSString *const MappRNLocationEnter = @"com.mapp.georegion_enter";
|
|
20
|
+
NSString *const MappRNLocationExit = @"com.mapp.georegion_exit";
|
|
21
|
+
NSString *const MappRNCustomLinkReceived = @"com.mapp.custom_link_received";
|
|
22
|
+
NSString *const MappRNDeepLinkReceived = @"com.mapp.deep_link_received";
|
|
23
|
+
NSString *const MappRNRichMessage = @"com.mapp.rich_message";
|
|
24
|
+
NSString *const MappRNPushMessage = @"com.mapp.rich_message_received";
|
|
25
|
+
NSString *const MappErrorMessage = @"com.mapp.error_message";
|
|
26
|
+
NSString *const MappRNInappMessage = @"com.mapp.inapp_message";
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
@implementation RNMappEventEmmiter {
|
|
30
|
+
bool hasListeners;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
+ (nullable instancetype) shared {
|
|
34
|
+
static RNMappEventEmmiter *shared = nil;
|
|
35
|
+
static dispatch_once_t onceToken;
|
|
36
|
+
|
|
37
|
+
dispatch_once(&onceToken, ^{
|
|
38
|
+
shared = [[RNMappEventEmmiter alloc] init];
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
return shared;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
-(void)startObserving {
|
|
45
|
+
hasListeners = YES;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
-(void)stopObserving {
|
|
49
|
+
hasListeners = NO;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
- (NSArray<NSString *> *)supportedEvents {
|
|
53
|
+
return @[MappRNInitEvent, MappRNInboxMessageReceived, MappRNInboxMessagesReceived, MappRNLocationEnter, MappRNCustomLinkReceived, MappRNDeepLinkReceived, MappRNRichMessage,MappRNPushMessage, MappErrorMessage,MappRNInappMessage];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context {
|
|
57
|
+
if ([keyPath isEqualToString:@"isReady"]) {
|
|
58
|
+
[[Appoxee shared] removeObserver:self forKeyPath:@"isReady"];
|
|
59
|
+
[[AppoxeeLocationManager shared] setDelegate:self];
|
|
60
|
+
[self sendEventWithName: MappRNInitEvent body: @{@"status": @"initialized"}];
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
#pragma mark Helpers
|
|
65
|
+
|
|
66
|
+
-(APXInBoxMessage *) getMessageWith: (NSNumber *) templateId event: (NSString *) eventId {
|
|
67
|
+
for(APXInBoxMessage *message in self.messages) {
|
|
68
|
+
if ([message.messageId isEqualToString:templateId.stringValue] && [message.getMessageIdentifier isEqualToString:eventId]) {
|
|
69
|
+
return message;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return nil;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
#pragma mark - Notification Delegate
|
|
76
|
+
|
|
77
|
+
- (void)appoxee:(nonnull Appoxee *)appoxee handledRemoteNotification:(nonnull APXPushNotification *)pushNotification andIdentifer:(nonnull NSString *)actionIdentifier {
|
|
78
|
+
if ([self getPushMessage:pushNotification]) {
|
|
79
|
+
[self sendEventWithName: MappRNRichMessage body: [self getPushMessage:pushNotification]];
|
|
80
|
+
}
|
|
81
|
+
NSString* deepLink = pushNotification.extraFields[@"apx_dpl"];
|
|
82
|
+
if (deepLink && ![deepLink isEqualToString:@""] && actionIdentifier) {
|
|
83
|
+
[self sendEventWithName: MappRNDeepLinkReceived body: @{@"action":actionIdentifier, @"url": deepLink, @"event_trigger": @"" }];
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
- (void)appoxee:(nonnull Appoxee *)appoxee handledRichContent:(nonnull APXRichMessage *)richMessage didLaunchApp:(BOOL)didLaunch {
|
|
89
|
+
if ([self getRichMessage:richMessage]) {
|
|
90
|
+
[self sendEventWithName: MappRNRichMessage body: [self getRichMessage:richMessage]];
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
#pragma mark Inapp Delegate
|
|
96
|
+
|
|
97
|
+
- (void)appoxeeInapp:(nonnull AppoxeeInapp *)appoxeeInapp didReceiveInappMessageWithIdentifier:(nonnull NSNumber *)identifier andMessageExtraData:(nullable NSDictionary <NSString *, id> *)messageExtraData {
|
|
98
|
+
if (hasListeners) {
|
|
99
|
+
NSDictionary* dict = [[NSDictionary alloc] init];
|
|
100
|
+
if (messageExtraData) {
|
|
101
|
+
dict = @{@"id": [identifier stringValue], @"extraData": messageExtraData};
|
|
102
|
+
} else {
|
|
103
|
+
dict = @{@"id": [identifier stringValue]};
|
|
104
|
+
}
|
|
105
|
+
[self sendEventWithName: MappRNInappMessage body: dict];
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
- (void)didReceiveDeepLinkWithIdentifier:(nonnull NSNumber *)identifier withMessageString:(nonnull NSString *)message andTriggerEvent:(nonnull NSString *)triggerEvent {
|
|
110
|
+
if (identifier && message && triggerEvent) {
|
|
111
|
+
[self sendEventWithName: MappRNDeepLinkReceived body: @{@"action":[identifier stringValue], @"url": message, @"event_trigger": triggerEvent }];
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
- (void)didReceiveCustomLinkWithIdentifier:(nonnull NSNumber *)identifier withMessageString:(nonnull NSString *)message {
|
|
116
|
+
if (identifier && message) {
|
|
117
|
+
[self sendEventWithName: MappRNCustomLinkReceived body: @{@"id":[identifier stringValue], @"message": message}];
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
- (void)didReceiveInBoxMessages:(NSArray *)messages {
|
|
122
|
+
NSMutableArray *dicts = [[NSMutableArray alloc] init];
|
|
123
|
+
for(APXInBoxMessage *message in messages) {
|
|
124
|
+
[dicts addObject:[message getDictionary]];
|
|
125
|
+
}
|
|
126
|
+
self.messages = [[NSMutableArray alloc] init];
|
|
127
|
+
[self.messages addObjectsFromArray:messages];
|
|
128
|
+
if (dicts) {
|
|
129
|
+
[self sendEventWithName: MappRNInboxMessagesReceived body: dicts];
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
- (void)inAppCallFailedWithResponse:(NSString *_Nullable)response andError:(NSError *_Nullable)error {
|
|
134
|
+
if (hasListeners) {
|
|
135
|
+
NSError* newError = [NSError errorWithDomain:@"com.mapp.reactNativeError" code:200 userInfo:@{@"Error reason": @"No specific error message"}];
|
|
136
|
+
NSString* newResponse = @"There was unhandled error!";
|
|
137
|
+
if (error)
|
|
138
|
+
newError = error;
|
|
139
|
+
if (response)
|
|
140
|
+
newResponse = response;
|
|
141
|
+
[self sendEventWithName: MappErrorMessage body: @{@"error": newError, @"response": newResponse}];
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
- (void)didReceiveInBoxMessage:(APXInBoxMessage *_Nullable)message {
|
|
146
|
+
if ([message getDictionary]) {
|
|
147
|
+
[self sendEventWithName: MappRNInboxMessageReceived body: [message getDictionary]];
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
#pragma mark - Location Manager Delegate
|
|
153
|
+
|
|
154
|
+
- (void)locationManager:(nonnull AppoxeeLocationManager *)manager didFailWithError:(nullable NSError *)error {
|
|
155
|
+
if (error)
|
|
156
|
+
[self sendEventWithName: MappErrorMessage body: @{@"error": error}];
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
- (void)locationManager:(nonnull AppoxeeLocationManager *)manager didEnterGeoRegion:(nonnull CLCircularRegion *)geoRegion {
|
|
160
|
+
if (geoRegion)
|
|
161
|
+
[self sendEventWithName: MappRNLocationEnter body: @{@"latitude": [NSString stringWithFormat:@"%f", geoRegion.center.latitude], @"longitude": [NSString stringWithFormat:@"%f", geoRegion.center.longitude]}];
|
|
162
|
+
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
- (void)locationManager:(nonnull AppoxeeLocationManager *)manager didExitGeoRegion:(nonnull CLCircularRegion *)geoRegion {
|
|
166
|
+
if (geoRegion)
|
|
167
|
+
[self sendEventWithName: MappRNLocationExit body: @{@"latitude": [NSString stringWithFormat:@"%f", geoRegion.center.latitude], @"longitude": [NSString stringWithFormat:@"%f", geoRegion.center.longitude]}];
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
-(NSDictionary *) getRichMessage: (APXRichMessage *) message {
|
|
171
|
+
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
|
|
172
|
+
[dict setObject:[[NSNumber numberWithInteger:message.uniqueID] stringValue] forKey:@"id"];
|
|
173
|
+
[dict setObject:message.title forKey:@"title"];
|
|
174
|
+
[dict setObject:message.content forKey:@"content"];
|
|
175
|
+
[dict setObject:message.title forKey:@"title"];
|
|
176
|
+
[dict setObject:message.messageLink forKey:@"messageLink"];
|
|
177
|
+
[dict setObject:[self stringFromDate: message.postDate inUTC:false] forKey:@"postDate"];
|
|
178
|
+
[dict setObject:[self stringFromDate: message.postDate inUTC:true] forKey:@"postDateUTC"];
|
|
179
|
+
return dict;
|
|
180
|
+
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
-(NSDictionary *) getPushMessage: (APXPushNotification *) pushMessage {
|
|
184
|
+
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
|
|
185
|
+
if (pushMessage.title)
|
|
186
|
+
[dict setObject:pushMessage.title forKey:@"title"];
|
|
187
|
+
if (pushMessage.alert)
|
|
188
|
+
[dict setObject:pushMessage.alert forKey:@"alert"];
|
|
189
|
+
if (pushMessage.body)
|
|
190
|
+
[dict setObject:pushMessage.body forKey:@"body"];
|
|
191
|
+
if (pushMessage.uniqueID)
|
|
192
|
+
[dict setObject:[NSNumber numberWithInteger: pushMessage.uniqueID] forKey: @"id"];
|
|
193
|
+
if (pushMessage.badge)
|
|
194
|
+
[dict setObject:[NSNumber numberWithInteger: pushMessage.badge] forKey: @"badge"];
|
|
195
|
+
if (pushMessage.subtitle)
|
|
196
|
+
[dict setObject:pushMessage.subtitle forKey:@"subtitle"];
|
|
197
|
+
if (pushMessage.pushAction.categoryName)
|
|
198
|
+
[dict setObject:pushMessage.pushAction.categoryName forKey:@"category" ];
|
|
199
|
+
if (pushMessage.extraFields)
|
|
200
|
+
[dict setObject:pushMessage.extraFields forKey:@"extraFields"];
|
|
201
|
+
if (pushMessage.isRich)
|
|
202
|
+
[dict setObject:pushMessage.isRich ? @"true": @"false" forKey:@"isRich"];
|
|
203
|
+
if (pushMessage.isSilent)
|
|
204
|
+
[dict setObject:pushMessage.isSilent ? @"true": @"false" forKey:@"isSilent"];
|
|
205
|
+
if (pushMessage.isTriggerUpdate)
|
|
206
|
+
[dict setObject:pushMessage.isTriggerUpdate ? @"true": @"false" forKey:@"isTriggerUpdate"];
|
|
207
|
+
return dict;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
- (NSString *)stringFromDate:(NSDate *)date inUTC: (BOOL) isUTC{
|
|
211
|
+
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
|
|
212
|
+
if (isUTC) {
|
|
213
|
+
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
|
|
214
|
+
}
|
|
215
|
+
[dateFormatter setDateFormat: @"yyyy-MM-dd'T'HH:mm:ss"];
|
|
216
|
+
|
|
217
|
+
return [dateFormatter stringFromDate:date];
|
|
218
|
+
}
|
|
219
|
+
@end
|
|
220
|
+
|
|
221
|
+
|
package/ios/RNMappPluginModule.h
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
#import <React/RCTBridgeModule.h>
|
|
2
|
-
#import <React/RCTEventEmitter.h>
|
|
3
|
-
#import <AppoxeeSDK/AppoxeeSDK.h>
|
|
4
|
-
#import <AppoxeeInapp/AppoxeeInapp.h>
|
|
5
|
-
#import <AppoxeeLocationServices/AppoxeeLocationManager.h>
|
|
6
|
-
#import <UserNotifications/UNUserNotificationCenter.h>
|
|
7
|
-
|
|
8
|
-
@interface RNMappPluginModule : NSObject <RCTBridgeModule,AppoxeeInappDelegate, AppoxeeNotificationDelegate, AppoxeeLocationManagerDelegate >
|
|
9
|
-
|
|
10
|
-
@end
|
|
1
|
+
#import <React/RCTBridgeModule.h>
|
|
2
|
+
#import <React/RCTEventEmitter.h>
|
|
3
|
+
#import <AppoxeeSDK/AppoxeeSDK.h>
|
|
4
|
+
#import <AppoxeeInapp/AppoxeeInapp.h>
|
|
5
|
+
#import <AppoxeeLocationServices/AppoxeeLocationManager.h>
|
|
6
|
+
#import <UserNotifications/UNUserNotificationCenter.h>
|
|
7
|
+
|
|
8
|
+
@interface RNMappPluginModule : NSObject <RCTBridgeModule,AppoxeeInappDelegate, AppoxeeNotificationDelegate, AppoxeeLocationManagerDelegate >
|
|
9
|
+
|
|
10
|
+
@end
|