react-native-radar 3.21.0 → 3.22.0

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 CHANGED
@@ -18,6 +18,8 @@ See an example app in `example/`.
18
18
 
19
19
  Setup Radar public key check pre-commit hook with `cp -r hooks .git` to prevent accidental key leak when working with the Example app.
20
20
 
21
+ Android: compile with java 17
22
+
21
23
  To run example app with local `react-native-radar` dependency:
22
24
 
23
25
  - install node dependencies with `npm ci` and typescript if needed with `npm install -g typescript`.
package/Radar.podspec CHANGED
@@ -16,7 +16,7 @@ Pod::Spec.new do |s|
16
16
  s.source_files = "ios/**/*.{h,m,mm,cpp}"
17
17
  s.private_header_files = "ios/**/*.h"
18
18
 
19
- s.dependency "RadarSDK", "~> 3.21.8"
19
+ s.dependency "RadarSDK", "~> 3.22.0"
20
20
 
21
21
  install_modules_dependencies(s)
22
22
  end
@@ -83,7 +83,7 @@ dependencies {
83
83
  // Keep Kotlin stdlib internal to this module
84
84
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
85
85
 
86
- api 'io.radar:sdk:3.21.3'
86
+ api 'io.radar:sdk:3.22.0'
87
87
  }
88
88
 
89
89
  react {
@@ -129,6 +129,26 @@ public class RadarModuleImpl {
129
129
  JSONObject metaJson = Radar.getMetadata();
130
130
  promise.resolve(RadarUtils.mapForJson(metaJson));
131
131
  }
132
+
133
+ public void setTags(ReadableArray tags) throws JSONException {
134
+ Radar.setTags(RadarUtils.stringArrayForArray(tags));
135
+ }
136
+
137
+ public void getTags(final Promise promise) throws JSONException {
138
+ if (promise == null) {
139
+ return;
140
+ }
141
+
142
+ promise.resolve(RadarUtils.arrayForStringArray(Radar.getTags()));
143
+ }
144
+
145
+ public void addTags(ReadableArray tags) throws JSONException {
146
+ Radar.addTags(RadarUtils.stringArrayForArray(tags));
147
+ }
148
+
149
+ public void removeTags(ReadableArray tags) throws JSONException {
150
+ Radar.removeTags(RadarUtils.stringArrayForArray(tags));
151
+ }
132
152
 
133
153
  public void setProduct(String product) {
134
154
  Radar.setProduct(product);
@@ -150,6 +150,18 @@ public class RadarUtils {
150
150
  }
151
151
  return arr;
152
152
  }
153
+
154
+ static ReadableArray arrayForStringArray(String[] arr) {
155
+ if (arr == null) {
156
+ return null;
157
+ }
158
+ WritableArray array = new WritableNativeArray();
159
+ for (String s : arr) {
160
+ array.pushString(s);
161
+ }
162
+ return array;
163
+ }
164
+
153
165
  static Map<String, String> stringStringMap(ReadableMap readableMap) {
154
166
  if (readableMap == null) {
155
167
  return null;
@@ -31,6 +31,7 @@ import com.facebook.react.bridge.Arguments
31
31
  import com.facebook.react.bridge.WritableMap
32
32
  import com.facebook.react.bridge.Promise
33
33
  import com.facebook.react.bridge.ReadableMap
34
+ import com.facebook.react.bridge.ReadableArray
34
35
  import org.json.JSONException
35
36
 
36
37
  @ReactModule(name = RadarModule.NAME)
@@ -104,7 +105,7 @@ class RadarModule(reactContext: ReactApplicationContext) :
104
105
  override fun initialize(publishableKey: String, fraud: Boolean): Unit {
105
106
  val editor = reactApplicationContext.getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit()
106
107
  editor.putString("x_platform_sdk_type", "ReactNative")
107
- editor.putString("x_platform_sdk_version", "3.21.0")
108
+ editor.putString("x_platform_sdk_version", "3.22.0")
108
109
  editor.apply()
109
110
 
110
111
  if (fraud) {
@@ -144,6 +145,22 @@ class RadarModule(reactContext: ReactApplicationContext) :
144
145
  radarModuleImpl.getMetadata(promise)
145
146
  }
146
147
 
148
+ override fun setTags(tags: ReadableArray): Unit {
149
+ radarModuleImpl.setTags(tags)
150
+ }
151
+
152
+ override fun getTags(promise: Promise): Unit {
153
+ radarModuleImpl.getTags(promise)
154
+ }
155
+
156
+ override fun addTags(tags: ReadableArray): Unit {
157
+ radarModuleImpl.addTags(tags)
158
+ }
159
+
160
+ override fun removeTags(tags: ReadableArray): Unit {
161
+ radarModuleImpl.removeTags(tags)
162
+ }
163
+
147
164
  override fun setProduct(product: String): Unit {
148
165
  radarModuleImpl.setProduct(product)
149
166
  }
@@ -98,7 +98,7 @@ public class RadarModule extends ReactContextBaseJavaModule implements Permissio
98
98
  this.fraud = fraud;
99
99
  SharedPreferences.Editor editor = getReactApplicationContext().getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit();
100
100
  editor.putString("x_platform_sdk_type", "ReactNative");
101
- editor.putString("x_platform_sdk_version", "3.21.0");
101
+ editor.putString("x_platform_sdk_version", "3.22.0");
102
102
  editor.apply();
103
103
  if (fraud) {
104
104
  Radar.initialize(getReactApplicationContext(), publishableKey, receiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud);
@@ -149,6 +149,26 @@ public class RadarModule extends ReactContextBaseJavaModule implements Permissio
149
149
  radarModuleImpl.getMetadata(promise);
150
150
  }
151
151
 
152
+ @ReactMethod
153
+ public void setTags(ReadableArray tags) throws JSONException {
154
+ radarModuleImpl.setTags(tags);
155
+ }
156
+
157
+ @ReactMethod
158
+ public void getTags(final Promise promise) throws JSONException {
159
+ radarModuleImpl.getTags(promise);
160
+ }
161
+
162
+ @ReactMethod
163
+ public void addTags(ReadableArray tags) throws JSONException {
164
+ radarModuleImpl.addTags(tags);
165
+ }
166
+
167
+ @ReactMethod
168
+ public void removeTags(ReadableArray tags) throws JSONException {
169
+ radarModuleImpl.removeTags(tags);
170
+ }
171
+
152
172
  @ReactMethod
153
173
  public void setAnonymousTrackingEnabled(boolean enabled) {
154
174
  radarModuleImpl.setAnonymousTrackingEnabled(enabled);
@@ -8,6 +8,10 @@ export interface RadarNativeInterface {
8
8
  getDescription: () => Promise<string>;
9
9
  setMetadata: (metadata: RadarMetadata) => void;
10
10
  getMetadata: () => Promise<RadarMetadata>;
11
+ setTags: (tags: string[]) => void;
12
+ getTags: () => Promise<string[]>;
13
+ addTags: (tags: string[]) => void;
14
+ removeTags: (tags: string[]) => void;
11
15
  setProduct(product: string): void;
12
16
  getProduct: () => Promise<string>;
13
17
  setAnonymousTrackingEnabled: (enabled: boolean) => void;
@@ -34,6 +34,10 @@ export interface Spec extends TurboModule {
34
34
  getDescription(): Promise<string>;
35
35
  setMetadata(metadata: Object): void;
36
36
  getMetadata(): Promise<Object>;
37
+ setTags(tags: Array<string>): void;
38
+ getTags(): Promise<Array<string>>;
39
+ addTags(tags: Array<string>): void;
40
+ removeTags(tags: Array<string>): void;
37
41
  setProduct(product: string): void;
38
42
  getProduct(): Promise<string>;
39
43
  setAnonymousTrackingEnabled(enabled: boolean): void;
@@ -169,6 +169,18 @@ const Radar = {
169
169
  getMetadata: function () {
170
170
  return NativeRadar.getMetadata();
171
171
  },
172
+ setTags: function (tags) {
173
+ return NativeRadar.setTags(tags);
174
+ },
175
+ getTags: function () {
176
+ return NativeRadar.getTags();
177
+ },
178
+ addTags: function (tags) {
179
+ return NativeRadar.addTags(tags);
180
+ },
181
+ removeTags: function (tags) {
182
+ return NativeRadar.removeTags(tags);
183
+ },
172
184
  setProduct: function (product) {
173
185
  return NativeRadar.setProduct(product);
174
186
  },
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "3.21.0";
1
+ export declare const VERSION = "3.22.0";
package/dist/version.js CHANGED
@@ -3,4 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
4
  // This file contains the version of the react-native-radar package
5
5
  // It should be updated to match the version in package.json
6
- exports.VERSION = '3.21.0';
6
+ exports.VERSION = '3.22.0';
package/ios/RNRadar.mm CHANGED
@@ -139,7 +139,7 @@ RCT_EXPORT_MODULE()
139
139
 
140
140
  RCT_EXPORT_METHOD(initialize:(NSString *)publishableKey fraud:(BOOL)fraud) {
141
141
  [[NSUserDefaults standardUserDefaults] setObject:@"ReactNative" forKey:@"radar-xPlatformSDKType"];
142
- [[NSUserDefaults standardUserDefaults] setObject:@"3.21.0" forKey:@"radar-xPlatformSDKVersion"];
142
+ [[NSUserDefaults standardUserDefaults] setObject:@"3.22.0" forKey:@"radar-xPlatformSDKVersion"];
143
143
  [Radar initializeWithPublishableKey:publishableKey];
144
144
  }
145
145
 
@@ -183,6 +183,22 @@ RCT_EXPORT_METHOD(getMetadata:(RCTPromiseResolveBlock)resolve reject:(RCTPromise
183
183
  resolve([Radar getMetadata]);
184
184
  }
185
185
 
186
+ RCT_EXPORT_METHOD(setTags:(NSArray<NSString *> *)tags) {
187
+ [Radar setTags:tags];
188
+ }
189
+
190
+ RCT_EXPORT_METHOD(getTags:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
191
+ resolve([Radar getTags]);
192
+ }
193
+
194
+ RCT_EXPORT_METHOD(addTags:(NSArray<NSString *> *)tags) {
195
+ [Radar addTags:tags];
196
+ }
197
+
198
+ RCT_EXPORT_METHOD(removeTags:(NSArray<NSString *> *)tags) {
199
+ [Radar removeTags:tags];
200
+ }
201
+
186
202
  RCT_EXPORT_METHOD(setProduct:(NSString *)product) {
187
203
  [Radar setProduct:product];
188
204
  }
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "React Native module for Radar, the leading geofencing and location tracking platform",
4
4
  "homepage": "https://radar.com",
5
5
  "license": "Apache-2.0",
6
- "version": "3.21.0",
6
+ "version": "3.22.0",
7
7
  "main": "dist/index.js",
8
8
  "files": [
9
9
  "dist",
@@ -53,6 +53,10 @@ export interface RadarNativeInterface {
53
53
  getDescription: () => Promise<string>;
54
54
  setMetadata: (metadata: RadarMetadata) => void;
55
55
  getMetadata: () => Promise<RadarMetadata>;
56
+ setTags: (tags: string[]) => void;
57
+ getTags: () => Promise<string[]>;
58
+ addTags: (tags: string[]) => void;
59
+ removeTags: (tags: string[]) => void;
56
60
  setProduct(product: string): void;
57
61
  getProduct: () => Promise<string>;
58
62
  setAnonymousTrackingEnabled: (enabled: boolean) => void;
@@ -42,6 +42,10 @@ export interface Spec extends TurboModule {
42
42
  getDescription(): Promise<string>;
43
43
  setMetadata(metadata: Object): void;
44
44
  getMetadata(): Promise<Object>;
45
+ setTags(tags: Array<string>): void;
46
+ getTags(): Promise<Array<string>>;
47
+ addTags(tags: Array<string>): void;
48
+ removeTags(tags: Array<string>): void;
45
49
  setProduct(product: string): void;
46
50
  getProduct(): Promise<string>;
47
51
  setAnonymousTrackingEnabled(enabled: boolean): void;
@@ -268,6 +268,18 @@ const Radar: RadarNativeInterface = {
268
268
  getMetadata: function (): Promise<RadarMetadata> {
269
269
  return NativeRadar.getMetadata() as Promise<RadarMetadata>;
270
270
  },
271
+ setTags: function (tags: string[]): void {
272
+ return NativeRadar.setTags(tags);
273
+ },
274
+ getTags: function (): Promise<string[]> {
275
+ return NativeRadar.getTags() as Promise<string[]>;
276
+ },
277
+ addTags: function (tags: string[]): void {
278
+ return NativeRadar.addTags(tags);
279
+ },
280
+ removeTags: function (tags: string[]): void {
281
+ return NativeRadar.removeTags(tags);
282
+ },
271
283
  setProduct: function (product: string): void {
272
284
  return NativeRadar.setProduct(product);
273
285
  },
package/src/version.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  // This file contains the version of the react-native-radar package
2
2
  // It should be updated to match the version in package.json
3
- export const VERSION = '3.21.0';
3
+ export const VERSION = '3.22.0';