Merge branch 'develop' into feature/studio

This commit is contained in:
Pieter Vander Vennet 2023-06-20 22:50:47 +02:00
commit c229b92221
133 changed files with 1056 additions and 2081 deletions

View file

@ -259,14 +259,6 @@ class ClosestNObjectFunc implements ExtraFunction {
const maxDistance = options?.maxDistance ?? 500 const maxDistance = options?.maxDistance ?? 500
const uniqueTag: string | undefined = options?.uniqueTag const uniqueTag: string | undefined = options?.uniqueTag
let allFeatures: Feature[][] let allFeatures: Feature[][]
console.log(
"Calculating closest",
options?.maxFeatures,
"features around",
feature,
"in layer",
features
)
if (typeof features === "string") { if (typeof features === "string") {
const name = features const name = features
const bbox = GeoOperations.bbox( const bbox = GeoOperations.bbox(

View file

@ -5,6 +5,8 @@ import { GeoOperations } from "../../GeoOperations"
/** /**
* Returns a clipped version of the original geojson. Ways which partially intersect the given feature will be split up * Returns a clipped version of the original geojson. Ways which partially intersect the given feature will be split up
*
* Also @see: GeoOperations.spreadIntoBboxes
*/ */
export default class ClippedFeatureSource extends StaticFeatureSource { export default class ClippedFeatureSource extends StaticFeatureSource {
constructor(features: FeatureSource, clipTo: Feature<Polygon>) { constructor(features: FeatureSource, clipTo: Feature<Polygon>) {

View file

@ -198,7 +198,8 @@ export default class CreateNoteImportLayer extends Conversion<LayerConfigJson, L
}, },
], ],
}, },
iconSize: "40,40,center", iconSize: "40,40",
anchor: "center",
}, },
], ],
} }

View file

@ -3,6 +3,7 @@ import { Utils } from "../../../Utils"
import LineRenderingConfigJson from "../Json/LineRenderingConfigJson" import LineRenderingConfigJson from "../Json/LineRenderingConfigJson"
import { LayerConfigJson } from "../Json/LayerConfigJson" import { LayerConfigJson } from "../Json/LayerConfigJson"
import { DesugaringStep, Each, Fuse, On } from "./Conversion" import { DesugaringStep, Each, Fuse, On } from "./Conversion"
import PointRenderingConfigJson from "../Json/PointRenderingConfigJson"
export class UpdateLegacyLayer extends DesugaringStep< export class UpdateLegacyLayer extends DesugaringStep<
LayerConfigJson | string | { builtin; override } LayerConfigJson | string | { builtin; override }
@ -139,6 +140,35 @@ export class UpdateLegacyLayer extends DesugaringStep<
} }
} }
for (const rendering of config.mapRendering ?? []) {
if (!rendering["iconSize"]) {
continue
}
const pr = <PointRenderingConfigJson>rendering
const iconSize = pr.iconSize
if (typeof iconSize === "string")
if (["bottom", "center", "top"].some((a) => (<string>iconSize).endsWith(a))) {
const parts = iconSize.split(",").map((parts) => parts.toLowerCase().trim())
pr.anchor = parts.pop()
pr.iconSize = parts.join(",")
}
}
for (const rendering of config.mapRendering) {
for (const key in rendering) {
if (!rendering[key]) {
continue
}
if (
typeof rendering[key]["render"] === "string" &&
Object.keys(rendering[key]).length === 1
) {
console.log("Rewrite: ", rendering[key])
rendering[key] = rendering[key]["render"]
}
}
}
return { return {
result: config, result: config,
errors: [], errors: [],

View file

@ -586,6 +586,7 @@ class WarnForUnsubstitutedLayersInTheme extends DesugaringStep<LayoutConfigJson>
} }
export class PrepareTheme extends Fuse<LayoutConfigJson> { export class PrepareTheme extends Fuse<LayoutConfigJson> {
private state: DesugaringContext
constructor( constructor(
state: DesugaringContext, state: DesugaringContext,
options?: { options?: {
@ -612,6 +613,7 @@ export class PrepareTheme extends Fuse<LayoutConfigJson> {
new AddDependencyLayersToTheme(state), new AddDependencyLayersToTheme(state),
new AddImportLayers() new AddImportLayers()
) )
this.state = state
} }
convert( convert(
@ -619,6 +621,10 @@ export class PrepareTheme extends Fuse<LayoutConfigJson> {
context: string context: string
): { result: LayoutConfigJson; errors: string[]; warnings: string[]; information: string[] } { ): { result: LayoutConfigJson; errors: string[]; warnings: string[]; information: string[] } {
const result = super.convert(json, context) const result = super.convert(json, context)
if (this.state.publicLayers.size === 0) {
// THis is a bootstrapping run, no need to already set this flag
return result
}
const needsNodeDatabase = result.result.layers?.some((l: LayerConfigJson) => const needsNodeDatabase = result.result.layers?.some((l: LayerConfigJson) =>
l.tagRenderings?.some((tr: TagRenderingConfigJson) => l.tagRenderings?.some((tr: TagRenderingConfigJson) =>

View file

@ -54,6 +54,16 @@ export default interface PointRenderingConfigJson {
* Default is '40,40,center' * Default is '40,40,center'
*/ */
iconSize?: string | TagRenderingConfigJson iconSize?: string | TagRenderingConfigJson
/**
* question: What is the anchorpoint of the icon?
*
* This matches the geographical point with a location on the icon.
* For example, a feature attached to the ground can use 'bottom' as zooming in will give the appearance of being anchored to a fixed location.
*
*/
anchor?: "center" | "top" | "bottom" | "left" | "right" | string | TagRenderingConfigJson
/** /**
* The rotation of an icon, useful for e.g. directions. * The rotation of an icon, useful for e.g. directions.
* Usage: as if it were a css property for 'rotate', thus has to end with 'deg', e.g. `90deg`, `{direction}deg`, `calc(90deg - {camera:direction}deg)`` * Usage: as if it were a css property for 'rotate', thus has to end with 'deg', e.g. `90deg`, `{direction}deg`, `calc(90deg - {camera:direction}deg)``

View file

@ -27,6 +27,8 @@ export default class PointRenderingConfig extends WithContextLoader {
public readonly icon?: TagRenderingConfig public readonly icon?: TagRenderingConfig
public readonly iconBadges: { if: TagsFilter; then: TagRenderingConfig }[] public readonly iconBadges: { if: TagsFilter; then: TagRenderingConfig }[]
public readonly iconSize: TagRenderingConfig public readonly iconSize: TagRenderingConfig
public readonly anchor: TagRenderingConfig
public readonly label: TagRenderingConfig public readonly label: TagRenderingConfig
public readonly labelCss: TagRenderingConfig public readonly labelCss: TagRenderingConfig
public readonly labelCssClasses: TagRenderingConfig public readonly labelCssClasses: TagRenderingConfig
@ -90,7 +92,18 @@ export default class PointRenderingConfig extends WithContextLoader {
throw context + ": builtin SVG asset not found: " + iconPath throw context + ": builtin SVG asset not found: " + iconPath
} }
} }
this.iconSize = this.tr("iconSize", "40,40,center") if (typeof json.iconSize === "string") {
const s = json.iconSize
if (["bottom", "top", "center"].some((e) => s.endsWith(e))) {
throw (
"At " +
context +
" in : iconSize uses legacy ,bottom, center or top postfix. Use the field `anchor` instead."
)
}
}
this.iconSize = this.tr("iconSize", "40,40")
this.anchor = this.tr("anchor", "center")
this.label = this.tr("label", undefined) this.label = this.tr("label", undefined)
this.rotation = this.tr("rotation", "0") this.rotation = this.tr("rotation", "0")
this.pitchAlignment = this.tr("pitchAlignment", "canvas") this.pitchAlignment = this.tr("pitchAlignment", "canvas")
@ -229,12 +242,13 @@ export default class PointRenderingConfig extends WithContextLoader {
return Utils.SubstituteKeys(str, tags.data).replace(/{.*}/g, "") return Utils.SubstituteKeys(str, tags.data).replace(/{.*}/g, "")
} }
const iconSize = render(this.iconSize, "40,40,center").split(",") const iconSize = render(this.iconSize, "40,40").split(",")
const iconW = num(iconSize[0]) const iconW = num(iconSize[0])
let iconH = num(iconSize[1]) let iconH = num(iconSize[1])
const mode = iconSize[2]?.trim()?.toLowerCase() ?? "center"
const anchor = render(this.anchor, "center")
const mode = anchor?.trim()?.toLowerCase() ?? "center"
// in MapLibre, the offset is relative to the _center_ of the object, with left = [-x, 0] and up = [0,-y] // in MapLibre, the offset is relative to the _center_ of the object, with left = [-x, 0] and up = [0,-y]
let anchorW = 0 let anchorW = 0
let anchorH = 0 let anchorH = 0

View file

@ -32,6 +32,12 @@ export default class WithContextLoader {
return shared return shared
} }
} }
if (Object.keys(v).length === 1 && typeof v["render"] === "string") {
throw `At ${
translationContext ?? "<unknown>"
}: use the content directly instead of {${key}: ${JSON.stringify(v)}}`
}
return new TagRenderingConfig(v, `${translationContext ?? this._context}.${key}`) return new TagRenderingConfig(v, `${translationContext ?? this._context}.${key}`)
} }

View file

@ -108,7 +108,7 @@
</div> </div>
</LoginToggle> </LoginToggle>
{#if $comment.length >= 3} {#if $comment?.length >= 3}
<SubtleButton on:click={uploadNote}> <SubtleButton on:click={uploadNote}>
<img slot="image" src="./assets/svg/addSmall.svg" class="mr-4 h-8 w-8" /> <img slot="image" src="./assets/svg/addSmall.svg" class="mr-4 h-8 w-8" />
<Tr slot="message" t={Translations.t.notes.createNote} /> <Tr slot="message" t={Translations.t.notes.createNote} />

View file

@ -26,15 +26,22 @@ export class Translation extends BaseUIElement {
if (!translations.hasOwnProperty(translationsKey)) { if (!translations.hasOwnProperty(translationsKey)) {
continue continue
} }
if (translationsKey === "_context" || translationsKey === "_meta") { if (
translationsKey === "_context" ||
translationsKey === "_meta" ||
translationsKey === "special"
) {
continue continue
} }
count++ count++
if (typeof translations[translationsKey] != "string") { if (typeof translations[translationsKey] != "string") {
console.error( console.error(
"Non-string object at", "Non-string object at",
context, context,
"in translation: ", `for language`,
translationsKey,
`in translation: `,
translations[translationsKey], translations[translationsKey],
"\n current translations are: ", "\n current translations are: ",
translations translations

View file

@ -251,7 +251,7 @@
"render": "<div style='margin-top: -42px; color: white' class='rounded-full p-1 font-bold relative'>{addr:housenumber}</div>", "render": "<div style='margin-top: -42px; color: white' class='rounded-full p-1 font-bold relative'>{addr:housenumber}</div>",
"condition": "addr:housenumber~*" "condition": "addr:housenumber~*"
}, },
"iconSize": "50,50,center", "iconSize": "50,50",
"icon": { "icon": {
"render": "./assets/layers/address/housenumber_blank.svg", "render": "./assets/layers/address/housenumber_blank.svg",
"mappings": [ "mappings": [
@ -274,7 +274,8 @@
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": {
@ -296,9 +297,7 @@
} }
] ]
}, },
"width": { "width": "8"
"render": "8"
}
} }
] ]
} }

View file

@ -971,30 +971,31 @@
] ]
}, },
"iconSize": { "iconSize": {
"render": "40,40,bottom", "render": "40,40",
"mappings": [ "mappings": [
{
"if": "_referencing_ways~*",
"then": "40,40,center"
},
{ {
"if": "advertising=flag", "if": "advertising=flag",
"then": "60,60,bottom" "then": "60,60"
}, },
{ {
"if": "advertising=sculpture", "if": "advertising=sculpture",
"then": "50,50,bottom" "then": "50,50"
}
]
},
"anchor": {
"render": "bottom",
"mappings": [
{
"if": "_referencing_ways~*",
"then": "center"
} }
] ]
} }
}, },
{ {
"width": { "width": "8",
"render": "8" "color": "#00f"
},
"color": {
"render": "#00f"
}
} }
], ],
"allowMove": { "allowMove": {

View file

@ -361,24 +361,17 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/hailhydrant/Twemoji_1f691.svg",
"render": "./assets/themes/hailhydrant/Twemoji_1f691.svg" "iconSize": "35,35",
},
"iconSize": {
"render": "35,35,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "1"
},
"width": {
"render": "1"
}
} }
] ]
} }

View file

@ -728,21 +728,15 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/artwork/artwork.svg",
"render": "./assets/themes/artwork/artwork.svg"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ]
}, },
{ {
"color": { "color": "#0000ff",
"render": "#0000ff" "width": "10"
},
"width": {
"render": "10"
}
} }
], ],
"filter": [ "filter": [

View file

@ -996,12 +996,8 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/bench/bench.svg",
"render": "./assets/layers/bench/bench.svg" "iconSize": "35,35",
},
"iconSize": {
"render": "35,35,center"
},
"iconBadges": [ "iconBadges": [
{ {
"if": "tourism=artwork", "if": "tourism=artwork",
@ -1011,7 +1007,8 @@
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
], ],
"filter": [ "filter": [

View file

@ -203,23 +203,16 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/benches/bench_public_transport.svg",
"render": "./assets/themes/benches/bench_public_transport.svg" "iconSize": "35,35",
},
"iconSize": {
"render": "35,35,center"
},
"location": [ "location": [
"point" "point"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "8"
},
"width": {
"render": "8"
}
} }
], ],
"deletion": { "deletion": {

View file

@ -327,9 +327,7 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "pin:#22ff55;./assets/layers/bicycle_library/bicycle_library.svg",
"render": "pin:#22ff55;./assets/layers/bicycle_library/bicycle_library.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": "opening_hours~*", "if": "opening_hours~*",
@ -340,21 +338,16 @@
"then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg" "then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg"
} }
], ],
"iconSize": { "iconSize": "50,50",
"render": "50,50,bottom"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
}, },
{ {
"color": { "color": "#c00",
"render": "#c00" "width": "1"
},
"width": {
"render": "1"
}
} }
], ],
"deletion": true "deletion": true

View file

@ -528,21 +528,16 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "./assets/themes/bicycle_rental/logo.svg", "icon": "./assets/themes/bicycle_rental/logo.svg",
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#3333aa88",
"render": "#3333aa88" "width": "2"
},
"width": {
"render": "2"
}
} }
], ],
"allowMove": { "allowMove": {

View file

@ -290,9 +290,7 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "pin:#ffffff;./assets/layers/bicycle_tube_vending_machine/pinIcon.svg",
"render": "pin:#ffffff;./assets/layers/bicycle_tube_vending_machine/pinIcon.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": { "if": {
@ -304,11 +302,12 @@
"then": "close:#c33" "then": "close:#c33"
} }
], ],
"iconSize": "50,50,bottom", "iconSize": "50,50",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
}, },
{ {
"color": "#6bc4f7" "color": "#6bc4f7"

View file

@ -340,24 +340,17 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "pin:#684c2b;./assets/layers/bike_cafe/bike_cafe.svg",
"render": "pin:#684c2b;./assets/layers/bike_cafe/bike_cafe.svg" "iconSize": "50,50",
}, "anchor": "bottom",
"iconSize": {
"render": "50,50,bottom"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ]
}, },
{ {
"color": { "color": "#694E2D",
"render": "#694E2D" "width": "2"
},
"width": {
"render": "2"
}
} }
], ],
"description": { "description": {

View file

@ -239,9 +239,7 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/bike_cleaning/bike_cleaning.svg",
"render": "./assets/layers/bike_cleaning/bike_cleaning.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": { "if": {
@ -257,11 +255,12 @@
} }
} }
], ],
"iconSize": "50,50,bottom", "iconSize": "50,50",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
} }
], ],
"description": { "description": {

View file

@ -696,14 +696,13 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "pin:#5473de;./assets/layers/bike_parking/parking.svg",
"render": "pin:#5473de;./assets/layers/bike_parking/parking.svg" "iconSize": "40,40",
},
"iconSize": "40,40,bottom",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
}, },
{ {
"color": "#00f", "color": "#00f",

View file

@ -1040,13 +1040,12 @@
"then": "invalid" "then": "invalid"
} }
], ],
"iconSize": { "iconSize": "50,50",
"render": "50,50,bottom"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
} }
], ],
"description": { "description": {

View file

@ -827,31 +827,20 @@
"then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg" "then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg"
}, },
{ {
"if": { "if": "service:bicycle:cleaning~*",
"and": [ "then": "./assets/layers/bike_cleaning/bike_cleaning_icon.svg"
"service:bicycle:cleaning~*"
]
},
"then": {
"render": "./assets/layers/bike_cleaning/bike_cleaning_icon.svg"
}
} }
], ],
"iconSize": { "iconSize": "50,50",
"render": "50,50,bottom" "anchor": "bottom",
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ]
}, },
{ {
"color": { "color": "#c00",
"render": "#c00" "width": "1"
},
"width": {
"render": "1"
}
} }
], ],
"filter": [ "filter": [

View file

@ -69,24 +69,17 @@
"presets": [], "presets": [],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/bike_themed_object/other_services.svg",
"render": "./assets/layers/bike_themed_object/other_services.svg" "iconSize": "50,50",
},
"iconSize": {
"render": "50,50,bottom"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
}, },
{ {
"color": { "color": "#AB76D5",
"render": "#AB76D5" "width": "2"
},
"width": {
"render": "2"
}
} }
], ],
"description": { "description": {

View file

@ -158,23 +158,16 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/binocular/telescope.svg",
"render": "circle:white;./assets/layers/binocular/telescope.svg" "iconSize": "40,40",
},
"iconSize": {
"render": "40,40,center"
},
"location": [ "location": [
"point" "point"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "8"
},
"width": {
"render": "8"
}
} }
] ]
} }

File diff suppressed because it is too large Load diff

View file

@ -65,7 +65,7 @@
"en": "A charging station", "en": "A charging station",
"nl": "Oplaadpunten" "nl": "Oplaadpunten"
}, },
"#":"no-question-hint-check", "#": "no-question-hint-check",
"tagRenderings": [ "tagRenderings": [
"images", "images",
{ {
@ -144,7 +144,7 @@
} }
}, },
{ {
"if": "access=public", "if": "access=public",
"then": { "then": {
"en": "Anyone can use this charging station (payment might be needed)", "en": "Anyone can use this charging station (payment might be needed)",
"nl": "Toegankelijk voor iedereen (mogelijks met aanmelden en/of te betalen)" "nl": "Toegankelijk voor iedereen (mogelijks met aanmelden en/of te betalen)"
@ -788,9 +788,8 @@
"then": "circle:#fff;./assets/themes/charging_stations/car.svg" "then": "circle:#fff;./assets/themes/charging_stations/car.svg"
} }
], ],
"iconSize": { "anchor": "bottom",
"render": "50,50,bottom" "iconSize": "50,50"
}
} }
], ],
"presets": [ "presets": [
@ -804,9 +803,6 @@
"title": { "title": {
"en": "charging station for electrical bikes with a normal european wall plug <img src='./assets/layers/charging_station/TypeE.svg' class='w-4 h-4 mx-1 bg-white rounded-full'/>", "en": "charging station for electrical bikes with a normal european wall plug <img src='./assets/layers/charging_station/TypeE.svg' class='w-4 h-4 mx-1 bg-white rounded-full'/>",
"nl": "oplaadpunt voor elektrische fietsen met een gewone, europese stekker <img src='./assets/layers/charging_station/TypeE.svg' class='w-4 h-4 mx-1 bg-white rounded-full'/>" "nl": "oplaadpunt voor elektrische fietsen met een gewone, europese stekker <img src='./assets/layers/charging_station/TypeE.svg' class='w-4 h-4 mx-1 bg-white rounded-full'/>"
},
"preciseInput": {
"preferredBackground": "map"
} }
}, },
{ {
@ -818,9 +814,6 @@
"title": { "title": {
"en": "charging station for cars", "en": "charging station for cars",
"nl": "oplaadstation voor elektrische auto's" "nl": "oplaadstation voor elektrische auto's"
},
"preciseInput": {
"preferredBackground": "map"
} }
} }
], ],

View file

@ -298,16 +298,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/climbing/climbing_no_rope.svg",
"render": "./assets/themes/climbing/climbing_no_rope.svg" "iconSize": "40,40",
},
"iconSize": {
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"dashArray": "8 16", "dashArray": "8 16",

View file

@ -161,18 +161,14 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/climbing/club.svg",
"render": "./assets/themes/climbing/club.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": "opening_hours~*", "if": "opening_hours~*",
"then": "icons.isOpen" "then": "icons.isOpen"
} }
], ],
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
@ -184,7 +180,8 @@
"then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>" "then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>"
} }
] ]
} },
"anchor": "center"
} }
] ]
} }

View file

@ -236,18 +236,14 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/climbing/climbing_gym.svg",
"render": "./assets/themes/climbing/climbing_gym.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": "opening_hours~*", "if": "opening_hours~*",
"then": "icons.isOpen" "then": "icons.isOpen"
} }
], ],
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
@ -259,7 +255,8 @@
"then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>" "then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>"
} }
] ]
} },
"anchor": "center"
} }
], ],
"presets": [ "presets": [

View file

@ -128,12 +128,8 @@
] ]
}, },
{ {
"color": { "color": "#ddff55AA",
"render": "#ddff55AA" "width": "2"
},
"width": {
"render": "2"
}
} }
] ]
} }

View file

@ -218,12 +218,8 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/themes/climbing/climbing_route.svg",
"render": "circle:white;./assets/themes/climbing/climbing_route.svg" "iconSize": "28,28",
},
"iconSize": {
"render": "28,28,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
@ -244,15 +240,12 @@
"then": "<div class='w-max p-1 rounded-xl' style='background: white;'>{name}</div>" "then": "<div class='w-max p-1 rounded-xl' style='background: white;'>{name}</div>"
} }
] ]
} },
"anchor": "center"
}, },
{ {
"color": { "color": "#0f0",
"render": "#0f0" "width": "4"
},
"width": {
"render": "4"
}
} }
] ]
} }

View file

@ -17,7 +17,8 @@
} }
] ]
}, },
"iconSize": "10,10,center" "iconSize": "10,10",
"anchor": "center"
}, },
{ {
"location": "end", "location": "end",
@ -34,7 +35,8 @@
} }
] ]
}, },
"iconSize": "10,10,center" "iconSize": "10,10",
"anchor": "center"
}, },
{ {
"location": "start", "location": "start",

View file

@ -15,11 +15,10 @@
"point", "point",
"centroid" "centroid"
], ],
"iconSize": "50,50,center", "iconSize": "50,50",
"icon": "./assets/layers/crab_address/housenumber_blank.svg", "icon": "./assets/layers/crab_address/housenumber_blank.svg",
"label": { "label": "<div style='margin-top: -42px; color: white' class='rounded-full p-1 font-bold relative'>{_HNRLABEL}</div>",
"render": "<div style='margin-top: -42px; color: white' class='rounded-full p-1 font-bold relative'>{_HNRLABEL}</div>" "anchor": "center"
}
} }
], ],
"calculatedTags": [ "calculatedTags": [

View file

@ -1610,12 +1610,8 @@
"allowSplit": true, "allowSplit": true,
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/cycle_infra/bicycleway.svg",
"render": "./assets/themes/cycle_infra/bicycleway.svg" "iconSize": "40,40",
},
"iconSize": {
"render": "40,40,center"
},
"location": [ "location": [
"point" "point"
] ]
@ -1654,9 +1650,7 @@
} }
] ]
}, },
"width": { "width": "8",
"render": "8"
},
"dashArray": { "dashArray": {
"render": "", "render": "",
"mappings": [ "mappings": [

View file

@ -67,14 +67,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/dentist/dentist.svg",
"render": "circle:white;./assets/layers/dentist/dentist.svg" "iconSize": "40,40",
},
"iconSize": "40,40,center",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
], ],
"deletion": true, "deletion": true,

View file

@ -35,14 +35,13 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "direction_gradient:var(--catch-detail-color)", "icon": "direction_gradient:var(--catch-detail-color)",
"iconSize": "200,200,center", "iconSize": "200,200",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
], ],
"rotation": { "rotation": "{_direction:numerical}deg",
"render": "{_direction:numerical}deg" "anchor": "center"
}
}, },
{ {
"color": "--catch-detail-color" "color": "--catch-detail-color"

View file

@ -126,14 +126,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/doctors/doctors.svg",
"render": "circle:white;./assets/layers/doctors/doctors.svg" "iconSize": "40,40",
},
"iconSize": "40,40,center",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
], ],
"deletion": true, "deletion": true,

View file

@ -68,7 +68,7 @@
"centroid" "centroid"
], ],
"icon": "./assets/layers/dogpark/dog-park.svg", "icon": "./assets/layers/dogpark/dog-park.svg",
"iconSize": "40,40,center", "iconSize": "40,40",
"label": { "label": {
"mappings": [ "mappings": [
{ {
@ -76,7 +76,8 @@
"then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>" "then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>"
} }
] ]
} },
"anchor": "center"
}, },
{ {
"color": "#ff0", "color": "#ff0",

View file

@ -244,9 +244,7 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "pin:#6BC4F7;./assets/layers/drinking_water/drips.svg",
"render": "pin:#6BC4F7;./assets/layers/drinking_water/drips.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": { "if": {
@ -258,11 +256,12 @@
"then": "close:#c33" "then": "close:#c33"
} }
], ],
"iconSize": "40,40,bottom", "iconSize": "40,40",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
} }
], ],
"description": { "description": {

View file

@ -191,10 +191,8 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/elevator/elevator_wheelchair.svg",
"render": "circle:white;./assets/layers/elevator/elevator_wheelchair.svg" "iconSize": "40,40",
},
"iconSize": "40,40,center",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
@ -209,7 +207,8 @@
}, },
"then": "close:#c33" "then": "close:#c33"
} }
] ],
"anchor": "center"
} }
], ],
"presets": [ "presets": [

View file

@ -273,12 +273,11 @@
} }
] ]
}, },
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point" "point"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": {

View file

@ -155,16 +155,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/hailhydrant/Twemoji12_1f9ef.svg",
"render": "./assets/themes/hailhydrant/Twemoji12_1f9ef.svg" "iconSize": "20,20",
},
"iconSize": {
"render": "20,20,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
] ]
} }

View file

@ -297,24 +297,17 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/hailhydrant/Twemoji12_1f692.svg",
"render": "./assets/themes/hailhydrant/Twemoji12_1f692.svg" "iconSize": "35,35",
},
"iconSize": {
"render": "35,35,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#c22",
"render": "#c22" "width": "1"
},
"width": {
"render": "1"
}
} }
] ]
} }

View file

@ -92,14 +92,15 @@
"centroid" "centroid"
], ],
"icon": "circle:white;./assets/layers/fitness_centre/gym.svg", "icon": "circle:white;./assets/layers/fitness_centre/gym.svg",
"iconSize": "40,40,center", "iconSize": "40,40",
"label": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>", "label": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>",
"iconBadges": [ "iconBadges": [
{ {
"if": "opening_hours~*", "if": "opening_hours~*",
"then": "icons.isOpen" "then": "icons.isOpen"
} }
] ],
"anchor": "center"
} }
], ],
"filter": [ "filter": [

View file

@ -393,7 +393,7 @@
"centroid" "centroid"
], ],
"icon": "circle:white;./assets/layers/fitness_station/fitness.svg", "icon": "circle:white;./assets/layers/fitness_station/fitness.svg",
"iconSize": "40,40,center", "iconSize": "40,40",
"iconBadges": [ "iconBadges": [
{ {
"if": { "if": {
@ -404,7 +404,8 @@
}, },
"then": "icons.isOpen" "then": "icons.isOpen"
} }
] ],
"anchor": "center"
} }
], ],
"filter": [ "filter": [

View file

@ -4,12 +4,11 @@
"en": "OSM objects with FIXME tags", "en": "OSM objects with FIXME tags",
"de": "OSM-Objekte mit FIXME-Tags" "de": "OSM-Objekte mit FIXME-Tags"
}, },
"minzoom": 12, "minzoom": 16,
"description": { "description": {
"en": "OSM objects that likely need to be fixed, based on a FIXME tag.", "en": "OSM objects that likely need to be fixed, based on a FIXME tag.",
"de": "OSM-Objekte, die wahrscheinlich korrigiert werden müssen, basierend auf einem FIXME-Tag." "de": "OSM-Objekte, die wahrscheinlich korrigiert werden müssen, basierend auf einem FIXME-Tag."
}, },
"shownByDefault": false,
"syncSelection": "theme-only", "syncSelection": "theme-only",
"source": { "source": {
"osmTags": { "osmTags": {
@ -28,6 +27,21 @@
"tagRenderings": [ "tagRenderings": [
{ {
"id": "fixme", "id": "fixme",
"freeform": {
"key": "fixme",
"type": "text"
},
"question": {
"en": "What is wrong with this feature?"
},
"mappings": [
{
"if": "fixme=",
"then": {
"en": "This issue has been resolved"
}
}
],
"render": { "render": {
"en": "Fixme Text: {fixme}", "en": "Fixme Text: {fixme}",
"de": "Fixme Text: {fixme}" "de": "Fixme Text: {fixme}"
@ -49,7 +63,8 @@
"centroid", "centroid",
"point" "point"
], ],
"icon": "./assets/svg/bug.svg" "icon": "./assets/svg/bug.svg",
"label": "<div class='bg-white rounded p-2'>{fixme}</div>"
}, },
{ {
"color": "#ff0000", "color": "#ff0000",

View file

@ -232,11 +232,12 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "./assets/layers/ghost_bike/ghost_bike.svg", "icon": "./assets/layers/ghost_bike/ghost_bike.svg",
"iconSize": "40,40,bottom", "iconSize": "40,40",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
} }
], ],
"description": { "description": {

View file

@ -64,14 +64,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/governments/government.svg",
"render": "circle:white;./assets/layers/governments/government.svg" "iconSize": "40,40",
},
"iconSize": "40,40,center",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
] ]
} }

View file

@ -14,7 +14,7 @@
} }
] ]
}, },
"iconSize": "40,40,center", "iconSize": "40,40",
"pitchAlignment": "map", "pitchAlignment": "map",
"rotation": { "rotation": {
"render": "0deg", "render": "0deg",
@ -33,7 +33,8 @@
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
] ]
} }

View file

@ -12,7 +12,8 @@
"centroid" "centroid"
], ],
"icon": "square:red", "icon": "square:red",
"iconSize": "5,5,center" "iconSize": "5,5",
"anchor": "center"
} }
] ]
} }

View file

@ -4,7 +4,10 @@
"minzoom": 0, "minzoom": 0,
"source": "special", "source": "special",
"title": { "title": {
"render": "Your travelled path" "render": {
"en": "Your travelled path",
"nl": "Jouw traject"
}
}, },
"shownByDefault": false, "shownByDefault": false,
"tagRenderings": [ "tagRenderings": [

View file

@ -334,21 +334,16 @@
} }
] ]
}, },
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "8"
},
"width": {
"render": "8"
}
} }
], ],
"allowMove": true, "allowMove": true,

View file

@ -5,12 +5,8 @@
"source": "special", "source": "special",
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/svg/home.svg",
"render": "circle:white;./assets/svg/home.svg" "iconSize": "20,20",
},
"iconSize": {
"render": "20,20,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"

View file

@ -112,14 +112,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/hospital/hospital.svg",
"render": "circle:white;./assets/layers/hospital/hospital.svg" "iconSize": "40,40",
},
"iconSize": "40,40,center",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": "#fcd862", "color": "#fcd862",

View file

@ -55,7 +55,8 @@
"centroid" "centroid"
], ],
"icon": "circle:white;./assets/layers/hotel/hotel.svg", "icon": "circle:white;./assets/layers/hotel/hotel.svg",
"iconSize": "40,40,center" "iconSize": "40,40",
"anchor": "center"
} }
], ],
"tagRenderings": [ "tagRenderings": [

View file

@ -492,24 +492,17 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/hailhydrant/hydrant.svg",
"render": "./assets/themes/hailhydrant/hydrant.svg" "iconSize": "20,20",
},
"iconSize": {
"render": "20,20,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "8"
},
"width": {
"render": "8"
}
} }
], ],
"units": [ "units": [

View file

@ -9,7 +9,8 @@
"centroid" "centroid"
], ],
"icon": "square:red;", "icon": "square:red;",
"iconSize": "15,15,center" "iconSize": "15,15",
"anchor": "center"
} }
], ],
"title": "Import candidate", "title": "Import candidate",

View file

@ -151,15 +151,9 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"color": { "color": "#d3d7d588",
"render": "#d3d7d588" "width": "8",
}, "offset": "-4",
"width": {
"render": "8"
},
"offset": {
"render": "-4"
},
"fill": "no" "fill": "no"
}, },
{ {
@ -245,7 +239,8 @@
} }
] ]
}, },
"iconSize": "15,15, bottom" "iconSize": "15,15",
"anchor": "bottom"
} }
] ]
} }

View file

@ -68,20 +68,15 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/information_board/board.svg",
"render": "./assets/layers/information_board/board.svg" "iconSize": "40,40",
},
"iconSize": {
"render": "40,40,center"
},
"location": [ "location": [
"point" "point"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f"
"render": "#00f"
}
} }
], ],
"description": { "description": {

View file

@ -126,6 +126,7 @@
"location": [ "location": [
"point" "point"
], ],
"anchor": "bottom",
"iconSize": { "iconSize": {
"mappings": [ "mappings": [
{ {
@ -135,10 +136,10 @@
"has_presets=no" "has_presets=no"
] ]
}, },
"then": "40,40,bottom" "then": "40,40"
} }
], ],
"render": "40,50,bottom" "render": "40,50"
} }
} }
], ],

View file

@ -264,21 +264,16 @@
} }
] ]
}, },
"iconSize": { "iconSize": "50,50",
"render": "50,50,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "8"
},
"width": {
"render": "8"
}
} }
] ]
} }

View file

@ -54,7 +54,8 @@
} }
] ]
}, },
"iconSize": "40,40,bottom" "iconSize": "40,40",
"anchor": "bottom"
} }
], ],
"tagRenderings": [ "tagRenderings": [

View file

@ -67,7 +67,8 @@
} }
] ]
}, },
"iconSize": "40,40,bottom" "iconSize": "40,40",
"anchor": "bottom"
} }
], ],
"tagRenderings": [ "tagRenderings": [

View file

@ -130,13 +130,12 @@
} }
] ]
}, },
"iconSize": { "iconSize": "32,32",
"render": "32,32,center"
},
"location": [ "location": [
"point", "point",
"projected_centerpoint" "projected_centerpoint"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": {
@ -148,9 +147,7 @@
} }
] ]
}, },
"width": { "width": "3"
"render": "3"
}
} }
], ],
"units": [ "units": [

View file

@ -12,12 +12,8 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"color": { "color": "#ccc",
"render": "#ccc" "width": "3"
},
"width": {
"render": "3"
}
} }
], ],
"shownByDefault": false "shownByDefault": false

View file

@ -527,24 +527,17 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/nature_reserve/nature_reserve.svg",
"render": "./assets/layers/nature_reserve/nature_reserve.svg" "iconSize": "50,50",
},
"iconSize": {
"render": "50,50,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#3c3",
"render": "#3c3" "width": "1"
},
"width": {
"render": "1"
}
} }
] ]
} }

View file

@ -105,15 +105,15 @@
"centroid" "centroid"
], ],
"icon": { "icon": {
"render": "./assets/svg/note.svg", "render": "note",
"mappings": [ "mappings": [
{ {
"if": "closed_at~*", "if": "closed_at~*",
"then": "./assets/svg/resolved.svg" "then": "resolved"
} }
] ]
}, },
"iconSize": "40,40,bottom", "iconSize": "40,40",
"iconBadges": [ "iconBadges": [
{ {
"if": "_total_comments>1", "if": "_total_comments>1",
@ -123,7 +123,8 @@
"if": "_is_import_note~*", "if": "_is_import_note~*",
"then": "addSmall" "then": "addSmall"
} }
] ],
"anchor": "bottom"
} }
], ],
"filter": [ "filter": [

View file

@ -316,16 +316,13 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/observation_tower/Tower_observation.svg",
"render": "circle:white;./assets/layers/observation_tower/Tower_observation.svg" "iconSize": "40,40",
},
"iconSize": {
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
] ]
} }

View file

@ -37,19 +37,16 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "pin:#6BC4F7;./assets/layers/osm_community_index/osm.svg",
"render": "pin:#6BC4F7;./assets/layers/osm_community_index/osm.svg" "iconSize": "40,40",
},
"iconSize": "40,40,bottom",
"location": [ "location": [
"point" "point"
] ],
"anchor": "bottom"
}, },
{ {
"color": "#444444", "color": "#444444",
"width": { "width": "1"
"render": "1"
}
} }
], ],
"filter": [ "filter": [

View file

@ -270,11 +270,12 @@
"then": "icons.isOpen" "then": "icons.isOpen"
} }
], ],
"iconSize": "40,40,center", "iconSize": "40,40",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
] ]
} }

View file

@ -257,12 +257,8 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/parking/parking.svg",
"render": "./assets/layers/parking/parking.svg" "iconSize": "36,36",
},
"iconSize": {
"render": "36,36,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
@ -277,7 +273,8 @@
}, },
"then": "circle:white;./assets/layers/toilet/wheelchair.svg" "then": "circle:white;./assets/layers/toilet/wheelchair.svg"
} }
] ],
"anchor": "center"
}, },
{ {
"width": 2, "width": 2,

View file

@ -195,11 +195,12 @@
} }
] ]
}, },
"iconSize": "20,20,center", "iconSize": "20,20",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": "#696969", "color": "#696969",

View file

@ -88,7 +88,8 @@
"centroid" "centroid"
], ],
"icon": "square:white;./assets/layers/parking_ticket_machine/parking_tickets.svg", "icon": "square:white;./assets/layers/parking_ticket_machine/parking_tickets.svg",
"iconSize": "20,20,center" "iconSize": "20,20",
"anchor": "center"
} }
] ]
} }

View file

@ -113,10 +113,8 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/pharmacy/pharmacy.svg",
"render": "./assets/layers/pharmacy/pharmacy.svg" "iconSize": "40,40",
},
"iconSize": "40,40,bottom",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
@ -134,7 +132,8 @@
"then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>" "then": "<div style='background: white; padding: 0.25em; border-radius:0.5em'>{name}</div>"
} }
] ]
} },
"anchor": "bottom"
} }
], ],
"filter": [ "filter": [

View file

@ -62,14 +62,13 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:white;./assets/layers/physiotherapist/doctors.svg",
"render": "circle:white;./assets/layers/physiotherapist/doctors.svg" "iconSize": "40,40",
},
"iconSize": "40,40,center",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
], ],
"deletion": true, "deletion": true,

View file

@ -131,16 +131,13 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:#e6cf39;./assets/layers/picnic_table/picnic_table.svg",
"render": "circle:#e6cf39;./assets/layers/picnic_table/picnic_table.svg" "iconSize": "35,35",
},
"iconSize": {
"render": "35,35,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
] ]
} }

View file

@ -109,13 +109,12 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "./assets/layers/play_forest/icon.svg", "icon": "./assets/layers/play_forest/icon.svg",
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": "#007055", "color": "#007055",

View file

@ -596,9 +596,7 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/themes/playgrounds/playground.svg",
"render": "./assets/themes/playgrounds/playground.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": { "if": {
@ -637,12 +635,8 @@
] ]
}, },
{ {
"color": { "color": "#5dbaa9",
"render": "#5dbaa9" "width": "1"
},
"width": {
"render": "1"
}
} }
] ]
} }

View file

@ -79,24 +79,17 @@
}, },
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "./assets/layers/postboxes/postbox.svg",
"render": "./assets/layers/postboxes/postbox.svg" "iconSize": "40,40",
},
"iconSize": {
"render": "40,40,bottom"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
}, },
{ {
"color": { "color": "#DADADA",
"render": "#DADADA" "width": "1"
},
"width": {
"render": "1"
}
} }
] ]
} }

View file

@ -433,9 +433,7 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "square:white;./assets/layers/postoffices/post_office.svg",
"render": "square:white;./assets/layers/postoffices/post_office.svg"
},
"iconBadges": [ "iconBadges": [
{ {
"if": "opening_hours~*", "if": "opening_hours~*",
@ -446,11 +444,12 @@
"then": "./assets/themes/shops/shop.svg" "then": "./assets/themes/shops/shop.svg"
} }
], ],
"iconSize": "40,40,center", "iconSize": "40,40",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": "#DADADA", "color": "#DADADA",

View file

@ -522,9 +522,7 @@
], ],
"mapRendering": [ "mapRendering": [
{ {
"icon": { "icon": "circle:#ffffff;./assets/themes/bookcases/bookcase.svg",
"render": "circle:#ffffff;./assets/themes/bookcases/bookcase.svg"
},
"label": { "label": {
"mappings": [ "mappings": [
{ {
@ -539,12 +537,8 @@
] ]
}, },
{ {
"color": { "color": "#0000ff",
"render": "#0000ff" "width": "8"
},
"width": {
"render": "8"
}
} }
] ]
} }

View file

@ -119,11 +119,12 @@
} }
] ]
}, },
"iconSize": "40,40,center", "iconSize": "40,40",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": "red", "color": "red",

View file

@ -30,7 +30,8 @@
"centroid" "centroid"
], ],
"icon": "circle:white;./assets/layers/reception_desk/reception_desk.svg", "icon": "circle:white;./assets/layers/reception_desk/reception_desk.svg",
"iconSize": "40,40,center" "iconSize": "40,40",
"anchor": "center"
} }
], ],
"tagRenderings": [ "tagRenderings": [

View file

@ -388,13 +388,12 @@
} }
] ]
}, },
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": "#fcd862", "color": "#fcd862",

View file

@ -11,13 +11,14 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "circle:red", "icon": "circle:red",
"iconSize": "1,1,center", "iconSize": "1,1",
"location": [ "location": [
"point", "point",
"projected_centerpoint" "projected_centerpoint"
], ],
"css": "box-shadow: red 0 0 20px 20px; z-index: -1; height: 1px; width: 1px;", "css": "box-shadow: red 0 0 20px 20px; z-index: -1; height: 1px; width: 1px;",
"cssClasses": "block relative rounded-full" "cssClasses": "block relative rounded-full",
"anchor": "center"
} }
] ]
} }

View file

@ -360,21 +360,16 @@
} }
] ]
}, },
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": "#00f",
"render": "#00f" "width": "8"
},
"width": {
"render": "8"
}
} }
], ],
"filter": [ "filter": [

View file

@ -253,12 +253,8 @@
] ]
}, },
{ {
"color": { "color": "#eaba2a",
"render": "#eaba2a" "width": "7",
},
"width": {
"render": "7"
},
"dashArray": { "dashArray": {
"render": "", "render": "",
"mappings": [ "mappings": [

View file

@ -12,7 +12,8 @@
"centroid" "centroid"
], ],
"icon": "circle:white;./assets/svg/scissors.svg", "icon": "circle:white;./assets/svg/scissors.svg",
"iconSize": "30,30,center" "iconSize": "30,30",
"anchor": "center"
} }
] ]
} }

View file

@ -11,7 +11,8 @@
"point" "point"
], ],
"icon": "bug", "icon": "bug",
"iconSize": "30,30,center" "iconSize": "30,30",
"anchor": "center"
}, },
{ {
"width": "8", "width": "8",

View file

@ -43,7 +43,8 @@
"then": "circle:{light:colour}" "then": "circle:{light:colour}"
} }
], ],
"iconSize": "40,40,bottom" "iconSize": "40,40",
"anchor": "bottom"
} }
], ],
"presets": [ "presets": [

View file

@ -647,12 +647,8 @@
} }
}, },
{ {
"color": { "color": "#f00",
"render": "#f00" "width": "8"
},
"width": {
"render": "8"
}
} }
], ],
"deletion": true, "deletion": true,

View file

@ -169,9 +169,7 @@
"point", "point",
"centroid" "centroid"
], ],
"iconSize": { "iconSize": "40,40",
"render": "40,40,center"
},
"label": { "label": {
"mappings": [ "mappings": [
{ {
@ -180,7 +178,8 @@
} }
] ]
}, },
"icon": "circle:white;./assets/layers/school/college.svg" "icon": "circle:white;./assets/layers/school/college.svg",
"anchor": "center"
}, },
{ {
"color": "#22f1f4", "color": "#22f1f4",

View file

@ -86,11 +86,12 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "square:lightblue;./assets/themes/stations/public_transport_tickets.svg", "icon": "square:lightblue;./assets/themes/stations/public_transport_tickets.svg",
"iconSize": "20,20,center", "iconSize": "20,20",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
], ],
"allowMove": true, "allowMove": true,

View file

@ -114,11 +114,12 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "square:green;./assets/themes/stations/public_transport_tickets.svg", "icon": "square:green;./assets/themes/stations/public_transport_tickets.svg",
"iconSize": "20,20,center", "iconSize": "20,20",
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "center"
} }
], ],
"allowMove": true, "allowMove": true,

View file

@ -222,12 +222,11 @@
} }
] ]
}, },
"iconSize": { "iconSize": "35,35",
"render": "35,35,center"
},
"location": [ "location": [
"point" "point"
] ],
"anchor": "center"
}, },
{ {
"color": { "color": {
@ -239,12 +238,8 @@
} }
] ]
}, },
"width": { "width": "3",
"render": "3" "dashArray": "5 5"
},
"dashArray": {
"render": "5 5"
}
} }
] ]
} }

View file

@ -846,13 +846,12 @@
} }
] ]
}, },
"iconSize": { "iconSize": "40,40",
"render": "40,40,bottom"
},
"location": [ "location": [
"point", "point",
"centroid" "centroid"
] ],
"anchor": "bottom"
} }
], ],
"description": { "description": {

View file

@ -67,7 +67,7 @@
"centroid" "centroid"
], ],
"icon": "./assets/layers/veterinary/vet.svg", "icon": "./assets/layers/veterinary/vet.svg",
"iconSize": "30,40,center", "iconSize": "30,40",
"label": { "label": {
"mappings": [ "mappings": [
{ {
@ -81,7 +81,8 @@
"if": "opening_hours~*", "if": "opening_hours~*",
"then": "icons.isOpen" "then": "icons.isOpen"
} }
] ],
"anchor": "center"
}, },
{ {
"color": "#ff0", "color": "#ff0",

View file

@ -81,10 +81,11 @@
"mapRendering": [ "mapRendering": [
{ {
"icon": "./assets/layers/viewpoint/viewpoint.svg", "icon": "./assets/layers/viewpoint/viewpoint.svg",
"iconSize": "20,20,center", "iconSize": "20,20",
"location": [ "location": [
"point" "point"
] ],
"anchor": "center"
}, },
{ {
"color": "#ffffff", "color": "#ffffff",

Some files were not shown because too many files have changed in this diff Show more