Allow non-conforming ids for unofficial themes

This commit is contained in:
pietervdvn 2022-01-08 13:04:11 +01:00
parent 7e1b064941
commit da5f5b622c
2 changed files with 10 additions and 6 deletions

View file

@ -2,7 +2,7 @@ import {Utils} from "../Utils";
export default class Constants {
public static vNumber = "0.13.0";
public static vNumber = "0.13.1";
public static ImgurApiKey = '7070e7167f0a25a'
public static readonly mapillary_client_token_v4 = "MLY|4441509239301885|b40ad2d3ea105435bd40c7e76993ae85"

View file

@ -7,6 +7,8 @@ import {LayerConfigJson} from "./Json/LayerConfigJson";
import Constants from "../Constants";
import TilesourceConfig from "./TilesourceConfig";
import DependencyCalculator from "./DependencyCalculator";
import {DomEvent} from "leaflet";
import off = DomEvent.off;
export default class LayoutConfig {
public readonly id: string;
@ -58,11 +60,13 @@ export default class LayoutConfig {
constructor(json: LayoutConfigJson, official = true, context?: string) {
this.official = official;
this.id = json.id;
if(json.id.toLowerCase() !== json.id){
throw "The id of a theme should be lowercase: "+json.id
}
if(json.id.match(/[a-z0-9-_]/) == null){
throw "The id of a theme should match [a-z0-9-_]*: "+json.id
if(official){
if(json.id.toLowerCase() !== json.id){
throw "The id of a theme should be lowercase: "+json.id
}
if(json.id.match(/[a-z0-9-_]/) == null){
throw "The id of a theme should match [a-z0-9-_]*: "+json.id
}
}
context = (context ?? "") + "." + this.id;
this.maintainer = json.maintainer;