diff --git a/android/src/newarch/java/com/radar/RadarModule.kt b/android/src/newarch/java/com/radar/RadarModule.kt index 12827d34..bbbe3626 100644 --- a/android/src/newarch/java/com/radar/RadarModule.kt +++ b/android/src/newarch/java/com/radar/RadarModule.kt @@ -143,7 +143,7 @@ class RadarModule(reactContext: ReactApplicationContext) : override fun initialize(publishableKey: String, fraud: Boolean): Unit { val editor = reactApplicationContext.getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit() editor.putString("x_platform_sdk_type", "ReactNative") - editor.putString("x_platform_sdk_version", "3.23.5") + editor.putString("x_platform_sdk_version", "3.23.6-beta.1") editor.apply() Radar.initialize(reactApplicationContext, publishableKey, radarReceiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud, null, radarInAppMessageReceiver, currentActivity) diff --git a/android/src/oldarch/java/com/radar/RadarModule.java b/android/src/oldarch/java/com/radar/RadarModule.java index 1cf4f79b..5852f8a9 100644 --- a/android/src/oldarch/java/com/radar/RadarModule.java +++ b/android/src/oldarch/java/com/radar/RadarModule.java @@ -102,7 +102,7 @@ public void initialize(String publishableKey, boolean fraud) { this.fraud = fraud; SharedPreferences.Editor editor = getReactApplicationContext().getSharedPreferences("RadarSDK", Context.MODE_PRIVATE).edit(); editor.putString("x_platform_sdk_type", "ReactNative"); - editor.putString("x_platform_sdk_version", "3.23.5"); + editor.putString("x_platform_sdk_version", "3.23.6-beta.1"); editor.apply(); Radar.initialize(getReactApplicationContext(), publishableKey, receiver, Radar.RadarLocationServicesProvider.GOOGLE, fraud, null, inAppMessageReceiver, getCurrentActivity()); if (fraud) { diff --git a/ios/RNRadar.mm b/ios/RNRadar.mm index f22e3e6f..d244e1a0 100644 --- a/ios/RNRadar.mm +++ b/ios/RNRadar.mm @@ -186,7 +186,7 @@ - (void)didUpdateToken:(RadarVerifiedLocationToken *)token { RCT_EXPORT_METHOD(initialize:(NSString *)publishableKey fraud:(BOOL)fraud) { [[NSUserDefaults standardUserDefaults] setObject:@"ReactNative" forKey:@"radar-xPlatformSDKType"]; - [[NSUserDefaults standardUserDefaults] setObject:@"3.23.5" forKey:@"radar-xPlatformSDKVersion"]; + [[NSUserDefaults standardUserDefaults] setObject:@"3.23.6-beta.1" forKey:@"radar-xPlatformSDKVersion"]; [Radar initializeWithPublishableKey:publishableKey]; } diff --git a/package-lock.json b/package-lock.json index 63266370..a862810d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "react-native-radar", - "version": "3.23.5", + "version": "3.23.6-beta.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "react-native-radar", - "version": "3.23.5", + "version": "3.23.6-beta.1", "license": "Apache-2.0", "dependencies": { "@babel/runtime": "^7.21.0", @@ -43,15 +43,11 @@ "typescript": "^5.8.3" }, "peerDependencies": { - "@maplibre/maplibre-react-native": ">=10.2.1", "expo": ">=43.0.5", "react": ">= 16.8.6", "react-native": ">= 0.60.0" }, "peerDependenciesMeta": { - "@maplibre/maplibre-react-native": { - "optional": true - }, "expo": { "optional": true } diff --git a/package.json b/package.json index 241f559e..e7a57ab9 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "description": "React Native module for Radar, the leading geofencing and location tracking platform", "homepage": "https://radar.com", "license": "Apache-2.0", - "version": "3.23.5", + "version": "3.23.6-beta.1", "main": "dist/index.js", "files": [ "dist", @@ -56,15 +56,11 @@ ] }, "peerDependencies": { - "@maplibre/maplibre-react-native": ">=10.2.1", "expo": ">=43.0.5", "react": ">= 16.8.6", "react-native": ">= 0.60.0" }, "peerDependenciesMeta": { - "@maplibre/maplibre-react-native": { - "optional": true - }, "expo": { "optional": true } diff --git a/plugin/tsconfig.tsbuildinfo b/plugin/tsconfig.tsbuildinfo index 9fd35bff..109fe4c3 100644 --- a/plugin/tsconfig.tsbuildinfo +++ b/plugin/tsconfig.tsbuildinfo @@ -1 +1 @@ -{"root":["./src/types.ts","./src/withradar.ts","./src/withradarandroid.ts","./src/withradarios.ts"],"version":"5.8.3"} \ No newline at end of file +{"root":["./src/types.ts","./src/withradar.ts","./src/withradarandroid.ts","./src/withradarios.ts"],"version":"5.9.3"} \ No newline at end of file diff --git a/src/@types/types.ts b/src/@types/types.ts index 6268fb7a..a7a27c70 100644 --- a/src/@types/types.ts +++ b/src/@types/types.ts @@ -846,20 +846,3 @@ export type RadarTripStatus = | "expired" | "completed" | "canceled"; - -export interface RadarMapOptions { - mapStyle?: string; - showUserLocation?: boolean; - onRegionDidChange?: (feature: RadarMapRegionChangeEvent) => void; - onDidFinishLoadingMap?: () => void; - onWillStartLoadingMap?: () => void; - onDidFailLoadingMap?: () => void; -} - -export interface RadarMapRegionChangeEvent { - center: [number, number]; - zoom: number; - bounds?: [number, number, number, number]; - bearing?: number; - pitch?: number; -} \ No newline at end of file diff --git a/src/index.tsx b/src/index.tsx index e8f7bf16..37612053 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -18,10 +18,5 @@ let Autocomplete = Platform.OS !== "web" ? require("./ui/autocomplete").default : {}; export { Autocomplete }; -let Map = Platform.OS !== "web" ? require("./ui/map").default : {}; -export { Map }; - -export type { RadarMapProps } from "./ui/map"; - export * from "./@types/types"; export * from "./@types/RadarNativeInterface"; diff --git a/src/ui/map.jsx b/src/ui/map.jsx deleted file mode 100644 index 136a6bc6..00000000 --- a/src/ui/map.jsx +++ /dev/null @@ -1,139 +0,0 @@ -import React, { useState, useEffect } from 'react'; -import { View, Image } from 'react-native'; -import Radar from '../index.native'; -import { getHost, getPublishableKey } from '../helpers'; -import styles from './styles'; - -let MapLibreGL; -try { - MapLibreGL = require('@maplibre/maplibre-react-native'); -} catch (e) { - MapLibreGL = null; -} - -const DEFAULT_STYLE = 'radar-default-v1'; - -const createStyleURL = async (style = DEFAULT_STYLE) => { - const host = await getHost(); - const publishableKey = await getPublishableKey(); - return `${host}/maps/styles/${style}?publishableKey=${publishableKey}`; -}; - -/** - * RadarMap component for displaying maps with Radar integration - * @param {Object} props - Component props - * @param {Object} [props.mapOptions] - Map configuration options - * @param {string} [props.mapOptions.mapStyle] - Map style identifier (defaults to 'radar-default-v1') - * @param {boolean} [props.mapOptions.showUserLocation] - Whether to show the user's location on the map (default: true) - * @param {function} [props.mapOptions.onRegionDidChange] - Callback fired when the map region changes - * @param {Object} props.mapOptions.onRegionDidChange.feature - The region feature data - * @param {function} [props.mapOptions.onDidFinishLoadingMap] - Callback fired when the map finishes loading - * @param {function} [props.mapOptions.onWillStartLoadingMap] - Callback fired when the map starts loading - * @param {function} [props.mapOptions.onDidFailLoadingMap] - Callback fired when the map fails to load - * @param {React.ReactNode} [props.children] - Child components to render within the map - * @returns {React.Component|null} The RadarMap component or null if dependencies are missing - */ - -const RadarMap = ({ mapOptions, children }) => { - const [styleURL, setStyleURL] = useState(null); - const [userLocation, setUserLocation] = useState(null); - - useEffect(() => { - createStyleURL(mapOptions?.mapStyle || DEFAULT_STYLE).then((result) => { - setStyleURL(result); - }); - }, [mapOptions]); - - useEffect(() => { - Radar.getLocation().then((result) => { - if (result?.location?.latitude && result?.location?.longitude) { - setUserLocation({ - latitude: result.location.latitude, - longitude: result.location.longitude, - }); - } - }).catch((err) => { - // eslint-disable-next-line no-console - console.warn(`Radar SDK: Failed to get location: ${err}`); - }); - }, [mapOptions]); - - if (!styleURL) { - return null; - } - - if (!MapLibreGL) { - return null; - } - - const geoJSONUserLocation = { - type: 'FeatureCollection', - features: userLocation?.longitude !== undefined ? [ - { - type: 'Feature', - geometry: { - type: 'Point', - coordinates: [userLocation.longitude, userLocation.latitude], - }, - }, - ] : [], - }; - - const userLocationMapIndicator = ( - - - - - - ); - - return ( - - - {mapOptions?.showUserLocation !== false && userLocationMapIndicator} - {children} - - - - ); -}; - -export default RadarMap; diff --git a/src/ui/map.tsx b/src/ui/map.tsx deleted file mode 100644 index d532c0fd..00000000 --- a/src/ui/map.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import React from 'react'; -import { RadarMapOptions } from '../@types/types'; - -const RadarMapJS = require('./map.jsx').default; - -export interface RadarMapProps { - /** - * Configuration options for the RadarMap component - */ - mapOptions?: RadarMapOptions; - /** - * Child components to render within the map - */ - children?: React.ReactNode; -} - -/** - * TypeScript wrapper for the RadarMap component that provides type safety - * while delegating the implementation to the JavaScript version. - * - * @param props - The props for the RadarMap component - * @returns The RadarMap component with proper TypeScript typing - */ -const RadarMap: React.FC = (props) => { - return React.createElement(RadarMapJS, props); -}; - -export default RadarMap; \ No newline at end of file diff --git a/src/ui/styles.js b/src/ui/styles.js index ff107501..cbeb6588 100644 --- a/src/ui/styles.js +++ b/src/ui/styles.js @@ -106,20 +106,6 @@ const styles = StyleSheet.create({ height: 15, resizeMode: 'contain', }, - mapContainer: { - flex: 1, - }, - map: { - flex: 1, - }, - mapLogo: { - position: 'absolute', - bottom: -10, - left: 5, - width: 50, - height: 50, - resizeMode: 'contain', - }, }); export default styles;