@maplibre/maplibre-react-native 10.0.0-alpha.7 → 10.0.0-alpha.9

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.
Files changed (151) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +1 -1
  3. package/android/build.gradle +1 -1
  4. package/android/rctmln/build.gradle +5 -5
  5. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/MarkerView.java +2 -2
  6. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/MarkerViewManager.java +6 -6
  7. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNMarkerView.java +5 -5
  8. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNPointAnnotation.java +9 -8
  9. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/CameraStop.java +14 -12
  10. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/CameraUpdateItem.java +10 -10
  11. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/CameraUpdateQueue.java +1 -1
  12. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/RCTMLNCamera.java +26 -26
  13. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/RCTMLNCameraManager.java +1 -1
  14. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/images/RCTMLNImages.java +12 -12
  15. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/location/LocationComponentManager.java +9 -9
  16. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/location/RCTMLNNativeUserLocation.java +7 -7
  17. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/location/RCTMLNNativeUserLocationManager.java +1 -1
  18. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/LayerSourceInfo.java +9 -9
  19. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNAndroidTextureMapView.java +2 -2
  20. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNAndroidTextureMapViewManager.java +2 -2
  21. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNMapView.java +43 -43
  22. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNMapViewManager.java +6 -6
  23. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyle.java +3 -3
  24. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleFactory.java +14 -14
  25. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleFunctionParser.java +2 -2
  26. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleValue.java +2 -2
  27. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTLayer.java +8 -8
  28. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNBackgroundLayer.java +1 -1
  29. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNCircleLayer.java +2 -2
  30. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillExtrusionLayer.java +2 -2
  31. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillLayer.java +2 -2
  32. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNHeatmapLayer.java +2 -2
  33. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNLineLayer.java +2 -2
  34. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNRasterLayer.java +1 -1
  35. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNSymbolLayer.java +2 -2
  36. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/light/RCTMLNLight.java +6 -6
  37. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNImageSource.java +3 -3
  38. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNImageSourceManager.java +1 -1
  39. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNRasterSource.java +3 -3
  40. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNShapeSource.java +9 -9
  41. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNShapeSourceManager.java +1 -1
  42. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNTileSource.java +2 -2
  43. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNVectorSource.java +4 -4
  44. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTSource.java +7 -7
  45. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/FeatureClickEvent.java +2 -2
  46. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/MapClickEvent.java +1 -1
  47. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/PointAnnotationClickEvent.java +2 -2
  48. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/PointAnnotationDragEvent.java +2 -2
  49. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/LocationManager.java +6 -6
  50. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/UserLocation.java +1 -1
  51. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/UserTrackingMode.java +3 -3
  52. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNLocationModule.java +2 -2
  53. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNLogging.java +2 -2
  54. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNModule.java +8 -8
  55. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNOfflineModule.java +11 -11
  56. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNSnapshotModule.java +7 -7
  57. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ClusterPropertyEntry.java +1 -1
  58. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/DownloadMapImageTask.java +5 -5
  59. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ExpressionParser.java +2 -2
  60. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/GeoJSONUtils.java +13 -13
  61. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/GeoViewport.java +3 -3
  62. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/SimpleEventCallback.java +2 -2
  63. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/SphericalMercator.java +1 -1
  64. package/docs/Camera.md +1 -1
  65. package/docs/MapView.md +9 -9
  66. package/docs/MarkerView.md +1 -1
  67. package/docs/NativeUserLocation.md +1 -1
  68. package/docs/PointAnnotation.md +2 -2
  69. package/docs/UserLocation.md +2 -2
  70. package/docs/docs.json +12 -12
  71. package/javascript/@types/assets.d.ts +1 -1
  72. package/javascript/MLNModule.ts +2 -2
  73. package/javascript/Maplibre.ts +37 -42
  74. package/javascript/components/BackgroundLayer.tsx +9 -9
  75. package/javascript/components/Callout.tsx +19 -19
  76. package/javascript/components/Camera.tsx +29 -29
  77. package/javascript/components/CircleLayer.tsx +9 -9
  78. package/javascript/components/FillExtrusionLayer.tsx +9 -9
  79. package/javascript/components/FillLayer.tsx +9 -9
  80. package/javascript/components/HeadingIndicator.tsx +7 -8
  81. package/javascript/components/HeatmapLayer.tsx +10 -10
  82. package/javascript/components/ImageSource.tsx +8 -8
  83. package/javascript/components/Images.tsx +19 -20
  84. package/javascript/components/Light.tsx +15 -15
  85. package/javascript/components/LineLayer.tsx +9 -9
  86. package/javascript/components/MapView.tsx +74 -70
  87. package/javascript/components/MarkerView.tsx +9 -10
  88. package/javascript/components/NativeUserLocation.tsx +4 -4
  89. package/javascript/components/PointAnnotation.tsx +17 -17
  90. package/javascript/components/RasterLayer.tsx +9 -9
  91. package/javascript/components/RasterSource.tsx +10 -10
  92. package/javascript/components/ShapeSource.tsx +63 -61
  93. package/javascript/components/Style.tsx +69 -59
  94. package/javascript/components/SymbolLayer.tsx +10 -10
  95. package/javascript/components/UserLocation.tsx +23 -23
  96. package/javascript/components/VectorSource.tsx +19 -19
  97. package/javascript/components/annotations/Annotation.tsx +16 -15
  98. package/javascript/hooks/useAbstractLayer.ts +15 -12
  99. package/javascript/hooks/useAbstractSource.ts +2 -2
  100. package/javascript/hooks/useNativeBridge.ts +7 -7
  101. package/javascript/hooks/useNativeRef.ts +2 -2
  102. package/javascript/hooks/useOnce.ts +1 -1
  103. package/javascript/index.ts +2 -2
  104. package/javascript/modules/location/locationManager.ts +4 -4
  105. package/javascript/modules/offline/OfflineCreatePackOptions.ts +5 -5
  106. package/javascript/modules/offline/OfflinePack.ts +3 -3
  107. package/javascript/modules/offline/offlineManager.ts +11 -12
  108. package/javascript/modules/snapshot/SnapshotOptions.ts +4 -4
  109. package/javascript/modules/snapshot/snapshotManager.ts +2 -2
  110. package/javascript/requestAndroidLocationPermissions.ts +3 -3
  111. package/javascript/types/OnPressEvent.ts +1 -1
  112. package/javascript/types/index.ts +6 -2
  113. package/javascript/utils/BridgeValue.ts +20 -20
  114. package/javascript/utils/Logger.ts +14 -14
  115. package/javascript/utils/MaplibreStyles.d.ts +359 -359
  116. package/javascript/utils/StyleValue.ts +12 -12
  117. package/javascript/utils/animated/AbstractAnimatedCoordinates.ts +6 -6
  118. package/javascript/utils/animated/Animated.ts +38 -16
  119. package/javascript/utils/animated/AnimatedCoordinatesArray.ts +7 -11
  120. package/javascript/utils/animated/AnimatedExtractCoordinateFromArray.ts +3 -3
  121. package/javascript/utils/animated/AnimatedPoint.ts +7 -7
  122. package/javascript/utils/animated/AnimatedRouteCoordinatesArray.ts +16 -20
  123. package/javascript/utils/animated/AnimatedShape.ts +15 -15
  124. package/javascript/utils/deprecation.ts +6 -3
  125. package/javascript/utils/filterUtils.ts +1 -1
  126. package/javascript/utils/geoUtils.ts +8 -8
  127. package/javascript/utils/index.ts +14 -14
  128. package/javascript/utils/styleMap.ts +18 -18
  129. package/package.json +28 -15
  130. package/plugin/build/withMapLibre.d.ts +2 -2
  131. package/plugin/build/withMapLibre.js +24 -24
  132. package/scripts/autogenerate.js +1 -1
  133. package/scripts/templates/RCTMLNStyleFactory.java.ejs +14 -14
  134. package/.eslintignore +0 -3
  135. package/.eslintrc.js +0 -169
  136. package/.prettierrc.js +0 -7
  137. package/.yarn/sdks/eslint/bin/eslint.js +0 -27
  138. package/.yarn/sdks/eslint/lib/api.js +0 -27
  139. package/.yarn/sdks/eslint/lib/unsupported-api.js +0 -27
  140. package/.yarn/sdks/eslint/package.json +0 -14
  141. package/.yarn/sdks/integrations.yml +0 -5
  142. package/.yarn/sdks/prettier/bin/prettier.cjs +0 -27
  143. package/.yarn/sdks/prettier/index.cjs +0 -27
  144. package/.yarn/sdks/prettier/package.json +0 -7
  145. package/.yarn/sdks/typescript/bin/tsc +0 -27
  146. package/.yarn/sdks/typescript/bin/tsserver +0 -27
  147. package/.yarn/sdks/typescript/lib/tsc.js +0 -27
  148. package/.yarn/sdks/typescript/lib/tsserver.js +0 -239
  149. package/.yarn/sdks/typescript/lib/tsserverlibrary.js +0 -239
  150. package/.yarn/sdks/typescript/lib/typescript.js +0 -27
  151. package/.yarn/sdks/typescript/package.json +0 -10
@@ -1,8 +1,8 @@
1
- import {runNativeCommand, isAndroid, NativeArg} from '../utils';
1
+ import React, { Component, SyntheticEvent, useRef } from "react";
2
2
 
3
- import React, {Component, SyntheticEvent, useRef} from 'react';
3
+ import { runNativeCommand, isAndroid, NativeArg } from "../utils";
4
4
 
5
- export type RNMLEvent<PayloadType = {[key: string]: string}> = {
5
+ export type RNMLEvent<PayloadType = { [key: string]: string }> = {
6
6
  payload: PayloadType;
7
7
  type: string;
8
8
  };
@@ -41,7 +41,7 @@ const useNativeBridge: (moduleName: string) => UseNativeBridge = (
41
41
  resolve: (value: ReturnType) => void,
42
42
  reject: (error: Error) => void,
43
43
  ): void => {
44
- _callbackMap.current.set(id, {resolve, reject});
44
+ _callbackMap.current.set(id, { resolve, reject });
45
45
  };
46
46
 
47
47
  const _removeAndroidCallback = (id: string): void => {
@@ -57,7 +57,7 @@ const useNativeBridge: (moduleName: string) => UseNativeBridge = (
57
57
  }
58
58
 
59
59
  _callbackMap.current.delete(callbackID);
60
- const {payload} = e.nativeEvent;
60
+ const { payload } = e.nativeEvent;
61
61
  if (payload.error) {
62
62
  callback.reject.call(null, new Error(payload.error));
63
63
  } else {
@@ -90,9 +90,9 @@ const useNativeBridge: (moduleName: string) => UseNativeBridge = (
90
90
  args: NativeArg[] = [],
91
91
  ): Promise<ReturnType> => {
92
92
  if (!nativeRef) {
93
- return new Promise(resolve => {
93
+ return new Promise((resolve) => {
94
94
  _preRefMapMethodQueue.current.push({
95
- method: {name: methodName, args},
95
+ method: { name: methodName, args },
96
96
  resolver: resolve,
97
97
  });
98
98
  });
@@ -1,5 +1,5 @@
1
- import React, {Component, useRef} from 'react';
2
- import {NativeMethods} from 'react-native';
1
+ import React, { Component, useRef } from "react";
2
+ import { NativeMethods } from "react-native";
3
3
 
4
4
  type NativeRef<NativeProps> = Component<NativeProps> & Readonly<NativeMethods>;
5
5
 
@@ -1,4 +1,4 @@
1
- import {useRef} from 'react';
1
+ import { useRef } from "react";
2
2
 
3
3
  const useOnce: (callback: () => void) => void = (callback: () => void) => {
4
4
  const once = useRef(false);
@@ -1,4 +1,4 @@
1
- export * from './Maplibre';
2
- import * as Maplibre from './Maplibre';
1
+ import * as Maplibre from "./Maplibre";
2
+ export * from "./Maplibre";
3
3
 
4
4
  export default Maplibre;
@@ -2,7 +2,7 @@ import {
2
2
  NativeModules,
3
3
  NativeEventEmitter,
4
4
  EmitterSubscription,
5
- } from 'react-native';
5
+ } from "react-native";
6
6
 
7
7
  const MapLibreGL = NativeModules.MLNModule;
8
8
  const MapLibreGLLocationManager = NativeModules.MLNLocationModule;
@@ -89,7 +89,7 @@ class LocationManager {
89
89
  lastKnownLocation =
90
90
  await MapLibreGLLocationManager.getLastKnownLocation();
91
91
  } catch (error) {
92
- console.log('locationManager Error: ', error);
92
+ console.log("locationManager Error: ", error);
93
93
  }
94
94
 
95
95
  if (!this._lastKnownLocation && lastKnownLocation) {
@@ -114,7 +114,7 @@ class LocationManager {
114
114
  }
115
115
 
116
116
  removeListener(listener: (location: Location) => void): void {
117
- this._listeners = this._listeners.filter(l => l !== listener);
117
+ this._listeners = this._listeners.filter((l) => l !== listener);
118
118
  if (this._listeners.length === 0) {
119
119
  this.stop();
120
120
  }
@@ -155,7 +155,7 @@ class LocationManager {
155
155
  onUpdate(location: Location): void {
156
156
  this._lastKnownLocation = location;
157
157
 
158
- this._listeners.forEach(l => l(location));
158
+ this._listeners.forEach((l) => l(location));
159
159
  }
160
160
  }
161
161
 
@@ -1,5 +1,5 @@
1
- import {makeLatLngBounds} from '../../utils/geoUtils';
2
- import {toJSONString} from '../../utils';
1
+ import { toJSONString } from "../../utils";
2
+ import { makeLatLngBounds } from "../../utils/geoUtils";
3
3
 
4
4
  export interface OfflineCreatePackInputOptions {
5
5
  name: string;
@@ -32,16 +32,16 @@ class OfflineCreatePackOptions {
32
32
  _assert(options: OfflineCreatePackInputOptions): void {
33
33
  if (!options.styleURL) {
34
34
  throw new Error(
35
- 'Style URL must be provided for creating an offline pack',
35
+ "Style URL must be provided for creating an offline pack",
36
36
  );
37
37
  }
38
38
 
39
39
  if (!options.name) {
40
- throw new Error('Name must be provided for creating an offline pack');
40
+ throw new Error("Name must be provided for creating an offline pack");
41
41
  }
42
42
 
43
43
  if (!options.bounds) {
44
- throw new Error('Bounds must be provided for creating an offline pack');
44
+ throw new Error("Bounds must be provided for creating an offline pack");
45
45
  }
46
46
  }
47
47
 
@@ -1,6 +1,6 @@
1
- import OfflineCreatePackOptions from './OfflineCreatePackOptions';
1
+ import { NativeModules } from "react-native";
2
2
 
3
- import {NativeModules} from 'react-native';
3
+ import OfflineCreatePackOptions from "./OfflineCreatePackOptions";
4
4
 
5
5
  const MapLibreGLOfflineManager = NativeModules.MLNOfflineModule;
6
6
 
@@ -25,7 +25,7 @@ class OfflinePack {
25
25
  }
26
26
 
27
27
  get name(): string | null {
28
- const {metadata} = this;
28
+ const { metadata } = this;
29
29
  return metadata && metadata.name;
30
30
  }
31
31
 
@@ -1,15 +1,14 @@
1
- import {isUndefined, isFunction, isAndroid} from '../../utils';
2
-
3
- import OfflineCreatePackOptions, {
4
- OfflineCreatePackInputOptions,
5
- } from './OfflineCreatePackOptions';
6
- import OfflinePack from './OfflinePack';
7
-
8
1
  import {
9
2
  NativeModules,
10
3
  NativeEventEmitter,
11
4
  EventSubscription,
12
- } from 'react-native';
5
+ } from "react-native";
6
+
7
+ import OfflineCreatePackOptions, {
8
+ OfflineCreatePackInputOptions,
9
+ } from "./OfflineCreatePackOptions";
10
+ import OfflinePack from "./OfflinePack";
11
+ import { isUndefined, isFunction, isAndroid } from "../../utils";
13
12
 
14
13
  const MapLibreGL = NativeModules.MLNModule;
15
14
  const MapLibreGLOfflineManager = NativeModules.MLNOfflineModule;
@@ -232,7 +231,7 @@ class OfflineManager {
232
231
  async getPacks(): Promise<OfflinePack[]> {
233
232
  await this._initialize();
234
233
  return Object.keys(this._offlinePacks).map(
235
- name => this._offlinePacks[name],
234
+ (name) => this._offlinePacks[name],
236
235
  );
237
236
  }
238
237
 
@@ -340,7 +339,7 @@ class OfflineManager {
340
339
  // manually set a listener, since listeners are only set on create flow
341
340
  await MapLibreGLOfflineManager.setPackObserver(packName);
342
341
  } catch (e) {
343
- console.log('Unable to set pack observer', e);
342
+ console.log("Unable to set pack observer", e);
344
343
  }
345
344
  }
346
345
  }
@@ -393,7 +392,7 @@ class OfflineManager {
393
392
  }
394
393
 
395
394
  _onProgress(e: ProgressEvent): void {
396
- const {name, state} = e.payload;
395
+ const { name, state } = e.payload;
397
396
 
398
397
  if (!this._hasListeners(name, this._progressListeners)) {
399
398
  return;
@@ -409,7 +408,7 @@ class OfflineManager {
409
408
  }
410
409
 
411
410
  _onError(e: ErrorEvent): void {
412
- const {name} = e.payload;
411
+ const { name } = e.payload;
413
412
 
414
413
  if (!this._hasListeners(name, this._errorListeners)) {
415
414
  return;
@@ -1,7 +1,7 @@
1
- import {toJSONString} from '../../utils';
2
- import {makePoint, makeFeatureCollection} from '../../utils/geoUtils';
1
+ import { NativeModules } from "react-native";
3
2
 
4
- import {NativeModules} from 'react-native';
3
+ import { toJSONString } from "../../utils";
4
+ import { makePoint, makeFeatureCollection } from "../../utils/geoUtils";
5
5
 
6
6
  const MapLibreGL = NativeModules.MLNModule;
7
7
 
@@ -46,7 +46,7 @@ export class SnapshotOptions {
46
46
  constructor(options: SnapshotInputOptions) {
47
47
  if (!options.centerCoordinate && !options.bounds) {
48
48
  throw new Error(
49
- 'Center coordinate or bounds must be supplied in order to take a snapshot',
49
+ "Center coordinate or bounds must be supplied in order to take a snapshot",
50
50
  );
51
51
  }
52
52
 
@@ -1,6 +1,6 @@
1
- import SnapshotOptions, {SnapshotInputOptions} from './SnapshotOptions';
1
+ import { NativeModules } from "react-native";
2
2
 
3
- import {NativeModules} from 'react-native';
3
+ import SnapshotOptions, { SnapshotInputOptions } from "./SnapshotOptions";
4
4
 
5
5
  const MapLibreGLSnapshotManger = NativeModules.MLNSnapshotModule;
6
6
 
@@ -1,6 +1,6 @@
1
- import {isAndroid} from './utils';
1
+ import { Permission, PermissionsAndroid } from "react-native";
2
2
 
3
- import {Permission, PermissionsAndroid} from 'react-native';
3
+ import { isAndroid } from "./utils";
4
4
 
5
5
  export async function requestAndroidLocationPermissions(): Promise<boolean> {
6
6
  if (isAndroid()) {
@@ -25,5 +25,5 @@ export async function requestAndroidLocationPermissions(): Promise<boolean> {
25
25
  return false;
26
26
  }
27
27
 
28
- throw new Error('You should only call this method on Android!');
28
+ throw new Error("You should only call this method on Android!");
29
29
  }
@@ -1,5 +1,5 @@
1
1
  interface OnPressEvent {
2
- features: Array<GeoJSON.Feature>;
2
+ features: GeoJSON.Feature[];
3
3
  coordinates: {
4
4
  latitude: number;
5
5
  longitude: number;
@@ -1,7 +1,11 @@
1
- import {SyntheticEvent} from 'react';
1
+ import { SyntheticEvent } from "react";
2
2
 
3
3
  export type MaplibreGLEvent<
4
4
  T extends string,
5
5
  P = GeoJSON.Feature,
6
6
  V = Element,
7
- > = SyntheticEvent<V, {type: T; payload: P}>;
7
+ > = SyntheticEvent<V, { type: T; payload: P }>;
8
+
9
+ export enum StyleURL {
10
+ Default = "https://demotiles.maplibre.org/style.json",
11
+ }
@@ -1,20 +1,20 @@
1
- import {isBoolean, isNumber, isString} from './index';
1
+ import { isBoolean, isNumber, isString } from "./index";
2
2
 
3
3
  export type RawValueType =
4
4
  | string
5
5
  | number
6
6
  | boolean
7
7
  | RawValueType[]
8
- | {[key: string]: RawValueType};
8
+ | { [key: string]: RawValueType };
9
9
 
10
10
  export type StyleValueJSON =
11
- | {type: 'boolean'; value: boolean}
12
- | {type: 'number'; value: number}
13
- | {type: 'string'; value: string}
14
- | {type: 'hashmap'; value: object}
15
- | {type: 'array'; value: unknown[]};
11
+ | { type: "boolean"; value: boolean }
12
+ | { type: "number"; value: number }
13
+ | { type: "string"; value: string }
14
+ | { type: "hashmap"; value: object }
15
+ | { type: "array"; value: unknown[] };
16
16
 
17
- type StyleValueTypes = 'boolean' | 'number' | 'string' | 'hashmap' | 'array';
17
+ type StyleValueTypes = "boolean" | "number" | "string" | "hashmap" | "array";
18
18
 
19
19
  export default class BridgeValue {
20
20
  rawValue: RawValueType;
@@ -25,19 +25,19 @@ export default class BridgeValue {
25
25
 
26
26
  get type(): StyleValueTypes {
27
27
  if (Array.isArray(this.rawValue)) {
28
- return 'array';
28
+ return "array";
29
29
  }
30
30
  if (isBoolean(this.rawValue)) {
31
- return 'boolean';
31
+ return "boolean";
32
32
  }
33
33
  if (isNumber(this.rawValue)) {
34
- return 'number';
34
+ return "number";
35
35
  }
36
36
  if (isString(this.rawValue)) {
37
- return 'string';
37
+ return "string";
38
38
  }
39
- if (this.rawValue && typeof this.rawValue === 'object') {
40
- return 'hashmap';
39
+ if (this.rawValue && typeof this.rawValue === "object") {
40
+ return "hashmap";
41
41
  }
42
42
  throw new Error(
43
43
  `[type - ${this.rawValue}] BridgeValue must be a primitive/array/object`,
@@ -48,20 +48,20 @@ export default class BridgeValue {
48
48
  | [StyleValueJSON, StyleValueJSON][]
49
49
  | StyleValueJSON[]
50
50
  | RawValueType {
51
- const {type} = this;
51
+ const { type } = this;
52
52
 
53
53
  let value;
54
54
 
55
- if (type === 'array') {
55
+ if (type === "array") {
56
56
  value = [];
57
57
 
58
58
  for (const innerRawValue of this.rawValue as RawValueType[]) {
59
59
  const bridgeValue = new BridgeValue(innerRawValue);
60
60
  value.push(bridgeValue.toJSON());
61
61
  }
62
- } else if (type === 'hashmap') {
62
+ } else if (type === "hashmap") {
63
63
  value = [];
64
- const rawValue = this.rawValue as {[key: string]: RawValueType};
64
+ const rawValue = this.rawValue as { [key: string]: RawValueType };
65
65
  const stringKeys = Object.keys(this.rawValue);
66
66
  for (const stringKey of stringKeys) {
67
67
  value.push([
@@ -69,7 +69,7 @@ export default class BridgeValue {
69
69
  new BridgeValue(rawValue[stringKey]).toJSON(),
70
70
  ] as [StyleValueJSON, StyleValueJSON]);
71
71
  }
72
- } else if (type === 'boolean' || type === 'number' || type === 'string') {
72
+ } else if (type === "boolean" || type === "number" || type === "string") {
73
73
  value = this.rawValue;
74
74
  } else {
75
75
  throw new Error(
@@ -84,7 +84,7 @@ export default class BridgeValue {
84
84
  return {
85
85
  type: this.type,
86
86
  value:
87
- typeof formatter === 'function' ? formatter(this.value) : this.value,
87
+ typeof formatter === "function" ? formatter(this.value) : this.value,
88
88
  } as StyleValueJSON;
89
89
  }
90
90
  }
@@ -2,10 +2,10 @@ import {
2
2
  EmitterSubscription,
3
3
  NativeEventEmitter,
4
4
  NativeModules,
5
- } from 'react-native';
6
- const {MLNLogging} = NativeModules;
5
+ } from "react-native";
6
+ const { MLNLogging } = NativeModules;
7
7
 
8
- export type LogLevel = 'error' | 'warning' | 'info' | 'debug' | 'verbose';
8
+ export type LogLevel = "error" | "warning" | "info" | "debug" | "verbose";
9
9
  interface Log {
10
10
  message: string;
11
11
  level: LogLevel;
@@ -90,7 +90,7 @@ class Logger {
90
90
  }
91
91
 
92
92
  subscribe(): void {
93
- this.subscription = this.loggerEmitter.addListener('LogEvent', log => {
93
+ this.subscription = this.loggerEmitter.addListener("LogEvent", (log) => {
94
94
  this.onLog(log);
95
95
  });
96
96
  }
@@ -102,14 +102,14 @@ class Logger {
102
102
  }
103
103
  }
104
104
 
105
- effectiveLevel({level, message, tag}: Log): LogLevel {
106
- if (level === 'warning') {
105
+ effectiveLevel({ level, message, tag }: Log): LogLevel {
106
+ if (level === "warning") {
107
107
  if (
108
- tag === 'Mbgl-HttpRequest' &&
109
- message.startsWith('Request failed due to a permanent error: Canceled')
108
+ tag === "Mbgl-HttpRequest" &&
109
+ message.startsWith("Request failed due to a permanent error: Canceled")
110
110
  ) {
111
111
  // this seems to happening too much to show a warning every time
112
- return 'info';
112
+ return "info";
113
113
  }
114
114
  }
115
115
  return level;
@@ -117,12 +117,12 @@ class Logger {
117
117
 
118
118
  onLog(log: Log): void {
119
119
  if (!this.logCallback || !this.logCallback(log)) {
120
- const {message} = log;
120
+ const { message } = log;
121
121
  const level = this.effectiveLevel(log);
122
- if (level === 'error') {
123
- console.error('MapLibre error', message, log);
124
- } else if (level === 'warning') {
125
- console.warn('MapLibre warning', message, log);
122
+ if (level === "error") {
123
+ console.error("MapLibre error", message, log);
124
+ } else if (level === "warning") {
125
+ console.warn("MapLibre warning", message, log);
126
126
  } else {
127
127
  console.log(`MapLibre [${level}]`, message, log);
128
128
  }