react-native-maplibre-gl-js 1.4.2 → 1.4.3
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/lib/module/web/controllers/MapSourcesController.js +19 -31
- package/lib/module/web/controllers/MapSourcesController.js.map +1 -1
- package/lib/module/web/generated/webview_static_html.js +19 -31
- package/lib/module/web/generated/webview_static_html.js.map +1 -1
- package/lib/typescript/src/web/controllers/MapSourcesController.d.ts.map +1 -1
- package/lib/typescript/src/web/generated/webview_static_html.d.ts +1 -1
- package/lib/typescript/src/web/generated/webview_static_html.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -73,7 +73,7 @@ export default class MapSourcesController {
|
|
|
73
73
|
});
|
|
74
74
|
};
|
|
75
75
|
#updateSourceAndItsLayers = (source, reactNativeBridge, map) => {
|
|
76
|
-
const oldSourceAsString = stableStringify(this.#sources.get(source.id));
|
|
76
|
+
const oldSourceAsString = stableStringify(this.#sources.get(source.id)?.source);
|
|
77
77
|
const newSourceAsString = stableStringify(source.source);
|
|
78
78
|
|
|
79
79
|
// Update everything it the source changed.
|
|
@@ -82,41 +82,29 @@ export default class MapSourcesController {
|
|
|
82
82
|
this.#addSourceAndItsLayers(source, reactNativeBridge, map);
|
|
83
83
|
return;
|
|
84
84
|
}
|
|
85
|
-
|
|
86
|
-
source.layers.
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
map.
|
|
85
|
+
const oldLayersAsString = stableStringify(this.#sources.get(source.id)?.layers.map(item => item.layer));
|
|
86
|
+
const newLayersAsString = stableStringify(source.layers.map(item => item.layer));
|
|
87
|
+
|
|
88
|
+
// Update the layers only if at least one changed (if one changed, the
|
|
89
|
+
// orders of the layers might have changed, so we need to update all of
|
|
90
|
+
// them).
|
|
91
|
+
if (oldLayersAsString !== newLayersAsString) {
|
|
92
|
+
this.#getAssociatedLayers(source.id, map).forEach(layerId => {
|
|
93
|
+
if (map.getLayer(layerId)) {
|
|
94
|
+
map.removeLayer(layerId);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
source.layers.forEach(({
|
|
98
|
+
layer,
|
|
99
|
+
beforeId
|
|
100
|
+
}) => {
|
|
94
101
|
map.addLayer({
|
|
95
102
|
source: source.id,
|
|
96
103
|
...layer
|
|
97
104
|
}, beforeId);
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
map.addSource(source.id, source.source);
|
|
101
|
-
source.layers.forEach(({
|
|
102
|
-
layer,
|
|
103
|
-
beforeId
|
|
104
|
-
}) => {
|
|
105
|
-
// Add the layer to the map.
|
|
106
|
-
map.addLayer({
|
|
107
|
-
source: source.id,
|
|
108
|
-
...layer
|
|
109
|
-
}, beforeId);
|
|
110
|
-
// Send the "mount" event to the React Native listener.
|
|
111
|
-
reactNativeBridge.postMessage({
|
|
112
|
-
type: 'mapSourceListenerEvent',
|
|
113
|
-
payload: {
|
|
114
|
-
sourceId: source.id,
|
|
115
|
-
layerId: layer.id,
|
|
116
|
-
eventName: 'mount'
|
|
117
|
-
}
|
|
118
105
|
});
|
|
119
|
-
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
120
108
|
};
|
|
121
109
|
#removeSourceAndItsLayers = (sourceId, reactNativeBridge, map) => {
|
|
122
110
|
const style = map.getStyle();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["stableStringify","MapSourcesController","sources","Map","addExistingSourcesToMap","reactNativeBridge","map","entries","forEach","source","isStyleLoaded","addSourceAndItsLayers","setSourceListeners","once","handleMountMessage","message","run","mapReady","payload","set","id","handleUpdateMessage","updateSourceAndItsLayers","handleUnmountMessage","get","sourceId","removeSourceAndItsLayers","delete","#addSourceAndItsLayers","addSource","layers","layer","beforeId","addLayer","postMessage","type","layerId","eventName","#updateSourceAndItsLayers","oldSourceAsString","newSourceAsString","
|
|
1
|
+
{"version":3,"names":["stableStringify","MapSourcesController","sources","Map","addExistingSourcesToMap","reactNativeBridge","map","entries","forEach","source","isStyleLoaded","addSourceAndItsLayers","setSourceListeners","once","handleMountMessage","message","run","mapReady","payload","set","id","handleUpdateMessage","updateSourceAndItsLayers","handleUnmountMessage","get","sourceId","removeSourceAndItsLayers","delete","#addSourceAndItsLayers","addSource","layers","layer","beforeId","addLayer","postMessage","type","layerId","eventName","#updateSourceAndItsLayers","oldSourceAsString","newSourceAsString","oldLayersAsString","item","newLayersAsString","getAssociatedLayers","getLayer","removeLayer","#removeSourceAndItsLayers","style","getStyle","getSource","removeSource","#setSourceListeners","listeners","Object","sendEventToReactNative","event","target","on","#getAssociatedLayers","filter"],"sourceRoot":"../../../../src","sources":["web/controllers/MapSourcesController.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -23620,21 +23620,27 @@ uniform mat4 u_projection_matrix;
|
|
|
23620
23620
|
});
|
|
23621
23621
|
};
|
|
23622
23622
|
#updateSourceAndItsLayers = (source, reactNativeBridge, map) => {
|
|
23623
|
-
const oldSourceAsString = stableStringify(
|
|
23623
|
+
const oldSourceAsString = stableStringify(
|
|
23624
|
+
this.#sources.get(source.id)?.source
|
|
23625
|
+
);
|
|
23624
23626
|
const newSourceAsString = stableStringify(source.source);
|
|
23625
23627
|
if (oldSourceAsString !== newSourceAsString) {
|
|
23626
23628
|
this.#removeSourceAndItsLayers(source.id, reactNativeBridge, map);
|
|
23627
23629
|
this.#addSourceAndItsLayers(source, reactNativeBridge, map);
|
|
23628
|
-
|
|
23629
|
-
|
|
23630
|
-
|
|
23631
|
-
|
|
23632
|
-
|
|
23633
|
-
|
|
23634
|
-
|
|
23635
|
-
|
|
23636
|
-
|
|
23637
|
-
map.
|
|
23630
|
+
} else {
|
|
23631
|
+
const oldLayersAsString = stableStringify(
|
|
23632
|
+
this.#sources.get(source.id)?.layers.map((item) => item.layer)
|
|
23633
|
+
);
|
|
23634
|
+
const newLayersAsString = stableStringify(
|
|
23635
|
+
source.layers.map((item) => item.layer)
|
|
23636
|
+
);
|
|
23637
|
+
if (oldLayersAsString !== newLayersAsString) {
|
|
23638
|
+
this.#getAssociatedLayers(source.id, map).forEach((layerId) => {
|
|
23639
|
+
if (map.getLayer(layerId)) {
|
|
23640
|
+
map.removeLayer(layerId);
|
|
23641
|
+
}
|
|
23642
|
+
});
|
|
23643
|
+
source.layers.forEach(({ layer, beforeId }) => {
|
|
23638
23644
|
map.addLayer(
|
|
23639
23645
|
{
|
|
23640
23646
|
source: source.id,
|
|
@@ -23642,27 +23648,9 @@ uniform mat4 u_projection_matrix;
|
|
|
23642
23648
|
},
|
|
23643
23649
|
beforeId
|
|
23644
23650
|
);
|
|
23645
|
-
}
|
|
23651
|
+
});
|
|
23646
23652
|
}
|
|
23647
|
-
|
|
23648
|
-
map.addSource(source.id, source.source);
|
|
23649
|
-
source.layers.forEach(({ layer, beforeId }) => {
|
|
23650
|
-
map.addLayer(
|
|
23651
|
-
{
|
|
23652
|
-
source: source.id,
|
|
23653
|
-
...layer
|
|
23654
|
-
},
|
|
23655
|
-
beforeId
|
|
23656
|
-
);
|
|
23657
|
-
reactNativeBridge.postMessage({
|
|
23658
|
-
type: "mapSourceListenerEvent",
|
|
23659
|
-
payload: {
|
|
23660
|
-
sourceId: source.id,
|
|
23661
|
-
layerId: layer.id,
|
|
23662
|
-
eventName: "mount"
|
|
23663
|
-
}
|
|
23664
|
-
});
|
|
23665
|
-
});
|
|
23653
|
+
}
|
|
23666
23654
|
};
|
|
23667
23655
|
#removeSourceAndItsLayers = (sourceId, reactNativeBridge, map) => {
|
|
23668
23656
|
const style = map.getStyle();
|