1 //= require leaflet.maplibre
2 //= require @maptiler/maplibre-gl-omt-language
4 L.OSM.OpenMapTiles = L.MaplibreGL.extend({
5 initialize: function (options) {
6 L.MaplibreGL.prototype.initialize.call(this, {
9 "https://api.maptiler.com/maps/openstreetmap/style.json?key=" +
14 onAdd: function (map) {
15 L.MaplibreGL.prototype.onAdd.call(this, map);
16 const maplibreMap = this.getMaplibreMap();
17 const supportedLanguages = maplibregl.Map.prototype.supportedLanguages;
18 for (const preferredLanguage of OSM.preferred_languages) {
19 const normalizedPreferredLanguage = preferredLanguage
22 const matchedLanguage = supportedLanguages.find(
23 (supported) => supported.toLowerCase() === normalizedPreferredLanguage
25 if (matchedLanguage) {
26 maplibreMap.setLanguage(matchedLanguage);
31 onRemove: function (map) {
32 L.MaplibreGL.prototype.onRemove.call(this, map);