react-native-maps 1.21.0-alpha.75 → 1.21.0-alpha.77

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.
@@ -3,6 +3,7 @@ def safeExtGet(prop, fallback) {
3
3
  }
4
4
 
5
5
  buildscript {
6
+ def kotlin_version = rootProject.ext.has('kotlinVersion') ? rootProject.ext.get('kotlinVersion') : '2.0.21'
6
7
  // The Android Gradle plugin is only required when opening the android folder stand-alone.
7
8
  // This avoids unnecessary downloads and potential conflicts when the library is included as a
8
9
  // module dependency in an application project.
@@ -13,7 +14,7 @@ buildscript {
13
14
  }
14
15
  dependencies {
15
16
  classpath("com.android.tools.build:gradle:8.7.2")
16
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${safeExtGet('kotlinVersion', '2.0.21')}")
17
+ classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlin_version}")
17
18
  }
18
19
  }
19
20
  }
@@ -57,7 +58,7 @@ android {
57
58
 
58
59
  defaultConfig {
59
60
  minSdkVersion safeExtGet('minSdkVersion', 21)
60
- targetSdkVersion safeExtGet('targetSdkVersion', 34)
61
+ targetSdkVersion safeExtGet('targetSdkVersion', 35)
61
62
 
62
63
  buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
63
64
 
@@ -83,6 +84,11 @@ android {
83
84
  }
84
85
  }
85
86
  }
87
+
88
+ buildFeatures {
89
+ buildConfig = true
90
+ prefab = true
91
+ }
86
92
  }
87
93
 
88
94
  def reactNativeArchitectures() {
@@ -103,7 +109,7 @@ repositories {
103
109
  dependencies {
104
110
  implementation 'com.facebook.react:react-native:+'
105
111
  implementation "com.google.android.gms:play-services-base:${safeExtGet('googlePlayServicesBaseVersion', '18.5.0')}"
106
- implementation "com.google.android.gms:play-services-maps:${safeExtGet('googlePlayServicesMapsVersion', '19.0.0')}"
112
+ implementation "com.google.android.gms:play-services-maps:${safeExtGet('googlePlayServicesMapsVersion', '19.1.0')}"
107
113
  implementation "com.google.android.gms:play-services-location:${safeExtGet('googlePlayServicesLocationVersion', '21.3.0')}"
108
114
  implementation 'com.google.maps.android:android-maps-utils:3.10.0'
109
115
  implementation "androidx.work:work-runtime:2.9.1"
@@ -1,5 +1,5 @@
1
1
  distributionBase=GRADLE_USER_HOME
2
2
  distributionPath=wrapper/dists
3
- distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-all.zip
3
+ distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip
4
4
  zipStoreBase=GRADLE_USER_HOME
5
5
  zipStorePath=wrapper/dists
package/android/gradlew CHANGED
@@ -86,8 +86,7 @@ done
86
86
  # shellcheck disable=SC2034
87
87
  APP_BASE_NAME=${0##*/}
88
88
  # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
89
- APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
90
- ' "$PWD" ) || exit
89
+ APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
91
90
 
92
91
  # Use the maximum available, or set MAX_FD != -1 to use that value.
93
92
  MAX_FD=maximum
@@ -246,7 +246,7 @@ id regionAsJSON(MKCoordinateRegion region) {
246
246
  AIRGoogleMapPolygon *polygon = (AIRGoogleMapPolygon*)subview;
247
247
  [polygon didInsertInMap:self];
248
248
  [self.polygons addObject:polygon];
249
-
249
+
250
250
  } else if ([NSStringFromClass([subview class]) isEqualToString:@"RNMapsGooglePolygonView"]){
251
251
  // RNMapsGooglePolygonView *polygon = (RNMapsGooglePolygonView*)subview;
252
252
  // [polygon didInsertInMap:self];
@@ -1144,7 +1144,7 @@ id regionAsJSON(MKCoordinateRegion region) {
1144
1144
  [self setKMLData:[NSData dataWithContentsOfURL:url]];
1145
1145
  } else {
1146
1146
  __weak AIRGoogleMap *weakSelf = self;
1147
-
1147
+
1148
1148
  NSURLSession *session = [NSURLSession sharedSession];
1149
1149
  NSURLSessionDataTask *dataTask = [session dataTaskWithURL:url
1150
1150
  completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
@@ -1162,7 +1162,7 @@ id regionAsJSON(MKCoordinateRegion region) {
1162
1162
  [dataTask resume];
1163
1163
  }
1164
1164
 
1165
-
1165
+
1166
1166
  }
1167
1167
 
1168
1168
 
@@ -1172,7 +1172,7 @@ id regionAsJSON(MKCoordinateRegion region) {
1172
1172
  return;
1173
1173
  }
1174
1174
  self.onIndoorBuildingFocused(@{
1175
- @"IndoorBuilding": @{
1175
+ @"indoorBuilding": @{
1176
1176
  @"activeLevelIndex": @0,
1177
1177
  @"underground": @false,
1178
1178
  @"levels": [[NSMutableArray alloc]init]
@@ -9,9 +9,9 @@
9
9
 
10
10
  #import "RNMapsGoogleMapView.h"
11
11
  #import "RNMapsGooglePolygonView.h"
12
- #import "AirGoogleMap.h"
12
+ #import "AIRGoogleMap.h"
13
13
  #import "AIRMapMarker.h"
14
- #import "AirGoogleMapManager.h"
14
+ #import "AIRGoogleMapManager.h"
15
15
 
16
16
  #import <react-native-maps-generated/ComponentDescriptors.h>
17
17
  #import <react-native-maps-generated/EventEmitters.h>
@@ -94,7 +94,7 @@ using namespace facebook::react;
94
94
  if ( activeLevelIndex < [_view.indoorDisplay.activeBuilding.levels count]) {
95
95
  _view.indoorDisplay.activeLevel = _view.indoorDisplay.activeBuilding.levels[activeLevelIndex];
96
96
  }
97
-
97
+
98
98
  }
99
99
 
100
100
  #pragma mark - Native commands
@@ -194,7 +194,7 @@ using namespace facebook::react;
194
194
  mapViewEventEmitter->onMapReady(data);
195
195
  }
196
196
  };
197
-
197
+
198
198
  _view.onIndoorLevelActivated = [self](NSDictionary* dictionary) {
199
199
  if (_eventEmitter) {
200
200
  auto mapViewEventEmitter = std::static_pointer_cast<RNMapsGoogleMapViewEventEmitter const>(_eventEmitter);
@@ -204,28 +204,27 @@ using namespace facebook::react;
204
204
  .name = [dictionary[@"name"] UTF8String],
205
205
  .shortName = [dictionary[@"shortName"] UTF8String],
206
206
  };
207
-
207
+
208
208
  facebook::react::RNMapsGoogleMapViewEventEmitter::OnIndoorLevelActivated data = {
209
209
  .indoorLevel = level,
210
210
  };
211
211
  mapViewEventEmitter->onIndoorLevelActivated(data);
212
212
  }
213
213
  };
214
-
214
+
215
215
  _view.onIndoorBuildingFocused = [self](NSDictionary* dictionary) {
216
216
  if (_eventEmitter) {
217
217
  auto mapViewEventEmitter = std::static_pointer_cast<RNMapsGoogleMapViewEventEmitter const>(_eventEmitter);
218
218
 
219
- facebook::react::RNMapsGoogleMapViewEventEmitter::OnIndoorBuildingFocused building = {
220
- .activeLevelIndex= (int) [dictionary[@"activeLevelIndex"] integerValue],
221
- .name = [dictionary[@"name"] UTF8String],
222
- .shortName = [dictionary[@"shortName"] UTF8String],
219
+ facebook::react::RNMapsGoogleMapViewEventEmitter::OnIndoorBuildingFocusedIndoorBuilding indoorBuilding = {
220
+ .underground = [dictionary[@"underground"] boolValue],
221
+ .activeLevelIndex = (int) [dictionary[@"activeLevelIndex"] integerValue]
223
222
  };
224
-
223
+
225
224
  facebook::react::RNMapsGoogleMapViewEventEmitter::OnIndoorBuildingFocused data = {
226
- .indoorLevel = level,
225
+ .indoorBuilding = indoorBuilding
227
226
  };
228
- mapViewEventEmitter->onIndoorLevelActivated(data);
227
+ mapViewEventEmitter->onIndoorBuildingFocused(data);
229
228
  }
230
229
  };
231
230
 
@@ -318,7 +317,7 @@ using namespace facebook::react;
318
317
  mapViewEventEmitter->onUserLocationChange(data);
319
318
  }
320
319
  };
321
-
320
+
322
321
  _view.onPoiClick = [self](NSDictionary* dictionary) {
323
322
  if (_eventEmitter) {
324
323
 
@@ -7,7 +7,7 @@
7
7
  //
8
8
 
9
9
  #import "RNMapsMapView.h"
10
- #import "AirMap.h"
10
+ #import "AIRMap.h"
11
11
  #import "AIRMapMarker.h"
12
12
  #import "AIRMapManager.h"
13
13
  #import "RNMapsMarkerView.h"
@@ -7,7 +7,7 @@
7
7
  //
8
8
 
9
9
  #import "RNMapsMarkerView.h"
10
- #import "AirMap.h"
10
+ #import "AIRMap.h"
11
11
  #import "AIRMapMarker.h"
12
12
  #import "AIRMapMarkerManager.h"
13
13
  #import <react-native-maps-generated/ComponentDescriptors.h>
@@ -93,8 +93,8 @@ using namespace facebook::react;
93
93
  _props = defaultProps;
94
94
  _legacyMapManager = [[AIRMapMarkerManager alloc] init];
95
95
  _view = (AIRMapMarker *)[_legacyMapManager view];
96
-
97
-
96
+
97
+
98
98
  _view.onPress = [self](NSDictionary* dictionary) {
99
99
  if (_eventEmitter) {
100
100
  // Extract values from the NSDictionary
@@ -123,7 +123,7 @@ using namespace facebook::react;
123
123
  eventEmitter->onPress(data);
124
124
  }
125
125
  };
126
-
126
+
127
127
  _view.onDeselect = [self](NSDictionary* dictionary) {
128
128
  if (_eventEmitter) {
129
129
  // Extract values from the NSDictionary
@@ -152,7 +152,7 @@ using namespace facebook::react;
152
152
  eventEmitter->onDeselect(data);
153
153
  }
154
154
  };
155
-
155
+
156
156
  _view.onDrag = [self](NSDictionary* dictionary) {
157
157
  if (_eventEmitter) {
158
158
  // Extract values from the NSDictionary
@@ -190,7 +190,7 @@ using namespace facebook::react;
190
190
  eventEmitter->onDragStart(data);
191
191
  }
192
192
  };
193
-
193
+
194
194
  _view.onDragEnd = [self](NSDictionary* dictionary) {
195
195
  if (_eventEmitter) {
196
196
  // Extract values from the NSDictionary
@@ -210,7 +210,7 @@ using namespace facebook::react;
210
210
  eventEmitter->onDragEnd(data);
211
211
  }
212
212
  };
213
-
213
+
214
214
  _view.onSelect = [self](NSDictionary* dictionary) {
215
215
  if (_eventEmitter) {
216
216
  // Extract values from the NSDictionary
@@ -239,8 +239,8 @@ using namespace facebook::react;
239
239
  eventEmitter->onSelect(data);
240
240
  }
241
241
  };
242
-
243
-
242
+
243
+
244
244
  _view.onCalloutPress = [self](NSDictionary* dictionary) {
245
245
  if (_eventEmitter) {
246
246
  // Extract values from the NSDictionary
@@ -271,7 +271,7 @@ using namespace facebook::react;
271
271
  eventEmitter->onCalloutPress(data);
272
272
  }
273
273
  };
274
-
274
+
275
275
  }
276
276
 
277
277
  - (void)mountChildComponentView:(UIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index{
@@ -300,7 +300,7 @@ using namespace facebook::react;
300
300
  if (self = [super initWithFrame:frame]) {
301
301
  [self prepareMarkerView];
302
302
  }
303
-
303
+
304
304
  return self;
305
305
  }
306
306
 
@@ -310,28 +310,28 @@ using namespace facebook::react;
310
310
  const auto &oldViewProps = *std::static_pointer_cast<RNMapsMarkerProps const>(_props);
311
311
  const auto &newViewProps = *std::static_pointer_cast<RNMapsMarkerProps const>(props);
312
312
  BOOL completionHandlerCalled = false;
313
-
313
+
314
314
  #define REMAP_MAPVIEW_PROP(name) \
315
315
  if (oldViewProps.name != newViewProps.name) { \
316
316
  _view.name = newViewProps.name; \
317
317
  }
318
-
318
+
319
319
  #define REMAP_MAPVIEW_STRING_PROP(name) \
320
320
  if (oldViewProps.name != newViewProps.name) { \
321
321
  _view.name = RCTNSStringFromString(newViewProps.name); \
322
322
  }
323
-
323
+
324
324
  #define REMAP_MAPVIEW_COLOR_PROP(name) \
325
325
  if (oldViewProps.name != newViewProps.name) { \
326
326
  _view.name = RCTUIColorFromSharedColor(newViewProps.name); \
327
327
  }
328
-
328
+
329
329
  #define REMAP_MAPVIEW_POINT_PROP(name) \
330
330
  if (newViewProps.name.x != oldViewProps.name.x || \
331
331
  newViewProps.name.y != oldViewProps.name.y) { \
332
332
  _view.name = CGPointMake(newViewProps.name.x, newViewProps.name.y); \
333
333
  }
334
-
334
+
335
335
  if (newViewProps.zIndex != oldViewProps.zIndex){
336
336
  if (newViewProps.zIndex.has_value()){
337
337
  _view.zIndex = newViewProps.zIndex.value();
@@ -348,17 +348,17 @@ _view.name = CGPointMake(newViewProps.name.x, newViewProps.name.y); \
348
348
  [_view setImageSrc:nil];
349
349
  }
350
350
  }
351
-
351
+
352
352
  REMAP_MAPVIEW_PROP(useLegacyPinView)
353
-
354
-
353
+
354
+
355
355
  REMAP_MAPVIEW_PROP(opacity)
356
356
  REMAP_MAPVIEW_PROP(draggable)
357
357
  REMAP_MAPVIEW_PROP(isPreselected)
358
-
358
+
359
359
  REMAP_MAPVIEW_COLOR_PROP(pinColor)
360
360
 
361
-
361
+
362
362
  REMAP_MAPVIEW_POINT_PROP(calloutOffset)
363
363
  if (newViewProps.coordinate.latitude != oldViewProps.coordinate.latitude ||
364
364
  newViewProps.coordinate.longitude != oldViewProps.coordinate.longitude) {
@@ -367,8 +367,8 @@ _view.name = CGPointMake(newViewProps.name.x, newViewProps.name.y); \
367
367
  newViewProps.coordinate.longitude);
368
368
  _view.coordinate = coordinates;
369
369
  }
370
-
371
-
370
+
371
+
372
372
  if (newViewProps.description != oldViewProps.description){
373
373
  _view.subtitle = RCTNSStringFromString(newViewProps.description);
374
374
  }
@@ -398,10 +398,10 @@ _view.name = CGPointMake(newViewProps.name.x, newViewProps.name.y); \
398
398
  case RNMapsMarkerSubtitleVisibility::Hidden:
399
399
  [_view setSubtitleVisibility:MKFeatureVisibilityHidden];
400
400
  break;
401
-
401
+
402
402
  }
403
403
  }
404
-
404
+
405
405
  if (newViewProps.displayPriority != oldViewProps.displayPriority){
406
406
  switch (newViewProps.displayPriority) {
407
407
  case RNMapsMarkerDisplayPriority::Required:
@@ -413,11 +413,11 @@ _view.name = CGPointMake(newViewProps.name.x, newViewProps.name.y); \
413
413
  case RNMapsMarkerDisplayPriority::Low:
414
414
  [_view setDisplayPriority:MKFeatureDisplayPriorityDefaultLow];
415
415
  break;
416
-
416
+
417
417
  }
418
418
  }
419
419
 
420
-
420
+
421
421
  [super updateProps:props oldProps:oldProps];
422
422
  }
423
423
 
@@ -1,25 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
-
9
- #import <Foundation/Foundation.h>
10
-
11
- #if __has_include(<React-RCTAppDelegate/RCTDependencyProvider.h>)
12
- #import <React-RCTAppDelegate/RCTDependencyProvider.h>
13
- #elif __has_include(<React_RCTAppDelegate/RCTDependencyProvider.h>)
14
- #import <React_RCTAppDelegate/RCTDependencyProvider.h>
15
- #else
16
- #import "RCTDependencyProvider.h"
17
- #endif
18
-
19
- NS_ASSUME_NONNULL_BEGIN
20
-
21
- @interface RCTAppDependencyProvider : NSObject <RCTDependencyProvider>
22
-
23
- @end
24
-
25
- NS_ASSUME_NONNULL_END
@@ -1,55 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- #import "RCTAppDependencyProvider.h"
9
- #import <ReactCodegen/RCTModulesConformingToProtocolsProvider.h>
10
- #import <ReactCodegen/RCTThirdPartyComponentsProvider.h>
11
-
12
- @implementation RCTAppDependencyProvider {
13
- NSArray<NSString *> * _URLRequestHandlerClassNames;
14
- NSArray<NSString *> * _imageDataDecoderClassNames;
15
- NSArray<NSString *> * _imageURLLoaderClassNames;
16
- NSDictionary<NSString *,Class<RCTComponentViewProtocol>> * _thirdPartyFabricComponents;
17
- }
18
-
19
- - (nonnull NSArray<NSString *> *)URLRequestHandlerClassNames {
20
- static dispatch_once_t requestUrlToken;
21
- dispatch_once(&requestUrlToken, ^{
22
- self->_URLRequestHandlerClassNames = RCTModulesConformingToProtocolsProvider.URLRequestHandlerClassNames;
23
- });
24
-
25
- return _URLRequestHandlerClassNames;
26
- }
27
-
28
- - (nonnull NSArray<NSString *> *)imageDataDecoderClassNames {
29
- static dispatch_once_t dataDecoderToken;
30
- dispatch_once(&dataDecoderToken, ^{
31
- _imageDataDecoderClassNames = RCTModulesConformingToProtocolsProvider.imageDataDecoderClassNames;
32
- });
33
-
34
- return _imageDataDecoderClassNames;
35
- }
36
-
37
- - (nonnull NSArray<NSString *> *)imageURLLoaderClassNames {
38
- static dispatch_once_t urlLoaderToken;
39
- dispatch_once(&urlLoaderToken, ^{
40
- _imageURLLoaderClassNames = RCTModulesConformingToProtocolsProvider.imageURLLoaderClassNames;
41
- });
42
-
43
- return _imageURLLoaderClassNames;
44
- }
45
-
46
- - (nonnull NSDictionary<NSString *,Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents {
47
- static dispatch_once_t nativeComponentsToken;
48
- dispatch_once(&nativeComponentsToken, ^{
49
- _thirdPartyFabricComponents = RCTThirdPartyComponentsProvider.thirdPartyFabricComponents;
50
- });
51
-
52
- return _thirdPartyFabricComponents;
53
- }
54
-
55
- @end
@@ -1,18 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- #import <Foundation/Foundation.h>
9
-
10
- @interface RCTModulesConformingToProtocolsProvider: NSObject
11
-
12
- +(NSArray<NSString *> *)imageURLLoaderClassNames;
13
-
14
- +(NSArray<NSString *> *)imageDataDecoderClassNames;
15
-
16
- +(NSArray<NSString *> *)URLRequestHandlerClassNames;
17
-
18
- @end
@@ -1,33 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- #import "RCTModulesConformingToProtocolsProvider.h"
9
-
10
- @implementation RCTModulesConformingToProtocolsProvider
11
-
12
- +(NSArray<NSString *> *)imageURLLoaderClassNames
13
- {
14
- return @[
15
-
16
- ];
17
- }
18
-
19
- +(NSArray<NSString *> *)imageDataDecoderClassNames
20
- {
21
- return @[
22
-
23
- ];
24
- }
25
-
26
- +(NSArray<NSString *> *)URLRequestHandlerClassNames
27
- {
28
- return @[
29
-
30
- ];
31
- }
32
-
33
- @end
@@ -1,16 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- #import <Foundation/Foundation.h>
9
-
10
- @protocol RCTComponentViewProtocol;
11
-
12
- @interface RCTThirdPartyComponentsProvider: NSObject
13
-
14
- + (NSDictionary<NSString *, Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents;
15
-
16
- @end
@@ -1,26 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
-
9
- #import <Foundation/Foundation.h>
10
-
11
- #import "RCTThirdPartyComponentsProvider.h"
12
- #import <React/RCTComponentViewProtocol.h>
13
-
14
- @implementation RCTThirdPartyComponentsProvider
15
-
16
- + (NSDictionary<NSString *, Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents
17
- {
18
- return @{
19
- @"RNMapsGoogleMapView": NSClassFromString(@"RNMapsGoogleMapView"), // react-native-maps
20
- @"RNMapsGooglePolygon": NSClassFromString(@"RNMapsGooglePolygonView"), // react-native-maps
21
- @"RNMapsMapView": NSClassFromString(@"RNMapsMapView"), // react-native-maps
22
- @"RNMapsMarker": NSClassFromString(@"RNMapsMarkerView"), // react-native-maps
23
- };
24
- }
25
-
26
- @end
@@ -101,7 +101,7 @@ export type MapCircleProps = ViewProps & {
101
101
  zIndex?: number;
102
102
  };
103
103
  type NativeProps = MapCircleProps & {
104
- ref: React.RefObject<View>;
104
+ ref: React.RefObject<View | null>;
105
105
  };
106
106
  export declare class MapCircle extends React.Component<MapCircleProps> {
107
107
  context: React.ContextType<typeof ProviderContext>;
@@ -59,9 +59,9 @@ type NativeProps = Modify<MapHeatmapProps, {
59
59
  colors: (ProcessedColorValue | null | undefined)[];
60
60
  }>;
61
61
  }> & {
62
- ref: React.RefObject<View>;
62
+ ref: React.RefObject<View | null>;
63
63
  };
64
- export declare class MapHeatmap extends React.Component<MapHeatmapProps> {
64
+ export declare class MapHeatmap extends React.Component<MapHeatmapProps | null> {
65
65
  context: React.ContextType<typeof ProviderContext>;
66
66
  getNativeComponent: () => NativeComponent<NativeProps>;
67
67
  getMapManagerCommand: (name: string) => MapManagerCommand;
package/lib/MapHeatmap.js CHANGED
@@ -41,7 +41,7 @@ class MapHeatmap extends React.Component {
41
41
  }
42
42
  render() {
43
43
  const AIRMapHeatmap = this.getNativeComponent();
44
- const propGradient = this.props.gradient;
44
+ const propGradient = this.props?.gradient;
45
45
  let gradient;
46
46
  if (propGradient) {
47
47
  const colors = propGradient.colors.map(c => (0, react_native_1.processColor)(c));
@@ -298,7 +298,7 @@ export type NativeProps = Modify<OmittedProps, {
298
298
  icon?: string;
299
299
  image?: MapMarkerProps['image'] | string;
300
300
  }> & {
301
- ref: React.RefObject<MapMarkerNativeComponentType>;
301
+ ref: React.RefObject<MapMarkerNativeComponentType | null>;
302
302
  };
303
303
  export declare class MapMarker extends React.Component<MapMarkerProps> {
304
304
  context: React.ContextType<typeof ProviderContext>;
@@ -124,7 +124,7 @@ export type MapPolygonProps = ViewProps & {
124
124
  zIndex?: number;
125
125
  };
126
126
  type NativeProps = MapPolygonProps & {
127
- ref: React.RefObject<View>;
127
+ ref: React.RefObject<View | null>;
128
128
  };
129
129
  export declare class MapPolygon extends React.Component<MapPolygonProps> {
130
130
  context: React.ContextType<typeof ProviderContext>;
@@ -125,7 +125,7 @@ export type MapPolylineProps = ViewProps & {
125
125
  zIndex?: number;
126
126
  };
127
127
  type NativeProps = MapPolylineProps & {
128
- ref: React.RefObject<View>;
128
+ ref: React.RefObject<View | null>;
129
129
  };
130
130
  export declare class MapPolyline extends React.Component<MapPolylineProps> {
131
131
  context: React.ContextType<typeof ProviderContext>;
package/lib/MapView.d.ts CHANGED
@@ -586,7 +586,7 @@ type ModifiedProps = Modify<MapViewProps, {
586
586
  initialRegion?: MapViewProps['initialRegion'] | null;
587
587
  }>;
588
588
  export type NativeProps = Omit<ModifiedProps, 'customMapStyle' | 'onRegionChange' | 'onRegionChangeComplete'> & {
589
- ref: React.RefObject<MapViewNativeComponentType>;
589
+ ref: React.RefObject<MapViewNativeComponentType | null>;
590
590
  customMapStyleString?: string;
591
591
  handlePanDrag?: boolean;
592
592
  onChange?: (e: ChangeEvent) => void;
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "main": "lib/index.js",
6
6
  "author": "Leland Richardson <leland.m.richardson@gmail.com>",
7
7
  "homepage": "https://github.com/react-native-maps/react-native-maps#readme",
8
- "version": "1.21.0-alpha.75",
8
+ "version": "1.21.0-alpha.77",
9
9
  "license": "MIT",
10
10
  "scripts": {
11
11
  "lint": "eslint . --max-warnings 0",
@@ -44,8 +44,8 @@
44
44
  "mapkit"
45
45
  ],
46
46
  "peerDependencies": {
47
- "react": ">= 18.2.0",
48
- "react-native": ">= 0.74.0",
47
+ "react": ">= 19.0.0",
48
+ "react-native": ">= 0.78.0",
49
49
  "react-native-web": ">= 0.11"
50
50
  },
51
51
  "peerDependenciesMeta": {
@@ -54,30 +54,30 @@
54
54
  }
55
55
  },
56
56
  "devDependencies": {
57
+ "@babel/core": "^7.26.9",
58
+ "@babel/preset-env": "^7.26.9",
59
+ "@babel/runtime": "^7.26.9",
57
60
  "@commitlint/cli": "17.6.1",
58
61
  "@commitlint/config-conventional": "17.6.1",
62
+ "@react-native-community/cli": "15.1.3",
63
+ "@react-native/babel-preset": "0.78.0",
64
+ "@react-native/eslint-config": "0.78.0",
65
+ "@react-native/metro-config": "0.78.0",
66
+ "@react-native/typescript-config": "0.78.0",
59
67
  "@semantic-release/changelog": "6.0.3",
60
68
  "@semantic-release/git": "10.0.1",
61
- "semantic-release": "24.2.0",
62
- "husky": "8.0.3",
63
- "@types/react-native": "0.72.8",
64
- "@babel/core": "^7.25.2",
65
- "@babel/preset-env": "^7.25.3",
66
- "@babel/runtime": "^7.25.0",
67
- "react-native": "^0.77.1",
68
- "@react-native-community/cli": "15.0.1",
69
- "react": "^18.3.1",
70
- "@react-native/babel-preset": "0.77.1",
71
- "@react-native/eslint-config": "0.77.1",
72
- "@react-native/metro-config": "0.77.1",
73
- "@react-native/typescript-config": "0.77.1",
74
- "@types/react": "^18.2.6",
75
- "@types/react-test-renderer": "^18.0.0",
69
+ "@types/jest": "29.5.14",
70
+ "@types/react": "^19.0.10",
71
+ "@types/react-native": "0.73.0",
72
+ "@types/react-test-renderer": "^19.0.0",
76
73
  "eslint": "^8.19.0",
77
- "@types/jest": "29.5.13",
74
+ "husky": "8.0.3",
78
75
  "jest": "^29.6.3",
79
76
  "prettier": "2.8.8",
80
- "react-test-renderer": "18.3.1",
77
+ "react": "^19.0.0",
78
+ "react-native": "^0.78.0",
79
+ "react-test-renderer": "19.0.0",
80
+ "semantic-release": "24.2.0",
81
81
  "typescript": "5.0.4"
82
82
  },
83
83
  "dependencies": {