@suprsend/react-native-sdk 0.3.2 → 0.3.6

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.
@@ -58,5 +58,5 @@ repositories {
58
58
  dependencies {
59
59
  //noinspection GradleDynamicVersion
60
60
  implementation "com.facebook.react:react-native:+" // From node_modules
61
- implementation 'com.github.suprsend:suprsend-kmm-sdk:0.1Beta3'
61
+ implementation 'com.github.suprsend:suprsend-kmm-sdk:0.1Beta4'
62
62
  }
@@ -1,57 +1,360 @@
1
1
  package com.suprsendrnsdk;
2
2
 
3
+ import android.util.Log;
4
+
3
5
  import androidx.annotation.NonNull;
4
6
 
5
- import com.facebook.react.bridge.Promise;
6
7
  import com.facebook.react.bridge.ReactApplicationContext;
7
8
  import com.facebook.react.bridge.ReactContextBaseJavaModule;
8
9
  import com.facebook.react.bridge.ReactMethod;
10
+ import com.facebook.react.bridge.ReadableArray;
11
+ import com.facebook.react.bridge.ReadableMap;
12
+ import com.facebook.react.bridge.ReadableMapKeySetIterator;
9
13
  import com.facebook.react.module.annotations.ReactModule;
14
+
15
+ import org.json.JSONArray;
16
+ import org.json.JSONObject;
17
+
18
+ import java.util.ArrayList;
19
+ import java.util.HashMap;
20
+ import java.util.List;
21
+ import java.util.Map;
22
+
10
23
  import app.suprsend.SSApi;
11
24
  import app.suprsend.base.LogLevel;
25
+ import app.suprsend.notification.SSNotificationHelper;
12
26
 
13
27
 
14
28
  @ReactModule(name = SuprsendRnSdkModule.NAME)
15
29
  public class SuprsendRnSdkModule extends ReactContextBaseJavaModule {
16
- public static final String NAME = "SuprsendRnSdk";
17
- private final ReactApplicationContext context;
18
- private SSApi suprsendInstance;
19
- private String apiKey, apiSecret, apiBaseUrl;
30
+ public static final String NAME = "SuprsendRnSdk";
31
+ private final ReactApplicationContext context;
32
+ private SSApi suprsendInstance;
33
+ private String apiKey, apiSecret, apiBaseUrl;
34
+
35
+ public SuprsendRnSdkModule(ReactApplicationContext reactContext) {
36
+ super(reactContext);
37
+ this.context = reactContext;
38
+ }
39
+
40
+ @Override
41
+ @NonNull
42
+ public String getName() {
43
+ return NAME;
44
+ }
45
+
46
+ private void getInstance() {
47
+ if (suprsendInstance == null) {
48
+ suprsendInstance = SSApi.Companion.getInstance(apiKey, apiSecret, apiBaseUrl);
49
+ suprsendInstance.setLogLevel(LogLevel.VERBOSE);
50
+ }
51
+ }
20
52
 
21
- public SuprsendRnSdkModule(ReactApplicationContext reactContext) {
22
- super(reactContext);
23
- this.context = reactContext;
53
+ @ReactMethod
54
+ public void initializeSDK(String workspaceKey, String workspaceSecret, String apiUrl) {
55
+ apiKey = workspaceKey;
56
+ apiSecret = workspaceSecret;
57
+ if (apiUrl != null) {
58
+ apiBaseUrl = apiUrl;
24
59
  }
60
+ }
25
61
 
26
- @Override
27
- @NonNull
28
- public String getName() {
29
- return NAME;
62
+ @ReactMethod
63
+ public void identify(String uniqueId) {
64
+ getInstance();
65
+ suprsendInstance.identify(uniqueId);
66
+ }
67
+
68
+ @ReactMethod
69
+ public void set(ReadableMap properties) {
70
+ if (properties == null) {
71
+ return;
30
72
  }
73
+ getInstance();
74
+ JSONObject jsonData = convertMapToJson(properties);
75
+ suprsendInstance.getUser().set(jsonData);
76
+ }
31
77
 
32
- private void getInstance(){
33
- if(suprsendInstance==null){
34
- suprsendInstance = SSApi.Companion.getInstance(apiKey, apiSecret, apiBaseUrl);
35
- suprsendInstance.setLogLevel(LogLevel.VERBOSE);
36
- }
78
+ @ReactMethod
79
+ public void setOnce(ReadableMap properties) {
80
+ if (properties == null) {
81
+ return;
37
82
  }
83
+ getInstance();
84
+ JSONObject jsonData = convertMapToJson(properties);
85
+ suprsendInstance.getUser().setOnce(jsonData);
86
+ }
38
87
 
39
- @ReactMethod
40
- public void initializeSDK(String workspaceKey, String workspaceSecret, String apiUrl){
41
- apiKey = workspaceKey;
42
- apiSecret = workspaceSecret;
43
- apiBaseUrl = apiUrl;
88
+ @ReactMethod
89
+ public void increment(ReadableMap properties) {
90
+ if (properties == null) {
91
+ return;
92
+ }
93
+ getInstance();
94
+ Map<String, Number> formattedMap = new HashMap<String, Number>();
95
+ ReadableMapKeySetIterator iterator = properties.keySetIterator();
96
+ while (iterator.hasNextKey()) {
97
+ String key = iterator.nextKey();
98
+ switch (properties.getType(key)) {
99
+ case Number:
100
+ formattedMap.put(key, properties.getDouble(key));
101
+ break;
102
+ }
103
+ }
104
+ suprsendInstance.getUser().increment(formattedMap);
105
+ }
106
+
107
+ @ReactMethod
108
+ public void append(ReadableMap properties) {
109
+ if (properties == null) {
110
+ return;
111
+ }
112
+ getInstance();
113
+ JSONObject jsonData = convertMapToJson(properties);
114
+ suprsendInstance.getUser().append(jsonData);
115
+ }
116
+
117
+ @ReactMethod
118
+ public void remove(ReadableMap properties) {
119
+ if (properties == null) {
120
+ return;
121
+ }
122
+ getInstance();
123
+ JSONObject jsonData = convertMapToJson(properties);
124
+ suprsendInstance.getUser().remove(jsonData);
125
+ }
126
+
127
+ @ReactMethod
128
+ public void unSet(ReadableArray keys) {
129
+ if (keys == null) {
130
+ return;
131
+ }
132
+ getInstance();
133
+ List<String> formattedList = new ArrayList<String>();
134
+ for (int i = 0; i < keys.size(); i++) {
135
+ switch (keys.getType(i)) {
136
+ case String:
137
+ formattedList.add(keys.getString(i));
138
+ break;
139
+ }
140
+ }
141
+ suprsendInstance.getUser().unSet(formattedList);
142
+ }
143
+
144
+ @ReactMethod
145
+ public void reset() {
146
+ getInstance();
147
+ suprsendInstance.reset();
148
+ }
149
+
150
+ @ReactMethod
151
+ public void setEmail(String email) {
152
+ if (email == null) {
153
+ return;
154
+ }
155
+ getInstance();
156
+ suprsendInstance.getUser().setEmail(email);
157
+ }
158
+
159
+ @ReactMethod
160
+ public void unSetEmail(String email) {
161
+ if (email == null) {
162
+ return;
44
163
  }
164
+ getInstance();
165
+ suprsendInstance.getUser().unSetEmail(email);
166
+ }
45
167
 
46
- @ReactMethod
47
- public void identify(String uniqueId) {
48
- getInstance();
49
- suprsendInstance.identify(uniqueId);
168
+ @ReactMethod
169
+ public void setSms(String mobile) {
170
+ if (mobile == null) {
171
+ return;
50
172
  }
173
+ getInstance();
174
+ suprsendInstance.getUser().setSms(mobile);
175
+ }
51
176
 
52
- @ReactMethod
53
- public void reset() {
54
- getInstance();
55
- suprsendInstance.reset();
177
+ @ReactMethod
178
+ public void unSetSms(String mobile) {
179
+ if (mobile == null) {
180
+ return;
181
+ }
182
+ getInstance();
183
+ suprsendInstance.getUser().unSetEmail(mobile);
184
+ }
185
+
186
+ @ReactMethod
187
+ public void setWhatsApp(String mobile) {
188
+ if (mobile == null) {
189
+ return;
190
+ }
191
+ getInstance();
192
+ suprsendInstance.getUser().setWhatsApp(mobile);
193
+ }
194
+
195
+ @ReactMethod
196
+ public void unSetWhatsApp(String mobile) {
197
+ if (mobile == null) {
198
+ return;
199
+ }
200
+ getInstance();
201
+ suprsendInstance.getUser().unSetWhatsApp(mobile);
202
+ }
203
+
204
+ @ReactMethod
205
+ public void setAndroidFcmPush(String token) {
206
+ if (token == null) {
207
+ return;
208
+ }
209
+ getInstance();
210
+ suprsendInstance.getUser().setAndroidFcmPush(token);
211
+ }
212
+
213
+ @ReactMethod
214
+ public void unSetAndroidFcmPush(String token) {
215
+ if (token == null) {
216
+ return;
217
+ }
218
+ getInstance();
219
+ suprsendInstance.getUser().unSetAndroidFcmPush(token);
220
+ }
221
+
222
+ @ReactMethod
223
+ public void setAndroidXiaomiPush(String token) {
224
+ if (token == null) {
225
+ return;
226
+ }
227
+ getInstance();
228
+ suprsendInstance.getUser().setAndroidXiaomiPush(token);
229
+ }
230
+
231
+ @ReactMethod
232
+ public void unSetAndroidXiaomiPush(String token) {
233
+ if (token == null) {
234
+ return;
235
+ }
236
+ getInstance();
237
+ suprsendInstance.getUser().unSetAndroidXiaomiPush(token);
238
+ }
239
+
240
+ @ReactMethod
241
+ public void track(String eventName, ReadableMap properties) {
242
+ getInstance();
243
+ JSONObject formattedProperties = convertMapToJson(properties);
244
+ suprsendInstance.track(eventName, formattedProperties);
245
+ }
246
+
247
+ @ReactMethod
248
+ public void setSuperProperties(ReadableMap properties) {
249
+ if (properties == null) {
250
+ return;
251
+ }
252
+ getInstance();
253
+ JSONObject jsonData = convertMapToJson(properties);
254
+ suprsendInstance.setSuperProperties(jsonData);
255
+ }
256
+
257
+ @ReactMethod
258
+ public void unSetSuperProperty(String key) {
259
+ if (key == null) {
260
+ return;
261
+ }
262
+ getInstance();
263
+ suprsendInstance.unSetSuperProperty(key);
264
+ }
265
+
266
+ @ReactMethod
267
+ public void flush() {
268
+ getInstance();
269
+ suprsendInstance.flush();
270
+ }
271
+
272
+ @ReactMethod
273
+ public void purchaseMade(ReadableMap properties) {
274
+ if (properties == null) {
275
+ return;
276
+ }
277
+ getInstance();
278
+ JSONObject jsonData = convertMapToJson(properties);
279
+ suprsendInstance.purchaseMade(jsonData);
280
+ }
281
+
282
+ @ReactMethod
283
+ public void initXiaomi(String appId, String apiKey) {
284
+ SSApi.Companion.initXiaomi(this.context, appId, apiKey);
285
+ }
286
+
287
+ @ReactMethod
288
+ public void showNotification(String notificationJSONPayload) {
289
+ SSNotificationHelper.INSTANCE.showSSNotification(this.context, notificationJSONPayload);
290
+ }
291
+
292
+ private static JSONObject convertMapToJson(ReadableMap readableMap) {
293
+ if (readableMap == null) {
294
+ return null;
295
+ }
296
+ JSONObject object = new JSONObject();
297
+ ReadableMapKeySetIterator iterator = readableMap.keySetIterator();
298
+ while (iterator.hasNextKey()) {
299
+ String key = iterator.nextKey();
300
+ try {
301
+ switch (readableMap.getType(key)) {
302
+ case Null:
303
+ object.put(key, JSONObject.NULL);
304
+ break;
305
+ case Boolean:
306
+ object.put(key, readableMap.getBoolean(key));
307
+ break;
308
+ case Number:
309
+ object.put(key, readableMap.getDouble(key));
310
+ break;
311
+ case String:
312
+ object.put(key, readableMap.getString(key));
313
+ break;
314
+ case Map:
315
+ object.put(key, convertMapToJson(readableMap.getMap(key)));
316
+ break;
317
+ case Array:
318
+ object.put(key, convertArrayToJson(readableMap.getArray(key)));
319
+ break;
320
+ }
321
+ } catch (Exception e) {
322
+ Log.d("SS_ERROR", "error is " + e);
323
+ }
324
+ }
325
+ return object;
326
+ }
327
+
328
+ private static JSONArray convertArrayToJson(ReadableArray readableArray) {
329
+ if (readableArray == null) {
330
+ return null;
331
+ }
332
+ JSONArray array = new JSONArray();
333
+ for (int i = 0; i < readableArray.size(); i++) {
334
+ try {
335
+ switch (readableArray.getType(i)) {
336
+ case Null:
337
+ break;
338
+ case Boolean:
339
+ array.put(readableArray.getBoolean(i));
340
+ break;
341
+ case Number:
342
+ array.put(readableArray.getDouble(i));
343
+ break;
344
+ case String:
345
+ array.put(readableArray.getString(i));
346
+ break;
347
+ case Map:
348
+ array.put(convertMapToJson(readableArray.getMap(i)));
349
+ break;
350
+ case Array:
351
+ array.put(convertArrayToJson(readableArray.getArray(i)));
352
+ break;
353
+ }
354
+ } catch (Exception e) {
355
+ Log.d("SS_ERROR", "error is " + e);
356
+ }
56
357
  }
358
+ return array;
359
+ }
57
360
  }
@@ -8,18 +8,119 @@ exports.default = void 0;
8
8
  var _reactNative = require("react-native");
9
9
 
10
10
  const SuprsendRnSdk = _reactNative.NativeModules.SuprsendRnSdk;
11
+
12
+ function constructObject(key, value) {
13
+ let response = {};
14
+
15
+ if (typeof key === 'string' && value !== undefined) {
16
+ response[key] = value;
17
+ } else if (typeof key === 'object') {
18
+ response = key;
19
+ }
20
+
21
+ return response;
22
+ }
23
+
24
+ function constructArray(key, value) {
25
+ let response = [];
26
+
27
+ if (typeof key === 'string' && value !== undefined) {
28
+ response.push(key);
29
+ } else if (Array.isArray(key)) {
30
+ response = key;
31
+ }
32
+
33
+ return response;
34
+ }
35
+
36
+ const user = {
37
+ set: function (key, value) {
38
+ const properties = constructObject(key, value);
39
+ SuprsendRnSdk.set(properties);
40
+ },
41
+ setOnce: function (key, value) {
42
+ const properties = constructObject(key, value);
43
+ SuprsendRnSdk.setOnce(properties);
44
+ },
45
+ increment: function (key, value) {
46
+ const properties = constructObject(key, value);
47
+ SuprsendRnSdk.increment(properties);
48
+ },
49
+ append: function (key, value) {
50
+ const properties = constructObject(key, value);
51
+ SuprsendRnSdk.append(properties);
52
+ },
53
+ remove: function (key, value) {
54
+ const properties = constructObject(key, value);
55
+ SuprsendRnSdk.remove(properties);
56
+ },
57
+ unSet: function (key, value) {
58
+ const properties = constructArray(key, value);
59
+ SuprsendRnSdk.unSet(properties);
60
+ },
61
+ setEmail: function (email) {
62
+ SuprsendRnSdk.setEmail(email);
63
+ },
64
+ unSetEmail: function (email) {
65
+ SuprsendRnSdk.unSetEmail(email);
66
+ },
67
+ setSms: function (mobile) {
68
+ SuprsendRnSdk.setSms(mobile);
69
+ },
70
+ unSetSms: function (mobile) {
71
+ SuprsendRnSdk.unSetSms(mobile);
72
+ },
73
+ setWhatsApp: function (mobile) {
74
+ SuprsendRnSdk.setWhatsApp(mobile);
75
+ },
76
+ unSetWhatsApp: function (mobile) {
77
+ SuprsendRnSdk.unSetWhatsApp(mobile);
78
+ },
79
+ setAndroidFcmPush: function (token) {
80
+ SuprsendRnSdk.setAndroidFcmPush(token);
81
+ },
82
+ unSetAndroidFcmPush: function (token) {
83
+ SuprsendRnSdk.unSetAndroidFcmPush(token);
84
+ },
85
+ setAndroidXiaomiPush: function (token) {
86
+ SuprsendRnSdk.setAndroidXiaomiPush(token);
87
+ },
88
+ unSetAndroidXiaomiPush: function (token) {
89
+ SuprsendRnSdk.unSetAndroidXiaomiPush(token);
90
+ }
91
+ };
11
92
  const Suprsend = {
12
- // method to initialize sdk with given key and secret
13
93
  initializeSDK: function (workspace_key, workspace_secret, base_url) {
14
94
  SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);
15
95
  },
16
- // method to identify the user
17
96
  identify: function (unique_id) {
18
97
  SuprsendRnSdk.identify(unique_id);
19
98
  },
20
- // method to reset user
99
+ user: user,
100
+ track: function (eventName, properties) {
101
+ SuprsendRnSdk.track(eventName, properties);
102
+ },
103
+ setSuperProperties: function (key, value) {
104
+ const properties = constructObject(key, value);
105
+ SuprsendRnSdk.setSuperProperties(properties);
106
+ },
107
+ unSetSuperProperty: function (key) {
108
+ SuprsendRnSdk.unSetSuperProperty(key);
109
+ },
110
+ flush: function () {
111
+ SuprsendRnSdk.flush();
112
+ },
21
113
  reset: function () {
22
114
  SuprsendRnSdk.reset();
115
+ },
116
+ purchaseMade: function (properties) {
117
+ SuprsendRnSdk.purchaseMade(properties);
118
+ },
119
+ initXiaomi: function (appId, apiKey) {
120
+ SuprsendRnSdk.initXiaomi(appId, apiKey);
121
+ },
122
+ showNotification: function (payload) {
123
+ SuprsendRnSdk.showNotification(payload);
23
124
  }
24
125
  };
25
126
  var _default = Suprsend;
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":["SuprsendRnSdk","NativeModules","Suprsend","initializeSDK","workspace_key","workspace_secret","base_url","identify","unique_id","reset"],"mappings":";;;;;;;AAAA;;AAEA,MAAMA,aAAa,GAAGC,2BAAcD,aAApC;AAEA,MAAME,QAAQ,GAAG;AACf;AACAC,EAAAA,aAAa,EAAE,UACbC,aADa,EAEbC,gBAFa,EAGbC,QAHa,EAIb;AACAN,IAAAA,aAAa,CAACG,aAAd,CAA4BC,aAA5B,EAA2CC,gBAA3C,EAA6DC,QAA7D;AACD,GARc;AAUf;AACAC,EAAAA,QAAQ,EAAE,UAAUC,SAAV,EAA0B;AAClCR,IAAAA,aAAa,CAACO,QAAd,CAAuBC,SAAvB;AACD,GAbc;AAef;AACAC,EAAAA,KAAK,EAAE,YAAY;AACjBT,IAAAA,aAAa,CAACS,KAAd;AACD;AAlBc,CAAjB;eAqBeP,Q","sourcesContent":["import { NativeModules } from 'react-native';\n\nconst SuprsendRnSdk = NativeModules.SuprsendRnSdk;\n\nconst Suprsend = {\n // method to initialize sdk with given key and secret\n initializeSDK: function (\n workspace_key: string,\n workspace_secret: string,\n base_url?: string\n ) {\n SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);\n },\n\n // method to identify the user\n identify: function (unique_id: any) {\n SuprsendRnSdk.identify(unique_id);\n },\n\n // method to reset user\n reset: function () {\n SuprsendRnSdk.reset();\n },\n};\n\nexport default Suprsend;\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":["SuprsendRnSdk","NativeModules","constructObject","key","value","response","undefined","constructArray","push","Array","isArray","user","set","properties","setOnce","increment","append","remove","unSet","setEmail","email","unSetEmail","setSms","mobile","unSetSms","setWhatsApp","unSetWhatsApp","setAndroidFcmPush","token","unSetAndroidFcmPush","setAndroidXiaomiPush","unSetAndroidXiaomiPush","Suprsend","initializeSDK","workspace_key","workspace_secret","base_url","identify","unique_id","track","eventName","setSuperProperties","unSetSuperProperty","flush","reset","purchaseMade","initXiaomi","appId","apiKey","showNotification","payload"],"mappings":"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","sourcesContent":["import { NativeModules } from 'react-native';\n\nconst SuprsendRnSdk = NativeModules.SuprsendRnSdk;\n\nfunction constructObject(key: String | Object, value: any): Object {\n let response: { [key: string]: any } = {};\n if (typeof key === 'string' && value !== undefined) {\n response[key] = value;\n } else if (typeof key === 'object') {\n response = key;\n }\n return response;\n}\n\nfunction constructArray(key: string[] | string, value: any): string[] {\n let response: string[] = [];\n if (typeof key === 'string' && value !== undefined) {\n response.push(key);\n } else if (Array.isArray(key)) {\n response = key;\n }\n return response;\n}\n\nconst user = {\n set: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.set(properties);\n },\n\n setOnce: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.setOnce(properties);\n },\n\n increment: function (key: string | Object, value: number) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.increment(properties);\n },\n\n append: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.append(properties);\n },\n\n remove: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.remove(properties);\n },\n\n unSet: function (key: string[] | string, value: any) {\n const properties = constructArray(key, value);\n SuprsendRnSdk.unSet(properties);\n },\n\n setEmail: function (email: string) {\n SuprsendRnSdk.setEmail(email);\n },\n\n unSetEmail: function (email: string) {\n SuprsendRnSdk.unSetEmail(email);\n },\n\n setSms: function (mobile: string) {\n SuprsendRnSdk.setSms(mobile);\n },\n\n unSetSms: function (mobile: string) {\n SuprsendRnSdk.unSetSms(mobile);\n },\n\n setWhatsApp: function (mobile: string) {\n SuprsendRnSdk.setWhatsApp(mobile);\n },\n\n unSetWhatsApp: function (mobile: string) {\n SuprsendRnSdk.unSetWhatsApp(mobile);\n },\n\n setAndroidFcmPush: function (token: string) {\n SuprsendRnSdk.setAndroidFcmPush(token);\n },\n\n unSetAndroidFcmPush: function (token: string) {\n SuprsendRnSdk.unSetAndroidFcmPush(token);\n },\n\n setAndroidXiaomiPush: function (token: string) {\n SuprsendRnSdk.setAndroidXiaomiPush(token);\n },\n\n unSetAndroidXiaomiPush: function (token: string) {\n SuprsendRnSdk.unSetAndroidXiaomiPush(token);\n },\n};\n\nconst Suprsend = {\n initializeSDK: function (\n workspace_key: string,\n workspace_secret: string,\n base_url?: string\n ) {\n SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);\n },\n\n identify: function (unique_id: any) {\n SuprsendRnSdk.identify(unique_id);\n },\n\n user: user,\n\n track: function (eventName: string, properties?: Object) {\n SuprsendRnSdk.track(eventName, properties);\n },\n\n setSuperProperties: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.setSuperProperties(properties);\n },\n\n unSetSuperProperty: function (key: string) {\n SuprsendRnSdk.unSetSuperProperty(key);\n },\n\n flush: function () {\n SuprsendRnSdk.flush();\n },\n\n reset: function () {\n SuprsendRnSdk.reset();\n },\n\n purchaseMade: function (properties: Object) {\n SuprsendRnSdk.purchaseMade(properties);\n },\n\n initXiaomi: function (appId: string, apiKey: string) {\n SuprsendRnSdk.initXiaomi(appId, apiKey);\n },\n\n showNotification: function (payload: string) {\n SuprsendRnSdk.showNotification(payload);\n },\n};\n\nexport default Suprsend;\n"]}
@@ -1,17 +1,118 @@
1
1
  import { NativeModules } from 'react-native';
2
2
  const SuprsendRnSdk = NativeModules.SuprsendRnSdk;
3
+
4
+ function constructObject(key, value) {
5
+ let response = {};
6
+
7
+ if (typeof key === 'string' && value !== undefined) {
8
+ response[key] = value;
9
+ } else if (typeof key === 'object') {
10
+ response = key;
11
+ }
12
+
13
+ return response;
14
+ }
15
+
16
+ function constructArray(key, value) {
17
+ let response = [];
18
+
19
+ if (typeof key === 'string' && value !== undefined) {
20
+ response.push(key);
21
+ } else if (Array.isArray(key)) {
22
+ response = key;
23
+ }
24
+
25
+ return response;
26
+ }
27
+
28
+ const user = {
29
+ set: function (key, value) {
30
+ const properties = constructObject(key, value);
31
+ SuprsendRnSdk.set(properties);
32
+ },
33
+ setOnce: function (key, value) {
34
+ const properties = constructObject(key, value);
35
+ SuprsendRnSdk.setOnce(properties);
36
+ },
37
+ increment: function (key, value) {
38
+ const properties = constructObject(key, value);
39
+ SuprsendRnSdk.increment(properties);
40
+ },
41
+ append: function (key, value) {
42
+ const properties = constructObject(key, value);
43
+ SuprsendRnSdk.append(properties);
44
+ },
45
+ remove: function (key, value) {
46
+ const properties = constructObject(key, value);
47
+ SuprsendRnSdk.remove(properties);
48
+ },
49
+ unSet: function (key, value) {
50
+ const properties = constructArray(key, value);
51
+ SuprsendRnSdk.unSet(properties);
52
+ },
53
+ setEmail: function (email) {
54
+ SuprsendRnSdk.setEmail(email);
55
+ },
56
+ unSetEmail: function (email) {
57
+ SuprsendRnSdk.unSetEmail(email);
58
+ },
59
+ setSms: function (mobile) {
60
+ SuprsendRnSdk.setSms(mobile);
61
+ },
62
+ unSetSms: function (mobile) {
63
+ SuprsendRnSdk.unSetSms(mobile);
64
+ },
65
+ setWhatsApp: function (mobile) {
66
+ SuprsendRnSdk.setWhatsApp(mobile);
67
+ },
68
+ unSetWhatsApp: function (mobile) {
69
+ SuprsendRnSdk.unSetWhatsApp(mobile);
70
+ },
71
+ setAndroidFcmPush: function (token) {
72
+ SuprsendRnSdk.setAndroidFcmPush(token);
73
+ },
74
+ unSetAndroidFcmPush: function (token) {
75
+ SuprsendRnSdk.unSetAndroidFcmPush(token);
76
+ },
77
+ setAndroidXiaomiPush: function (token) {
78
+ SuprsendRnSdk.setAndroidXiaomiPush(token);
79
+ },
80
+ unSetAndroidXiaomiPush: function (token) {
81
+ SuprsendRnSdk.unSetAndroidXiaomiPush(token);
82
+ }
83
+ };
3
84
  const Suprsend = {
4
- // method to initialize sdk with given key and secret
5
85
  initializeSDK: function (workspace_key, workspace_secret, base_url) {
6
86
  SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);
7
87
  },
8
- // method to identify the user
9
88
  identify: function (unique_id) {
10
89
  SuprsendRnSdk.identify(unique_id);
11
90
  },
12
- // method to reset user
91
+ user: user,
92
+ track: function (eventName, properties) {
93
+ SuprsendRnSdk.track(eventName, properties);
94
+ },
95
+ setSuperProperties: function (key, value) {
96
+ const properties = constructObject(key, value);
97
+ SuprsendRnSdk.setSuperProperties(properties);
98
+ },
99
+ unSetSuperProperty: function (key) {
100
+ SuprsendRnSdk.unSetSuperProperty(key);
101
+ },
102
+ flush: function () {
103
+ SuprsendRnSdk.flush();
104
+ },
13
105
  reset: function () {
14
106
  SuprsendRnSdk.reset();
107
+ },
108
+ purchaseMade: function (properties) {
109
+ SuprsendRnSdk.purchaseMade(properties);
110
+ },
111
+ initXiaomi: function (appId, apiKey) {
112
+ SuprsendRnSdk.initXiaomi(appId, apiKey);
113
+ },
114
+ showNotification: function (payload) {
115
+ SuprsendRnSdk.showNotification(payload);
15
116
  }
16
117
  };
17
118
  export default Suprsend;
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":["NativeModules","SuprsendRnSdk","Suprsend","initializeSDK","workspace_key","workspace_secret","base_url","identify","unique_id","reset"],"mappings":"AAAA,SAASA,aAAT,QAA8B,cAA9B;AAEA,MAAMC,aAAa,GAAGD,aAAa,CAACC,aAApC;AAEA,MAAMC,QAAQ,GAAG;AACf;AACAC,EAAAA,aAAa,EAAE,UACbC,aADa,EAEbC,gBAFa,EAGbC,QAHa,EAIb;AACAL,IAAAA,aAAa,CAACE,aAAd,CAA4BC,aAA5B,EAA2CC,gBAA3C,EAA6DC,QAA7D;AACD,GARc;AAUf;AACAC,EAAAA,QAAQ,EAAE,UAAUC,SAAV,EAA0B;AAClCP,IAAAA,aAAa,CAACM,QAAd,CAAuBC,SAAvB;AACD,GAbc;AAef;AACAC,EAAAA,KAAK,EAAE,YAAY;AACjBR,IAAAA,aAAa,CAACQ,KAAd;AACD;AAlBc,CAAjB;AAqBA,eAAeP,QAAf","sourcesContent":["import { NativeModules } from 'react-native';\n\nconst SuprsendRnSdk = NativeModules.SuprsendRnSdk;\n\nconst Suprsend = {\n // method to initialize sdk with given key and secret\n initializeSDK: function (\n workspace_key: string,\n workspace_secret: string,\n base_url?: string\n ) {\n SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);\n },\n\n // method to identify the user\n identify: function (unique_id: any) {\n SuprsendRnSdk.identify(unique_id);\n },\n\n // method to reset user\n reset: function () {\n SuprsendRnSdk.reset();\n },\n};\n\nexport default Suprsend;\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":["NativeModules","SuprsendRnSdk","constructObject","key","value","response","undefined","constructArray","push","Array","isArray","user","set","properties","setOnce","increment","append","remove","unSet","setEmail","email","unSetEmail","setSms","mobile","unSetSms","setWhatsApp","unSetWhatsApp","setAndroidFcmPush","token","unSetAndroidFcmPush","setAndroidXiaomiPush","unSetAndroidXiaomiPush","Suprsend","initializeSDK","workspace_key","workspace_secret","base_url","identify","unique_id","track","eventName","setSuperProperties","unSetSuperProperty","flush","reset","purchaseMade","initXiaomi","appId","apiKey","showNotification","payload"],"mappings":"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","sourcesContent":["import { NativeModules } from 'react-native';\n\nconst SuprsendRnSdk = NativeModules.SuprsendRnSdk;\n\nfunction constructObject(key: String | Object, value: any): Object {\n let response: { [key: string]: any } = {};\n if (typeof key === 'string' && value !== undefined) {\n response[key] = value;\n } else if (typeof key === 'object') {\n response = key;\n }\n return response;\n}\n\nfunction constructArray(key: string[] | string, value: any): string[] {\n let response: string[] = [];\n if (typeof key === 'string' && value !== undefined) {\n response.push(key);\n } else if (Array.isArray(key)) {\n response = key;\n }\n return response;\n}\n\nconst user = {\n set: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.set(properties);\n },\n\n setOnce: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.setOnce(properties);\n },\n\n increment: function (key: string | Object, value: number) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.increment(properties);\n },\n\n append: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.append(properties);\n },\n\n remove: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.remove(properties);\n },\n\n unSet: function (key: string[] | string, value: any) {\n const properties = constructArray(key, value);\n SuprsendRnSdk.unSet(properties);\n },\n\n setEmail: function (email: string) {\n SuprsendRnSdk.setEmail(email);\n },\n\n unSetEmail: function (email: string) {\n SuprsendRnSdk.unSetEmail(email);\n },\n\n setSms: function (mobile: string) {\n SuprsendRnSdk.setSms(mobile);\n },\n\n unSetSms: function (mobile: string) {\n SuprsendRnSdk.unSetSms(mobile);\n },\n\n setWhatsApp: function (mobile: string) {\n SuprsendRnSdk.setWhatsApp(mobile);\n },\n\n unSetWhatsApp: function (mobile: string) {\n SuprsendRnSdk.unSetWhatsApp(mobile);\n },\n\n setAndroidFcmPush: function (token: string) {\n SuprsendRnSdk.setAndroidFcmPush(token);\n },\n\n unSetAndroidFcmPush: function (token: string) {\n SuprsendRnSdk.unSetAndroidFcmPush(token);\n },\n\n setAndroidXiaomiPush: function (token: string) {\n SuprsendRnSdk.setAndroidXiaomiPush(token);\n },\n\n unSetAndroidXiaomiPush: function (token: string) {\n SuprsendRnSdk.unSetAndroidXiaomiPush(token);\n },\n};\n\nconst Suprsend = {\n initializeSDK: function (\n workspace_key: string,\n workspace_secret: string,\n base_url?: string\n ) {\n SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);\n },\n\n identify: function (unique_id: any) {\n SuprsendRnSdk.identify(unique_id);\n },\n\n user: user,\n\n track: function (eventName: string, properties?: Object) {\n SuprsendRnSdk.track(eventName, properties);\n },\n\n setSuperProperties: function (key: string | Object, value: any) {\n const properties = constructObject(key, value);\n SuprsendRnSdk.setSuperProperties(properties);\n },\n\n unSetSuperProperty: function (key: string) {\n SuprsendRnSdk.unSetSuperProperty(key);\n },\n\n flush: function () {\n SuprsendRnSdk.flush();\n },\n\n reset: function () {\n SuprsendRnSdk.reset();\n },\n\n purchaseMade: function (properties: Object) {\n SuprsendRnSdk.purchaseMade(properties);\n },\n\n initXiaomi: function (appId: string, apiKey: string) {\n SuprsendRnSdk.initXiaomi(appId, apiKey);\n },\n\n showNotification: function (payload: string) {\n SuprsendRnSdk.showNotification(payload);\n },\n};\n\nexport default Suprsend;\n"]}
@@ -1,6 +1,31 @@
1
1
  declare const Suprsend: {
2
2
  initializeSDK: (workspace_key: string, workspace_secret: string, base_url?: string | undefined) => void;
3
3
  identify: (unique_id: any) => void;
4
+ user: {
5
+ set: (key: string | Object, value: any) => void;
6
+ setOnce: (key: string | Object, value: any) => void;
7
+ increment: (key: string | Object, value: number) => void;
8
+ append: (key: string | Object, value: any) => void;
9
+ remove: (key: string | Object, value: any) => void;
10
+ unSet: (key: string[] | string, value: any) => void;
11
+ setEmail: (email: string) => void;
12
+ unSetEmail: (email: string) => void;
13
+ setSms: (mobile: string) => void;
14
+ unSetSms: (mobile: string) => void;
15
+ setWhatsApp: (mobile: string) => void;
16
+ unSetWhatsApp: (mobile: string) => void;
17
+ setAndroidFcmPush: (token: string) => void;
18
+ unSetAndroidFcmPush: (token: string) => void;
19
+ setAndroidXiaomiPush: (token: string) => void;
20
+ unSetAndroidXiaomiPush: (token: string) => void;
21
+ };
22
+ track: (eventName: string, properties?: Object | undefined) => void;
23
+ setSuperProperties: (key: string | Object, value: any) => void;
24
+ unSetSuperProperty: (key: string) => void;
25
+ flush: () => void;
4
26
  reset: () => void;
27
+ purchaseMade: (properties: Object) => void;
28
+ initXiaomi: (appId: string, apiKey: string) => void;
29
+ showNotification: (payload: string) => void;
5
30
  };
6
31
  export default Suprsend;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@suprsend/react-native-sdk",
3
- "version": "0.3.2",
3
+ "version": "0.3.6",
4
4
  "description": "Suprsend SDK for React Native Applications",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
package/src/index.tsx CHANGED
@@ -2,8 +2,99 @@ import { NativeModules } from 'react-native';
2
2
 
3
3
  const SuprsendRnSdk = NativeModules.SuprsendRnSdk;
4
4
 
5
+ function constructObject(key: String | Object, value: any): Object {
6
+ let response: { [key: string]: any } = {};
7
+ if (typeof key === 'string' && value !== undefined) {
8
+ response[key] = value;
9
+ } else if (typeof key === 'object') {
10
+ response = key;
11
+ }
12
+ return response;
13
+ }
14
+
15
+ function constructArray(key: string[] | string, value: any): string[] {
16
+ let response: string[] = [];
17
+ if (typeof key === 'string' && value !== undefined) {
18
+ response.push(key);
19
+ } else if (Array.isArray(key)) {
20
+ response = key;
21
+ }
22
+ return response;
23
+ }
24
+
25
+ const user = {
26
+ set: function (key: string | Object, value: any) {
27
+ const properties = constructObject(key, value);
28
+ SuprsendRnSdk.set(properties);
29
+ },
30
+
31
+ setOnce: function (key: string | Object, value: any) {
32
+ const properties = constructObject(key, value);
33
+ SuprsendRnSdk.setOnce(properties);
34
+ },
35
+
36
+ increment: function (key: string | Object, value: number) {
37
+ const properties = constructObject(key, value);
38
+ SuprsendRnSdk.increment(properties);
39
+ },
40
+
41
+ append: function (key: string | Object, value: any) {
42
+ const properties = constructObject(key, value);
43
+ SuprsendRnSdk.append(properties);
44
+ },
45
+
46
+ remove: function (key: string | Object, value: any) {
47
+ const properties = constructObject(key, value);
48
+ SuprsendRnSdk.remove(properties);
49
+ },
50
+
51
+ unSet: function (key: string[] | string, value: any) {
52
+ const properties = constructArray(key, value);
53
+ SuprsendRnSdk.unSet(properties);
54
+ },
55
+
56
+ setEmail: function (email: string) {
57
+ SuprsendRnSdk.setEmail(email);
58
+ },
59
+
60
+ unSetEmail: function (email: string) {
61
+ SuprsendRnSdk.unSetEmail(email);
62
+ },
63
+
64
+ setSms: function (mobile: string) {
65
+ SuprsendRnSdk.setSms(mobile);
66
+ },
67
+
68
+ unSetSms: function (mobile: string) {
69
+ SuprsendRnSdk.unSetSms(mobile);
70
+ },
71
+
72
+ setWhatsApp: function (mobile: string) {
73
+ SuprsendRnSdk.setWhatsApp(mobile);
74
+ },
75
+
76
+ unSetWhatsApp: function (mobile: string) {
77
+ SuprsendRnSdk.unSetWhatsApp(mobile);
78
+ },
79
+
80
+ setAndroidFcmPush: function (token: string) {
81
+ SuprsendRnSdk.setAndroidFcmPush(token);
82
+ },
83
+
84
+ unSetAndroidFcmPush: function (token: string) {
85
+ SuprsendRnSdk.unSetAndroidFcmPush(token);
86
+ },
87
+
88
+ setAndroidXiaomiPush: function (token: string) {
89
+ SuprsendRnSdk.setAndroidXiaomiPush(token);
90
+ },
91
+
92
+ unSetAndroidXiaomiPush: function (token: string) {
93
+ SuprsendRnSdk.unSetAndroidXiaomiPush(token);
94
+ },
95
+ };
96
+
5
97
  const Suprsend = {
6
- // method to initialize sdk with given key and secret
7
98
  initializeSDK: function (
8
99
  workspace_key: string,
9
100
  workspace_secret: string,
@@ -12,15 +103,44 @@ const Suprsend = {
12
103
  SuprsendRnSdk.initializeSDK(workspace_key, workspace_secret, base_url);
13
104
  },
14
105
 
15
- // method to identify the user
16
106
  identify: function (unique_id: any) {
17
107
  SuprsendRnSdk.identify(unique_id);
18
108
  },
19
109
 
20
- // method to reset user
110
+ user: user,
111
+
112
+ track: function (eventName: string, properties?: Object) {
113
+ SuprsendRnSdk.track(eventName, properties);
114
+ },
115
+
116
+ setSuperProperties: function (key: string | Object, value: any) {
117
+ const properties = constructObject(key, value);
118
+ SuprsendRnSdk.setSuperProperties(properties);
119
+ },
120
+
121
+ unSetSuperProperty: function (key: string) {
122
+ SuprsendRnSdk.unSetSuperProperty(key);
123
+ },
124
+
125
+ flush: function () {
126
+ SuprsendRnSdk.flush();
127
+ },
128
+
21
129
  reset: function () {
22
130
  SuprsendRnSdk.reset();
23
131
  },
132
+
133
+ purchaseMade: function (properties: Object) {
134
+ SuprsendRnSdk.purchaseMade(properties);
135
+ },
136
+
137
+ initXiaomi: function (appId: string, apiKey: string) {
138
+ SuprsendRnSdk.initXiaomi(appId, apiKey);
139
+ },
140
+
141
+ showNotification: function (payload: string) {
142
+ SuprsendRnSdk.showNotification(payload);
143
+ },
24
144
  };
25
145
 
26
146
  export default Suprsend;