jekyll-leaflet-mze 0.3.22 → 0.3.24
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.
- checksums.yaml +4 -4
- data/lib/jekyll-leaflet-mze/leaflet-map.js +39 -5
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b888670af5ae94ceb68e461cfdf4d2add34f10d1a42fc28fab8c4d8fe9542b95
|
4
|
+
data.tar.gz: 2a4421f3444de702df68c969ffbaffb1c5c41b3a47c2df321bd8519e177ece42
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e817706c9eee96202ba17bbeae2394c79e03ac63f818be32396bddf7c8304ff70b89b68abd7cc6277ff61bee12269d7becff6e7a30efcedab714c602a3a40633
|
7
|
+
data.tar.gz: ecfe3ed189e0be586cd15e862f937d171e8c1567302594774239152dfc959dcc11cc76e4135f799a8a3c5380353434d9ad3cd05b1fbacb5b9d7d13c8522dd4d0
|
@@ -1,6 +1,7 @@
|
|
1
1
|
(() => {
|
2
2
|
// Specify configuration variables, setup any elements and styling
|
3
3
|
var leafletCdn = "https://unpkg.com/leaflet@1.9.4/dist/";
|
4
|
+
var leafletSearchCdn = "https://unpkg.com/browse/leaflet-search@3.0.2/dist/";
|
4
5
|
var esriLeafletCdn = "https://unpkg.com/esri-leaflet/dist/";
|
5
6
|
|
6
7
|
// Get tag input arguments & inside block object list
|
@@ -55,13 +56,18 @@
|
|
55
56
|
}
|
56
57
|
|
57
58
|
|
58
|
-
function _addMarkerToMap(leafletItem, map){
|
59
|
+
function _addMarkerToMap(leafletItem, map, markersLayer){
|
59
60
|
var m = leafletItem.value;
|
60
61
|
var musicIcon = L.icon({
|
61
62
|
iconUrl: iconUrl,
|
62
63
|
iconSize: iconSizePixels
|
63
64
|
});
|
64
|
-
var
|
65
|
+
var marker = L.marker(
|
66
|
+
[m.latitude, m.longitude],
|
67
|
+
{icon: musicIcon, title: m.city + ":" + m.popupContent}
|
68
|
+
);
|
69
|
+
markersLayer.addLayer(marker);
|
70
|
+
|
65
71
|
var potentialPopup = "";
|
66
72
|
if('popupContent' in m){
|
67
73
|
potentialPopup += '<ul>';
|
@@ -142,10 +148,10 @@
|
|
142
148
|
|
143
149
|
}
|
144
150
|
|
145
|
-
function _processLeafletItem(leafletItem, map){
|
151
|
+
function _processLeafletItem(leafletItem, map, markersLayer){
|
146
152
|
switch(leafletItem.type){
|
147
153
|
case "LeafletMarker":
|
148
|
-
_addMarkerToMap(leafletItem, map);
|
154
|
+
_addMarkerToMap(leafletItem, map, markersLayer);
|
149
155
|
break;
|
150
156
|
case "LeafletGeoJSON":
|
151
157
|
_addGeoJSONToMap(leafletItem, map);
|
@@ -166,17 +172,30 @@
|
|
166
172
|
//Initialize Map with the correct input arguments
|
167
173
|
var map = L.map(mapEl.id,
|
168
174
|
{worldCopyJump: true}).setView(_getCenter(), _getZoom());
|
175
|
+
|
176
|
+
var markersLayer = new L.LayerGroup();
|
177
|
+
map.addLayer(markersLayer);
|
178
|
+
|
169
179
|
L.tileLayer.provider(_getProviderBasemap()).addTo(map);
|
170
180
|
if("esriBasemap" in tagInputArg){
|
171
181
|
L.esri.basemapLayer(tagInputArg.esriBasemap).addTo(map);
|
172
182
|
}
|
183
|
+
var controlSearch = new L.Control.Search({
|
184
|
+
position:'topright',
|
185
|
+
layer: markersLayer,
|
186
|
+
initial: false,
|
187
|
+
zoom: _getZoom(),
|
188
|
+
marker: false
|
189
|
+
});
|
190
|
+
|
191
|
+
map.addControl(controlSearch);
|
173
192
|
|
174
193
|
//process each Leaflet Item passed in between the block tag middle
|
175
194
|
for(var i=0; i<blockLeafletItems.length; i++){
|
176
195
|
var leafletItem = blockLeafletItems[i];
|
177
196
|
console.log("Adding leaflet item " + leafletItem.id + ":");
|
178
197
|
console.log(leafletItem);
|
179
|
-
_processLeafletItem(leafletItem, map);
|
198
|
+
_processLeafletItem(leafletItem, map, markersLayer);
|
180
199
|
}
|
181
200
|
}
|
182
201
|
|
@@ -200,6 +219,8 @@
|
|
200
219
|
|
201
220
|
var leafletCssId = "leaflet-css-head";
|
202
221
|
var leafletJsId = "leaflet-js-head";
|
222
|
+
var leafletSearchCssId = "leaflet-search-css-head";
|
223
|
+
var leafletSearchJsId = "leaflet-search-js-head";
|
203
224
|
var esriLeafletJsId = "esri-leaflet-js-head";
|
204
225
|
var leafletProvidersJsId = "leaflet-providers-js-head";
|
205
226
|
|
@@ -212,6 +233,14 @@
|
|
212
233
|
document.head.appendChild(leafletCssEl);
|
213
234
|
}
|
214
235
|
|
236
|
+
var leafletSearchCssEl = document.createElement("link");
|
237
|
+
leafletSearchCssEl.id = leafletSearchCssId;
|
238
|
+
leafletSearchCssEl.rel = "stylesheet";
|
239
|
+
leafletSearchCssEl.href = leafletSearchCdn + "leaflet-search.min.css";
|
240
|
+
if(!document.getElementById(leafletSearchCssEl.id)){
|
241
|
+
document.head.appendChild(leafletSearchCssEl);
|
242
|
+
}
|
243
|
+
|
215
244
|
function addToHeadIfNotLoaded(el) {
|
216
245
|
//Add the el to the head if it doesn't exist already. If it does,
|
217
246
|
//everything we need is already loaded, so draw the map
|
@@ -244,4 +273,9 @@
|
|
244
273
|
};
|
245
274
|
leafletJsEl.src = leafletCdn + "leaflet.js";
|
246
275
|
addToHeadIfNotLoaded(leafletJsEl);
|
276
|
+
|
277
|
+
var leafletSearchJsEl = document.createElement("script");
|
278
|
+
leafletSearchJsEl.id = leafletSearchJsId;
|
279
|
+
leafletSearchJsEl.src = leafletSearchCdn + "leaflet-search.min.js";
|
280
|
+
addToHeadIfNotLoaded(leafletSearchJsEl);
|
247
281
|
})();
|