react-native-netmera 1.11.3 → 2.0.0-alpha02
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -120
- package/RNNetmera.podspec +31 -14
- package/android/build.gradle +83 -19
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +0 -5
- package/android/src/main/AndroidManifestNew.xml +5 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmera.kt +24 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraCategoryObject.kt +54 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraConfiguration.kt +108 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraEvent.kt +24 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraModule.kt +694 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraPackage.kt +17 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraPushBroadcastReceiver.kt +81 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraPushHeadlessService.kt +32 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraUtil.kt +218 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraWebWidgetCallbacks.kt +25 -0
- package/ios/AnyCodable/AnyCodable.swift +151 -0
- package/ios/AnyCodable/AnyDecodable.swift +192 -0
- package/ios/AnyCodable/AnyEncodable.swift +295 -0
- package/ios/RNNetmera-Bridging-Header.h +3 -0
- package/ios/RNNetmera.h +9 -29
- package/ios/RNNetmera.mm +143 -0
- package/ios/RNNetmera.swift +759 -0
- package/ios/RNNetmeraCategoryObject.swift +61 -0
- package/ios/RNNetmeraEvent.swift +26 -0
- package/ios/RNNetmeraPushLifecycleDelegate.swift +47 -0
- package/ios/RNNetmeraRCTEventEmitter.mm +8 -0
- package/ios/RNNetmeraRCTEventEmitter.swift +134 -0
- package/ios/RNNetmeraUtils.swift +233 -0
- package/lib/module/Netmera.js +256 -0
- package/lib/module/Netmera.js.map +1 -0
- package/lib/module/events/NetmeraEvent.js +8 -0
- package/lib/module/events/NetmeraEvent.js.map +1 -0
- package/lib/module/events/NetmeraEventBannerOpen.js +13 -0
- package/lib/module/events/NetmeraEventBannerOpen.js.map +1 -0
- package/lib/module/events/NetmeraEventBatteryLevel.js +10 -0
- package/lib/module/events/NetmeraEventBatteryLevel.js.map +1 -0
- package/lib/module/events/NetmeraEventCategoryView.js +13 -0
- package/lib/module/events/NetmeraEventCategoryView.js.map +1 -0
- package/lib/module/events/NetmeraEventInAppPurchase.js +28 -0
- package/lib/module/events/NetmeraEventInAppPurchase.js.map +1 -0
- package/lib/module/events/NetmeraEventLogin.js +10 -0
- package/lib/module/events/NetmeraEventLogin.js.map +1 -0
- package/lib/module/events/NetmeraEventRegister.js +10 -0
- package/lib/module/events/NetmeraEventRegister.js.map +1 -0
- package/lib/module/events/NetmeraEventScreenView.js +22 -0
- package/lib/module/events/NetmeraEventScreenView.js.map +1 -0
- package/lib/module/events/NetmeraEventSearch.js +13 -0
- package/lib/module/events/NetmeraEventSearch.js.map +1 -0
- package/lib/module/events/NetmeraEventShare.js +13 -0
- package/lib/module/events/NetmeraEventShare.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventCartAddProduct.js +13 -0
- package/lib/module/events/commerce/NetmeraEventCartAddProduct.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventCartRemoveProduct.js +10 -0
- package/lib/module/events/commerce/NetmeraEventCartRemoveProduct.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventCartView.js +13 -0
- package/lib/module/events/commerce/NetmeraEventCartView.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventOrderCancel.js +19 -0
- package/lib/module/events/commerce/NetmeraEventOrderCancel.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventProductComment.js +7 -0
- package/lib/module/events/commerce/NetmeraEventProductComment.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventProductRate.js +10 -0
- package/lib/module/events/commerce/NetmeraEventProductRate.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventProductView.js +7 -0
- package/lib/module/events/commerce/NetmeraEventProductView.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventPurchase.js +34 -0
- package/lib/module/events/commerce/NetmeraEventPurchase.js.map +1 -0
- package/lib/module/events/commerce/NetmeraEventWishList.js +7 -0
- package/lib/module/events/commerce/NetmeraEventWishList.js.map +1 -0
- package/lib/module/events/commerce/NetmeraLineItem.js +9 -0
- package/lib/module/events/commerce/NetmeraLineItem.js.map +1 -0
- package/lib/module/events/commerce/NetmeraProduct.js +46 -0
- package/lib/module/events/commerce/NetmeraProduct.js.map +1 -0
- package/lib/module/events/media/NetmeraEventContent.js +42 -0
- package/lib/module/events/media/NetmeraEventContent.js.map +1 -0
- package/lib/module/events/media/NetmeraEventContentComment.js +7 -0
- package/lib/module/events/media/NetmeraEventContentComment.js.map +1 -0
- package/lib/module/events/media/NetmeraEventContentRate.js +10 -0
- package/lib/module/events/media/NetmeraEventContentRate.js.map +1 -0
- package/lib/module/events/media/NetmeraEventContentView.js +7 -0
- package/lib/module/events/media/NetmeraEventContentView.js.map +1 -0
- package/lib/module/index.js +43 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/models/NMCategoryPreference.js +8 -0
- package/lib/module/models/NMCategoryPreference.js.map +1 -0
- package/lib/module/models/NMInboxStatus.js +11 -0
- package/lib/module/models/NMInboxStatus.js.map +1 -0
- package/lib/module/models/NMInboxStatusCountFilter.js +12 -0
- package/lib/module/models/NMInboxStatusCountFilter.js.map +1 -0
- package/lib/module/models/NetmeraCategory.js +8 -0
- package/lib/module/models/NetmeraCategory.js.map +1 -0
- package/lib/module/models/NetmeraCategoryFilter.js +8 -0
- package/lib/module/models/NetmeraCategoryFilter.js.map +1 -0
- package/lib/module/models/NetmeraCouponObject.js +8 -0
- package/lib/module/models/NetmeraCouponObject.js.map +1 -0
- package/lib/module/models/NetmeraInbox.js +8 -0
- package/lib/module/models/NetmeraInbox.js.map +1 -0
- package/lib/module/models/NetmeraInboxFilter.js +8 -0
- package/lib/module/models/NetmeraInboxFilter.js.map +1 -0
- package/lib/module/models/NetmeraProfileAttribute.js +75 -0
- package/lib/module/models/NetmeraProfileAttribute.js.map +1 -0
- package/lib/module/models/NetmeraUser.js +89 -0
- package/lib/module/models/NetmeraUser.js.map +1 -0
- package/lib/module/models/NetmeraUserProfile.js +58 -0
- package/lib/module/models/NetmeraUserProfile.js.map +1 -0
- package/lib/module/models/NotificationPermissionStatus.js +10 -0
- package/lib/module/models/NotificationPermissionStatus.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/utils/DeviceUtils.js +10 -0
- package/lib/module/utils/DeviceUtils.js.map +1 -0
- package/lib/module/utils/Optional.js +32 -0
- package/lib/module/utils/Optional.js.map +1 -0
- package/lib/module/utils/RNNetmera.js +16 -0
- package/lib/module/utils/RNNetmera.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/Netmera.d.ts +70 -0
- package/lib/typescript/src/Netmera.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEvent.d.ts +5 -0
- package/lib/typescript/src/events/NetmeraEvent.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventBannerOpen.d.ts +9 -0
- package/lib/typescript/src/events/NetmeraEventBannerOpen.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventBatteryLevel.d.ts +7 -0
- package/lib/typescript/src/events/NetmeraEventBatteryLevel.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventCategoryView.d.ts +9 -0
- package/lib/typescript/src/events/NetmeraEventCategoryView.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventInAppPurchase.d.ts +19 -0
- package/lib/typescript/src/events/NetmeraEventInAppPurchase.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventLogin.d.ts +7 -0
- package/lib/typescript/src/events/NetmeraEventLogin.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventRegister.d.ts +7 -0
- package/lib/typescript/src/events/NetmeraEventRegister.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventScreenView.d.ts +15 -0
- package/lib/typescript/src/events/NetmeraEventScreenView.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventSearch.d.ts +9 -0
- package/lib/typescript/src/events/NetmeraEventSearch.d.ts.map +1 -0
- package/lib/typescript/src/events/NetmeraEventShare.d.ts +9 -0
- package/lib/typescript/src/events/NetmeraEventShare.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventCartAddProduct.d.ts +9 -0
- package/lib/typescript/src/events/commerce/NetmeraEventCartAddProduct.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventCartRemoveProduct.d.ts +7 -0
- package/lib/typescript/src/events/commerce/NetmeraEventCartRemoveProduct.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventCartView.d.ts +9 -0
- package/lib/typescript/src/events/commerce/NetmeraEventCartView.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventOrderCancel.d.ts +13 -0
- package/lib/typescript/src/events/commerce/NetmeraEventOrderCancel.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventProductComment.d.ts +5 -0
- package/lib/typescript/src/events/commerce/NetmeraEventProductComment.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventProductRate.d.ts +7 -0
- package/lib/typescript/src/events/commerce/NetmeraEventProductRate.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventProductView.d.ts +5 -0
- package/lib/typescript/src/events/commerce/NetmeraEventProductView.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventPurchase.d.ts +24 -0
- package/lib/typescript/src/events/commerce/NetmeraEventPurchase.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraEventWishList.d.ts +5 -0
- package/lib/typescript/src/events/commerce/NetmeraEventWishList.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraLineItem.d.ts +6 -0
- package/lib/typescript/src/events/commerce/NetmeraLineItem.d.ts.map +1 -0
- package/lib/typescript/src/events/commerce/NetmeraProduct.d.ts +23 -0
- package/lib/typescript/src/events/commerce/NetmeraProduct.d.ts.map +1 -0
- package/lib/typescript/src/events/media/NetmeraEventContent.d.ts +23 -0
- package/lib/typescript/src/events/media/NetmeraEventContent.d.ts.map +1 -0
- package/lib/typescript/src/events/media/NetmeraEventContentComment.d.ts +5 -0
- package/lib/typescript/src/events/media/NetmeraEventContentComment.d.ts.map +1 -0
- package/lib/typescript/src/events/media/NetmeraEventContentRate.d.ts +7 -0
- package/lib/typescript/src/events/media/NetmeraEventContentRate.d.ts.map +1 -0
- package/lib/typescript/src/events/media/NetmeraEventContentView.d.ts +5 -0
- package/lib/typescript/src/events/media/NetmeraEventContentView.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +39 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/models/NMCategoryPreference.d.ts +6 -0
- package/lib/typescript/src/models/NMCategoryPreference.d.ts.map +1 -0
- package/lib/typescript/src/models/NMInboxStatus.d.ts +8 -0
- package/lib/typescript/src/models/NMInboxStatus.d.ts.map +1 -0
- package/lib/typescript/src/models/NMInboxStatusCountFilter.d.ts +7 -0
- package/lib/typescript/src/models/NMInboxStatusCountFilter.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraCategory.d.ts +10 -0
- package/lib/typescript/src/models/NetmeraCategory.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraCategoryFilter.d.ts +6 -0
- package/lib/typescript/src/models/NetmeraCategoryFilter.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraCouponObject.d.ts +8 -0
- package/lib/typescript/src/models/NetmeraCouponObject.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraInbox.d.ts +22 -0
- package/lib/typescript/src/models/NetmeraInbox.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraInboxFilter.d.ts +7 -0
- package/lib/typescript/src/models/NetmeraInboxFilter.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraProfileAttribute.d.ts +33 -0
- package/lib/typescript/src/models/NetmeraProfileAttribute.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraUser.d.ts +25 -0
- package/lib/typescript/src/models/NetmeraUser.d.ts.map +1 -0
- package/lib/typescript/src/models/NetmeraUserProfile.d.ts +21 -0
- package/lib/typescript/src/models/NetmeraUserProfile.d.ts.map +1 -0
- package/lib/typescript/src/models/NotificationPermissionStatus.d.ts +7 -0
- package/lib/typescript/src/models/NotificationPermissionStatus.d.ts.map +1 -0
- package/lib/typescript/src/utils/DeviceUtils.d.ts +3 -0
- package/lib/typescript/src/utils/DeviceUtils.d.ts.map +1 -0
- package/lib/typescript/src/utils/Optional.d.ts +15 -0
- package/lib/typescript/src/utils/Optional.d.ts.map +1 -0
- package/lib/typescript/src/utils/RNNetmera.d.ts +5 -0
- package/lib/typescript/src/utils/RNNetmera.d.ts.map +1 -0
- package/package.json +104 -17
- package/src/Netmera.ts +139 -88
- package/src/events/NetmeraEvent.ts +1 -1
- package/src/events/NetmeraEventBannerOpen.ts +4 -4
- package/src/events/NetmeraEventBatteryLevel.ts +3 -3
- package/src/events/NetmeraEventCategoryView.ts +4 -4
- package/src/events/NetmeraEventInAppPurchase.ts +10 -10
- package/src/events/NetmeraEventLogin.ts +3 -3
- package/src/events/NetmeraEventRegister.ts +3 -3
- package/src/events/NetmeraEventScreenView.ts +7 -7
- package/src/events/NetmeraEventSearch.ts +4 -4
- package/src/events/NetmeraEventShare.ts +4 -4
- package/src/events/commerce/NetmeraEventCartAddProduct.ts +4 -4
- package/src/events/commerce/NetmeraEventCartRemoveProduct.ts +3 -3
- package/src/events/commerce/NetmeraEventCartView.ts +4 -4
- package/src/events/commerce/NetmeraEventOrderCancel.ts +6 -6
- package/src/events/commerce/NetmeraEventProductComment.ts +2 -2
- package/src/events/commerce/NetmeraEventProductRate.ts +3 -3
- package/src/events/commerce/NetmeraEventProductView.ts +2 -2
- package/src/events/commerce/NetmeraEventPurchase.ts +13 -13
- package/src/events/commerce/NetmeraEventWishList.ts +2 -2
- package/src/events/commerce/NetmeraLineItem.ts +2 -2
- package/src/events/commerce/NetmeraProduct.ts +10 -10
- package/src/events/media/NetmeraEventContent.ts +8 -8
- package/src/events/media/NetmeraEventContentComment.ts +2 -2
- package/src/events/media/NetmeraEventContentRate.ts +3 -3
- package/src/events/media/NetmeraEventContentView.ts +2 -2
- package/src/index.ts +87 -0
- package/src/models/NMCategoryPreference.ts +1 -1
- package/src/models/NMInboxStatusCountFilter.ts +1 -1
- package/src/models/NetmeraCategory.ts +2 -2
- package/src/models/NetmeraCategoryFilter.ts +1 -1
- package/src/models/NetmeraCouponObject.ts +1 -1
- package/src/models/NetmeraInbox.ts +1 -1
- package/src/models/NetmeraInboxFilter.ts +1 -1
- package/src/models/NetmeraProfileAttribute.ts +81 -0
- package/src/models/NetmeraUser.ts +76 -74
- package/src/models/NetmeraUserProfile.ts +67 -0
- package/src/models/NotificationPermissionStatus.ts +4 -4
- package/src/utils/DeviceUtils.ts +3 -3
- package/src/utils/Optional.ts +31 -0
- package/src/utils/RNNetmera.ts +24 -0
- package/.eslintignore +0 -7
- package/.gitattributes +0 -1
- package/.github/workflows/code_quality_check.yaml +0 -38
- package/.prettierignore +0 -14
- package/.yarnrc.yml +0 -1
- package/android/.project +0 -17
- package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/android/gradle/wrapper/gradle-wrapper.properties +0 -6
- package/android/gradlew +0 -172
- package/android/gradlew.bat +0 -84
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmera.java +0 -24
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraCategoryObject.java +0 -56
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraConfiguration.java +0 -154
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraEvent.java +0 -36
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraModule.java +0 -631
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraPackage.java +0 -35
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraPushBroadcastReceiver.java +0 -86
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraPushHeadlessService.java +0 -32
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraUser.java +0 -24
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraUtil.java +0 -354
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraWebWidgetCallbacks.java +0 -27
- package/index.ts +0 -80
- package/ios/RNNetmera.m +0 -507
- package/ios/RNNetmera.xcodeproj/project.pbxproj +0 -316
- package/ios/RNNetmera.xcodeproj/xcshareddata/xcschemes/RNNetmera.xcscheme +0 -67
- package/ios/RNNetmera.xcworkspace/contents.xcworkspacedata +0 -9
- package/ios/RNNetmeraCategoryObject.h +0 -16
- package/ios/RNNetmeraCategoryObject.m +0 -59
- package/ios/RNNetmeraEvent.h +0 -17
- package/ios/RNNetmeraEvent.m +0 -27
- package/ios/RNNetmeraRCTEventEmitter.h +0 -23
- package/ios/RNNetmeraRCTEventEmitter.m +0 -142
- package/ios/RNNetmeraUser.h +0 -15
- package/ios/RNNetmeraUser.m +0 -19
- package/ios/RNNetmeraUtils.h +0 -27
- package/ios/RNNetmeraUtils.m +0 -128
- package/scripts/update-version.js +0 -38
- package/scripts/yarn_rebuild.sh +0 -31
- package/tsconfig.json +0 -3
package/ios/RNNetmera.m
DELETED
|
@@ -1,507 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// RNNetmera.m
|
|
3
|
-
//
|
|
4
|
-
// Created by Initial Code
|
|
5
|
-
// Copyright © 2019 Netmera. All rights reserved.
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
#import "RNNetmera.h"
|
|
9
|
-
#import "RNNetmeraEvent.h"
|
|
10
|
-
#import "RNNetmeraUser.h"
|
|
11
|
-
#import "RNNetmeraUtils.h"
|
|
12
|
-
#import "RNNetmeraCategoryObject.h"
|
|
13
|
-
#import <Netmera/Netmera.h>
|
|
14
|
-
#import <RNNetmera/RNNetmeraRCTEventEmitter.h>
|
|
15
|
-
|
|
16
|
-
NSString *const ERROR_CODE_INBOX = @"2016";
|
|
17
|
-
NSString *const ERROR_MESSAGE_INBOX = @"There was a problem fetching inbox";
|
|
18
|
-
NSString *const ERROR_CODE_NOT_NEXT_PAGE = @"2018";
|
|
19
|
-
NSString *const ERROR_MESSAGE_NOT_NEXT_PAGE = @"Not next page";
|
|
20
|
-
NSString *const ERROR_CODE_UPDATE_STATUS = @"2019";
|
|
21
|
-
NSString *const ERROR_MESSAGE_UPDATE_STATUS = @"There was a problem updating status";
|
|
22
|
-
NSString *const ERROR_CODE_NULL_CATEGORY = @"2020";
|
|
23
|
-
NSString *const ERROR_MESSAGE_NULL_CATEGORY = @"Must call fetchCategory method first";
|
|
24
|
-
NSString *const ERROR_CODE_INVALID_PUSH_OBJECT = @"2021";
|
|
25
|
-
NSString *const ERROR_MESSAGE_INVALID_PUSH_OBJECT = @"Received NetmeraPushObject was not valid.";
|
|
26
|
-
NSString *const ERROR_CODE_NULL_INBOX_STATUS = @"2022";
|
|
27
|
-
NSString *const ERROR_MESSAGE_NULL_INBOX_STATUS = @"Inbox status can't be null.";
|
|
28
|
-
NSString *const ERROR_CODE_INBOX_STATUS = @"2023";
|
|
29
|
-
NSString *const ERROR_MESSAGE_INBOX_STATUS = @"Error occurred while fetching inbox count for status";
|
|
30
|
-
NSString *const ERROR_CODE_GET_CATEGORY_PREFERENCE = @"2024";
|
|
31
|
-
NSString *const ERROR_MESSAGE_GET_CATEGORY_PREFERENCE = @"Error occurred while fetching user category preference list.";
|
|
32
|
-
NSString *const ERROR_CODE_SET_CATEGORY_PREFERENCE = @"2025";
|
|
33
|
-
NSString *const ERROR_MESSAGE_SET_CATEGORY_PREFERENCE = @"Error occurred while setting user category preference list.";
|
|
34
|
-
NSString *const ERROR_CODE_COUPON_FETCH = @"2026";
|
|
35
|
-
NSString *const ERROR_MESSAGE_COUPON_FETCH = @"Error occurred while fetching coupons.";
|
|
36
|
-
NSString *const ERROR_CODE_UPDATE_USER = @"2027";
|
|
37
|
-
NSString *const ERROR_MESSAGE_UPDATE_USER = @"Error occurred while updating user. Reason: ";
|
|
38
|
-
|
|
39
|
-
@implementation RNNetmera
|
|
40
|
-
|
|
41
|
-
- (instancetype)init {
|
|
42
|
-
return self;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
+ (void)initNetmera:(NSString *)apiKey {
|
|
46
|
-
[Netmera start];
|
|
47
|
-
[Netmera setAPIKey:apiKey];
|
|
48
|
-
[self setNetmeraHeaders];
|
|
49
|
-
[Netmera setDeeplinkCallback:^(NSURL * _Nullable url, NetmeraPushObject * _Nullable pushObject) {
|
|
50
|
-
if (url != nil) {
|
|
51
|
-
[RNNetmeraRCTEventEmitter onDeeplinkTriggered:url];
|
|
52
|
-
}
|
|
53
|
-
}];
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
+ (void)setNetmeraHeaders {
|
|
57
|
-
[Netmera setFramework:@"react"];
|
|
58
|
-
[Netmera setFrameworkVersion:@"1.11.3"];
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
+ (void)setPushDelegate:(NSObject<NetmeraPushDelegate> *)delegate {
|
|
62
|
-
[Netmera setPushDelegate:delegate];
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
+ (void)requestPushNotificationAuthorization {
|
|
66
|
-
[Netmera requestPushNotificationAuthorizationForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound];
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
+ (BOOL)requiresMainQueueSetup {
|
|
70
|
-
return NO;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
+ (void)logging: (BOOL) enabled {
|
|
74
|
-
if(enabled){
|
|
75
|
-
[Netmera setLogLevel:(NetmeraLogLevelDebug)];
|
|
76
|
-
}else{
|
|
77
|
-
[Netmera setLogLevel:(NetmeraLogLevelNone)];
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
- (dispatch_queue_t)methodQueue {
|
|
82
|
-
return dispatch_get_main_queue();
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
RCT_EXPORT_MODULE()
|
|
86
|
-
|
|
87
|
-
RCT_EXPORT_METHOD(currentExternalId:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
88
|
-
resolve([Netmera getCurrentExternalId]);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
RCT_EXPORT_METHOD(logging:(BOOL *)enabled) {
|
|
92
|
-
[RNNetmera logging:enabled];
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
RCT_EXPORT_METHOD(setBaseUrl:(NSString *)baseUrl) {
|
|
96
|
-
[Netmera setBaseURL:baseUrl];
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
RCT_EXPORT_METHOD(requestPushNotificationAuthorization) {
|
|
100
|
-
[Netmera requestPushNotificationAuthorizationForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound];
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
RCT_EXPORT_METHOD(areNotificationsEnabled:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
104
|
-
resolve(@([Netmera isEnabledReceivingPushNotifications]));
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
RCT_EXPORT_METHOD(checkNotificationPermission:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
108
|
-
resolve([@([Netmera checkNotificationPermission]) stringValue]);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
RCT_EXPORT_METHOD(requestPermissionsForLocation) {
|
|
112
|
-
[Netmera requestLocationAuthorization];
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
RCT_EXPORT_METHOD(setNetmeraMaxActiveRegions :(NSInteger)maxActiveRegions) {
|
|
116
|
-
[Netmera setNetmeraMaxActiveRegions:maxActiveRegions];
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
RCT_EXPORT_METHOD(enablePopupPresentation) {
|
|
120
|
-
[Netmera setEnabledPopupPresentation:true];
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
RCT_EXPORT_METHOD(disablePopupPresentation) {
|
|
124
|
-
[Netmera setEnabledPopupPresentation:false];
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
RCT_EXPORT_METHOD(isPushEnabled:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
128
|
-
resolve(@([Netmera isEnabledReceivingPushNotifications]));
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
RCT_EXPORT_METHOD(enablePush) {
|
|
132
|
-
[Netmera setEnabledReceivingPushNotifications:true];
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
RCT_EXPORT_METHOD(disablePush) {
|
|
136
|
-
[Netmera setEnabledReceivingPushNotifications:false];
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
RCT_EXPORT_METHOD(startDataTransfer) {
|
|
140
|
-
[Netmera startDataTransfer];
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
RCT_EXPORT_METHOD(stopDataTransfer) {
|
|
144
|
-
[Netmera stopDataTransfer];
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
RCT_EXPORT_METHOD(kill) {
|
|
148
|
-
[Netmera kill];
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
RCT_EXPORT_METHOD(fetchCoupons:(int)page
|
|
152
|
-
max: (int)max
|
|
153
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
154
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
155
|
-
NetmeraCouponFilter *filter = [[NetmeraCouponFilter alloc] init];
|
|
156
|
-
|
|
157
|
-
filter.page = page;
|
|
158
|
-
filter.max = max;
|
|
159
|
-
|
|
160
|
-
[Netmera fetchCouponUsingFilter:filter completion:^(NSArray<NetmeraCouponObject *> *coupons, NSError *error) {
|
|
161
|
-
if (error) {
|
|
162
|
-
reject(ERROR_CODE_COUPON_FETCH, ERROR_MESSAGE_COUPON_FETCH, nil);
|
|
163
|
-
} else {
|
|
164
|
-
NSMutableArray *array = [[NSMutableArray alloc]init];
|
|
165
|
-
for(NetmeraCouponObject *object in coupons){
|
|
166
|
-
[array addObject:[[RNNetmeraUtils shared] dictionaryFromCouponObject:object]];
|
|
167
|
-
}
|
|
168
|
-
resolve(array);
|
|
169
|
-
}
|
|
170
|
-
}];
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
RCT_EXPORT_METHOD(fetchInbox:(NSDictionary *)inboxDictionary
|
|
174
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
175
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
176
|
-
NetmeraInboxFilter *filter = [[NetmeraInboxFilter alloc] init];
|
|
177
|
-
|
|
178
|
-
if(inboxDictionary[@"status"]){
|
|
179
|
-
NetmeraInboxStatus netmeraInboxStatus =[inboxDictionary[@"status"] integerValue];
|
|
180
|
-
filter.status = netmeraInboxStatus;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
if(inboxDictionary[@"pageSize"]){
|
|
184
|
-
filter.pageSize = [inboxDictionary[@"pageSize"] integerValue];
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
if(inboxDictionary[@"includeExpiredObjects"]){
|
|
188
|
-
filter.shouldIncludeExpiredObjects = [inboxDictionary[@"includeExpiredObjects"] boolValue];
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
if(inboxDictionary[@"categories"]){
|
|
192
|
-
filter.categories = inboxDictionary[@"categories"];
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
[Netmera fetchInboxUsingFilter:filter
|
|
196
|
-
completion:^(NetmeraInbox *inbox, NSError *error) {
|
|
197
|
-
if(error) {
|
|
198
|
-
reject(ERROR_CODE_INBOX, ERROR_MESSAGE_INBOX, nil);
|
|
199
|
-
}else{
|
|
200
|
-
self.netmeraInbox = inbox;
|
|
201
|
-
NSMutableArray *array = [[NSMutableArray alloc]init];
|
|
202
|
-
for(NetmeraPushObject *object in self.netmeraInbox.objects){
|
|
203
|
-
[array addObject:[[RNNetmeraUtils shared] dictionaryFromPushObject:object]];
|
|
204
|
-
}
|
|
205
|
-
resolve(array);
|
|
206
|
-
}
|
|
207
|
-
}];
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
RCT_REMAP_METHOD(fetchNextPage, resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
211
|
-
[self.netmeraInbox fetchNextPageWithCompletionBlock:^(NSError *error) {
|
|
212
|
-
if(error) {
|
|
213
|
-
reject(ERROR_CODE_NOT_NEXT_PAGE, ERROR_MESSAGE_NOT_NEXT_PAGE, nil);
|
|
214
|
-
}else{
|
|
215
|
-
NSMutableArray *array = [[NSMutableArray alloc]init];
|
|
216
|
-
for(NetmeraPushObject *object in self.netmeraInbox.objects){
|
|
217
|
-
[array addObject:[[RNNetmeraUtils shared] dictionaryFromPushObject:object]];
|
|
218
|
-
}
|
|
219
|
-
resolve(array);
|
|
220
|
-
}
|
|
221
|
-
}];
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
RCT_EXPORT_METHOD(countForStatus:(NSInteger *)status
|
|
225
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
226
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
227
|
-
NetmeraInboxStatus netmeraInboxStatus = status;
|
|
228
|
-
NSInteger numOfReadOrUnread = [self.netmeraInbox countForStatus:netmeraInboxStatus];
|
|
229
|
-
resolve([@(numOfReadOrUnread) stringValue]);
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
RCT_EXPORT_METHOD(inboxUpdateStatus:(NSInteger)fromIndex
|
|
233
|
-
toIndex:(NSInteger)toIndex
|
|
234
|
-
status:(NSInteger)status
|
|
235
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
236
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
237
|
-
@try {
|
|
238
|
-
NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(fromIndex, toIndex-fromIndex)];
|
|
239
|
-
NetmeraInboxStatus netmeraInboxStatus = status;
|
|
240
|
-
NSArray *pushObjects = [self.netmeraInbox.objects objectsAtIndexes:set];
|
|
241
|
-
[self.netmeraInbox updateStatus:netmeraInboxStatus
|
|
242
|
-
forPushObjects:pushObjects
|
|
243
|
-
completion:^(NSError *error) {
|
|
244
|
-
if(error) {
|
|
245
|
-
reject(ERROR_CODE_UPDATE_STATUS, ERROR_MESSAGE_UPDATE_STATUS, nil);
|
|
246
|
-
}else{
|
|
247
|
-
resolve(nil);
|
|
248
|
-
}
|
|
249
|
-
}];
|
|
250
|
-
|
|
251
|
-
} @catch (NSException *exception) {
|
|
252
|
-
reject(ERROR_CODE_UPDATE_STATUS, ERROR_MESSAGE_UPDATE_STATUS, nil);
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
RCT_EXPORT_METHOD(fetchCategory:(NSDictionary *)inboxDictionary
|
|
257
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
258
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
259
|
-
NetmeraInboxCategoryFilter *filter = [RNNetmeraCategoryObject getCategoryObject: inboxDictionary];
|
|
260
|
-
|
|
261
|
-
[Netmera fetchInboxCategoryUsingFilter:filter completion:^(NetmeraInboxCategory *inbox, NSError *error) {
|
|
262
|
-
[self setCategory:inbox error:error resolver:resolve rejecter:reject];
|
|
263
|
-
}];
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
RCT_EXPORT_METHOD(fetchNextCategoryPage: (RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
267
|
-
if (self.netmeraInboxCategory == nil) {
|
|
268
|
-
reject(ERROR_CODE_NULL_CATEGORY, ERROR_MESSAGE_NULL_CATEGORY, nil);
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
[self.netmeraInboxCategory fetchNextPageWithCompletionBlock:^(NSError * _Nonnull error) {
|
|
272
|
-
[self setCategory:self.netmeraInboxCategory error:error resolver:resolve rejecter:reject];
|
|
273
|
-
}];
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
RCT_EXPORT_METHOD(sendEvent:(NSDictionary *)eventDictionary) {
|
|
277
|
-
NSMutableDictionary *mutableEventDictionary = [eventDictionary mutableCopy];
|
|
278
|
-
RNNetmeraEvent *event = [RNNetmeraEvent event];
|
|
279
|
-
event.netmeraEventKey = mutableEventDictionary[@"code"];
|
|
280
|
-
[mutableEventDictionary removeObjectForKey:@"code"];
|
|
281
|
-
|
|
282
|
-
if (mutableEventDictionary[@"revenue"] != nil) {
|
|
283
|
-
event.revenue = [mutableEventDictionary[@"revenue"] doubleValue];
|
|
284
|
-
[mutableEventDictionary removeObjectForKey:@"revenue"];
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
event.eventParameters = mutableEventDictionary;
|
|
288
|
-
[Netmera sendEvent:event];
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
RCT_EXPORT_METHOD(updateUser:(NSDictionary *)userDictionary
|
|
292
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
293
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
294
|
-
NSMutableDictionary *userMutableDictionary = [userDictionary mutableCopy];
|
|
295
|
-
NSArray *keysForNullValues = [userMutableDictionary allKeysForObject:[NSNull null]];
|
|
296
|
-
[userMutableDictionary removeObjectsForKeys:keysForNullValues];
|
|
297
|
-
|
|
298
|
-
RNNetmeraUser *user = [[RNNetmeraUser alloc] init];
|
|
299
|
-
user.userId=[userMutableDictionary objectForKey:@"userId"];
|
|
300
|
-
user.MSISDN=[userMutableDictionary objectForKey:@"msisdn"];
|
|
301
|
-
user.email=[userMutableDictionary objectForKey:@"email"];
|
|
302
|
-
[userMutableDictionary removeObjectForKey:@"userId"];
|
|
303
|
-
[userMutableDictionary removeObjectForKey:@"email"];
|
|
304
|
-
[userMutableDictionary removeObjectForKey:@"msisdn"];
|
|
305
|
-
|
|
306
|
-
user.userParameters = userMutableDictionary;
|
|
307
|
-
[Netmera updateUser:user completion:^(BOOL isSuccess, NSError * _Nullable error) {
|
|
308
|
-
if (error != nil) {
|
|
309
|
-
NSString* errorMessage;
|
|
310
|
-
if (error.userInfo[@"com.netmera.response.object"]) {
|
|
311
|
-
NSDictionary *errorData = error.userInfo[@"com.netmera.response.object"];
|
|
312
|
-
errorMessage = errorData[@"error"];
|
|
313
|
-
} else {
|
|
314
|
-
errorMessage = nil;
|
|
315
|
-
}
|
|
316
|
-
reject(ERROR_CODE_UPDATE_USER, [NSString stringWithFormat:@"%@%@", ERROR_MESSAGE_UPDATE_USER, errorMessage], nil);
|
|
317
|
-
} else {
|
|
318
|
-
resolve(nil);
|
|
319
|
-
}
|
|
320
|
-
}];
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
RCT_EXPORT_METHOD(updateUserAsync:(NSDictionary *)userDictionary) {
|
|
324
|
-
NSMutableDictionary *userMutableDictionary = [userDictionary mutableCopy];
|
|
325
|
-
NSArray *keysForNullValues = [userMutableDictionary allKeysForObject:[NSNull null]];
|
|
326
|
-
[userMutableDictionary removeObjectsForKeys:keysForNullValues];
|
|
327
|
-
|
|
328
|
-
RNNetmeraUser *user = [[RNNetmeraUser alloc] init];
|
|
329
|
-
user.userId=[userMutableDictionary objectForKey:@"userId"];
|
|
330
|
-
user.MSISDN=[userMutableDictionary objectForKey:@"msisdn"];
|
|
331
|
-
user.email=[userMutableDictionary objectForKey:@"email"];
|
|
332
|
-
[userMutableDictionary removeObjectForKey:@"userId"];
|
|
333
|
-
[userMutableDictionary removeObjectForKey:@"email"];
|
|
334
|
-
[userMutableDictionary removeObjectForKey:@"msisdn"];
|
|
335
|
-
|
|
336
|
-
user.userParameters = userMutableDictionary;
|
|
337
|
-
[Netmera updateUser:user];
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
RCT_EXPORT_METHOD(setApiKey:(NSString *)apiKey) {
|
|
341
|
-
[Netmera setAPIKey:apiKey];
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
RCT_EXPORT_METHOD(handlePushObject:(NSString *)pushId) {
|
|
345
|
-
if (self.netmeraInbox == nil) {
|
|
346
|
-
return;
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
for (int i = 0; i < [self.netmeraInbox.objects count]; i++) {
|
|
350
|
-
if ([pushId isEqualToString: self.netmeraInbox.objects[i].pushId]) {
|
|
351
|
-
[Netmera handlePushObject: self.netmeraInbox.objects[i]];
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
RCT_EXPORT_METHOD(handleInteractiveAction:(NSString *)interactiveActionId) {
|
|
357
|
-
if (self.netmeraInbox == nil) {
|
|
358
|
-
return;
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
for (int i = 0; i < [self.netmeraInbox.objects count]; i++) {
|
|
362
|
-
if (self.netmeraInbox.objects[i].interactiveActions != nil) {
|
|
363
|
-
for (int j = 0; j < [self.netmeraInbox.objects[i].interactiveActions count]; j++) {
|
|
364
|
-
NetmeraUserNotificationAction *action = self.netmeraInbox.objects[i].interactiveActions[j];
|
|
365
|
-
if (action != nil && [interactiveActionId isEqualToString: action.interactiveAction.identifier]) {
|
|
366
|
-
[Netmera handleInteractiveAction:action forPushObject:nil];
|
|
367
|
-
return;
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
RCT_EXPORT_METHOD(handleLastMessage: (NSString*) categoryName resolver: (RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
375
|
-
if (self.netmeraInboxCategory == nil) {
|
|
376
|
-
reject(ERROR_CODE_NULL_CATEGORY, ERROR_MESSAGE_NULL_CATEGORY, nil);
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
if (categoryName == nil || [categoryName isEqualToString:@""]) {
|
|
380
|
-
reject(ERROR_CODE_INVALID_PUSH_OBJECT, ERROR_MESSAGE_INVALID_PUSH_OBJECT, nil);
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
for(NetmeraInboxCategoryObject *category in self.netmeraInboxCategory.objects){
|
|
385
|
-
if([categoryName isEqualToString: category.categoryName]){
|
|
386
|
-
[Netmera handlePushObject:category.lastMessage];
|
|
387
|
-
break;
|
|
388
|
-
}
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
RCT_EXPORT_METHOD(updateStatusByCategories:(NSInteger)fromIndex
|
|
393
|
-
toIndex:(NSInteger)toIndex
|
|
394
|
-
status:(NSInteger)status
|
|
395
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
396
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
397
|
-
@try {
|
|
398
|
-
NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(fromIndex, toIndex - fromIndex)];
|
|
399
|
-
NSArray *categories = [self.netmeraInboxCategory objects];
|
|
400
|
-
|
|
401
|
-
NSMutableArray *categoryList = [NSMutableArray array];
|
|
402
|
-
for (int i = 0; i < [categories objectsAtIndexes:set].count; i++) {
|
|
403
|
-
[categoryList addObject:[[categories objectAtIndex:i] categoryName]];
|
|
404
|
-
}
|
|
405
|
-
NSArray *categoryNames = [NSArray arrayWithArray:categoryList];
|
|
406
|
-
|
|
407
|
-
NetmeraInboxStatus netmeraInboxStatus = status;
|
|
408
|
-
|
|
409
|
-
[Netmera updateStatus:netmeraInboxStatus
|
|
410
|
-
byCategories:categoryNames
|
|
411
|
-
completion:^(NSError *error) {
|
|
412
|
-
if(error) {
|
|
413
|
-
reject(ERROR_CODE_UPDATE_STATUS, ERROR_MESSAGE_UPDATE_STATUS, nil);
|
|
414
|
-
}else{
|
|
415
|
-
resolve(nil);
|
|
416
|
-
}
|
|
417
|
-
}];
|
|
418
|
-
|
|
419
|
-
} @catch (NSException *exception) {
|
|
420
|
-
reject(ERROR_CODE_UPDATE_STATUS, ERROR_MESSAGE_UPDATE_STATUS, nil);
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
RCT_EXPORT_METHOD(updateAll:(NSInteger)inboxStatus
|
|
425
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
426
|
-
rejecter:(RCTPromiseRejectBlock)reject) {
|
|
427
|
-
[Netmera updateStatus:inboxStatus forAllWithCompletion: ^(NSError *error) {
|
|
428
|
-
if (error != nil) {
|
|
429
|
-
reject(ERROR_CODE_UPDATE_STATUS, ERROR_MESSAGE_UPDATE_STATUS, nil);
|
|
430
|
-
} else {
|
|
431
|
-
resolve(@(YES));
|
|
432
|
-
}
|
|
433
|
-
}];
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
- (void) setCategory: (NetmeraInboxCategory*)category
|
|
437
|
-
error: (NSError*)error
|
|
438
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
439
|
-
rejecter: (RCTPromiseRejectBlock)reject {
|
|
440
|
-
if(error) {
|
|
441
|
-
reject(ERROR_CODE_NULL_CATEGORY, ERROR_MESSAGE_NULL_CATEGORY, nil);
|
|
442
|
-
} else {
|
|
443
|
-
self.netmeraInboxCategory = category;
|
|
444
|
-
resolve([RNNetmeraCategoryObject mapCategoryObjects: self.netmeraInboxCategory.objects]);
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
|
|
448
|
-
RCT_EXPORT_METHOD(getInitialURL:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
449
|
-
NSURL *url = [RNNetmeraRCTEventEmitter getInitialUrl];
|
|
450
|
-
resolve(url.absoluteString);
|
|
451
|
-
}
|
|
452
|
-
|
|
453
|
-
RCT_EXPORT_METHOD(getInboxCountForStatus:(NSDictionary *) filterDictionary
|
|
454
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
455
|
-
rejecter: (RCTPromiseRejectBlock)reject) {
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
NetmeraInboxCountFilter *filter = [[NetmeraInboxCountFilter alloc] init];
|
|
459
|
-
|
|
460
|
-
if (filterDictionary[@"status"]) {
|
|
461
|
-
filter.status = [[RNNetmeraUtils shared] getInboxStatus:[filterDictionary[@"status"] integerValue]];
|
|
462
|
-
} else {
|
|
463
|
-
reject(ERROR_CODE_NULL_INBOX_STATUS, ERROR_MESSAGE_NULL_INBOX_STATUS, nil);
|
|
464
|
-
}
|
|
465
|
-
|
|
466
|
-
if (filterDictionary[@"includeExpiredObjects"]) {
|
|
467
|
-
filter.shouldIncludeExpiredObjects = filterDictionary[@"includeExpiredObjects"];
|
|
468
|
-
}
|
|
469
|
-
if (filterDictionary[@"categoryList"]) {
|
|
470
|
-
filter.categories = filterDictionary[@"categoryList"];
|
|
471
|
-
}
|
|
472
|
-
|
|
473
|
-
[Netmera fetchInboxCountWithFilter: filter completion:^(NetmeraInboxCountResponse * _Nullable response, NSError * _Nullable error) {
|
|
474
|
-
if (error != nil) {
|
|
475
|
-
reject(ERROR_CODE_INBOX_STATUS, ERROR_MESSAGE_INBOX_STATUS, nil);
|
|
476
|
-
} else {
|
|
477
|
-
resolve([[RNNetmeraUtils shared] parseInboxCountForStatusToMap: response]);
|
|
478
|
-
}
|
|
479
|
-
}];
|
|
480
|
-
}
|
|
481
|
-
|
|
482
|
-
RCT_EXPORT_METHOD(getUserCategoryPreferenceList: (RCTPromiseResolveBlock)resolve
|
|
483
|
-
rejecter: (RCTPromiseRejectBlock)reject) {
|
|
484
|
-
|
|
485
|
-
[Netmera getUserCategoryPreferenceListWithCompletion:^(NSArray<NetmeraUserCategoryPreference *> * _Nullable categories, NSError * _Nullable error) {
|
|
486
|
-
if (error != nil) {
|
|
487
|
-
reject(ERROR_CODE_GET_CATEGORY_PREFERENCE, ERROR_MESSAGE_GET_CATEGORY_PREFERENCE, nil);
|
|
488
|
-
} else {
|
|
489
|
-
resolve([[RNNetmeraUtils shared] parseUserCategoryPreferenceListToMap: categories]);
|
|
490
|
-
}
|
|
491
|
-
}];
|
|
492
|
-
}
|
|
493
|
-
|
|
494
|
-
RCT_EXPORT_METHOD(setUserCategoryPreference: (int) categoryId
|
|
495
|
-
categoryEnabled: (BOOL) categoryEnabled
|
|
496
|
-
resolver: (RCTPromiseResolveBlock)resolve
|
|
497
|
-
rejecter: (RCTPromiseRejectBlock)reject) {
|
|
498
|
-
[Netmera setUserCategoryPreferenceWithCategoryId:categoryId categoryEnabled:categoryEnabled completion:^(NSError * _Nullable error) {
|
|
499
|
-
if (error != nil) {
|
|
500
|
-
reject(ERROR_CODE_SET_CATEGORY_PREFERENCE, ERROR_MESSAGE_SET_CATEGORY_PREFERENCE, nil);
|
|
501
|
-
} else {
|
|
502
|
-
resolve(@(YES));
|
|
503
|
-
}
|
|
504
|
-
}];
|
|
505
|
-
}
|
|
506
|
-
|
|
507
|
-
@end
|