@dashx/react-native 0.1.25 → 1.0.3

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 (51) hide show
  1. package/android/build.gradle +22 -149
  2. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  3. package/android/gradle/wrapper/gradle-wrapper.properties +1 -2
  4. package/android/gradlew +34 -21
  5. package/android/gradlew.bat +24 -19
  6. package/android/src/main/AndroidManifest.xml +2 -8
  7. package/android/src/main/java/com/dashx/rn/sdk/DashXReactNativeModule.kt +248 -0
  8. package/android/src/main/java/com/dashx/rn/sdk/{DashXPackage.kt → DashXReactNativePackage.kt} +2 -1
  9. package/android/src/main/java/com/dashx/rn/sdk/util/ArrayUtil.java +131 -0
  10. package/android/src/main/java/com/dashx/rn/sdk/util/MapUtil.java +142 -0
  11. package/android/src/main/java/com/dashx/rn/sdk/{Utils.kt → util/Utils.kt} +5 -5
  12. package/index.js +68 -72
  13. package/ios/DashX.swift +110 -95
  14. package/ios/DashXReactNative-Bridging-Header.h +4 -0
  15. package/ios/DashXReactNative.m +25 -0
  16. package/ios/DashXReactNative.xcodeproj/project.pbxproj +280 -0
  17. package/ios/{DashX.xcworkspace → DashXReactNative.xcworkspace}/contents.xcworkspacedata +1 -1
  18. package/ios/{DashX.xcworkspace → DashXReactNative.xcworkspace}/xcshareddata/IDEWorkspaceChecks.plist +0 -0
  19. package/package.json +6 -12
  20. package/DashX.podspec +0 -27
  21. package/android/README.md +0 -23
  22. package/android/src/main/java/com/dashx/rn/sdk/DashXActivityLifecycleCallbacks.kt +0 -93
  23. package/android/src/main/java/com/dashx/rn/sdk/DashXClientInterceptor.kt +0 -66
  24. package/android/src/main/java/com/dashx/rn/sdk/DashXExceptionHandler.kt +0 -28
  25. package/android/src/main/java/com/dashx/rn/sdk/DashXMessagingService.kt +0 -176
  26. package/android/src/main/java/com/dashx/rn/sdk/DashXModule.kt +0 -193
  27. package/android/src/main/java/com/dashx/rn/sdk/NotificationReceiver.kt +0 -17
  28. package/ios/API.swift +0 -2420
  29. package/ios/Constants.swift +0 -14
  30. package/ios/DashX.m +0 -17
  31. package/ios/DashX.xcodeproj/project.pbxproj +0 -356
  32. package/ios/DashX.xcodeproj/xcshareddata/xcschemes/DashX.xcscheme +0 -67
  33. package/ios/DashXAppDelegate.swift +0 -73
  34. package/ios/DashXApplicationLifecycleCallbacks.swift +0 -65
  35. package/ios/DashXClient.swift +0 -319
  36. package/ios/DashXData.swift +0 -19
  37. package/ios/DashXLog.swift +0 -44
  38. package/ios/DashXUIViewController.swift +0 -15
  39. package/ios/Network.swift +0 -74
  40. package/ios/README.md +0 -80
  41. package/ios/Utils.swift +0 -13
  42. package/ios/graphql/AddContent.graphql +0 -8
  43. package/ios/graphql/AddItemToCart.graphql +0 -33
  44. package/ios/graphql/EditContent.graphql +0 -8
  45. package/ios/graphql/FetchCart.graphql +0 -33
  46. package/ios/graphql/FetchContent.graphql +0 -3
  47. package/ios/graphql/IdentifyAccount.graphql +0 -5
  48. package/ios/graphql/SearchContent.graphql +0 -3
  49. package/ios/graphql/SubscribeContact.graphql +0 -6
  50. package/ios/graphql/TrackEvent.graphql +0 -5
  51. package/ios/schema.json +0 -37038
package/ios/DashX.swift CHANGED
@@ -1,84 +1,45 @@
1
1
  import Foundation
2
- import FirebaseMessaging
2
+ import DashX
3
3
 
4
- @objc(DashX)
5
- class DashX: RCTEventEmitter {
6
- private var dashXClient = DashXClient.instance
4
+ typealias CBU = CallbackUtils
5
+
6
+ @objc(DashXReactNative)
7
+ class DashXReactNative: RCTEventEmitter {
8
+ private var dashXClient = DashX
7
9
 
8
10
  override init() {
9
11
  super.init()
10
12
  DashXEventEmitter.instance.registerEventEmitter(eventEmitter: self)
11
13
  }
12
14
 
13
- @objc
14
- func setLogLevel(_ logLevel: Int) {
15
- DashXLog.setLogLevel(to: logLevel)
16
- }
17
-
18
15
  override func supportedEvents() -> [String] {
19
16
  return ["messageReceived"]
20
17
  }
21
18
 
22
19
  @objc
23
- func setup(_ options: NSDictionary?) {
24
- ConfigInterceptor.shared.publicKey = options?.value(forKey: "publicKey") as? String
25
-
26
- DashXAppDelegate.swizzleDidReceiveRemoteNotificationFetchCompletionHandler()
27
-
28
- if let baseUri = options?.value(forKey: "baseUri") {
29
- Network.shared.setBaseUri(to: baseUri as! String)
30
- }
31
-
32
- if let targetInstallation = options?.value(forKey: "targetInstallation") {
33
- dashXClient.setTargetInstallation(to: targetInstallation as! String)
34
- }
35
-
36
- if let targetEnvironment = options?.value(forKey: "targetEnvironment") {
37
- dashXClient.setTargetEnvironment(to: targetEnvironment as! String)
38
- }
39
-
40
- if let trackAppLifecycleEvents = options?.value(forKey: "trackAppLifecycleEvents"), trackAppLifecycleEvents as! Bool {
41
- DashXApplicationLifecycleCallbacks.instance.enable()
42
- }
43
-
44
- if let trackScreenViews = options?.value(forKey: "trackScreenViews"), trackScreenViews as! Bool {
45
- UIViewController.swizzle()
46
- }
47
-
48
- // Based on https://firebase.google.com/docs/cloud-messaging/ios/client#access_the_registration_token
49
- Messaging.messaging().token { token, error in
50
- if let error = error {
51
- DashXLog.d(tag: #function, "Error fetching FCM registration token: \(error)")
52
- } else if let token = token {
53
- DashXLog.d(tag: #function, "Firebase initialised with: \(token)")
54
- self.dashXClient.setDeviceToken(to: token)
55
- }
56
- }
20
+ func configure(_ options: NSDictionary) {
21
+ let publicKey = options["publicKey"] as! String,
22
+ baseURI = options["baseURI"] as? String,
23
+ targetEnvironment = options["targetEnvironment"] as? String
24
+
25
+ dashXClient.configure(withPublicKey: publicKey,
26
+ baseURI: baseURI,
27
+ targetEnvironment: targetEnvironment)
57
28
  }
58
29
 
59
- @objc(getConnectionConfig:rejecter:)
60
- func getConnectionConfig(_ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
61
- return resolve([
62
- "baseUri": Network.shared.getBaseUri(),
63
- "publicKey": ConfigInterceptor.shared.publicKey,
64
- "targetEnvironment": ConfigInterceptor.shared.targetEnvironment,
65
- "identityToken": ConfigInterceptor.shared.identityToken,
66
- ])
30
+ @objc(identify:)
31
+ func identify(_ options: NSDictionary) {
32
+ try? dashXClient.identify(withOptions: options)
67
33
  }
68
34
 
69
- @objc(identify:options:)
70
- func identify(_ uid: String?, _ options: NSDictionary?) {
71
- try? dashXClient.identify(uid, withOptions: options)
72
- }
73
-
74
- @objc
75
- func setIdentityToken(_ identityToken: String) {
76
- dashXClient.setIdentityToken(to: identityToken)
35
+ @objc(setIdentity:token:)
36
+ func setIdentity(_ uid: String, _ token: String) {
37
+ dashXClient.setIdentity(uid: uid, token: token)
77
38
  }
78
39
 
79
40
  @objc
80
41
  func reset() {
81
- dashXClient.reset()
42
+ dashXClient.reset()
82
43
  }
83
44
 
84
45
  @objc(track:data:)
@@ -88,7 +49,7 @@ class DashX: RCTEventEmitter {
88
49
 
89
50
  @objc(screen:data:)
90
51
  func screen(_ screenName: String, _ data: NSDictionary?) {
91
- dashXClient.screen(screenName, withData: data)
52
+ dashXClient.screen(screenName, withData: data)
92
53
  }
93
54
 
94
55
  @objc(searchContent:options:resolver:rejecter:)
@@ -96,18 +57,18 @@ class DashX: RCTEventEmitter {
96
57
  let optionsDictionary = options as? [String: Any]
97
58
 
98
59
  dashXClient.searchContent(
99
- contentType,
100
- optionsDictionary?["returnType"] as! String? ?? "all",
101
- optionsDictionary?["filter"] as! NSDictionary?,
102
- optionsDictionary?["order"] as! NSDictionary?,
103
- optionsDictionary?["limit"] as! Int?,
104
- optionsDictionary?["preview"] as! Bool?,
105
- optionsDictionary?["language"] as! String?,
106
- optionsDictionary?["fields"] as! [String]?,
107
- optionsDictionary?["include"] as! [String]?,
108
- optionsDictionary?["exclude"] as! [String]?,
109
- resolve,
110
- reject
60
+ contentType: contentType,
61
+ returnType: optionsDictionary?["returnType"] as! String? ?? "all",
62
+ filter: optionsDictionary?["filter"] as! NSDictionary?,
63
+ order: optionsDictionary?["order"] as! NSDictionary?,
64
+ limit: optionsDictionary?["limit"] as! Int?,
65
+ preview: optionsDictionary?["preview"] as! Bool?,
66
+ language: optionsDictionary?["language"] as! String?,
67
+ fields: optionsDictionary?["fields"] as! [String]?,
68
+ include: optionsDictionary?["include"] as! [String]?,
69
+ exclude: optionsDictionary?["exclude"] as! [String]?,
70
+ successCallback: CBU.resolveToSuccessCallback(resolve),
71
+ failureCallback: CBU.rejectToFailureCallback(reject)
111
72
  )
112
73
  }
113
74
 
@@ -117,43 +78,97 @@ class DashX: RCTEventEmitter {
117
78
  let urnArray = urn.split{$0 == "/"}.map(String.init)
118
79
 
119
80
  dashXClient.fetchContent(
120
- urnArray[0],
121
- urnArray[1],
122
- optionsDictionary?["preview"] as! Bool?,
123
- optionsDictionary?["language"] as! String?,
124
- optionsDictionary?["fields"] as! [String]?,
125
- optionsDictionary?["include"] as! [String]?,
126
- optionsDictionary?["exclude"] as! [String]?,
127
- resolve,
128
- reject
81
+ contentType: urnArray[0],
82
+ content: urnArray[1],
83
+ preview: optionsDictionary?["preview"] as! Bool?,
84
+ language: optionsDictionary?["language"] as! String?,
85
+ fields: optionsDictionary?["fields"] as! [String]?,
86
+ include: optionsDictionary?["include"] as! [String]?,
87
+ exclude: optionsDictionary?["exclude"] as! [String]?,
88
+ successCallback: CBU.resolveToSuccessCallback(resolve),
89
+ failureCallback: CBU.rejectToFailureCallback(reject)
129
90
  )
130
91
  }
131
92
 
132
93
  @objc(addItemToCart:pricingId:quantity:reset:custom:resolver:rejecter:)
133
94
  func addItemToCart(_ itemId: String, _ pricingId: String, _ quantity: String, _ reset: Bool, _ custom: NSDictionary?, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
134
-
135
95
  dashXClient.addItemToCart(
136
- itemId,
137
- pricingId,
138
- quantity,
139
- reset,
140
- custom,
141
- resolve,
142
- reject
96
+ itemId: itemId,
97
+ pricingId: pricingId,
98
+ quantity: quantity,
99
+ reset: reset,
100
+ custom: custom,
101
+ successCallback: CBU.resolveToSuccessCallback(resolve),
102
+ failureCallback: CBU.rejectToFailureCallback(reject)
143
103
  )
144
104
  }
145
105
 
146
106
  @objc(fetchCart:rejecter:)
147
- func fetchCart(resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
148
-
107
+ func fetchCart(_ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
149
108
  dashXClient.fetchCart(
150
- resolve,
151
- reject
109
+ successCallback: CBU.resolveToSuccessCallback(resolve),
110
+ failureCallback: CBU.rejectToFailureCallback(reject)
111
+ )
112
+ }
113
+
114
+ @objc(fetchStoredPreferences:rejecter:)
115
+ func fetchStoredPreferences(_ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
116
+ dashXClient.fetchStoredPreferences(
117
+ successCallback: CBU.resolveToSuccessCallback(resolve),
118
+ failureCallback: CBU.rejectToFailureCallback(reject)
119
+ )
120
+ }
121
+
122
+ @objc(saveStoredPreferences:resolve:rejecter:)
123
+ func saveStoredPreferences(_ preferenceData: NSDictionary, _ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
124
+ dashXClient.saveStoredPreferences(
125
+ preferenceData: preferenceData,
126
+ successCallback: CBU.resolveToSuccessCallback(resolve),
127
+ failureCallback: CBU.rejectToFailureCallback(reject)
152
128
  )
153
129
  }
154
130
 
131
+
132
+ @objc(uploadExternalAsset:externalColumnId:resolver:rejecter:)
133
+ func uploadExternalAsset(_ file: NSDictionary, _ externalColumnId: String, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
134
+ if let fileDictionary = file as? [String: Any], let fileURI = fileDictionary["uri"] as? String {
135
+ // Remove unnecessary file:/// prefix for correct URL resolution
136
+ let normalizedURI = fileURI.replacingOccurrences(of: "file:///", with: "")
137
+
138
+ dashXClient.uploadExternalAsset(
139
+ fileURL: URL(fileURLWithPath: normalizedURI),
140
+ externalColumnId: externalColumnId,
141
+ successCallback: CBU.resolveToSuccessCallback(resolve),
142
+ failureCallback: CBU.rejectToFailureCallback(reject)
143
+ )
144
+ }
145
+ }
146
+
147
+ @objc(externalAsset:resolver:rejecter:)
148
+ func externalAsset(_ assetId: String, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
149
+ dashXClient.externalAsset(
150
+ assetId: assetId,
151
+ successCallback: CBU.resolveToSuccessCallback(resolve),
152
+ failureCallback: CBU.rejectToFailureCallback(reject)
153
+ )
154
+ }
155
+
155
156
  @objc
156
157
  func subscribe() {
157
- dashXClient.subscribe()
158
+ dashXClient.subscribe()
159
+ }
160
+ }
161
+
162
+ class CallbackUtils {
163
+ static func resolveToSuccessCallback(_ resolve: @escaping RCTPromiseResolveBlock) -> SuccessCallback {
164
+ return resolve
165
+ }
166
+
167
+ static func rejectToFailureCallback(_ reject: @escaping RCTPromiseRejectBlock) -> FailureCallback {
168
+ let result: FailureCallback = { (error) in
169
+ reject("\((error as NSError).code)", error.localizedDescription, error)
170
+ }
171
+
172
+ return result
158
173
  }
159
174
  }
@@ -0,0 +1,4 @@
1
+ //
2
+ // Use this file to import your target's public headers that you would like to expose to Swift.
3
+ //
4
+
@@ -0,0 +1,25 @@
1
+ #import <React/RCTBridgeModule.h>
2
+ #import <React/RCTEventEmitter.h>
3
+
4
+ @interface RCT_EXTERN_MODULE(DashXReactNative, RCTEventEmitter)
5
+ + (BOOL)requiresMainQueueSetup
6
+ {
7
+ return NO;
8
+ }
9
+
10
+ RCT_EXTERN_METHOD(configure:(NSDictionary *)options)
11
+ RCT_EXTERN_METHOD(identify:)
12
+ RCT_EXTERN_METHOD(setIdentity:(nonnull NSString *)uid token:(nonnull NSString *)token)
13
+ RCT_EXTERN_METHOD(reset)
14
+ RCT_EXTERN_METHOD(track:(NSString *)event data:(nullable NSDictionary *)data)
15
+ RCT_EXTERN_METHOD(screen:(NSString *)event data:(nullable NSDictionary *)data)
16
+ RCT_EXTERN_METHOD(searchContent:(NSString *)contentType options:(NSDictionary *)options resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
17
+ RCT_EXTERN_METHOD(fetchContent:(NSString *)urn options:(NSDictionary *)options resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
18
+ RCT_EXTERN_METHOD(addItemToCart:(NSString *)itemId pricingId:(NSString *)pricingId quantity:(NSString *)quantity reset:(BOOL)reset custom:(NSDictionary *)custom resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
19
+ RCT_EXTERN_METHOD(fetchCart:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
20
+ RCT_EXTERN_METHOD(fetchStoredPreferences:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
21
+ RCT_EXTERN_METHOD(saveStoredPreferences:(NSDictionary *)preferenceData resolve:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
22
+ RCT_EXTERN_METHOD(uploadExternalAsset:(NSDictionary *)file externalColumnId:(NSString *)externalColumnId resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
23
+ RCT_EXTERN_METHOD(externalAsset:(NSString *)assetId resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
24
+ RCT_EXTERN_METHOD(subscribe)
25
+ @end
@@ -0,0 +1,280 @@
1
+ // !$*UTF8*$!
2
+ {
3
+ archiveVersion = 1;
4
+ classes = {
5
+ };
6
+ objectVersion = 46;
7
+ objects = {
8
+
9
+ /* Begin PBXBuildFile section */
10
+ 7C3CFED5289B9C6E00D184AB /* DashX.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3CFED3289B9C6E00D184AB /* DashX.swift */; };
11
+ 7C3CFED6289B9C6E00D184AB /* DashXEventEmitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3CFED4289B9C6E00D184AB /* DashXEventEmitter.swift */; };
12
+ B3E7B58A1CC2AC0600A0062D /* DashXReactNative.m in Sources */ = {isa = PBXBuildFile; fileRef = B3E7B5891CC2AC0600A0062D /* DashXReactNative.m */; };
13
+ /* End PBXBuildFile section */
14
+
15
+ /* Begin PBXCopyFilesBuildPhase section */
16
+ 58B511D91A9E6C8500147676 /* CopyFiles */ = {
17
+ isa = PBXCopyFilesBuildPhase;
18
+ buildActionMask = 2147483647;
19
+ dstPath = "include/$(PRODUCT_NAME)";
20
+ dstSubfolderSpec = 16;
21
+ files = (
22
+ );
23
+ runOnlyForDeploymentPostprocessing = 0;
24
+ };
25
+ /* End PBXCopyFilesBuildPhase section */
26
+
27
+ /* Begin PBXFileReference section */
28
+ 134814201AA4EA6300B7C361 /* libDashXReactNative.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libDashXReactNative.a; sourceTree = BUILT_PRODUCTS_DIR; };
29
+ 7C3CFED0289B9C6D00D184AB /* DashXReactNative-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "DashXReactNative-Bridging-Header.h"; sourceTree = "<group>"; };
30
+ 7C3CFED2289B9C6E00D184AB /* DashXReactNative.xcworkspace */ = {isa = PBXFileReference; lastKnownFileType = wrapper.workspace; path = DashXReactNative.xcworkspace; sourceTree = "<group>"; };
31
+ 7C3CFED3289B9C6E00D184AB /* DashX.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DashX.swift; sourceTree = "<group>"; };
32
+ 7C3CFED4289B9C6E00D184AB /* DashXEventEmitter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DashXEventEmitter.swift; sourceTree = "<group>"; };
33
+ B3E7B5891CC2AC0600A0062D /* DashXReactNative.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DashXReactNative.m; sourceTree = "<group>"; };
34
+ /* End PBXFileReference section */
35
+
36
+ /* Begin PBXFrameworksBuildPhase section */
37
+ 58B511D81A9E6C8500147676 /* Frameworks */ = {
38
+ isa = PBXFrameworksBuildPhase;
39
+ buildActionMask = 2147483647;
40
+ files = (
41
+ );
42
+ runOnlyForDeploymentPostprocessing = 0;
43
+ };
44
+ /* End PBXFrameworksBuildPhase section */
45
+
46
+ /* Begin PBXGroup section */
47
+ 134814211AA4EA7D00B7C361 /* Products */ = {
48
+ isa = PBXGroup;
49
+ children = (
50
+ 134814201AA4EA6300B7C361 /* libDashXReactNative.a */,
51
+ );
52
+ name = Products;
53
+ sourceTree = "<group>";
54
+ };
55
+ 58B511D21A9E6C8500147676 = {
56
+ isa = PBXGroup;
57
+ children = (
58
+ B3E7B5891CC2AC0600A0062D /* DashXReactNative.m */,
59
+ 134814211AA4EA7D00B7C361 /* Products */,
60
+ 7C3CFED3289B9C6E00D184AB /* DashX.swift */,
61
+ 7C3CFED4289B9C6E00D184AB /* DashXEventEmitter.swift */,
62
+ 7C3CFED2289B9C6E00D184AB /* DashXReactNative.xcworkspace */,
63
+ 7C3CFED0289B9C6D00D184AB /* DashXReactNative-Bridging-Header.h */,
64
+ );
65
+ sourceTree = "<group>";
66
+ };
67
+ /* End PBXGroup section */
68
+
69
+ /* Begin PBXNativeTarget section */
70
+ 58B511DA1A9E6C8500147676 /* DashXReactNative */ = {
71
+ isa = PBXNativeTarget;
72
+ buildConfigurationList = 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "DashXReactNative" */;
73
+ buildPhases = (
74
+ 58B511D71A9E6C8500147676 /* Sources */,
75
+ 58B511D81A9E6C8500147676 /* Frameworks */,
76
+ 58B511D91A9E6C8500147676 /* CopyFiles */,
77
+ );
78
+ buildRules = (
79
+ );
80
+ dependencies = (
81
+ );
82
+ name = DashXReactNative;
83
+ productName = RCTDataManager;
84
+ productReference = 134814201AA4EA6300B7C361 /* libDashXReactNative.a */;
85
+ productType = "com.apple.product-type.library.static";
86
+ };
87
+ /* End PBXNativeTarget section */
88
+
89
+ /* Begin PBXProject section */
90
+ 58B511D31A9E6C8500147676 /* Project object */ = {
91
+ isa = PBXProject;
92
+ attributes = {
93
+ LastUpgradeCheck = 0830;
94
+ ORGANIZATIONNAME = Facebook;
95
+ TargetAttributes = {
96
+ 58B511DA1A9E6C8500147676 = {
97
+ CreatedOnToolsVersion = 6.1.1;
98
+ LastSwiftMigration = 1340;
99
+ };
100
+ };
101
+ };
102
+ buildConfigurationList = 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "DashXReactNative" */;
103
+ compatibilityVersion = "Xcode 3.2";
104
+ developmentRegion = English;
105
+ hasScannedForEncodings = 0;
106
+ knownRegions = (
107
+ English,
108
+ en,
109
+ );
110
+ mainGroup = 58B511D21A9E6C8500147676;
111
+ productRefGroup = 58B511D21A9E6C8500147676;
112
+ projectDirPath = "";
113
+ projectRoot = "";
114
+ targets = (
115
+ 58B511DA1A9E6C8500147676 /* DashXReactNative */,
116
+ );
117
+ };
118
+ /* End PBXProject section */
119
+
120
+ /* Begin PBXSourcesBuildPhase section */
121
+ 58B511D71A9E6C8500147676 /* Sources */ = {
122
+ isa = PBXSourcesBuildPhase;
123
+ buildActionMask = 2147483647;
124
+ files = (
125
+ 7C3CFED5289B9C6E00D184AB /* DashX.swift in Sources */,
126
+ 7C3CFED6289B9C6E00D184AB /* DashXEventEmitter.swift in Sources */,
127
+ B3E7B58A1CC2AC0600A0062D /* DashXReactNative.m in Sources */,
128
+ );
129
+ runOnlyForDeploymentPostprocessing = 0;
130
+ };
131
+ /* End PBXSourcesBuildPhase section */
132
+
133
+ /* Begin XCBuildConfiguration section */
134
+ 58B511ED1A9E6C8500147676 /* Debug */ = {
135
+ isa = XCBuildConfiguration;
136
+ buildSettings = {
137
+ ALWAYS_SEARCH_USER_PATHS = NO;
138
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
139
+ CLANG_CXX_LIBRARY = "libc++";
140
+ CLANG_ENABLE_MODULES = YES;
141
+ CLANG_ENABLE_OBJC_ARC = YES;
142
+ CLANG_WARN_BOOL_CONVERSION = YES;
143
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
144
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
145
+ CLANG_WARN_EMPTY_BODY = YES;
146
+ CLANG_WARN_ENUM_CONVERSION = YES;
147
+ CLANG_WARN_INFINITE_RECURSION = YES;
148
+ CLANG_WARN_INT_CONVERSION = YES;
149
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
150
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
151
+ CLANG_WARN_UNREACHABLE_CODE = YES;
152
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
153
+ COPY_PHASE_STRIP = NO;
154
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
155
+ ENABLE_TESTABILITY = YES;
156
+ GCC_C_LANGUAGE_STANDARD = gnu99;
157
+ GCC_DYNAMIC_NO_PIC = NO;
158
+ GCC_NO_COMMON_BLOCKS = YES;
159
+ GCC_OPTIMIZATION_LEVEL = 0;
160
+ GCC_PREPROCESSOR_DEFINITIONS = (
161
+ "DEBUG=1",
162
+ "$(inherited)",
163
+ );
164
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
165
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
166
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
167
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
168
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
169
+ GCC_WARN_UNUSED_FUNCTION = YES;
170
+ GCC_WARN_UNUSED_VARIABLE = YES;
171
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
172
+ MTL_ENABLE_DEBUG_INFO = YES;
173
+ ONLY_ACTIVE_ARCH = YES;
174
+ SDKROOT = iphoneos;
175
+ };
176
+ name = Debug;
177
+ };
178
+ 58B511EE1A9E6C8500147676 /* Release */ = {
179
+ isa = XCBuildConfiguration;
180
+ buildSettings = {
181
+ ALWAYS_SEARCH_USER_PATHS = NO;
182
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
183
+ CLANG_CXX_LIBRARY = "libc++";
184
+ CLANG_ENABLE_MODULES = YES;
185
+ CLANG_ENABLE_OBJC_ARC = YES;
186
+ CLANG_WARN_BOOL_CONVERSION = YES;
187
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
188
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
189
+ CLANG_WARN_EMPTY_BODY = YES;
190
+ CLANG_WARN_ENUM_CONVERSION = YES;
191
+ CLANG_WARN_INFINITE_RECURSION = YES;
192
+ CLANG_WARN_INT_CONVERSION = YES;
193
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
194
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
195
+ CLANG_WARN_UNREACHABLE_CODE = YES;
196
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
197
+ COPY_PHASE_STRIP = YES;
198
+ ENABLE_NS_ASSERTIONS = NO;
199
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
200
+ GCC_C_LANGUAGE_STANDARD = gnu99;
201
+ GCC_NO_COMMON_BLOCKS = YES;
202
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
203
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
204
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
205
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
206
+ GCC_WARN_UNUSED_FUNCTION = YES;
207
+ GCC_WARN_UNUSED_VARIABLE = YES;
208
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
209
+ MTL_ENABLE_DEBUG_INFO = NO;
210
+ SDKROOT = iphoneos;
211
+ VALIDATE_PRODUCT = YES;
212
+ };
213
+ name = Release;
214
+ };
215
+ 58B511F01A9E6C8500147676 /* Debug */ = {
216
+ isa = XCBuildConfiguration;
217
+ buildSettings = {
218
+ CLANG_ENABLE_MODULES = YES;
219
+ HEADER_SEARCH_PATHS = (
220
+ "$(inherited)",
221
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
222
+ "$(SRCROOT)/../../../React/**",
223
+ "$(SRCROOT)/../../react-native/React/**",
224
+ );
225
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
226
+ LIBRARY_SEARCH_PATHS = "$(inherited)";
227
+ OTHER_LDFLAGS = "-ObjC";
228
+ PRODUCT_NAME = DashXReactNative;
229
+ SKIP_INSTALL = YES;
230
+ SWIFT_OBJC_BRIDGING_HEADER = "DashXReactNative-Bridging-Header.h";
231
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
232
+ SWIFT_VERSION = 5.0;
233
+ };
234
+ name = Debug;
235
+ };
236
+ 58B511F11A9E6C8500147676 /* Release */ = {
237
+ isa = XCBuildConfiguration;
238
+ buildSettings = {
239
+ CLANG_ENABLE_MODULES = YES;
240
+ HEADER_SEARCH_PATHS = (
241
+ "$(inherited)",
242
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
243
+ "$(SRCROOT)/../../../React/**",
244
+ "$(SRCROOT)/../../react-native/React/**",
245
+ );
246
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
247
+ LIBRARY_SEARCH_PATHS = "$(inherited)";
248
+ OTHER_LDFLAGS = "-ObjC";
249
+ PRODUCT_NAME = DashXReactNative;
250
+ SKIP_INSTALL = YES;
251
+ SWIFT_OBJC_BRIDGING_HEADER = "DashXReactNative-Bridging-Header.h";
252
+ SWIFT_VERSION = 5.0;
253
+ };
254
+ name = Release;
255
+ };
256
+ /* End XCBuildConfiguration section */
257
+
258
+ /* Begin XCConfigurationList section */
259
+ 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "DashXReactNative" */ = {
260
+ isa = XCConfigurationList;
261
+ buildConfigurations = (
262
+ 58B511ED1A9E6C8500147676 /* Debug */,
263
+ 58B511EE1A9E6C8500147676 /* Release */,
264
+ );
265
+ defaultConfigurationIsVisible = 0;
266
+ defaultConfigurationName = Release;
267
+ };
268
+ 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "DashXReactNative" */ = {
269
+ isa = XCConfigurationList;
270
+ buildConfigurations = (
271
+ 58B511F01A9E6C8500147676 /* Debug */,
272
+ 58B511F11A9E6C8500147676 /* Release */,
273
+ );
274
+ defaultConfigurationIsVisible = 0;
275
+ defaultConfigurationName = Release;
276
+ };
277
+ /* End XCConfigurationList section */
278
+ };
279
+ rootObject = 58B511D31A9E6C8500147676 /* Project object */;
280
+ }
@@ -2,6 +2,6 @@
2
2
  <Workspace
3
3
  version = "1.0">
4
4
  <FileRef
5
- location = "group:DashX.xcodeproj">
5
+ location = "group:DashXReactNative.xcodeproj">
6
6
  </FileRef>
7
7
  </Workspace>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dashx/react-native",
3
3
  "title": "DashX React Native",
4
- "version": "0.1.25",
4
+ "version": "1.0.3",
5
5
  "description": "DashX SDK for React Native",
6
6
  "main": "index.js",
7
7
  "files": [
@@ -18,31 +18,25 @@
18
18
  },
19
19
  "repository": {
20
20
  "type": "git",
21
- "url": "git+https://github.com/dashxhq/dashx-react-native"
21
+ "url": "https://github.com/dashxhq/dashx-react-native"
22
22
  },
23
23
  "keywords": [
24
24
  "react-native"
25
25
  ],
26
26
  "author": {
27
- "name": "DashxDev",
27
+ "name": "DashXDev",
28
28
  "email": "dev@dashx.com"
29
29
  },
30
30
  "license": "MIT",
31
31
  "licenseFilename": "LICENSE",
32
- "readmeFilename": "README.md",
33
32
  "peerDependencies": {
34
- "react": "^16.8.1",
35
- "react-native": ">=0.59.0-rc.0 <1.0.x"
33
+ "react-native": "^0.41.2"
36
34
  },
37
35
  "devDependencies": {
38
36
  "eslint": "^8.21.0",
39
- "eslint-plugin-react": "^7.30.1",
40
- "get-file-object-from-local-path": "^1.0.2",
41
- "react": "^16.11.0",
42
- "react-native": "^0.62.0-rc.2"
37
+ "eslint-plugin-react": "^7.30.1"
43
38
  },
44
39
  "dependencies": {
45
- "axios": "^0.27.2",
46
- "rn-fetch-blob": "^0.12.0"
40
+ "react-native-get-real-path": "github:Wraptime/react-native-get-real-path"
47
41
  }
48
42
  }
package/DashX.podspec DELETED
@@ -1,27 +0,0 @@
1
- require "json"
2
-
3
- package = JSON.parse(File.read(File.join(__dir__, "package.json")))
4
-
5
- Pod::Spec.new do |s|
6
- s.name = "DashX"
7
- s.version = package["version"]
8
- s.summary = package["description"]
9
- s.description = <<-DESC
10
- @dashx/react-native
11
- DESC
12
- s.homepage = "https://github.com/github_account/@dashx/react-native"
13
- # brief license entry:
14
- s.license = "MIT"
15
- # optional - use expanded license entry instead:
16
- # s.license = { :type => "MIT", :file => "LICENSE" }
17
- s.authors = { "DashxDev" => "dev@dashx.com" }
18
- s.platforms = { :ios => "10.0" }
19
- s.source = { :git => "https://github.com/github_account/@dashx/react-native.git", :tag => "#{s.version}" }
20
-
21
- s.source_files = "ios/**/*.{h,c,m,swift}"
22
- s.requires_arc = true
23
-
24
- s.dependency "React"
25
- s.dependency "Apollo"
26
- s.dependency "FirebaseMessaging"
27
- end