react-native-radar 3.23.6 → 3.23.7-beta.2
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/android/src/main/java/com/radar/RadarModuleImpl.java +11 -0
- package/android/src/newarch/java/com/radar/RadarModule.kt +11 -2
- package/android/src/oldarch/java/com/radar/RadarModule.java +13 -2
- package/dist/@types/RadarNativeInterface.d.ts +3 -1
- package/dist/NativeRadar.d.ts +3 -1
- package/dist/index.native.js +14 -3
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/ios/RNRadar.mm +17 -3
- package/package.json +1 -1
- package/src/@types/RadarNativeInterface.ts +3 -1
- package/src/NativeRadar.ts +3 -1
- package/src/index.native.ts +14 -2
- package/src/version.ts +1 -1
|
@@ -1298,4 +1298,15 @@ public class RadarModuleImpl {
|
|
|
1298
1298
|
}
|
|
1299
1299
|
Radar.showInAppMessage(inAppMessage);
|
|
1300
1300
|
}
|
|
1301
|
+
|
|
1302
|
+
public void setPushNotificationToken(String token) {
|
|
1303
|
+
Radar.setPushNotificationToken(token);
|
|
1304
|
+
}
|
|
1305
|
+
|
|
1306
|
+
public void isInitialized(final Promise promise) {
|
|
1307
|
+
if (promise == null) {
|
|
1308
|
+
return;
|
|
1309
|
+
}
|
|
1310
|
+
promise.resolve(Radar.isInitialized());
|
|
1311
|
+
}
|
|
1301
1312
|
}
|
|
@@ -140,10 +140,11 @@ class RadarModule(reactContext: ReactApplicationContext) :
|
|
|
140
140
|
return NAME
|
|
141
141
|
}
|
|
142
142
|
|
|
143
|
-
override fun initialize(publishableKey: String, fraud: Boolean): Unit {
|
|
143
|
+
override fun initialize(publishableKey: String, fraud: Boolean, options: ReadableMap?): Unit {
|
|
144
|
+
// options parameter is no-op on Android for now
|
|
144
145
|
val editor = reactApplicationContext.getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit()
|
|
145
146
|
editor.putString("x_platform_sdk_type", "ReactNative")
|
|
146
|
-
editor.putString("x_platform_sdk_version", "3.23.
|
|
147
|
+
editor.putString("x_platform_sdk_version", "3.23.7-beta.2")
|
|
147
148
|
editor.apply()
|
|
148
149
|
|
|
149
150
|
Radar.initialize(reactApplicationContext, publishableKey, radarReceiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud, null, radarInAppMessageReceiver, currentActivity)
|
|
@@ -432,6 +433,14 @@ class RadarModule(reactContext: ReactApplicationContext) :
|
|
|
432
433
|
radarModuleImpl.showInAppMessage(inAppMessage)
|
|
433
434
|
}
|
|
434
435
|
|
|
436
|
+
override fun setPushNotificationToken(token: String): Unit {
|
|
437
|
+
radarModuleImpl.setPushNotificationToken(token)
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
override fun isInitialized(promise: Promise): Unit {
|
|
441
|
+
radarModuleImpl.isInitialized(promise)
|
|
442
|
+
}
|
|
443
|
+
|
|
435
444
|
|
|
436
445
|
companion object {
|
|
437
446
|
const val NAME = "RNRadar"
|
|
@@ -98,11 +98,12 @@ public class RadarModule extends ReactContextBaseJavaModule implements Permissio
|
|
|
98
98
|
}
|
|
99
99
|
|
|
100
100
|
@ReactMethod
|
|
101
|
-
public void initialize(String publishableKey, boolean fraud) {
|
|
101
|
+
public void initialize(String publishableKey, boolean fraud, ReadableMap options) {
|
|
102
|
+
// options parameter is no-op on Android for now
|
|
102
103
|
this.fraud = fraud;
|
|
103
104
|
SharedPreferences.Editor editor = getReactApplicationContext().getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit();
|
|
104
105
|
editor.putString("x_platform_sdk_type", "ReactNative");
|
|
105
|
-
editor.putString("x_platform_sdk_version", "3.23.
|
|
106
|
+
editor.putString("x_platform_sdk_version", "3.23.7-beta.2");
|
|
106
107
|
editor.apply();
|
|
107
108
|
Radar.initialize(getReactApplicationContext(), publishableKey, receiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud, null, inAppMessageReceiver, getCurrentActivity());
|
|
108
109
|
if (fraud) {
|
|
@@ -444,4 +445,14 @@ public class RadarModule extends ReactContextBaseJavaModule implements Permissio
|
|
|
444
445
|
radarModuleImpl.showInAppMessage(inAppMessageMap);
|
|
445
446
|
}
|
|
446
447
|
|
|
448
|
+
@ReactMethod
|
|
449
|
+
public void setPushNotificationToken(String token) {
|
|
450
|
+
radarModuleImpl.setPushNotificationToken(token);
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
@ReactMethod
|
|
454
|
+
public void isInitialized(final Promise promise) {
|
|
455
|
+
radarModuleImpl.isInitialized(promise);
|
|
456
|
+
}
|
|
457
|
+
|
|
447
458
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RadarPermissionsStatus, RadarTrackCallback, RadarTrackOnceOptions, RadarLocationUpdateCallback, RadarClientLocationUpdateCallback, RadarErrorCallback, RadarLogUpdateCallback, RadarEventUpdateCallback, RadarTokenUpdateCallback, RadarLogLevel, RadarMetadata, RadarTrackingOptionsDesiredAccuracy, RadarLocationCallback, RadarTrackVerifiedCallback, RadarTrackVerifiedOptions, RadarTrackingOptions, RadarVerifiedTrackingOptions, RadarMockTrackingOptions, RadarTrackingOptionsForegroundService, RadarNotificationOptions, RadarTripOptions, RadarStartTripOptions, RadarTripCallback, RadarUpdateTripOptions, RadarContextCallback, RadarSearchPlacesOptions, RadarSearchPlacesCallback, RadarSearchGeofencesCallback, RadarSearchGeofencesOptions, RadarAutocompleteOptions, RadarAddressCallback, RadarReverseGeocodeOptions, RadarGeocodeOptions, RadarValidateAddressCallback, RadarIPGeocodeCallback, RadarAddress, RadarLogConversionOptions, RadarGetDistanceOptions, RadarRouteCallback, RadarGetMatrixOptions, RadarLogConversionCallback, RadarRouteMatrix, Location, RadarNewInAppMessageCallback, RadarInAppMessageDismissedCallback, RadarInAppMessageClickedCallback, RadarInAppMessage } from "./types";
|
|
2
2
|
export interface RadarNativeInterface {
|
|
3
|
-
initialize: (publishableKey: string, fraud?: boolean) => void;
|
|
3
|
+
initialize: (publishableKey: string, fraud?: boolean, options?: Object | null) => void;
|
|
4
4
|
setLogLevel: (level: RadarLogLevel) => void;
|
|
5
5
|
setUserId: (userId: string) => void;
|
|
6
6
|
getUserId: () => Promise<string>;
|
|
@@ -57,6 +57,8 @@ export interface RadarNativeInterface {
|
|
|
57
57
|
nativeSdkVersion: () => Promise<string>;
|
|
58
58
|
rnSdkVersion: () => string;
|
|
59
59
|
showInAppMessage: (inAppMessage: RadarInAppMessage) => void;
|
|
60
|
+
setPushNotificationToken: (token: string) => void;
|
|
61
|
+
isInitialized: () => Promise<boolean>;
|
|
60
62
|
onLocationUpdated: (callback: RadarLocationUpdateCallback | null) => void;
|
|
61
63
|
onClientLocationUpdated: (callback: RadarClientLocationUpdateCallback | null) => void;
|
|
62
64
|
onError: (callback: RadarErrorCallback | null) => void;
|
package/dist/NativeRadar.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ export type InAppMessageClickedEmitter = {
|
|
|
32
32
|
inAppMessage: Object;
|
|
33
33
|
};
|
|
34
34
|
export interface Spec extends TurboModule {
|
|
35
|
-
initialize(publishableKey: string, fraud: boolean): void;
|
|
35
|
+
initialize(publishableKey: string, fraud: boolean, options: Object | null): void;
|
|
36
36
|
requestPermissions(background: boolean): Promise<string>;
|
|
37
37
|
getPermissionsStatus(): Promise<string>;
|
|
38
38
|
trackOnce(trackOnceOptions: Object | null): Promise<Object>;
|
|
@@ -90,6 +90,8 @@ export interface Spec extends TurboModule {
|
|
|
90
90
|
getHost(): Promise<string>;
|
|
91
91
|
getPublishableKey(): Promise<string>;
|
|
92
92
|
showInAppMessage(inAppMessage: Object): void;
|
|
93
|
+
setPushNotificationToken(token: string): void;
|
|
94
|
+
isInitialized(): Promise<boolean>;
|
|
93
95
|
readonly locationEmitter: EventEmitter<LocationEmitter>;
|
|
94
96
|
readonly clientLocationEmitter: EventEmitter<ClientLocationEmitter>;
|
|
95
97
|
readonly errorEmitter: EventEmitter<ErrorEmitter>;
|
package/dist/index.native.js
CHANGED
|
@@ -14,6 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.addListener = addListener;
|
|
16
16
|
const react_native_1 = require("react-native");
|
|
17
|
+
const react_native_2 = require("react-native");
|
|
17
18
|
const version_1 = require("./version");
|
|
18
19
|
const NativeRadar_1 = __importDefault(require("./NativeRadar"));
|
|
19
20
|
const NativeRadar = NativeRadar_1.default;
|
|
@@ -31,7 +32,7 @@ const NativeRadar = NativeRadar_1.default;
|
|
|
31
32
|
// },
|
|
32
33
|
// });
|
|
33
34
|
const compatEventEmitter = NativeRadar.locationEmitter == null
|
|
34
|
-
? new
|
|
35
|
+
? new react_native_2.NativeEventEmitter(react_native_2.NativeModules.RNRadar)
|
|
35
36
|
: null;
|
|
36
37
|
function addListener(event, handler) {
|
|
37
38
|
if (compatEventEmitter != null) {
|
|
@@ -49,8 +50,8 @@ let newInAppMessageUpdateSubscription = null;
|
|
|
49
50
|
let inAppMessageDismissedUpdateSubscription = null;
|
|
50
51
|
let inAppMessageClickedUpdateSubscription = null;
|
|
51
52
|
const Radar = {
|
|
52
|
-
initialize: (publishableKey, fraud) => {
|
|
53
|
-
NativeRadar.initialize(publishableKey, !!fraud);
|
|
53
|
+
initialize: (publishableKey, fraud, options) => {
|
|
54
|
+
NativeRadar.initialize(publishableKey, !!fraud, options || null);
|
|
54
55
|
Radar.onNewInAppMessage((inAppMessage) => {
|
|
55
56
|
Radar.showInAppMessage(inAppMessage);
|
|
56
57
|
});
|
|
@@ -191,6 +192,13 @@ const Radar = {
|
|
|
191
192
|
showInAppMessage: (inAppMessage) => {
|
|
192
193
|
return NativeRadar.showInAppMessage(inAppMessage);
|
|
193
194
|
},
|
|
195
|
+
setPushNotificationToken: (token) => {
|
|
196
|
+
if (react_native_1.Platform.OS === 'android') {
|
|
197
|
+
return NativeRadar.setPushNotificationToken(token);
|
|
198
|
+
}
|
|
199
|
+
// iOS handles push notifications differently via AppDelegate
|
|
200
|
+
// See: https://docs.radar.com/sdk/silent-push#silent-push
|
|
201
|
+
},
|
|
194
202
|
requestPermissions: (background) => {
|
|
195
203
|
return NativeRadar.requestPermissions(background);
|
|
196
204
|
},
|
|
@@ -359,5 +367,8 @@ const Radar = {
|
|
|
359
367
|
getPublishableKey: function () {
|
|
360
368
|
return NativeRadar.getPublishableKey();
|
|
361
369
|
},
|
|
370
|
+
isInitialized: function () {
|
|
371
|
+
return NativeRadar.isInitialized();
|
|
372
|
+
},
|
|
362
373
|
};
|
|
363
374
|
exports.default = Radar;
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "3.23.
|
|
1
|
+
export declare const VERSION = "3.23.7-beta.2";
|
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.23.
|
|
6
|
+
exports.VERSION = '3.23.7-beta.2';
|
package/ios/RNRadar.mm
CHANGED
|
@@ -184,10 +184,15 @@ RCT_EXPORT_MODULE()
|
|
|
184
184
|
#endif
|
|
185
185
|
}
|
|
186
186
|
|
|
187
|
-
RCT_EXPORT_METHOD(initialize:(NSString *)publishableKey fraud:(BOOL)fraud) {
|
|
187
|
+
RCT_EXPORT_METHOD(initialize:(NSString *)publishableKey fraud:(BOOL)fraud options:(NSDictionary *)options) {
|
|
188
188
|
[[NSUserDefaults standardUserDefaults] setObject:@"ReactNative" forKey:@"radar-xPlatformSDKType"];
|
|
189
|
-
[[NSUserDefaults standardUserDefaults] setObject:@"3.23.
|
|
190
|
-
|
|
189
|
+
[[NSUserDefaults standardUserDefaults] setObject:@"3.23.7-beta.2" forKey:@"radar-xPlatformSDKVersion"];
|
|
190
|
+
|
|
191
|
+
RadarInitializeOptions *radarOptions = [[RadarInitializeOptions alloc] init];
|
|
192
|
+
if (options != nil && options[@"silentPush"]) {
|
|
193
|
+
radarOptions.silentPush = [options[@"silentPush"] boolValue];
|
|
194
|
+
}
|
|
195
|
+
[Radar initializeWithPublishableKey:publishableKey options:radarOptions];
|
|
191
196
|
}
|
|
192
197
|
|
|
193
198
|
RCT_EXPORT_METHOD(setLogLevel:(NSString *)level) {
|
|
@@ -1294,6 +1299,15 @@ RCT_EXPORT_METHOD(showInAppMessage:(NSDictionary *)inAppMessageDict) {
|
|
|
1294
1299
|
}
|
|
1295
1300
|
}
|
|
1296
1301
|
|
|
1302
|
+
RCT_EXPORT_METHOD(setPushNotificationToken:(NSString *)token) {
|
|
1303
|
+
// No-op on iOS - push notifications are configured differently
|
|
1304
|
+
// iOS uses didRegisterForRemoteNotificationsWithDeviceToken in AppDelegate
|
|
1305
|
+
}
|
|
1306
|
+
|
|
1307
|
+
RCT_EXPORT_METHOD(isInitialized:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
|
|
1308
|
+
resolve(@(Radar.isInitialized));
|
|
1309
|
+
}
|
|
1310
|
+
|
|
1297
1311
|
RCT_EXPORT_METHOD(logConversion:(NSDictionary *)optionsDict resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
|
|
1298
1312
|
if (optionsDict == nil) {
|
|
1299
1313
|
if (reject) {
|
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.23.
|
|
6
|
+
"version": "3.23.7-beta.2",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"files": [
|
|
9
9
|
"dist",
|
|
@@ -49,7 +49,7 @@ import type {
|
|
|
49
49
|
} from "./types";
|
|
50
50
|
|
|
51
51
|
export interface RadarNativeInterface {
|
|
52
|
-
initialize: (publishableKey: string, fraud?: boolean) => void;
|
|
52
|
+
initialize: (publishableKey: string, fraud?: boolean, options?: Object | null) => void;
|
|
53
53
|
setLogLevel: (level: RadarLogLevel) => void;
|
|
54
54
|
setUserId: (userId: string) => void;
|
|
55
55
|
getUserId: () => Promise<string>;
|
|
@@ -124,6 +124,8 @@ export interface RadarNativeInterface {
|
|
|
124
124
|
nativeSdkVersion: () => Promise<string>;
|
|
125
125
|
rnSdkVersion: () => string;
|
|
126
126
|
showInAppMessage: (inAppMessage: RadarInAppMessage) => void;
|
|
127
|
+
setPushNotificationToken: (token: string) => void;
|
|
128
|
+
isInitialized: () => Promise<boolean>;
|
|
127
129
|
|
|
128
130
|
onLocationUpdated: (callback: RadarLocationUpdateCallback | null) => void;
|
|
129
131
|
onClientLocationUpdated: (
|
package/src/NativeRadar.ts
CHANGED
|
@@ -43,7 +43,7 @@ export type InAppMessageClickedEmitter = {
|
|
|
43
43
|
};
|
|
44
44
|
|
|
45
45
|
export interface Spec extends TurboModule {
|
|
46
|
-
initialize(publishableKey: string, fraud: boolean): void;
|
|
46
|
+
initialize(publishableKey: string, fraud: boolean, options: Object | null): void;
|
|
47
47
|
requestPermissions(background: boolean): Promise<string>;
|
|
48
48
|
getPermissionsStatus(): Promise<string>;
|
|
49
49
|
trackOnce(trackOnceOptions: Object | null): Promise<Object>;
|
|
@@ -101,6 +101,8 @@ export interface Spec extends TurboModule {
|
|
|
101
101
|
getHost(): Promise<string>;
|
|
102
102
|
getPublishableKey(): Promise<string>;
|
|
103
103
|
showInAppMessage(inAppMessage: Object): void;
|
|
104
|
+
setPushNotificationToken(token: string): void;
|
|
105
|
+
isInitialized(): Promise<boolean>;
|
|
104
106
|
readonly locationEmitter: EventEmitter<LocationEmitter>;
|
|
105
107
|
readonly clientLocationEmitter: EventEmitter<ClientLocationEmitter>;
|
|
106
108
|
readonly errorEmitter: EventEmitter<ErrorEmitter>;
|
package/src/index.native.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { EventSubscription } from "react-native";
|
|
2
|
+
import { Platform } from "react-native";
|
|
2
3
|
import type { RadarNativeInterface } from "./@types/RadarNativeInterface";
|
|
3
4
|
import type {
|
|
4
5
|
RadarTrackCallback,
|
|
@@ -118,8 +119,8 @@ let inAppMessageDismissedUpdateSubscription: EventSubscription | null = null;
|
|
|
118
119
|
let inAppMessageClickedUpdateSubscription: EventSubscription | null = null;
|
|
119
120
|
|
|
120
121
|
const Radar: RadarNativeInterface = {
|
|
121
|
-
initialize: (publishableKey: string, fraud?: boolean) => {
|
|
122
|
-
NativeRadar.initialize(publishableKey, !!fraud);
|
|
122
|
+
initialize: (publishableKey: string, fraud?: boolean, options?: Object | null) => {
|
|
123
|
+
NativeRadar.initialize(publishableKey, !!fraud, options || null);
|
|
123
124
|
Radar.onNewInAppMessage((inAppMessage) => {
|
|
124
125
|
Radar.showInAppMessage(inAppMessage);
|
|
125
126
|
});
|
|
@@ -317,6 +318,14 @@ const Radar: RadarNativeInterface = {
|
|
|
317
318
|
return NativeRadar.showInAppMessage(inAppMessage);
|
|
318
319
|
},
|
|
319
320
|
|
|
321
|
+
setPushNotificationToken: (token: string) => {
|
|
322
|
+
if (Platform.OS === 'android') {
|
|
323
|
+
return NativeRadar.setPushNotificationToken(token);
|
|
324
|
+
}
|
|
325
|
+
// iOS handles push notifications differently via AppDelegate
|
|
326
|
+
// See: https://docs.radar.com/sdk/silent-push#silent-push
|
|
327
|
+
},
|
|
328
|
+
|
|
320
329
|
requestPermissions: (background: boolean) => {
|
|
321
330
|
return NativeRadar.requestPermissions(
|
|
322
331
|
background
|
|
@@ -534,6 +543,9 @@ const Radar: RadarNativeInterface = {
|
|
|
534
543
|
getPublishableKey: function (): Promise<string> {
|
|
535
544
|
return NativeRadar.getPublishableKey();
|
|
536
545
|
},
|
|
546
|
+
isInitialized: function (): Promise<boolean> {
|
|
547
|
+
return NativeRadar.isInitialized();
|
|
548
|
+
},
|
|
537
549
|
};
|
|
538
550
|
|
|
539
551
|
export default Radar;
|
package/src/version.ts
CHANGED