@rnmapbox/maps 10.1.44 → 10.1.45-rc.0
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.
- package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXOfflineModule.kt +15 -14
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt +27 -1
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt +28 -1
- package/ios/RNMBX/Offline/RNMBXOfflineModule.swift +81 -33
- package/ios/RNMBX/RNMBXEvent.swift +1 -1
- package/ios/RNMBX/RNMBXImagesComponentView.mm +3 -3
- package/lib/commonjs/components/Images.js +8 -1
- package/lib/commonjs/components/Images.js.map +1 -1
- package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js +1 -0
- package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -1
- package/lib/commonjs/specs/RNMBXImagesNativeComponent.ts +4 -1
- package/lib/module/components/Images.js +8 -1
- package/lib/module/components/Images.js.map +1 -1
- package/lib/module/modules/offline/OfflineCreatePackOptions.js +1 -0
- package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -1
- package/lib/module/specs/RNMBXImagesNativeComponent.ts +4 -1
- package/lib/typescript/src/components/Images.d.ts.map +1 -1
- package/lib/typescript/src/modules/offline/OfflineCreatePackOptions.d.ts +2 -0
- package/lib/typescript/src/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXImagesNativeComponent.d.ts +1 -1
- package/lib/typescript/src/specs/RNMBXImagesNativeComponent.d.ts.map +1 -1
- package/package.json +1 -1
- package/rnmapbox-maps.podspec +1 -1
- package/src/components/Images.tsx +15 -10
- package/src/modules/offline/OfflineCreatePackOptions.ts +3 -0
- package/src/specs/RNMBXImagesNativeComponent.ts +4 -1
|
@@ -51,6 +51,7 @@ class TileRegionPack(var name: String, var state: TileRegionPackState = TileRegi
|
|
|
51
51
|
|
|
52
52
|
// stored in metadata for resume functionality
|
|
53
53
|
var styleURI: String? = null
|
|
54
|
+
var tilesets: List<String> = emptyList()
|
|
54
55
|
var bounds: Geometry? = null
|
|
55
56
|
var zoomRange: ZoomRange? = null
|
|
56
57
|
|
|
@@ -79,10 +80,11 @@ class TileRegionPack(var name: String, var state: TileRegionPackState = TileRegi
|
|
|
79
80
|
name: String,
|
|
80
81
|
state: TileRegionPackState = TileRegionPackState.UNKNOWN,
|
|
81
82
|
styleURI: String,
|
|
83
|
+
tilesets: List<String>,
|
|
82
84
|
bounds: Geometry,
|
|
83
85
|
zoomRange: ZoomRange,
|
|
84
86
|
metadata: JSONObject
|
|
85
|
-
) : this(name= name, state= state,progress= null, metadata= metadata) {
|
|
87
|
+
) : this(name= name, state= state, progress= null, metadata= metadata) {
|
|
86
88
|
val rnmeta = JSONObject()
|
|
87
89
|
rnmeta.put("styleURI", styleURI)
|
|
88
90
|
this.styleURI = styleURI
|
|
@@ -90,6 +92,8 @@ class TileRegionPack(var name: String, var state: TileRegionPackState = TileRegi
|
|
|
90
92
|
this.bounds = bounds
|
|
91
93
|
rnmeta.put("zoomRange", JSONArray(arrayOf(zoomRange.minZoom, zoomRange.maxZoom)))
|
|
92
94
|
this.zoomRange = zoomRange
|
|
95
|
+
rnmeta.put("tilesets", JSONArray(tilesets))
|
|
96
|
+
this.tilesets = tilesets
|
|
93
97
|
this.metadata.put(RNMapboxInfoMetadataKey, rnmeta);
|
|
94
98
|
}
|
|
95
99
|
}
|
|
@@ -143,9 +147,11 @@ class RNMBXOfflineModule(private val mReactContext: ReactApplicationContext) :
|
|
|
143
147
|
val boundsFC = FeatureCollection.fromJson(boundsStr)
|
|
144
148
|
val bounds = convertPointPairToBounds(boundsFC)
|
|
145
149
|
|
|
150
|
+
val tilesets = options.getArray("tilesets")?.toArrayList()?.map { it as String } ?: emptyList()
|
|
146
151
|
val actPack = TileRegionPack(
|
|
147
152
|
name = id,
|
|
148
153
|
styleURI = options.getString("styleURL")!!,
|
|
154
|
+
tilesets = tilesets,
|
|
149
155
|
bounds = bounds,
|
|
150
156
|
zoomRange = ZoomRange(
|
|
151
157
|
minZoom = options.getInt("minZoom").toByte(),
|
|
@@ -280,30 +286,25 @@ class RNMBXOfflineModule(private val mReactContext: ReactApplicationContext) :
|
|
|
280
286
|
?: return Result.failure(IllegalArgumentException("startLoading failed as there is no styleURI in pack"))
|
|
281
287
|
val metadata = pack.metadata
|
|
282
288
|
?: return Result.failure(IllegalArgumentException("startLoading failed as there is no metadata in pack"))
|
|
283
|
-
|
|
284
289
|
val stylePackOptions = StylePackLoadOptions.Builder()
|
|
285
290
|
.glyphsRasterizationMode(GlyphsRasterizationMode.IDEOGRAPHS_RASTERIZED_LOCALLY)
|
|
286
291
|
.metadata(metadata.toMapboxValue())
|
|
287
292
|
.build()
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
.
|
|
295
|
-
.build()
|
|
296
|
-
val tilesetDescriptor = offlineManager.createTilesetDescriptor(descriptorOptions)
|
|
297
|
-
|
|
293
|
+
val descriptors = getTilesetDescriptors(
|
|
294
|
+
offlineManager = offlineManager,
|
|
295
|
+
styleURI = styleURI,
|
|
296
|
+
minZoom = zoomRange.minZoom,
|
|
297
|
+
maxZoom = zoomRange.maxZoom,
|
|
298
|
+
stylePackOptions = stylePackOptions,
|
|
299
|
+
tilesets = pack.tilesets)
|
|
298
300
|
val loadOptions = TileRegionLoadOptions.Builder()
|
|
299
301
|
.geometry(bounds)
|
|
300
|
-
.descriptors(
|
|
302
|
+
.descriptors(descriptors)
|
|
301
303
|
.metadata(metadata.toMapboxValue())
|
|
302
304
|
.acceptExpired(true)
|
|
303
305
|
.networkRestriction(NetworkRestriction.NONE)
|
|
304
306
|
.averageBytesPerSecond(null)
|
|
305
307
|
.build()
|
|
306
|
-
|
|
307
308
|
var lastProgress: TileRegionLoadProgress? = null
|
|
308
309
|
val task = this.tileStore.loadTileRegion(
|
|
309
310
|
id, loadOptions,
|
package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt
CHANGED
|
@@ -6,6 +6,10 @@ import com.mapbox.common.toValue
|
|
|
6
6
|
import com.mapbox.maps.OfflineManager
|
|
7
7
|
import com.mapbox.maps.OfflineRegionManager
|
|
8
8
|
import com.mapbox.maps.ResourceOptions
|
|
9
|
+
import com.mapbox.maps.StylePackLoadOptions
|
|
10
|
+
import com.mapbox.maps.TilesetDescriptorOptions
|
|
11
|
+
import com.mapbox.maps.TilesetDescriptorOptionsForTilesets
|
|
12
|
+
import com.mapbox.common.TilesetDescriptor
|
|
9
13
|
|
|
10
14
|
fun getOfflineRegionManager(getAccessToken: () -> String): OfflineRegionManager {
|
|
11
15
|
return OfflineRegionManager(ResourceOptions.Builder().accessToken(getAccessToken()).build())
|
|
@@ -20,6 +24,28 @@ fun getOfflineManager(tileStore: TileStore, getAccessToken: () -> String): Offli
|
|
|
20
24
|
)
|
|
21
25
|
}
|
|
22
26
|
|
|
27
|
+
fun getTilesetDescriptors(offlineManager: OfflineManager, styleURI: String, minZoom: Byte, maxZoom: Byte, stylePackOptions: StylePackLoadOptions, tilesets: List<String>): ArrayList<TilesetDescriptor>{
|
|
28
|
+
val descriptorOptions = TilesetDescriptorOptions.Builder()
|
|
29
|
+
.styleURI(styleURI)
|
|
30
|
+
.minZoom(minZoom)
|
|
31
|
+
.maxZoom(maxZoom)
|
|
32
|
+
.stylePackOptions(stylePackOptions)
|
|
33
|
+
.pixelRatio(2.0f)
|
|
34
|
+
.build()
|
|
35
|
+
val descriptor = offlineManager.createTilesetDescriptor(descriptorOptions)
|
|
36
|
+
val descriptors = arrayListOf(descriptor)
|
|
37
|
+
if (tilesets.isNotEmpty()) {
|
|
38
|
+
val tilesetDescriptorOptions = TilesetDescriptorOptionsForTilesets.Builder()
|
|
39
|
+
.tilesets(tilesets)
|
|
40
|
+
.minZoom(minZoom)
|
|
41
|
+
.maxZoom(maxZoom)
|
|
42
|
+
.build()
|
|
43
|
+
val tilesetDescriptor = offlineManager.createTilesetDescriptor(tilesetDescriptorOptions)
|
|
44
|
+
descriptors.add(tilesetDescriptor)
|
|
45
|
+
}
|
|
46
|
+
return descriptors
|
|
47
|
+
}
|
|
48
|
+
|
|
23
49
|
fun TileStore.setAccessToken(token: String) {
|
|
24
50
|
this.setOption(TileStoreOptions.MAPBOX_ACCESS_TOKEN, token.toValue());
|
|
25
|
-
}
|
|
51
|
+
}
|
package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt
CHANGED
|
@@ -4,13 +4,40 @@ import com.mapbox.common.MapboxOptions
|
|
|
4
4
|
import com.mapbox.common.TileStore
|
|
5
5
|
import com.mapbox.maps.OfflineManager
|
|
6
6
|
import com.mapbox.maps.OfflineRegionManager
|
|
7
|
+
import com.mapbox.maps.StylePackLoadOptions
|
|
8
|
+
import com.mapbox.maps.TilesetDescriptorOptions
|
|
9
|
+
import com.mapbox.common.TilesetDescriptor
|
|
7
10
|
|
|
8
11
|
fun getOfflineRegionManager(getAccessToken: () -> String): OfflineRegionManager {
|
|
9
12
|
return OfflineRegionManager()
|
|
10
13
|
}
|
|
14
|
+
|
|
11
15
|
fun getOfflineManager(tileStore: TileStore, getAccessToken: () -> String): OfflineManager {
|
|
12
16
|
return OfflineManager()
|
|
13
17
|
}
|
|
18
|
+
|
|
19
|
+
fun getTilesetDescriptors(offlineManager: OfflineManager, styleURI: String, minZoom: Byte, maxZoom: Byte, stylePackOptions: StylePackLoadOptions, tilesets: List<String>): ArrayList<TilesetDescriptor>{
|
|
20
|
+
val descriptorOptions = TilesetDescriptorOptions.Builder()
|
|
21
|
+
.styleURI(styleURI)
|
|
22
|
+
.minZoom(minZoom)
|
|
23
|
+
.maxZoom(maxZoom)
|
|
24
|
+
.stylePackOptions(stylePackOptions)
|
|
25
|
+
.pixelRatio(2.0f)
|
|
26
|
+
.build()
|
|
27
|
+
val descriptor = offlineManager.createTilesetDescriptor(descriptorOptions)
|
|
28
|
+
val descriptors = arrayListOf(descriptor)
|
|
29
|
+
if (tilesets.isNotEmpty()) {
|
|
30
|
+
val tilesetDescriptorOptions = TilesetDescriptorOptions.Builder().styleURI(styleURI)
|
|
31
|
+
.tilesets(tilesets)
|
|
32
|
+
.minZoom(minZoom)
|
|
33
|
+
.maxZoom(maxZoom)
|
|
34
|
+
.build()
|
|
35
|
+
val tilesetDescriptor = offlineManager.createTilesetDescriptor(tilesetDescriptorOptions)
|
|
36
|
+
descriptors.add(tilesetDescriptor)
|
|
37
|
+
}
|
|
38
|
+
return descriptors
|
|
39
|
+
}
|
|
40
|
+
|
|
14
41
|
fun TileStore.setAccessToken(token: String) {
|
|
15
42
|
MapboxOptions.accessToken = token
|
|
16
|
-
}
|
|
43
|
+
}
|
|
@@ -11,8 +11,6 @@ extension Date {
|
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
14
|
@objc(RNMBXOfflineModule)
|
|
17
15
|
class RNMBXOfflineModule: RCTEventEmitter {
|
|
18
16
|
var hasListeners = false
|
|
@@ -60,6 +58,9 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
60
58
|
self.state = state
|
|
61
59
|
|
|
62
60
|
if let rnMetadata = metadata[RNMapboxInfoMetadataKey] as? [String:Any] {
|
|
61
|
+
if let tilesets = rnMetadata["tilesets"] as? [String] {
|
|
62
|
+
self.tilesets = tilesets
|
|
63
|
+
}
|
|
63
64
|
if let styleURI = rnMetadata["styleURI"] as? String {
|
|
64
65
|
self.styleURI = StyleURI(rawValue: styleURI)
|
|
65
66
|
}
|
|
@@ -82,20 +83,22 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
82
83
|
state: State = .unknown,
|
|
83
84
|
styleURI: StyleURI,
|
|
84
85
|
bounds: Geometry,
|
|
86
|
+
tilesets: [String],
|
|
85
87
|
zoomRange: ClosedRange<UInt8>,
|
|
86
88
|
metadata: [String:Any]) {
|
|
87
89
|
self.name = name
|
|
88
90
|
self.progress = nil
|
|
89
|
-
self.
|
|
91
|
+
self.cancelables = []
|
|
90
92
|
self.state = state
|
|
91
|
-
|
|
92
93
|
self.styleURI = styleURI
|
|
93
94
|
self.bounds = bounds
|
|
94
95
|
self.zoomRange = zoomRange
|
|
96
|
+
self.tilesets = tilesets
|
|
95
97
|
|
|
96
98
|
var metadata = metadata
|
|
97
99
|
metadata[RNMapboxInfoMetadataKey] = [
|
|
98
100
|
"styleURI": styleURI.rawValue,
|
|
101
|
+
"tilesets": logged("RNMBXOfflineModule.TileRegionPack: cannot encode tilesets") { try JSONSerialization.jsonObject(with: try! JSONEncoder().encode(tilesets)) },
|
|
99
102
|
"bounds": logged("RNMBXOfflineModule.TileRegionPack: cannot encode bounds") { try JSONSerialization.jsonObject(with: try! JSONEncoder().encode(bounds)) },
|
|
100
103
|
"zoomRange": logged("RNMBXOfflineModule.TileRegionPack: cannot encode zoomRange") { try JSONSerialization.jsonObject(with: try! JSONEncoder().encode(zoomRange))}
|
|
101
104
|
]
|
|
@@ -103,12 +106,13 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
103
106
|
}
|
|
104
107
|
|
|
105
108
|
var name: String
|
|
106
|
-
var
|
|
109
|
+
var cancelables: [Cancelable] = []
|
|
107
110
|
var progress : TileRegionLoadProgress? = nil
|
|
108
111
|
var state : State = .inactive
|
|
109
112
|
var metadata : [String:Any]
|
|
110
113
|
|
|
111
114
|
// Stored in metadata for resume functionality:
|
|
115
|
+
var tilesets : [String] = []
|
|
112
116
|
var bounds: Geometry? = nil
|
|
113
117
|
var zoomRange: ClosedRange<UInt8>? = nil
|
|
114
118
|
var styleURI: StyleURI? = nil
|
|
@@ -177,9 +181,11 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
177
181
|
name: id,
|
|
178
182
|
styleURI: StyleURI(rawValue: options["styleURL"] as! String)!,
|
|
179
183
|
bounds: bounds,
|
|
184
|
+
tilesets: options["tilesets"] as? [String] ?? [],
|
|
180
185
|
zoomRange: (options["minZoom"] as! NSNumber).uint8Value...(options["maxZoom"] as! NSNumber).uint8Value,
|
|
181
186
|
metadata: metadata
|
|
182
187
|
)
|
|
188
|
+
|
|
183
189
|
self.tileRegionPacks[id] = actPack
|
|
184
190
|
self.startLoading(pack: actPack)
|
|
185
191
|
|
|
@@ -242,13 +248,8 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
242
248
|
func pausePackDownload(_ name: String, resolver: RCTPromiseResolveBlock, rejecter: RCTPromiseRejectBlock)
|
|
243
249
|
{
|
|
244
250
|
if let pack = tileRegionPacks[name] {
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
tileRegionPacks[name]?.cancelable = nil
|
|
248
|
-
resolver(nil)
|
|
249
|
-
} else {
|
|
250
|
-
rejecter("pausePackDownload", "Offline pack: \(name) already cancelled", nil)
|
|
251
|
-
}
|
|
251
|
+
pack.cancelables.forEach { $0.cancel() }
|
|
252
|
+
resolver(nil)
|
|
252
253
|
} else {
|
|
253
254
|
rejecter("pausePackDownload", "Unknown offline region: \(name)", nil)
|
|
254
255
|
}
|
|
@@ -343,6 +344,8 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
343
344
|
func startLoading(pack: TileRegionPack) {
|
|
344
345
|
let id = pack.name
|
|
345
346
|
let metadata = pack.metadata
|
|
347
|
+
let taskGroup = DispatchGroup()
|
|
348
|
+
|
|
346
349
|
guard let bounds = pack.bounds else {
|
|
347
350
|
RNMBXLogError("RNMBXOfflineModule.startLoading failed as there are no bounds in pack")
|
|
348
351
|
return
|
|
@@ -355,34 +358,65 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
355
358
|
RNMBXLogError("RNMBXOfflineModule.startLoading failed as there is no styleURI in pack")
|
|
356
359
|
return
|
|
357
360
|
}
|
|
361
|
+
|
|
362
|
+
var downloadError = false
|
|
358
363
|
|
|
359
|
-
let stylePackLoadOptions = StylePackLoadOptions(glyphsRasterizationMode: .ideographsRasterizedLocally, metadata: pack.metadata)
|
|
364
|
+
let stylePackLoadOptions = StylePackLoadOptions(glyphsRasterizationMode: .ideographsRasterizedLocally, metadata: pack.metadata)!
|
|
360
365
|
|
|
361
366
|
#if RNMBX_11
|
|
367
|
+
let threadedOfflineManager = OfflineManager()
|
|
368
|
+
taskGroup.enter()
|
|
369
|
+
let stylePackTask = threadedOfflineManager.loadStylePack(for: styleURI, loadOptions: stylePackLoadOptions) { progress in
|
|
370
|
+
self.tileRegionPacks[id]!.state = .active
|
|
371
|
+
} completion: { result in
|
|
372
|
+
DispatchQueue.main.async {
|
|
373
|
+
defer {
|
|
374
|
+
taskGroup.leave()
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
switch result {
|
|
378
|
+
case let .success(stylePack): break
|
|
379
|
+
case let .failure(error):
|
|
380
|
+
Logger.log(level: .warn,
|
|
381
|
+
message: "RNMBXOfflineModule: startLoading: error loading style pack: " + error.localizedDescription)
|
|
382
|
+
downloadError = true
|
|
383
|
+
self.offlinePackDidReceiveError(name: id, error: error)
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
}
|
|
362
387
|
let descriptorOptions = TilesetDescriptorOptions(
|
|
363
388
|
styleURI: styleURI,
|
|
364
389
|
zoomRange: zoomRange,
|
|
365
|
-
tilesets:
|
|
366
|
-
stylePackOptions: stylePackLoadOptions
|
|
390
|
+
tilesets: pack.tilesets
|
|
367
391
|
)
|
|
392
|
+
let tilesetDescriptor = threadedOfflineManager.createTilesetDescriptor(for: descriptorOptions)
|
|
393
|
+
let descriptors = [tilesetDescriptor]
|
|
368
394
|
#else
|
|
369
395
|
let descriptorOptions = TilesetDescriptorOptions(
|
|
370
396
|
styleURI: styleURI,
|
|
371
397
|
zoomRange: zoomRange,
|
|
372
398
|
stylePackOptions: stylePackLoadOptions
|
|
373
399
|
)
|
|
400
|
+
let descriptor = self.offlineManager.createTilesetDescriptor(for: descriptorOptions)
|
|
401
|
+
let tilesetDescriptorOptions = TilesetDescriptorOptionsForTilesets(tilesets: pack.tilesets, zoomRange: zoomRange)
|
|
402
|
+
let tilesetDescriptor = self.offlineManager.createTilesetDescriptorForTilesetDescriptorOptions(tilesetDescriptorOptions)
|
|
403
|
+
var descriptors = [descriptor]
|
|
404
|
+
if (!pack.tilesets.isEmpty) {
|
|
405
|
+
descriptors.append(tilesetDescriptor)
|
|
406
|
+
}
|
|
374
407
|
#endif
|
|
375
|
-
let tilesetDescriptor = self.offlineManager.createTilesetDescriptor(for: descriptorOptions)
|
|
376
408
|
|
|
377
409
|
let loadOptions = TileRegionLoadOptions(
|
|
378
410
|
geometry: bounds, // RNMBXFeatureUtils.geometryToGeometry(bounds),
|
|
379
|
-
descriptors:
|
|
411
|
+
descriptors: descriptors,
|
|
380
412
|
metadata: metadata,
|
|
381
413
|
acceptExpired: true,
|
|
382
414
|
networkRestriction: .none,
|
|
383
415
|
averageBytesPerSecond: nil)
|
|
384
416
|
|
|
385
417
|
var lastProgress : TileRegionLoadProgress? = nil
|
|
418
|
+
|
|
419
|
+
taskGroup.enter()
|
|
386
420
|
let task = self.tileStore.loadTileRegion(forId: id, loadOptions: loadOptions!, progress: {
|
|
387
421
|
progress in
|
|
388
422
|
lastProgress = progress
|
|
@@ -390,25 +424,39 @@ class RNMBXOfflineModule: RCTEventEmitter {
|
|
|
390
424
|
self.tileRegionPacks[id]!.state = .active
|
|
391
425
|
self.offlinePackProgressDidChange(progress: progress, metadata: metadata, state: .active)
|
|
392
426
|
}) { result in
|
|
393
|
-
switch result {
|
|
394
|
-
case .success(let _):
|
|
395
|
-
DispatchQueue.main.async {
|
|
396
|
-
if let progess = lastProgress {
|
|
397
|
-
self.offlinePackProgressDidChange(progress: progess, metadata: metadata, state: .complete)
|
|
398
|
-
} else {
|
|
399
|
-
Logger.log(level: .warn,
|
|
400
|
-
message: "RNMBXOfflineModule: startLoading: tile region completed, but got no progress information")
|
|
401
|
-
}
|
|
402
|
-
self.tileRegionPacks[id]!.state = .complete
|
|
403
|
-
}
|
|
404
|
-
case .failure(let error):
|
|
405
427
|
DispatchQueue.main.async {
|
|
406
|
-
|
|
407
|
-
|
|
428
|
+
defer {
|
|
429
|
+
taskGroup.leave()
|
|
430
|
+
}
|
|
431
|
+
switch result {
|
|
432
|
+
case .success(let _):
|
|
433
|
+
if let progess = lastProgress {
|
|
434
|
+
self.offlinePackProgressDidChange(progress: progess, metadata: metadata, state: .complete)
|
|
435
|
+
} else {
|
|
436
|
+
Logger.log(level: .warn,
|
|
437
|
+
message: "RNMBXOfflineModule: startLoading: tile region completed, but got no progress information")
|
|
438
|
+
}
|
|
439
|
+
self.tileRegionPacks[id]!.state = .complete
|
|
440
|
+
case .failure(let error):
|
|
441
|
+
Logger.log(level: .warn,
|
|
442
|
+
message: "RNMBXOfflineModule: startLoading: error loading tile region: " + error.localizedDescription)
|
|
443
|
+
|
|
444
|
+
self.tileRegionPacks[id]!.state = .inactive
|
|
445
|
+
self.offlinePackDidReceiveError(name: id, error: error)
|
|
446
|
+
}
|
|
408
447
|
}
|
|
409
|
-
}
|
|
410
448
|
}
|
|
411
|
-
|
|
449
|
+
|
|
450
|
+
taskGroup.notify(queue: .main) {
|
|
451
|
+
self.tileRegionPacks[id]!.cancelables = []
|
|
452
|
+
self.tileRegionPacks[id]!.state = downloadError ? .inactive : .complete
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
#if RNMBX_11
|
|
456
|
+
self.tileRegionPacks[id]!.cancelables = [task, stylePackTask]
|
|
457
|
+
#else
|
|
458
|
+
self.tileRegionPacks[id]!.cancelables = [task]
|
|
459
|
+
#endif
|
|
412
460
|
}
|
|
413
461
|
|
|
414
462
|
func convertRegionsToJSON(regions: [TileRegion], resolve: @escaping RCTPromiseResolveBlock, rejecter: @escaping RCTPromiseRejectBlock) {
|
|
@@ -11,7 +11,7 @@ class RNMBXEvent : NSObject, RNMBXEventProtocol {
|
|
|
11
11
|
func toJSON() -> [String: Any?]
|
|
12
12
|
{
|
|
13
13
|
if let payload = payload {
|
|
14
|
-
return ["type": type, "payload": payload];
|
|
14
|
+
return ["type": type, "payload": payload, "payloadRenamed": payload];
|
|
15
15
|
} else {
|
|
16
16
|
return ["type": type]
|
|
17
17
|
}
|
|
@@ -47,15 +47,15 @@ using namespace facebook::react;
|
|
|
47
47
|
|
|
48
48
|
// capture weak self reference to prevent retain cycle
|
|
49
49
|
__weak __typeof__(self) weakSelf = self;
|
|
50
|
-
|
|
50
|
+
|
|
51
51
|
[_view setOnImageMissing:^(NSDictionary* event) {
|
|
52
52
|
__typeof__(self) strongSelf = weakSelf;
|
|
53
53
|
|
|
54
54
|
if (strongSelf != nullptr && strongSelf->_eventEmitter != nullptr) {
|
|
55
55
|
std::string type = [event valueForKey:@"type"] == nil ? "" : std::string([[event valueForKey:@"type"] UTF8String]);
|
|
56
56
|
std::string imageKey = (![[event valueForKey:@"payload"] isKindOfClass:[NSDictionary class]] || ![[[event valueForKey:@"payload"] valueForKey:@"imageKey"] isKindOfClass:[NSString class]]) ? "" : std::string([((NSDictionary *)event[@"payload"])[@"imageKey"] UTF8String]);
|
|
57
|
-
facebook::react::RNMBXImagesEventEmitter::
|
|
58
|
-
std::dynamic_pointer_cast<const facebook::react::RNMBXImagesEventEmitter>(strongSelf->_eventEmitter)->onImageMissing({type,
|
|
57
|
+
facebook::react::RNMBXImagesEventEmitter::OnImageMissingPayloadRenamed payloadRenamed = {.imageKey = imageKey};
|
|
58
|
+
std::dynamic_pointer_cast<const facebook::react::RNMBXImagesEventEmitter>(strongSelf->_eventEmitter)->onImageMissing({type, payloadRenamed});
|
|
59
59
|
}
|
|
60
60
|
}];
|
|
61
61
|
self.contentView = _view;
|
|
@@ -80,7 +80,14 @@ class Images extends _react.default.PureComponent {
|
|
|
80
80
|
}
|
|
81
81
|
_onImageMissing(event) {
|
|
82
82
|
if (this.props.onImageMissing) {
|
|
83
|
-
|
|
83
|
+
let {
|
|
84
|
+
payload
|
|
85
|
+
} = event.nativeEvent;
|
|
86
|
+
if (!payload) {
|
|
87
|
+
// @ts-expect-error payload renamed to avoid conflict in codegen with RN
|
|
88
|
+
payload = event.nativeEvent.payloadRenamed;
|
|
89
|
+
}
|
|
90
|
+
this.props.onImageMissing(payload?.imageKey);
|
|
84
91
|
}
|
|
85
92
|
}
|
|
86
93
|
render() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_RNMBXImagesNativeComponent","_ShapeSource","_Image","_jsxRuntime","e","__esModule","default","NATIVE_MODULE_NAME","exports","_isUrlOrPath","value","String","startsWith","isImageSourcePropType","Number","valueAsSource","uri","isChildAnImage","child","React","isValidElement","type","Image","Images","PureComponent","NATIVE_ASSETS_KEY","_getImages","props","images","nativeAssetImages","nativeImages","imageNames","Object","keys","imageName","ShapeSource","Array","isArray","console","error","res","RNImage","resolveAssetSource","imageEntry","image","resolvedImage","children","childrenWithWrongType","Children","toArray","find","_onImageMissing","event","onImageMissing","nativeEvent","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_RNMBXImagesNativeComponent","_ShapeSource","_Image","_jsxRuntime","e","__esModule","default","NATIVE_MODULE_NAME","exports","_isUrlOrPath","value","String","startsWith","isImageSourcePropType","Number","valueAsSource","uri","isChildAnImage","child","React","isValidElement","type","Image","Images","PureComponent","NATIVE_ASSETS_KEY","_getImages","props","images","nativeAssetImages","nativeImages","imageNames","Object","keys","imageName","ShapeSource","Array","isArray","console","error","res","RNImage","resolveAssetSource","imageEntry","image","resolvedImage","children","childrenWithWrongType","Children","toArray","find","_onImageMissing","event","onImageMissing","payload","nativeEvent","payloadRenamed","imageKey","render","hasOnImageMissing","bind","jsx","_default"],"sourceRoot":"../../../src","sources":["components/Images.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_geoUtils","require","_utils","OfflineCreatePackOptions","constructor","options","_assert","name","styleURL","bounds","_makeLatLngBounds","minZoom","maxZoom","metadata","_makeMetadata","Error","ne","sw","toJSONString","makeLatLngBounds","JSON","stringify","_default","exports","default"],"sourceRoot":"../../../../src","sources":["modules/offline/OfflineCreatePackOptions.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;
|
|
1
|
+
{"version":3,"names":["_geoUtils","require","_utils","OfflineCreatePackOptions","constructor","options","_assert","name","styleURL","bounds","_makeLatLngBounds","minZoom","maxZoom","metadata","_makeMetadata","tilesets","Error","ne","sw","toJSONString","makeLatLngBounds","JSON","stringify","_default","exports","default"],"sourceRoot":"../../../../src","sources":["modules/offline/OfflineCreatePackOptions.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAYA,MAAME,wBAAwB,CAAC;EAS7BC,WAAWA,CAACC,OAAqC,EAAE;IACjD,IAAI,CAACC,OAAO,CAACD,OAAO,CAAC;IAErB,IAAI,CAACE,IAAI,GAAGF,OAAO,CAACE,IAAI;IACxB,IAAI,CAACC,QAAQ,GAAGH,OAAO,CAACG,QAAQ;IAChC,IAAI,CAACC,MAAM,GAAG,IAAI,CAACC,iBAAiB,CAACL,OAAO,CAACI,MAAM,CAAC;IACpD,IAAI,CAACE,OAAO,GAAGN,OAAO,CAACM,OAAO;IAC9B,IAAI,CAACC,OAAO,GAAGP,OAAO,CAACO,OAAO;IAC9B,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACC,aAAa,CAACT,OAAO,CAACQ,QAAQ,CAAC;IACpD,IAAI,CAACE,QAAQ,GAAGV,OAAO,CAACU,QAAQ;EAClC;EAEAT,OAAOA,CAACD,OAAqC,EAAE;IAC7C,IAAI,CAACA,OAAO,CAACG,QAAQ,EAAE;MACrB,MAAM,IAAIQ,KAAK,CACb,yDACF,CAAC;IACH;IAEA,IAAI,CAACX,OAAO,CAACE,IAAI,EAAE;MACjB,MAAM,IAAIS,KAAK,CAAC,oDAAoD,CAAC;IACvE;IAEA,IAAI,CAACX,OAAO,CAACI,MAAM,EAAE;MACnB,MAAM,IAAIO,KAAK,CAAC,sDAAsD,CAAC;IACzE;EACF;EAEAN,iBAAiBA,CAACD,MAA4C,EAAU;IACtE,MAAM,CAACQ,EAAE,EAAEC,EAAE,CAAC,GAAGT,MAAM;IACvB,OAAO,IAAAU,mBAAY,EAAC,IAAAC,0BAAgB,EAACH,EAAE,EAAEC,EAAE,CAAC,CAAC;EAC/C;EAEAJ,aAAaA,CAACD,QAA6C,EAAE;IAC3D,OAAOQ,IAAI,CAACC,SAAS,CAAC;MACpB,GAAGT,QAAQ;MACXN,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,CAAC;EACJ;AACF;AAAC,IAAAgB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEctB,wBAAwB","ignoreList":[]}
|
|
@@ -4,7 +4,10 @@ import type { DirectEventHandler } from 'react-native/Libraries/Types/CodegenTyp
|
|
|
4
4
|
|
|
5
5
|
import type { UnsafeMixed } from './codegenUtils';
|
|
6
6
|
|
|
7
|
-
type OnImageMissingEventType = {
|
|
7
|
+
type OnImageMissingEventType = {
|
|
8
|
+
type: string;
|
|
9
|
+
payloadRenamed: { imageKey: string };
|
|
10
|
+
};
|
|
8
11
|
|
|
9
12
|
export interface NativeProps extends ViewProps {
|
|
10
13
|
images: UnsafeMixed<any>;
|
|
@@ -75,7 +75,14 @@ class Images extends React.PureComponent {
|
|
|
75
75
|
}
|
|
76
76
|
_onImageMissing(event) {
|
|
77
77
|
if (this.props.onImageMissing) {
|
|
78
|
-
|
|
78
|
+
let {
|
|
79
|
+
payload
|
|
80
|
+
} = event.nativeEvent;
|
|
81
|
+
if (!payload) {
|
|
82
|
+
// @ts-expect-error payload renamed to avoid conflict in codegen with RN
|
|
83
|
+
payload = event.nativeEvent.payloadRenamed;
|
|
84
|
+
}
|
|
85
|
+
this.props.onImageMissing(payload?.imageKey);
|
|
79
86
|
}
|
|
80
87
|
}
|
|
81
88
|
render() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Image","RNImage","RNMBXImagesNativeComponent","ShapeSource","jsx","_jsx","NATIVE_MODULE_NAME","_isUrlOrPath","value","String","startsWith","isImageSourcePropType","Number","valueAsSource","uri","isChildAnImage","child","isValidElement","type","Images","PureComponent","NATIVE_ASSETS_KEY","_getImages","props","images","nativeAssetImages","nativeImages","imageNames","Object","keys","imageName","Array","isArray","console","error","res","resolveAssetSource","imageEntry","image","resolvedImage","children","childrenWithWrongType","Children","toArray","find","_onImageMissing","event","onImageMissing","nativeEvent","
|
|
1
|
+
{"version":3,"names":["React","Image","RNImage","RNMBXImagesNativeComponent","ShapeSource","jsx","_jsx","NATIVE_MODULE_NAME","_isUrlOrPath","value","String","startsWith","isImageSourcePropType","Number","valueAsSource","uri","isChildAnImage","child","isValidElement","type","Images","PureComponent","NATIVE_ASSETS_KEY","_getImages","props","images","nativeAssetImages","nativeImages","imageNames","Object","keys","imageName","Array","isArray","console","error","res","resolveAssetSource","imageEntry","image","resolvedImage","children","childrenWithWrongType","Children","toArray","find","_onImageMissing","event","onImageMissing","payload","nativeEvent","payloadRenamed","imageKey","render","hasOnImageMissing","bind"],"sourceRoot":"../../../src","sources":["components/Images.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["makeLatLngBounds","toJSONString","OfflineCreatePackOptions","constructor","options","_assert","name","styleURL","bounds","_makeLatLngBounds","minZoom","maxZoom","metadata","_makeMetadata","Error","ne","sw","JSON","stringify"],"sourceRoot":"../../../../src","sources":["modules/offline/OfflineCreatePackOptions.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,YAAY,QAAQ,aAAa;
|
|
1
|
+
{"version":3,"names":["makeLatLngBounds","toJSONString","OfflineCreatePackOptions","constructor","options","_assert","name","styleURL","bounds","_makeLatLngBounds","minZoom","maxZoom","metadata","_makeMetadata","tilesets","Error","ne","sw","JSON","stringify"],"sourceRoot":"../../../../src","sources":["modules/offline/OfflineCreatePackOptions.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,YAAY,QAAQ,aAAa;AAY1C,MAAMC,wBAAwB,CAAC;EAS7BC,WAAWA,CAACC,OAAqC,EAAE;IACjD,IAAI,CAACC,OAAO,CAACD,OAAO,CAAC;IAErB,IAAI,CAACE,IAAI,GAAGF,OAAO,CAACE,IAAI;IACxB,IAAI,CAACC,QAAQ,GAAGH,OAAO,CAACG,QAAQ;IAChC,IAAI,CAACC,MAAM,GAAG,IAAI,CAACC,iBAAiB,CAACL,OAAO,CAACI,MAAM,CAAC;IACpD,IAAI,CAACE,OAAO,GAAGN,OAAO,CAACM,OAAO;IAC9B,IAAI,CAACC,OAAO,GAAGP,OAAO,CAACO,OAAO;IAC9B,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACC,aAAa,CAACT,OAAO,CAACQ,QAAQ,CAAC;IACpD,IAAI,CAACE,QAAQ,GAAGV,OAAO,CAACU,QAAQ;EAClC;EAEAT,OAAOA,CAACD,OAAqC,EAAE;IAC7C,IAAI,CAACA,OAAO,CAACG,QAAQ,EAAE;MACrB,MAAM,IAAIQ,KAAK,CACb,yDACF,CAAC;IACH;IAEA,IAAI,CAACX,OAAO,CAACE,IAAI,EAAE;MACjB,MAAM,IAAIS,KAAK,CAAC,oDAAoD,CAAC;IACvE;IAEA,IAAI,CAACX,OAAO,CAACI,MAAM,EAAE;MACnB,MAAM,IAAIO,KAAK,CAAC,sDAAsD,CAAC;IACzE;EACF;EAEAN,iBAAiBA,CAACD,MAA4C,EAAU;IACtE,MAAM,CAACQ,EAAE,EAAEC,EAAE,CAAC,GAAGT,MAAM;IACvB,OAAOP,YAAY,CAACD,gBAAgB,CAACgB,EAAE,EAAEC,EAAE,CAAC,CAAC;EAC/C;EAEAJ,aAAaA,CAACD,QAA6C,EAAE;IAC3D,OAAOM,IAAI,CAACC,SAAS,CAAC;MACpB,GAAGP,QAAQ;MACXN,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,CAAC;EACJ;AACF;AAEA,eAAeJ,wBAAwB","ignoreList":[]}
|
|
@@ -4,7 +4,10 @@ import type { DirectEventHandler } from 'react-native/Libraries/Types/CodegenTyp
|
|
|
4
4
|
|
|
5
5
|
import type { UnsafeMixed } from './codegenUtils';
|
|
6
6
|
|
|
7
|
-
type OnImageMissingEventType = {
|
|
7
|
+
type OnImageMissingEventType = {
|
|
8
|
+
type: string;
|
|
9
|
+
payloadRenamed: { imageKey: string };
|
|
10
|
+
};
|
|
8
11
|
|
|
9
12
|
export interface NativeProps extends ViewProps {
|
|
10
13
|
images: UnsafeMixed<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Images.d.ts","sourceRoot":"","sources":["../../../../src/components/Images.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAa,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAK7E,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAEhD,MAAM,MAAM,SAAS,CAAC,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,IAAI;IAC/D,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAwBF,KAAK,cAAc,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAE5E,KAAK,WAAW,GACZ,MAAM,GACN;
|
|
1
|
+
{"version":3,"file":"Images.d.ts","sourceRoot":"","sources":["../../../../src/components/Images.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAa,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAK7E,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAEhD,MAAM,MAAM,SAAS,CAAC,WAAW,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,IAAI;IAC/D,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAwBF,KAAK,cAAc,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAE5E,KAAK,WAAW,GACZ,MAAM,GACN;IACA,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEJ,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,aAAa,CAAC,EAAE,wBAAwB,CAAC;IACzC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,wBAAwB,CAAC;IACzC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,mBAAmB,GAAG,cAAc,CAAC;AAQvE,UAAU,KAAK;IACb;;;;OAIG;IACH,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,CAAC;IAEvC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,WAAW,EAAE,CAAC;IAElC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAE5C,QAAQ,CAAC,EAAE,cAAc,CAAC,OAAO,KAAK,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,cAAM,MAAO,SAAQ,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC;IAC7C,MAAM,CAAC,iBAAiB,SAAY;IAEpC,UAAU;;;;;;;;;IAgEV,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC;IAY/D,MAAM;CAcP;AAED,eAAe,MAAM,CAAC"}
|
|
@@ -2,6 +2,7 @@ export type OfflineCreatePackOptionsArgs = {
|
|
|
2
2
|
name: string;
|
|
3
3
|
styleURL: string;
|
|
4
4
|
bounds: [GeoJSON.Position, GeoJSON.Position];
|
|
5
|
+
tilesets?: string[];
|
|
5
6
|
minZoom?: number;
|
|
6
7
|
maxZoom?: number;
|
|
7
8
|
metadata?: Record<string, unknown>;
|
|
@@ -9,6 +10,7 @@ export type OfflineCreatePackOptionsArgs = {
|
|
|
9
10
|
declare class OfflineCreatePackOptions {
|
|
10
11
|
readonly name: string;
|
|
11
12
|
readonly styleURL: string;
|
|
13
|
+
readonly tilesets: string[] | undefined;
|
|
12
14
|
readonly bounds: string;
|
|
13
15
|
readonly minZoom: number | undefined;
|
|
14
16
|
readonly maxZoom: number | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OfflineCreatePackOptions.d.ts","sourceRoot":"","sources":["../../../../../src/modules/offline/OfflineCreatePackOptions.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,cAAM,wBAAwB;IAC5B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,SAAgB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;gBAEjC,OAAO,EAAE,4BAA4B;
|
|
1
|
+
{"version":3,"file":"OfflineCreatePackOptions.d.ts","sourceRoot":"","sources":["../../../../../src/modules/offline/OfflineCreatePackOptions.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,cAAM,wBAAwB;IAC5B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,QAAQ,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC/C,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,SAAgB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;gBAEjC,OAAO,EAAE,4BAA4B;IAYjD,OAAO,CAAC,OAAO,EAAE,4BAA4B;IAgB7C,iBAAiB,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM;IAKvE,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;CAM5D;AAED,eAAe,wBAAwB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNMBXImagesNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/specs/RNMBXImagesNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAEpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,KAAK,uBAAuB,GAAG;
|
|
1
|
+
{"version":3,"file":"RNMBXImagesNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/specs/RNMBXImagesNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAEpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;IACzB,YAAY,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,iBAAiB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACxC,cAAc,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,CAAC;CAC7D;wBAII,aAAa,CAAC,WAAW,CAAC;AAF/B,wBAEgC"}
|
package/package.json
CHANGED
package/rnmapbox-maps.podspec
CHANGED
|
@@ -84,7 +84,7 @@ else
|
|
|
84
84
|
end
|
|
85
85
|
|
|
86
86
|
if $RNMapboxMapsUseV11 != nil
|
|
87
|
-
warn "WARNING: $RNMapboxMapsUseV11 is deprecated just set $RNMapboxMapsVersion to '= 11.
|
|
87
|
+
warn "WARNING: $RNMapboxMapsUseV11 is deprecated just set $RNMapboxMapsVersion to '= 11.15.0"
|
|
88
88
|
end
|
|
89
89
|
|
|
90
90
|
if $MapboxImplVersion =~ /(~>|>=|=|>)?\S*11\./
|
|
@@ -41,13 +41,13 @@ type TypedReactNode<T> = ReactElement<T> | Array<TypedReactNode<T>> | never;
|
|
|
41
41
|
type NativeImage =
|
|
42
42
|
| string
|
|
43
43
|
| {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
44
|
+
name: string;
|
|
45
|
+
sdf?: boolean;
|
|
46
|
+
stretchX?: [number, number][];
|
|
47
|
+
stretchY?: [number, number][];
|
|
48
|
+
content?: [number, number, number, number];
|
|
49
|
+
scale?: number;
|
|
50
|
+
};
|
|
51
51
|
|
|
52
52
|
export type ImageEntryData = {
|
|
53
53
|
url?: string;
|
|
@@ -156,8 +156,7 @@ class Images extends React.PureComponent<Props> {
|
|
|
156
156
|
);
|
|
157
157
|
if (childrenWithWrongType) {
|
|
158
158
|
console.error(
|
|
159
|
-
`Images component on accepts Image a children passed in: ${
|
|
160
|
-
(childrenWithWrongType as any).type || 'n/a'
|
|
159
|
+
`Images component on accepts Image a children passed in: ${(childrenWithWrongType as any).type || 'n/a'
|
|
161
160
|
}`,
|
|
162
161
|
);
|
|
163
162
|
}
|
|
@@ -175,7 +174,13 @@ class Images extends React.PureComponent<Props> {
|
|
|
175
174
|
|
|
176
175
|
_onImageMissing(event: React.SyntheticEvent<Element, RNMBEvent>) {
|
|
177
176
|
if (this.props.onImageMissing) {
|
|
178
|
-
|
|
177
|
+
let { payload } = event.nativeEvent;
|
|
178
|
+
if (!payload) {
|
|
179
|
+
// @ts-expect-error payload renamed to avoid conflict in codegen with RN
|
|
180
|
+
payload = event.nativeEvent.payloadRenamed
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
this.props.onImageMissing(payload?.imageKey);
|
|
179
184
|
}
|
|
180
185
|
}
|
|
181
186
|
|
|
@@ -5,6 +5,7 @@ export type OfflineCreatePackOptionsArgs = {
|
|
|
5
5
|
name: string;
|
|
6
6
|
styleURL: string;
|
|
7
7
|
bounds: [GeoJSON.Position, GeoJSON.Position];
|
|
8
|
+
tilesets?: string[];
|
|
8
9
|
minZoom?: number;
|
|
9
10
|
maxZoom?: number;
|
|
10
11
|
metadata?: Record<string, unknown>;
|
|
@@ -13,6 +14,7 @@ export type OfflineCreatePackOptionsArgs = {
|
|
|
13
14
|
class OfflineCreatePackOptions {
|
|
14
15
|
public readonly name: string;
|
|
15
16
|
public readonly styleURL: string;
|
|
17
|
+
public readonly tilesets: string[] | undefined;
|
|
16
18
|
public readonly bounds: string;
|
|
17
19
|
public readonly minZoom: number | undefined;
|
|
18
20
|
public readonly maxZoom: number | undefined;
|
|
@@ -27,6 +29,7 @@ class OfflineCreatePackOptions {
|
|
|
27
29
|
this.minZoom = options.minZoom;
|
|
28
30
|
this.maxZoom = options.maxZoom;
|
|
29
31
|
this.metadata = this._makeMetadata(options.metadata);
|
|
32
|
+
this.tilesets = options.tilesets;
|
|
30
33
|
}
|
|
31
34
|
|
|
32
35
|
_assert(options: OfflineCreatePackOptionsArgs) {
|
|
@@ -4,7 +4,10 @@ import type { DirectEventHandler } from 'react-native/Libraries/Types/CodegenTyp
|
|
|
4
4
|
|
|
5
5
|
import type { UnsafeMixed } from './codegenUtils';
|
|
6
6
|
|
|
7
|
-
type OnImageMissingEventType = {
|
|
7
|
+
type OnImageMissingEventType = {
|
|
8
|
+
type: string;
|
|
9
|
+
payloadRenamed: { imageKey: string };
|
|
10
|
+
};
|
|
8
11
|
|
|
9
12
|
export interface NativeProps extends ViewProps {
|
|
10
13
|
images: UnsafeMixed<any>;
|