react-native-radar 3.12.1 → 3.12.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.
@@ -18,7 +18,7 @@ android {
18
18
  minSdkVersion 16
19
19
  targetSdkVersion 31
20
20
  versionCode 1
21
- versionName '3.12.0'
21
+ versionName '3.12.3'
22
22
  }
23
23
  lintOptions {
24
24
  abortOnError false
@@ -45,6 +45,6 @@ repositories {
45
45
 
46
46
  dependencies {
47
47
  api 'com.facebook.react:react-native:+'
48
- api 'io.radar:sdk:3.13.0'
48
+ api 'io.radar:sdk:3.13.2'
49
49
  }
50
50
 
@@ -97,7 +97,7 @@ public class RNRadarModule extends ReactContextBaseJavaModule implements Permiss
97
97
  this.fraud = fraud;
98
98
  SharedPreferences.Editor editor = getReactApplicationContext().getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit();
99
99
  editor.putString("x_platform_sdk_type", "ReactNative");
100
- editor.putString("x_platform_sdk_version", "3.12.1");
100
+ editor.putString("x_platform_sdk_version", "3.12.3");
101
101
  editor.apply();
102
102
  if (fraud) {
103
103
  Radar.initialize(getReactApplicationContext(), publishableKey, receiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud);
@@ -219,7 +219,8 @@ public class RNRadarModule extends ReactContextBaseJavaModule implements Permiss
219
219
  return;
220
220
  }
221
221
 
222
- boolean foreground = ActivityCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED;
222
+ boolean foreground = ActivityCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED ||
223
+ ActivityCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED;
223
224
  boolean background = foreground;
224
225
  boolean denied = ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.ACCESS_FINE_LOCATION);
225
226
 
@@ -525,6 +526,11 @@ public class RNRadarModule extends ReactContextBaseJavaModule implements Permiss
525
526
  Radar.stopTracking();
526
527
  }
527
528
 
529
+ @ReactMethod
530
+ public void stopTrackingVerified() {
531
+ Radar.stopTrackingVerified();
532
+ }
533
+
528
534
  @ReactMethod
529
535
  public void isTracking(final Promise promise) {
530
536
  if (promise == null) {
package/dist/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.12.1",
6
+ "version": "3.12.3",
7
7
  "main": "dist/src/index.js",
8
8
  "files": [
9
9
  "android",
@@ -22,9 +22,10 @@ export interface RadarNativeInterface {
22
22
  startTrackingVerified: (options?: RadarVerifiedTrackingOptions) => void;
23
23
  mockTracking: (options: RadarMockTrackingOptions) => void;
24
24
  stopTracking: () => void;
25
+ stopTrackingVerified: () => void;
25
26
  getTrackingOptions: () => Promise<RadarTrackingOptions>;
26
27
  isUsingRemoteTrackingOptions: () => Promise<boolean>;
27
- isTracking: () => boolean;
28
+ isTracking: () => Promise<boolean>;
28
29
  setForegroundServiceOptions: (options: RadarTrackingOptionsForegroundService) => void;
29
30
  setNotificationOptions: (options: RadarNotificationOptions) => void;
30
31
  getTripOptions: () => Promise<RadarTripOptions>;
@@ -474,6 +474,8 @@ export interface RadarFraud {
474
474
  compromised: boolean;
475
475
  jumped: boolean;
476
476
  inaccurate: boolean;
477
+ blocked: boolean;
478
+ sharing: boolean;
477
479
  }
478
480
  export type RadarTrackingOptionsReplay = "all" | "stops" | "none";
479
481
  export type RadarTrackingOptionsSync = "none" | "stopsAndExits" | "all";
@@ -47,6 +47,7 @@ const startTrackingCustom = (options) => react_native_1.NativeModules.RNRadar.st
47
47
  const startTrackingVerified = (options) => react_native_1.NativeModules.RNRadar.startTrackingVerified(options);
48
48
  const mockTracking = (options) => react_native_1.NativeModules.RNRadar.mockTracking(options);
49
49
  const stopTracking = () => react_native_1.NativeModules.RNRadar.stopTracking();
50
+ const stopTrackingVerified = () => react_native_1.NativeModules.RNRadar.stopTrackingVerified();
50
51
  const getTrackingOptions = () => react_native_1.NativeModules.RNRadar.getTrackingOptions();
51
52
  const isUsingRemoteTrackingOptions = () => react_native_1.NativeModules.RNRadar.isUsingRemoteTrackingOptions();
52
53
  const isTracking = () => react_native_1.NativeModules.RNRadar.isTracking();
@@ -106,6 +107,7 @@ const Radar = {
106
107
  startTrackingVerified,
107
108
  mockTracking,
108
109
  stopTracking,
110
+ stopTrackingVerified,
109
111
  isTracking,
110
112
  getTrackingOptions,
111
113
  setForegroundServiceOptions,
@@ -1 +1 @@
1
- github "radarlabs/radar-sdk-ios" "3.13.1"
1
+ github "radarlabs/radar-sdk-ios" "3.13.5"
package/ios/RNRadar.m CHANGED
@@ -24,6 +24,9 @@ RCT_EXPORT_MODULE();
24
24
  return self;
25
25
  }
26
26
 
27
+ /**
28
+ map iOS status string which is PascalCase into standard UPPER_SNAKE_CASE, which is consistent with android and javascript styling.
29
+ */
27
30
  + (NSDictionary *)mapLocationPermissionStatus:(NSDictionary *)status {
28
31
  NSString *statusString = status[@"locationPermissionState"];
29
32
  NSString *newStatusString;
@@ -137,7 +140,7 @@ RCT_EXPORT_MODULE();
137
140
 
138
141
  RCT_EXPORT_METHOD(initialize:(NSString *)publishableKey fraud:(BOOL)fraud) {
139
142
  [[NSUserDefaults standardUserDefaults] setObject:@"ReactNative" forKey:@"radar-xPlatformSDKType"];
140
- [[NSUserDefaults standardUserDefaults] setObject:@"3.12.1" forKey:@"radar-xPlatformSDKVersion"];
143
+ [[NSUserDefaults standardUserDefaults] setObject:@"3.12.3" forKey:@"radar-xPlatformSDKVersion"];
141
144
  [Radar initializeWithPublishableKey:publishableKey];
142
145
  }
143
146
 
@@ -357,7 +360,7 @@ RCT_EXPORT_METHOD(trackVerified:(NSDictionary *)optionsDict resolve:(RCTPromiseR
357
360
  NSMutableDictionary *dict = [NSMutableDictionary new];
358
361
  [dict setObject:[Radar stringForStatus:status] forKey:@"status"];
359
362
  if (token != nil) {
360
- [dict setObject:[token dictionaryValue] forKey:@"token"];
363
+ [dict setObject:[RNRadar mapLocationPermissionStatus:[token dictionaryValue]] forKey:@"token"];
361
364
  }
362
365
  resolver(dict);
363
366
  } else if (rejecter) {
@@ -472,6 +475,10 @@ RCT_EXPORT_METHOD(stopTracking) {
472
475
  [Radar stopTracking];
473
476
  }
474
477
 
478
+ RCT_EXPORT_METHOD(stopTrackingVerified) {
479
+ [Radar stopTrackingVerified];
480
+ }
481
+
475
482
  RCT_EXPORT_METHOD(isTracking:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
476
483
  BOOL res = [Radar isTracking];
477
484
  resolve(@(res));
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.12.1",
6
+ "version": "3.12.3",
7
7
  "main": "dist/src/index.js",
8
8
  "files": [
9
9
  "android",
@@ -15,5 +15,5 @@ Pod::Spec.new do |s|
15
15
  s.platform = :ios, "10.0"
16
16
 
17
17
  s.dependency "React"
18
- s.dependency "RadarSDK", "~> 3.13.1"
18
+ s.dependency "RadarSDK", "~> 3.13.5"
19
19
  end
@@ -66,9 +66,10 @@ export interface RadarNativeInterface {
66
66
  startTrackingVerified: (options?: RadarVerifiedTrackingOptions) => void;
67
67
  mockTracking: (options: RadarMockTrackingOptions) => void;
68
68
  stopTracking: () => void;
69
+ stopTrackingVerified: () => void;
69
70
  getTrackingOptions: () => Promise<RadarTrackingOptions>;
70
71
  isUsingRemoteTrackingOptions: () => Promise<boolean>;
71
- isTracking: () => boolean;
72
+ isTracking: () => Promise<boolean>;
72
73
  setForegroundServiceOptions: (
73
74
  options: RadarTrackingOptionsForegroundService
74
75
  ) => void;
@@ -754,6 +754,8 @@ export interface RadarFraud {
754
754
  compromised: boolean;
755
755
  jumped: boolean;
756
756
  inaccurate: boolean;
757
+ blocked: boolean;
758
+ sharing: boolean;
757
759
  }
758
760
 
759
761
  export type RadarTrackingOptionsReplay = "all" | "stops" | "none";
@@ -134,13 +134,15 @@ const mockTracking = (options: RadarMockTrackingOptions): void =>
134
134
 
135
135
  const stopTracking = (): void => NativeModules.RNRadar.stopTracking();
136
136
 
137
+ const stopTrackingVerified = (): void => NativeModules.RNRadar.stopTrackingVerified();
138
+
137
139
  const getTrackingOptions = (): Promise<RadarTrackingOptions> =>
138
140
  NativeModules.RNRadar.getTrackingOptions();
139
141
 
140
142
  const isUsingRemoteTrackingOptions = (): Promise<boolean> =>
141
143
  NativeModules.RNRadar.isUsingRemoteTrackingOptions();
142
144
 
143
- const isTracking = (): boolean => NativeModules.RNRadar.isTracking();
145
+ const isTracking = (): Promise<boolean> => NativeModules.RNRadar.isTracking();
144
146
 
145
147
  const setForegroundServiceOptions = (
146
148
  options: RadarTrackingOptionsForegroundService
@@ -254,6 +256,7 @@ const Radar: RadarNativeInterface = {
254
256
  startTrackingVerified,
255
257
  mockTracking,
256
258
  stopTracking,
259
+ stopTrackingVerified,
257
260
  isTracking,
258
261
  getTrackingOptions,
259
262
  setForegroundServiceOptions,