diff --git a/src/cli.js b/src/cli.js index 77fc286..a67267c 100755 --- a/src/cli.js +++ b/src/cli.js @@ -43,6 +43,10 @@ program "Url of a tileserver", "http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png" ) + .option( + "-sub, --tileSubdomains ", + "Subdomains of a tileserver" + ) .option( "-m, --vectorserverUrl ", "Url of a vector tile server (MVT style.json)" diff --git a/src/lib.d.ts b/src/lib.d.ts index f6534df..3de222f 100644 --- a/src/lib.d.ts +++ b/src/lib.d.ts @@ -51,6 +51,12 @@ interface OsmStaticMapsOptions { */ tileserverUrl?: string; + /** + * tileSubdomains of a tileserver + * @defaultValue `undefined` + */ + tileSubdomains?: string[]; + /** * url of a vector tile server (MVT style.json) * @defaultValue `undefined` diff --git a/src/lib.js b/src/lib.js index 0530d67..f449402 100644 --- a/src/lib.js +++ b/src/lib.js @@ -63,6 +63,7 @@ module.exports = function(options) { options.maxZoom = options.maxZoom || (options.vectorserverUrl ? 20 : 17); options.attribution = options.attribution || 'osm-static-maps | © OpenStreetMap contributors'; options.tileserverUrl = options.tileserverUrl || 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'; + options.tileSubdomains = options.tileSubdomains || ''; options.vectorserverUrl = options.vectorserverUrl || ''; options.vectorserverToken = options.vectorserverToken || 'no-token'; options.imagemin = options.imagemin || false; diff --git a/src/template.html b/src/template.html index b954eb1..e4ed704 100644 --- a/src/template.html +++ b/src/template.html @@ -130,13 +130,24 @@ }).addTo(map); {{else}} {{#if tileserverUrl}} - L.tileLayer( - '{{{tileserverUrl}}}', - { - maxZoom: maxZoom, - fadeAnimation: false - } - ).addTo(map); + {{#if tileSubdomains }} + L.tileLayer( + '{{{tileserverUrl}}}', + { + subdomains: {{{tileSubdomains}}}, + maxZoom: maxZoom, + fadeAnimation: false + } + ).addTo(map); + {{else}} + L.tileLayer( + '{{{tileserverUrl}}}', + { + maxZoom: maxZoom, + fadeAnimation: false + } + ).addTo(map); + {{/if}} {{/if}} {{/if}}