Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,4 @@ jobs:
- name: Run semantic-release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# TODO: remove NPM_TOKEN
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
run: yarn release
Original file line number Diff line number Diff line change
Expand Up @@ -368,7 +368,7 @@ class GoogleMapsViewImpl(

var onMapError: ((RNMapErrorCode) -> Unit)? = null
var onMapReady: ((Boolean) -> Unit)? = null
var onMapLoaded: ((RNRegion, RNCameraChange) -> Unit)? = null
var onMapLoaded: ((RNRegion, RNCamera) -> Unit)? = null
var onLocationUpdate: ((RNLocation) -> Unit)? = null
var onLocationError: ((RNLocationErrorCode) -> Unit)? = null
var onMapPress: ((RNLatLng) -> Unit)? = null
Expand All @@ -388,9 +388,9 @@ class GoogleMapsViewImpl(
var onInfoWindowLongPress: ((String) -> Unit)? = null
var onMyLocationPress: ((RNLocation) -> Unit)? = null
var onMyLocationButtonPress: ((Boolean) -> Unit)? = null
var onCameraChangeStart: ((RNRegion, RNCameraChange, Boolean) -> Unit)? = null
var onCameraChange: ((RNRegion, RNCameraChange, Boolean) -> Unit)? = null
var onCameraChangeComplete: ((RNRegion, RNCameraChange, Boolean) -> Unit)? = null
var onCameraChangeStart: ((RNRegion, RNCamera, Boolean) -> Unit)? = null
var onCameraChange: ((RNRegion, RNCamera, Boolean) -> Unit)? = null
var onCameraChangeComplete: ((RNRegion, RNCamera, Boolean) -> Unit)? = null

fun showMarkerInfoWindow(id: String) =
onUi {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -305,7 +305,7 @@ class RNGoogleMapsPlusView(
view.onMapReady = cb
}

override var onMapLoaded: ((RNRegion, RNCameraChange) -> Unit)? = null
override var onMapLoaded: ((RNRegion, RNCamera) -> Unit)? = null
set(cb) {
view.onMapLoaded = cb
}
Expand Down Expand Up @@ -405,17 +405,17 @@ class RNGoogleMapsPlusView(
view.onMyLocationButtonPress = cb
}

override var onCameraChangeStart: ((RNRegion, RNCameraChange, Boolean) -> Unit)? = null
override var onCameraChangeStart: ((RNRegion, RNCamera, Boolean) -> Unit)? = null
set(cb) {
view.onCameraChangeStart = cb
}

override var onCameraChange: ((RNRegion, RNCameraChange, Boolean) -> Unit)? = null
override var onCameraChange: ((RNRegion, RNCamera, Boolean) -> Unit)? = null
set(cb) {
view.onCameraChange = cb
}

override var onCameraChangeComplete: ((RNRegion, RNCameraChange, Boolean) -> Unit)? = null
override var onCameraChangeComplete: ((RNRegion, RNCamera, Boolean) -> Unit)? = null
set(cb) {
view.onCameraChangeComplete = cb
}
Expand All @@ -429,7 +429,7 @@ class RNGoogleMapsPlusView(
}

override fun setCamera(
camera: RNCamera,
camera: RNCameraUpdate,
animated: Boolean?,
durationMs: Double?,
) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,9 @@ package com.rngooglemapsplus.extensions

import com.google.android.gms.maps.model.CameraPosition
import com.rngooglemapsplus.RNCamera
import com.rngooglemapsplus.RNCameraChange

fun CameraPosition.toRnCamera(): RNCameraChange =
RNCameraChange(
fun CameraPosition.toRnCamera(): RNCamera =
RNCamera(
center = target.toRnLatLng(),
zoom = zoom.toDouble(),
bearing = bearing.toDouble(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ package com.rngooglemapsplus.extensions

import com.google.android.gms.maps.model.CameraPosition
import com.google.android.gms.maps.model.LatLng
import com.rngooglemapsplus.RNCamera
import com.rngooglemapsplus.RNCameraUpdate

fun RNCamera.toCameraPosition(current: CameraPosition?) =
fun RNCameraUpdate.toCameraPosition(current: CameraPosition?) =
CameraPosition
.builder()
.target(center?.toLatLng() ?: current?.target ?: LatLng(0.0, 0.0))
Expand Down
4 changes: 2 additions & 2 deletions example/src/components/maptConfigDialog/validator.ts
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ export const RNPositionValidator = object({
y: number(),
});

export const RNCameraValidator = object({
export const RNCameraUpdateValidator = object({
center: optional(RNLatLngValidator),
zoom: optional(number()),
bearing: optional(number()),
Expand Down Expand Up @@ -318,7 +318,7 @@ export const RNBasicMapConfigValidator = object({
object({
mapId: optional(string()),
liteMode: optional(boolean()),
camera: optional(RNCameraValidator),
camera: optional(RNCameraUpdateValidator),
backgroundColor: optional(string()),
})
),
Expand Down
4 changes: 2 additions & 2 deletions example/src/screens/CameraTestScreen.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import MapWrapper from '../components/MapWrapper';
import ControlPanel from '../components/ControlPanel';
import type {
GoogleMapsViewRef,
RNCamera,
RNCameraUpdate,
RNLatLng,
RNLatLngBounds,
} from 'react-native-google-maps-plus';
Expand Down Expand Up @@ -34,7 +34,7 @@ export default function CameraTestScreen() {
{
title: 'Set Camera to SF',
onPress: () => {
const camera: RNCamera = {
const camera: RNCameraUpdate = {
center: { latitude: 37.7749, longitude: -122.4194 },
zoom: 12,
bearing: 0,
Expand Down
4 changes: 2 additions & 2 deletions example/src/types/basicMapConfig.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import type {
RNCamera,
RNCameraUpdate,
RNLocationConfig,
RNMapPadding,
RNMapType,
Expand All @@ -12,7 +12,7 @@ export type RNBasicMapConfig = {
initialProps?: {
mapId?: string;
liteMode?: boolean;
camera?: RNCamera;
camera?: RNCameraUpdate;
backgroundColor?: string;
};
uiSettings?: RNMapUiSettings;
Expand Down
8 changes: 4 additions & 4 deletions ios/GoogleMapViewImpl.swift
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@ GMSIndoorDisplayDelegate {

var onMapError: ((RNMapErrorCode) -> Void)?
var onMapReady: ((Bool) -> Void)?
var onMapLoaded: ((RNRegion, RNCameraChange) -> Void)?
var onMapLoaded: ((RNRegion, RNCamera) -> Void)?
var onLocationUpdate: ((RNLocation) -> Void)?
var onLocationError: ((_ error: RNLocationErrorCode) -> Void)?
var onMapPress: ((RNLatLng) -> Void)?
Expand All @@ -281,9 +281,9 @@ GMSIndoorDisplayDelegate {
var onInfoWindowLongPress: ((String) -> Void)?
var onMyLocationPress: ((RNLocation) -> Void)?
var onMyLocationButtonPress: ((Bool) -> Void)?
var onCameraChangeStart: ((RNRegion, RNCameraChange, Bool) -> Void)?
var onCameraChange: ((RNRegion, RNCameraChange, Bool) -> Void)?
var onCameraChangeComplete: ((RNRegion, RNCameraChange, Bool) -> Void)?
var onCameraChangeStart: ((RNRegion, RNCamera, Bool) -> Void)?
var onCameraChange: ((RNRegion, RNCamera, Bool) -> Void)?
var onCameraChangeComplete: ((RNRegion, RNCamera, Bool) -> Void)?

@MainActor
func showMarkerInfoWindow(id: String) {
Expand Down
10 changes: 5 additions & 5 deletions ios/RNGoogleMapsPlusView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -331,7 +331,7 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
didSet { impl.onMapReady = onMapReady }
}
@MainActor
var onMapLoaded: ((RNRegion, RNCameraChange) -> Void)? {
var onMapLoaded: ((RNRegion, RNCamera) -> Void)? {
didSet { impl.onMapLoaded = onMapLoaded }
}
@MainActor
Expand Down Expand Up @@ -411,15 +411,15 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
didSet { impl.onMyLocationButtonPress = onMyLocationButtonPress }
}
@MainActor
var onCameraChangeStart: ((RNRegion, RNCameraChange, Bool) -> Void)? {
var onCameraChangeStart: ((RNRegion, RNCamera, Bool) -> Void)? {
didSet { impl.onCameraChangeStart = onCameraChangeStart }
}
@MainActor
var onCameraChange: ((RNRegion, RNCameraChange, Bool) -> Void)? {
var onCameraChange: ((RNRegion, RNCamera, Bool) -> Void)? {
didSet { impl.onCameraChange = onCameraChange }
}
@MainActor
var onCameraChangeComplete: ((RNRegion, RNCameraChange, Bool) -> Void)? {
var onCameraChangeComplete: ((RNRegion, RNCamera, Bool) -> Void)? {
didSet { impl.onCameraChangeComplete = onCameraChangeComplete }
}

Expand All @@ -434,7 +434,7 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
}

@MainActor
func setCamera(camera: RNCamera, animated: Bool?, durationMs: Double?) {
func setCamera(camera: RNCameraUpdate, animated: Bool?, durationMs: Double?) {
let cam = camera.toGMSCameraPosition(current: impl.currentCamera)
impl.setCamera(
camera: cam,
Expand Down
4 changes: 2 additions & 2 deletions ios/extensions/GMSCameraPosition+Extension.swift
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import GoogleMaps

extension GMSCameraPosition {
func toRNCamera() -> RNCameraChange {
return RNCameraChange(
func toRNCamera() -> RNCamera {
return RNCamera(
center: target.toRNLatLng(),
zoom: Double(zoom),
bearing: bearing,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import CoreLocation
import GoogleMaps

extension RNCamera {
extension RNCameraUpdate {
func toGMSCameraPosition(current: GMSCameraPosition?) -> GMSCameraPosition {
let center = CLLocationCoordinate2D(
latitude: center?.latitude ?? current?.target.latitude ?? 0.0,
Expand Down
16 changes: 10 additions & 6 deletions src/RNGoogleMapsPlusView.nitro.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import type {
} from 'react-native-nitro-modules';
import type {
RNCamera,
RNCameraChange,
RNCameraUpdate,
RNLatLng,
RNMapPadding,
RNPolygon,
Expand Down Expand Up @@ -54,7 +54,7 @@ export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
locationConfig?: RNLocationConfig;
onMapError?: (error: RNMapErrorCode) => void;
onMapReady?: (ready: boolean) => void;
onMapLoaded?: (region: RNRegion, camera: RNCameraChange) => void;
onMapLoaded?: (region: RNRegion, camera: RNCamera) => void;
onLocationUpdate?: (location: RNLocation) => void;
onLocationError?: (error: RNLocationErrorCode) => void;
onMapPress?: (coordinate: RNLatLng) => void;
Expand All @@ -76,17 +76,17 @@ export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
onMyLocationButtonPress?: (pressed: boolean) => void;
onCameraChangeStart?: (
region: RNRegion,
camera: RNCameraChange,
camera: RNCamera,
isGesture: boolean
) => void;
onCameraChange?: (
region: RNRegion,
camera: RNCameraChange,
camera: RNCamera,
isGesture: boolean
) => void;
onCameraChangeComplete?: (
region: RNRegion,
camera: RNCameraChange,
camera: RNCamera,
isGesture: boolean
) => void;
}
Expand All @@ -96,7 +96,11 @@ export interface RNGoogleMapsPlusViewMethods extends HybridViewMethods {

hideMarkerInfoWindow(id: string): void;

setCamera(camera: RNCamera, animated?: boolean, durationMs?: number): void;
setCamera(
camera: RNCameraUpdate,
animated?: boolean,
durationMs?: number
): void;

setCameraToCoordinates(
coordinates: RNLatLng[],
Expand Down
6 changes: 3 additions & 3 deletions src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type GoogleMapsViewRef = HybridView<RNGoogleMapsPlusViewMethods>;
export type RNInitialProps = {
mapId?: string;
liteMode?: boolean;
camera?: RNCamera;
camera?: RNCameraUpdate;
backgroundColor?: string;
};

Expand Down Expand Up @@ -130,14 +130,14 @@ export interface RNMapStyleElement {
stylers: RNMapStyler[];
}

export type RNCameraChange = {
export type RNCamera = {
center: RNLatLng;
zoom: number;
bearing: number;
tilt: number;
};

export type RNCamera = {
export type RNCameraUpdate = {
center?: RNLatLng;
zoom?: number;
bearing?: number;
Expand Down
Loading