@rnmapbox/maps 10.1.36 → 10.1.37

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.
@@ -184,7 +184,7 @@ class RNMBXPackage : TurboReactPackage() {
184
184
  false, // needsEagerInit
185
185
  true, // hasConstants
186
186
  false, // isCxxModule
187
- false // isTurboModule
187
+ isTurboModule // isTurboModule
188
188
  )
189
189
  moduleInfos[RNMBXOfflineModule.REACT_CLASS] = ReactModuleInfo(
190
190
  RNMBXOfflineModule.REACT_CLASS,
@@ -3,6 +3,7 @@ package com.rnmapbox.rnmbx.modules
3
3
  import com.facebook.react.bridge.*
4
4
  import com.rnmapbox.rnmbx.location.LocationManager
5
5
  import com.facebook.react.module.annotations.ReactModule
6
+ import com.rnmapbox.rnmbx.NativeRNMBXLocationModuleSpec
6
7
  import com.rnmapbox.rnmbx.location.LocationManager.OnUserLocationChange
7
8
  import com.rnmapbox.rnmbx.events.LocationEvent
8
9
  import com.rnmapbox.rnmbx.events.EventEmitter
@@ -16,7 +17,7 @@ data class LocationEventThrottle(var waitBetweenEvents: Double? = null, var last
16
17
 
17
18
  @ReactModule(name = RNMBXLocationModule.REACT_CLASS)
18
19
  class RNMBXLocationModule(reactContext: ReactApplicationContext) :
19
- ReactContextBaseJavaModule(reactContext) {
20
+ NativeRNMBXLocationModuleSpec(reactContext) {
20
21
  private var isEnabled = false
21
22
  private var mMinDisplacement = 0f
22
23
  private val locationManager: LocationManager? = getInstance(reactContext)
@@ -57,8 +58,12 @@ class RNMBXLocationModule(reactContext: ReactApplicationContext) :
57
58
  mLastLocation = location
58
59
  if (changed && (location != null) && shouldSendLocationEvent()) {
59
60
  val locationEvent = LocationEvent(location)
61
+
62
+ emitOnLocationUpdate(locationEvent.toJSON())
63
+ /*
60
64
  val emitter = EventEmitter.getModuleEmitter(reactApplicationContext)
61
65
  emitter?.emit(LOCATION_UPDATE, locationEvent.payload)
66
+ */
62
67
  }
63
68
  }
64
69
  }
@@ -72,15 +77,16 @@ class RNMBXLocationModule(reactContext: ReactApplicationContext) :
72
77
  }
73
78
 
74
79
  @ReactMethod
75
- fun start(minDisplacement: Float) {
80
+ override fun start(minDisplacement: Double) {
76
81
  isEnabled = true
77
- mMinDisplacement = minDisplacement
82
+ mMinDisplacement = minDisplacement.toFloat()
78
83
  locationManager?.startCounted()
79
84
  startLocationManager()
80
85
  }
81
86
 
82
87
  @ReactMethod
83
- fun setMinDisplacement(minDisplacement: Float) {
88
+ override fun setMinDisplacement(value: Double) {
89
+ val minDisplacement = value.toFloat()
84
90
  if (mMinDisplacement == minDisplacement) return
85
91
  mMinDisplacement = minDisplacement
86
92
  if (isEnabled) {
@@ -91,17 +97,17 @@ class RNMBXLocationModule(reactContext: ReactApplicationContext) :
91
97
  }
92
98
 
93
99
  @ReactMethod
94
- fun setRequestsAlwaysUse(requestsAlwaysUse: Boolean) {
100
+ override fun setRequestsAlwaysUse(requestsAlwaysUse: Boolean) {
95
101
  // IOS only. Ignored on Android.
96
102
  }
97
103
 
98
104
  @ReactMethod
99
- fun stop() {
105
+ override fun stop() {
100
106
  stopLocationManager()
101
107
  }
102
108
 
103
109
  @ReactMethod
104
- fun getLastKnownLocation(promise: Promise) {
110
+ override fun getLastKnownLocation(promise: Promise) {
105
111
  locationManager!!.getLastKnownLocation(
106
112
  object : LocationEngineCallback {
107
113
  override fun onSuccess(result: LocationEngineResult) {
@@ -121,6 +127,10 @@ class RNMBXLocationModule(reactContext: ReactApplicationContext) :
121
127
  )
122
128
  }
123
129
 
130
+ override fun simulateHeading(changesPerSecond: Double, increment: Double) {
131
+ // ios only
132
+ }
133
+
124
134
  @ReactMethod
125
135
  fun addListener(eventName: String?) {
126
136
  // Required for rn built in EventEmitter Calls.
@@ -150,10 +160,11 @@ class RNMBXLocationModule(reactContext: ReactApplicationContext) :
150
160
 
151
161
  // region Location event throttle
152
162
  @ReactMethod
153
- fun setLocationEventThrottle(throttleValue: Double) {
163
+ override fun setLocationEventThrottle(throttleValue: Double) {
154
164
  if (throttleValue > 0) {
155
165
  locationEventThrottle.waitBetweenEvents = throttleValue;
156
166
  } else {
167
+
157
168
  locationEventThrottle.waitBetweenEvents = null
158
169
  }
159
170
  }
@@ -183,4 +194,4 @@ class RNMBXLocationModule(reactContext: ReactApplicationContext) :
183
194
  const val REACT_CLASS = "RNMBXLocationModule"
184
195
  const val LOCATION_UPDATE = "MapboxUserLocationUpdate"
185
196
  }
186
- }
197
+ }
@@ -0,0 +1,68 @@
1
+
2
+ /**
3
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
4
+ *
5
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
6
+ * once the code is regenerated.
7
+ *
8
+ * @generated by codegen project: GenerateModuleJavaSpec.js
9
+ *
10
+ * @nolint
11
+ */
12
+
13
+ package com.rnmapbox.rnmbx;
14
+
15
+ import com.facebook.proguard.annotations.DoNotStrip;
16
+ import com.facebook.react.bridge.Promise;
17
+ import com.facebook.react.bridge.ReactApplicationContext;
18
+ import com.facebook.react.bridge.ReactContextBaseJavaModule;
19
+ import com.facebook.react.bridge.ReactMethod;
20
+ import com.facebook.react.bridge.ReactModuleWithSpec;
21
+ import com.facebook.react.bridge.ReadableMap;
22
+ import com.facebook.react.turbomodule.core.interfaces.TurboModule;
23
+ import javax.annotation.Nonnull;
24
+
25
+ public abstract class NativeRNMBXLocationModuleSpec extends ReactContextBaseJavaModule implements ReactModuleWithSpec, TurboModule {
26
+ public static final String NAME = "RNMBXLocationModule";
27
+
28
+ public NativeRNMBXLocationModuleSpec(ReactApplicationContext reactContext) {
29
+ super(reactContext);
30
+ }
31
+
32
+ @Override
33
+ public @Nonnull String getName() {
34
+ return NAME;
35
+ }
36
+
37
+ protected final void emitOnLocationUpdate(ReadableMap value) {
38
+ mEventEmitterCallback.invoke("onLocationUpdate", value);
39
+ }
40
+
41
+ @ReactMethod
42
+ @DoNotStrip
43
+ public abstract void start(double minDisplacement);
44
+
45
+ @ReactMethod
46
+ @DoNotStrip
47
+ public abstract void stop();
48
+
49
+ @ReactMethod
50
+ @DoNotStrip
51
+ public abstract void setRequestsAlwaysUse(boolean requestsAlwaysUse);
52
+
53
+ @ReactMethod
54
+ @DoNotStrip
55
+ public abstract void setMinDisplacement(double minDisplacement);
56
+
57
+ @ReactMethod
58
+ @DoNotStrip
59
+ public abstract void getLastKnownLocation(Promise promise);
60
+
61
+ @ReactMethod
62
+ @DoNotStrip
63
+ public abstract void simulateHeading(double changesPerSecond, double increment);
64
+
65
+ @ReactMethod
66
+ @DoNotStrip
67
+ public abstract void setLocationEventThrottle(double throttle);
68
+ }
@@ -5,9 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = exports.LocationModuleEventEmitter = exports.LocationManager = void 0;
7
7
  var _reactNative = require("react-native");
8
+ var _NativeRNMBXLocationModule = _interopRequireDefault(require("../../specs/NativeRNMBXLocationModule"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
10
  const MapboxGL = _reactNative.NativeModules.RNMBXModule;
9
- const MapboxGLLocationManager = _reactNative.NativeModules.RNMBXLocationModule;
10
- const LocationModuleEventEmitter = exports.LocationModuleEventEmitter = new _reactNative.NativeEventEmitter(MapboxGLLocationManager);
11
+ const MapboxGLLocationManager = _reactNative.Platform.select({
12
+ ios: _reactNative.NativeModules.RNMBXLocationModule,
13
+ android: _NativeRNMBXLocationModule.default
14
+ });
15
+ const LocationModuleEventEmitter = exports.LocationModuleEventEmitter = new _reactNative.NativeEventEmitter(
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ MapboxGLLocationManager);
11
18
 
12
19
  /**
13
20
  * Location sent by locationManager
@@ -90,7 +97,13 @@ class LocationManager {
90
97
  }
91
98
  if (!this._isListening) {
92
99
  MapboxGLLocationManager.start(validDisplacement);
93
- this.subscription = LocationModuleEventEmitter.addListener(MapboxGL.LocationCallbackName.Update, this._onUpdate);
100
+ if (_reactNative.Platform.OS === 'ios') {
101
+ this.subscription = LocationModuleEventEmitter.addListener(MapboxGL.LocationCallbackName.Update, this._onUpdate);
102
+ } else {
103
+ this.subscription = MapboxGLLocationManager.onLocationUpdate(location => {
104
+ this._onUpdate(location.payload);
105
+ });
106
+ }
94
107
  this._isListening = true;
95
108
  }
96
109
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","MapboxGL","NativeModules","RNMBXModule","MapboxGLLocationManager","RNMBXLocationModule","LocationModuleEventEmitter","exports","NativeEventEmitter","LocationManager","constructor","_listeners","_lastKnownLocation","_isListening","_requestsAlwaysUse","_onUpdate","bind","subscription","_appStateListener","AppState","addEventListener","_handleAppStateChange","getLastKnownLocation","lastKnownLocation","error","console","warn","addListener","listener","start","includes","push","removeListener","filter","l","length","stop","removeAllListeners","appState","displacement","validDisplacement","undefined","_minDisplacement","LocationCallbackName","Update","remove","setMinDisplacement","minDisplacement","setRequestsAlwaysUse","requestsAlwaysUse","location","forEach","_simulateHeading","changesPerSecond","increment","simulateHeading","setLocationEventThrottle","throttleValue","_default","default"],"sourceRoot":"../../../../src","sources":["modules/location/locationManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_NativeRNMBXLocationModule","_interopRequireDefault","e","__esModule","default","MapboxGL","NativeModules","RNMBXModule","MapboxGLLocationManager","Platform","select","ios","RNMBXLocationModule","android","NativeRNMBXLocationModule","LocationModuleEventEmitter","exports","NativeEventEmitter","LocationManager","constructor","_listeners","_lastKnownLocation","_isListening","_requestsAlwaysUse","_onUpdate","bind","subscription","_appStateListener","AppState","addEventListener","_handleAppStateChange","getLastKnownLocation","lastKnownLocation","error","console","warn","addListener","listener","start","includes","push","removeListener","filter","l","length","stop","removeAllListeners","appState","displacement","validDisplacement","undefined","_minDisplacement","OS","LocationCallbackName","Update","onLocationUpdate","location","payload","remove","setMinDisplacement","minDisplacement","setRequestsAlwaysUse","requestsAlwaysUse","forEach","_simulateHeading","changesPerSecond","increment","simulateHeading","setLocationEventThrottle","throttleValue","_default"],"sourceRoot":"../../../../src","sources":["modules/location/locationManager.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _default = exports.default = _reactNative.TurboModuleRegistry.getEnforcing('RNMBXLocationModule');
9
+ //# sourceMappingURL=NativeRNMBXLocationModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeRNMBXLocationModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAA+D,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GA8BhDC,gCAAmB,CAACC,YAAY,CAAO,qBAAqB,CAAC","ignoreList":[]}
@@ -1,9 +1,15 @@
1
1
  "use strict";
2
2
 
3
- import { NativeModules, NativeEventEmitter, AppState } from 'react-native';
3
+ import { NativeModules, NativeEventEmitter, AppState, Platform } from 'react-native';
4
+ import NativeRNMBXLocationModule from '../../specs/NativeRNMBXLocationModule';
4
5
  const MapboxGL = NativeModules.RNMBXModule;
5
- const MapboxGLLocationManager = NativeModules.RNMBXLocationModule;
6
- export const LocationModuleEventEmitter = new NativeEventEmitter(MapboxGLLocationManager);
6
+ const MapboxGLLocationManager = Platform.select({
7
+ ios: NativeModules.RNMBXLocationModule,
8
+ android: NativeRNMBXLocationModule
9
+ });
10
+ export const LocationModuleEventEmitter = new NativeEventEmitter(
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
+ MapboxGLLocationManager);
7
13
 
8
14
  /**
9
15
  * Location sent by locationManager
@@ -86,7 +92,13 @@ export class LocationManager {
86
92
  }
87
93
  if (!this._isListening) {
88
94
  MapboxGLLocationManager.start(validDisplacement);
89
- this.subscription = LocationModuleEventEmitter.addListener(MapboxGL.LocationCallbackName.Update, this._onUpdate);
95
+ if (Platform.OS === 'ios') {
96
+ this.subscription = LocationModuleEventEmitter.addListener(MapboxGL.LocationCallbackName.Update, this._onUpdate);
97
+ } else {
98
+ this.subscription = MapboxGLLocationManager.onLocationUpdate(location => {
99
+ this._onUpdate(location.payload);
100
+ });
101
+ }
90
102
  this._isListening = true;
91
103
  }
92
104
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","NativeEventEmitter","AppState","MapboxGL","RNMBXModule","MapboxGLLocationManager","RNMBXLocationModule","LocationModuleEventEmitter","LocationManager","constructor","_listeners","_lastKnownLocation","_isListening","_requestsAlwaysUse","_onUpdate","bind","subscription","_appStateListener","addEventListener","_handleAppStateChange","getLastKnownLocation","lastKnownLocation","error","console","warn","addListener","listener","start","includes","push","removeListener","filter","l","length","stop","removeAllListeners","appState","displacement","validDisplacement","undefined","_minDisplacement","LocationCallbackName","Update","remove","setMinDisplacement","minDisplacement","setRequestsAlwaysUse","requestsAlwaysUse","location","forEach","_simulateHeading","changesPerSecond","increment","simulateHeading","setLocationEventThrottle","throttleValue"],"sourceRoot":"../../../../src","sources":["modules/location/locationManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","NativeEventEmitter","AppState","Platform","NativeRNMBXLocationModule","MapboxGL","RNMBXModule","MapboxGLLocationManager","select","ios","RNMBXLocationModule","android","LocationModuleEventEmitter","LocationManager","constructor","_listeners","_lastKnownLocation","_isListening","_requestsAlwaysUse","_onUpdate","bind","subscription","_appStateListener","addEventListener","_handleAppStateChange","getLastKnownLocation","lastKnownLocation","error","console","warn","addListener","listener","start","includes","push","removeListener","filter","l","length","stop","removeAllListeners","appState","displacement","validDisplacement","undefined","_minDisplacement","OS","LocationCallbackName","Update","onLocationUpdate","location","payload","remove","setMinDisplacement","minDisplacement","setRequestsAlwaysUse","requestsAlwaysUse","forEach","_simulateHeading","changesPerSecond","increment","simulateHeading","setLocationEventThrottle","throttleValue"],"sourceRoot":"../../../../src","sources":["modules/location/locationManager.ts"],"mappings":";;AAAA,SACEA,aAAa,EACbC,kBAAkB,EAClBC,QAAQ,EAIRC,QAAQ,QAEH,cAAc;AAErB,OAAOC,yBAAyB,MAAM,uCAAuC;AAE7E,MAAMC,QAAQ,GAAGL,aAAa,CAACM,WAAW;AAC1C,MAAMC,uBAAyD,GAAGJ,QAAQ,CAACK,MAAM,CAAC;EAACC,GAAG,EAAET,aAAa,CAACU,mBAAmB;EAAEC,OAAO,EAAGP;AAAyB,CAAC,CAAC;AAEhK,OAAO,MAAMQ,0BAA0B,GAAG,IAAIX,kBAAkB;AAC9D;AACAM,uBACF,CAAC;;AAED;AACA;AACA;;AAMA;AACA;AACA;;AA0CA;AACA;AACA;AACA,OAAO,MAAMM,eAAe,CAAC;EAS3BC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,UAAU,GAAG,EAAE;IACpB,IAAI,CAACC,kBAAkB,GAAG,IAAI;IAC9B,IAAI,CAACC,YAAY,GAAG,KAAK;IACzB,IAAI,CAACC,kBAAkB,GAAG,KAAK;IAC/B,IAAI,CAACC,SAAS,GAAG,IAAI,CAACA,SAAS,CAACC,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,CAACC,YAAY,GAAG,IAAI;IAExB,IAAI,CAACC,iBAAiB,GAAGpB,QAAQ,CAACqB,gBAAgB,CAChD,QAAQ,EACR,IAAI,CAACC,qBAAqB,CAACJ,IAAI,CAAC,IAAI,CACtC,CAAC;EACH;EAEA,MAAMK,oBAAoBA,CAAA,EAAG;IAC3B,IAAI,CAAC,IAAI,CAACT,kBAAkB,EAAE;MAC5B,IAAIU,iBAAiB;;MAErB;MACA;MACA;MACA;MACA,IAAI;QACFA,iBAAiB,GACf,MAAMnB,uBAAuB,CAACkB,oBAAoB,CAAC,CAAC;MACxD,CAAC,CAAC,OAAOE,KAAK,EAAE;QACdC,OAAO,CAACC,IAAI,CAAC,yBAAyB,EAAEF,KAAK,CAAC;MAChD;MAEA,IAAI,CAAC,IAAI,CAACX,kBAAkB,IAAIU,iBAAiB,EAAE;QACjD,IAAI,CAACV,kBAAkB,GAAGU,iBAAiB;MAC7C;IACF;IAEA,OAAO,IAAI,CAACV,kBAAkB;EAChC;EAEAc,WAAWA,CAACC,QAAsC,EAAE;IAClD,IAAI,CAAC,IAAI,CAACd,YAAY,EAAE;MACtB,IAAI,CAACe,KAAK,CAAC,CAAC;IACd;IACA,IAAI,CAAC,IAAI,CAACjB,UAAU,CAACkB,QAAQ,CAACF,QAAQ,CAAC,EAAE;MACvC,IAAI,CAAChB,UAAU,CAACmB,IAAI,CAACH,QAAQ,CAAC;MAE9B,IAAI,IAAI,CAACf,kBAAkB,EAAE;QAC3Be,QAAQ,CAAC,IAAI,CAACf,kBAAkB,CAAC;MACnC;IACF;EACF;EAEAmB,cAAcA,CAACJ,QAAsC,EAAE;IACrD,IAAI,CAAChB,UAAU,GAAG,IAAI,CAACA,UAAU,CAACqB,MAAM,CAAEC,CAAC,IAAKA,CAAC,KAAKN,QAAQ,CAAC;IAC/D,IAAI,IAAI,CAAChB,UAAU,CAACuB,MAAM,KAAK,CAAC,EAAE;MAChC,IAAI,CAACC,IAAI,CAAC,CAAC;IACb;EACF;EAEAC,kBAAkBA,CAAA,EAAG;IACnB,IAAI,CAACzB,UAAU,GAAG,EAAE;IACpB,IAAI,CAACwB,IAAI,CAAC,CAAC;EACb;EAEAf,qBAAqBA,CAACiB,QAAwB,EAAE;IAC9C,IAAI,CAAC,IAAI,CAACvB,kBAAkB,EAAE;MAC5B,IAAIuB,QAAQ,KAAK,YAAY,EAAE;QAC7B,IAAI,CAACF,IAAI,CAAC,CAAC;MACb,CAAC,MAAM,IAAIE,QAAQ,KAAK,QAAQ,EAAE;QAChC,IAAI,IAAI,CAAC1B,UAAU,CAACuB,MAAM,GAAG,CAAC,EAAE;UAC9B,IAAI,CAACN,KAAK,CAAC,CAAC;QACd;MACF;IACF;EACF;EAEAA,KAAKA,CAACU,YAAY,GAAG,CAAC,CAAC,EAAE;IACvB,IAAIC,iBAAiB,GAAG,CAAC;IACzB,IACED,YAAY,KAAK,CAAC,CAAC,IACnBA,YAAY,KAAK,IAAI,IACrBA,YAAY,KAAKE,SAAS,EAC1B;MACAD,iBAAiB,GAAG,IAAI,CAACE,gBAAgB,IAAI,CAAC,CAAC;IACjD,CAAC,MAAM;MACLF,iBAAiB,GAAGD,YAAY;IAClC;IAEA,IAAI,CAAC,IAAI,CAACzB,YAAY,EAAE;MACtBV,uBAAuB,CAACyB,KAAK,CAACW,iBAAiB,CAAC;MAEhD,IAAIxC,QAAQ,CAAC2C,EAAE,KAAK,KAAK,EAAE;QACzB,IAAI,CAACzB,YAAY,GAAGT,0BAA0B,CAACkB,WAAW,CACxDzB,QAAQ,CAAC0C,oBAAoB,CAACC,MAAM,EACpC,IAAI,CAAC7B,SACP,CAAC;MACH,CAAC,MAAM;QACL,IAAI,CAACE,YAAY,GAAGd,uBAAuB,CAAC0C,gBAAgB,CAAEC,QAAQ,IAAK;UACzE,IAAI,CAAC/B,SAAS,CAAC+B,QAAQ,CAACC,OAAO,CAAC;QAClC,CAAC,CAAC;MACJ;MAEA,IAAI,CAAClC,YAAY,GAAG,IAAI;IAC1B;EACF;EAEAsB,IAAIA,CAAA,EAAG;IACLhC,uBAAuB,CAACgC,IAAI,CAAC,CAAC;IAE9B,IAAI,IAAI,CAACtB,YAAY,IAAI,IAAI,CAACI,YAAY,EAAE;MAC1C,IAAI,CAACA,YAAY,CAAC+B,MAAM,CAAC,CAAC;IAC5B;IAEA,IAAI,CAACnC,YAAY,GAAG,KAAK;EAC3B;EAEAoC,kBAAkBA,CAACC,eAAuB,EAAE;IAC1C,IAAI,CAACT,gBAAgB,GAAGS,eAAe;IACvC/C,uBAAuB,CAAC8C,kBAAkB,CAACC,eAAe,CAAC;EAC7D;EAEAC,oBAAoBA,CAACC,iBAA0B,EAAE;IAC/CjD,uBAAuB,CAACgD,oBAAoB,CAACC,iBAAiB,CAAC;IAC/D,IAAI,CAACtC,kBAAkB,GAAGsC,iBAAiB;EAC7C;EAEArC,SAASA,CAAC+B,QAAkB,EAAE;IAC5B,IAAI,CAAClC,kBAAkB,GAAGkC,QAAQ;IAElC,IAAI,CAACnC,UAAU,CAAC0C,OAAO,CAAEpB,CAAC,IAAKA,CAAC,CAACa,QAAQ,CAAC,CAAC;EAC7C;;EAEA;AACF;AACA;EACEQ,gBAAgBA,CAACC,gBAAwB,EAAEC,SAAiB,EAAE;IAC5DrD,uBAAuB,CAACsD,eAAe,CAACF,gBAAgB,EAAEC,SAAS,CAAC;EACtE;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEE,wBAAwBA,CAACC,aAAqB,EAAE;IAC9CxD,uBAAuB,CAACuD,wBAAwB,CAACC,aAAa,CAAC;EACjE;AACF;AAEA,eAAe,IAAIlD,eAAe,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ import { TurboModuleRegistry } from "react-native";
4
+ export default TurboModuleRegistry.getEnforcing('RNMBXLocationModule');
5
+ //# sourceMappingURL=NativeRNMBXLocationModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeRNMBXLocationModule.ts"],"mappings":";;AAAA,SAAsBA,mBAAmB,QAAO,cAAc;AA8B9D,eAAeA,mBAAmB,CAACC,YAAY,CAAO,qBAAqB,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { NativeEventEmitter, NativeEventSubscription, EmitterSubscription, type AppStateStatus } from 'react-native';
1
+ import { NativeEventEmitter, NativeEventSubscription, EmitterSubscription, type AppStateStatus, EventSubscription } from 'react-native';
2
2
  export declare const LocationModuleEventEmitter: NativeEventEmitter;
3
3
  /**
4
4
  * Location sent by locationManager
@@ -52,7 +52,7 @@ export declare class LocationManager {
52
52
  _lastKnownLocation: Location | null;
53
53
  _isListening: boolean;
54
54
  _requestsAlwaysUse: boolean;
55
- subscription: EmitterSubscription | null;
55
+ subscription: EmitterSubscription | EventSubscription | null;
56
56
  _appStateListener: NativeEventSubscription;
57
57
  _minDisplacement?: number;
58
58
  constructor();
@@ -1 +1 @@
1
- {"version":3,"file":"locationManager.d.ts","sourceRoot":"","sources":["../../../../../src/modules/location/locationManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAElB,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAKtB,eAAO,MAAM,0BAA0B,oBAEtC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,UAAU,WAAW;IACnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC;IAC7C,kBAAkB,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACzC,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,gBAAgB,CAAC,EAAE,MAAM,CAAC;;IAgBpB,oBAAoB;IAuB1B,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI;IAalD,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI;IAOrD,kBAAkB;IAKlB,qBAAqB,CAAC,QAAQ,EAAE,cAAc;IAY9C,KAAK,CAAC,YAAY,SAAK;IAwBvB,IAAI;IAUJ,kBAAkB,CAAC,eAAe,EAAE,MAAM;IAK1C,oBAAoB,CAAC,iBAAiB,EAAE,OAAO;IAK/C,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAM5B;;OAEG;IACH,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAI5D;;;;;;;;;OASG;IACH,wBAAwB,CAAC,aAAa,EAAE,MAAM;CAG/C;;AAED,wBAAqC"}
1
+ {"version":3,"file":"locationManager.d.ts","sourceRoot":"","sources":["../../../../../src/modules/location/locationManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAElB,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,cAAc,EAEnB,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAOrB,eAAO,MAAM,0BAA0B,oBAGtC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,UAAU,WAAW;IACnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC;IAC7C,kBAAkB,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAC7D,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,gBAAgB,CAAC,EAAE,MAAM,CAAC;;IAgBpB,oBAAoB;IAuB1B,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI;IAalD,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI;IAOrD,kBAAkB;IAKlB,qBAAqB,CAAC,QAAQ,EAAE,cAAc;IAY9C,KAAK,CAAC,YAAY,SAAK;IA8BvB,IAAI;IAUJ,kBAAkB,CAAC,eAAe,EAAE,MAAM;IAK1C,oBAAoB,CAAC,iBAAiB,EAAE,OAAO;IAK/C,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAM5B;;OAEG;IACH,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAI5D;;;;;;;;;OASG;IACH,wBAAwB,CAAC,aAAa,EAAE,MAAM;CAG/C;;AAED,wBAAqC"}
@@ -0,0 +1,29 @@
1
+ import { TurboModule } from "react-native";
2
+ import type { EventEmitter } from 'react-native/Libraries/Types/CodegenTypes';
3
+ type LocationEvent = {
4
+ type: string;
5
+ payload: {
6
+ coords: {
7
+ latitude: number;
8
+ longitude: number;
9
+ altitude: number;
10
+ accuracy: number;
11
+ speed: number;
12
+ heading: number;
13
+ };
14
+ timestamp: number;
15
+ };
16
+ };
17
+ export interface Spec extends TurboModule {
18
+ start(minDisplacement: number): void;
19
+ stop(): void;
20
+ setRequestsAlwaysUse(requestsAlwaysUse: boolean): void;
21
+ setMinDisplacement(minDisplacement: number): void;
22
+ getLastKnownLocation(): Promise<LocationEvent['payload']>;
23
+ simulateHeading(changesPerSecond: number, increment: number): void;
24
+ setLocationEventThrottle(throttle: number): void;
25
+ readonly onLocationUpdate: EventEmitter<LocationEvent>;
26
+ }
27
+ declare const _default: Spec;
28
+ export default _default;
29
+ //# sourceMappingURL=NativeRNMBXLocationModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeRNMBXLocationModule.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeRNMBXLocationModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAE9E,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE;QACP,MAAM,EAAE;YACN,QAAQ,EAAE,MAAM,CAAA;YAChB,SAAS,EAAE,MAAM,CAAA;YACjB,QAAQ,EAAE,MAAM,CAAA;YAChB,QAAQ,EAAE,MAAM,CAAA;YAChB,KAAK,EAAE,MAAM,CAAA;YACb,OAAO,EAAE,MAAM,CAAA;SAChB,CAAA;QACD,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;CACF,CAAA;AAED,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,KAAK,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,IAAI,IAAI,IAAI,CAAA;IACZ,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,GAAG,IAAI,CAAA;IACtD,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IACjD,oBAAoB,IAAI,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;IACzD,eAAe,CAAC,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IAClE,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEhD,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAA;CACvD;;AAED,wBAA6E"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@rnmapbox/maps",
3
3
  "description": "A Mapbox react native module for creating custom maps",
4
- "version": "10.1.36",
4
+ "version": "10.1.37",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -5,13 +5,18 @@ import {
5
5
  NativeEventSubscription,
6
6
  EmitterSubscription,
7
7
  type AppStateStatus,
8
- } from 'react-native';
8
+ Platform,
9
+ EventSubscription,
10
+ } from 'react-native'
9
11
 
10
- const MapboxGL = NativeModules.RNMBXModule;
11
- const MapboxGLLocationManager = NativeModules.RNMBXLocationModule;
12
+ import NativeRNMBXLocationModule from '../../specs/NativeRNMBXLocationModule'
13
+
14
+ const MapboxGL = NativeModules.RNMBXModule
15
+ const MapboxGLLocationManager: typeof NativeRNMBXLocationModule = Platform.select({ios: NativeModules.RNMBXLocationModule, android: NativeRNMBXLocationModule})
12
16
 
13
17
  export const LocationModuleEventEmitter = new NativeEventEmitter(
14
- MapboxGLLocationManager,
18
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
+ MapboxGLLocationManager as any,
15
20
  );
16
21
 
17
22
  /**
@@ -74,7 +79,7 @@ export class LocationManager {
74
79
  _lastKnownLocation: Location | null;
75
80
  _isListening: boolean;
76
81
  _requestsAlwaysUse: boolean;
77
- subscription: EmitterSubscription | null;
82
+ subscription: EmitterSubscription | EventSubscription | null;
78
83
  _appStateListener: NativeEventSubscription;
79
84
  _minDisplacement?: number;
80
85
 
@@ -167,10 +172,16 @@ export class LocationManager {
167
172
  if (!this._isListening) {
168
173
  MapboxGLLocationManager.start(validDisplacement);
169
174
 
170
- this.subscription = LocationModuleEventEmitter.addListener(
171
- MapboxGL.LocationCallbackName.Update,
172
- this._onUpdate,
173
- );
175
+ if (Platform.OS === 'ios') {
176
+ this.subscription = LocationModuleEventEmitter.addListener(
177
+ MapboxGL.LocationCallbackName.Update,
178
+ this._onUpdate,
179
+ );
180
+ } else {
181
+ this.subscription = MapboxGLLocationManager.onLocationUpdate((location) => {
182
+ this._onUpdate(location.payload);
183
+ });
184
+ }
174
185
 
175
186
  this._isListening = true;
176
187
  }
@@ -0,0 +1,32 @@
1
+ import { TurboModule, TurboModuleRegistry} from "react-native";
2
+ import type { EventEmitter } from 'react-native/Libraries/Types/CodegenTypes';
3
+
4
+ type LocationEvent = {
5
+ type: string //"userlocationdupdated"
6
+ payload: {
7
+ coords: {
8
+ latitude: number
9
+ longitude: number
10
+ altitude: number
11
+ accuracy: number
12
+ speed: number
13
+ heading: number
14
+ }
15
+ timestamp: number
16
+ }
17
+ }
18
+
19
+ export interface Spec extends TurboModule {
20
+ start(minDisplacement: number): void
21
+ stop(): void
22
+ setRequestsAlwaysUse(requestsAlwaysUse: boolean): void
23
+ setMinDisplacement(minDisplacement: number): void
24
+ getLastKnownLocation(): Promise<LocationEvent['payload']>
25
+ simulateHeading(changesPerSecond: number, increment: number): void
26
+ setLocationEventThrottle(throttle: number): void
27
+
28
+ readonly onLocationUpdate: EventEmitter<LocationEvent>
29
+ }
30
+
31
+ export default TurboModuleRegistry.getEnforcing<Spec>('RNMBXLocationModule');
32
+