forked from MapComplete/MapComplete
		
	Merge branch 'develop' into feature/studio
This commit is contained in:
		
						commit
						d9417f4937
					
				
					 135 changed files with 242 additions and 356 deletions
				
			
		| 
						 | 
					@ -53,7 +53,7 @@ The Graphical User Interface is composed of various UI-elements. For every UI-el
 | 
				
			||||||
 | 
					
 | 
				
			||||||
There are some basic elements, such as:
 | 
					There are some basic elements, such as:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- `FixedUIElement` which shows a fixed, unchangeble element
 | 
					- `FixedUIElement` which shows a fixed, unchangeable element
 | 
				
			||||||
- `Img` to show an image
 | 
					- `Img` to show an image
 | 
				
			||||||
- `Combine` which wraps everything given (strings and other elements) in a div
 | 
					- `Combine` which wraps everything given (strings and other elements) in a div
 | 
				
			||||||
- `List`
 | 
					- `List`
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,6 +34,25 @@ export class UpdateLegacyLayer extends DesugaringStep<
 | 
				
			||||||
            delete config["overpassTags"]
 | 
					            delete config["overpassTags"]
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (const preset of config.presets ?? []) {
 | 
				
			||||||
 | 
					            const preciseInput = preset["preciseInput"]
 | 
				
			||||||
 | 
					            if (typeof preciseInput === "boolean") {
 | 
				
			||||||
 | 
					                delete preset["preciseInput"]
 | 
				
			||||||
 | 
					            } else if (preciseInput !== undefined) {
 | 
				
			||||||
 | 
					                delete preciseInput["preferredBackground"]
 | 
				
			||||||
 | 
					                console.log("Precise input:", preciseInput)
 | 
				
			||||||
 | 
					                preset.snapToLayer = preciseInput.snapToLayer
 | 
				
			||||||
 | 
					                delete preciseInput.snapToLayer
 | 
				
			||||||
 | 
					                if (preciseInput.maxSnapDistance) {
 | 
				
			||||||
 | 
					                    preset.maxSnapDistance = preciseInput.maxSnapDistance
 | 
				
			||||||
 | 
					                    delete preciseInput.maxSnapDistance
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                if (Object.keys(preciseInput).length == 0) {
 | 
				
			||||||
 | 
					                    delete preset["preciseInput"]
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (config.tagRenderings !== undefined) {
 | 
					        if (config.tagRenderings !== undefined) {
 | 
				
			||||||
            let i = 0
 | 
					            let i = 0
 | 
				
			||||||
            for (const tagRendering of config.tagRenderings) {
 | 
					            for (const tagRendering of config.tagRenderings) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -282,36 +282,16 @@ export interface LayerConfigJson {
 | 
				
			||||||
        exampleImages?: string[]
 | 
					        exampleImages?: string[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /**
 | 
					        /**
 | 
				
			||||||
         * If set, the user will prompted to confirm the location before actually adding the data.
 | 
					         * If specified, these layers will be shown to and the new point will be snapped towards it
 | 
				
			||||||
         * This will be with a 'drag crosshair'-method.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * If 'preferredBackgroundCategory' is set, the element will attempt to pick a background layer of that category.
 | 
					 | 
				
			||||||
         */
 | 
					         */
 | 
				
			||||||
        preciseInput?:
 | 
					        snapToLayer?: string | string[]
 | 
				
			||||||
            | true
 | 
					        /**
 | 
				
			||||||
            | {
 | 
					         * If specified, a new point will only be snapped if it is within this range.
 | 
				
			||||||
                  /**
 | 
					         * Distance in meter
 | 
				
			||||||
                   * The type of background picture
 | 
					         *
 | 
				
			||||||
                   */
 | 
					         * Default: 10
 | 
				
			||||||
                  preferredBackground?:
 | 
					         */
 | 
				
			||||||
                      | "osmbasedmap"
 | 
					        maxSnapDistance?: number
 | 
				
			||||||
                      | "photo"
 | 
					 | 
				
			||||||
                      | "historicphoto"
 | 
					 | 
				
			||||||
                      | "map"
 | 
					 | 
				
			||||||
                      | string
 | 
					 | 
				
			||||||
                      | string[]
 | 
					 | 
				
			||||||
                  /**
 | 
					 | 
				
			||||||
                   * If specified, these layers will be shown to and the new point will be snapped towards it
 | 
					 | 
				
			||||||
                   */
 | 
					 | 
				
			||||||
                  snapToLayer?: string | string[]
 | 
					 | 
				
			||||||
                  /**
 | 
					 | 
				
			||||||
                   * If specified, a new point will only be snapped if it is within this range.
 | 
					 | 
				
			||||||
                   * Distance in meter
 | 
					 | 
				
			||||||
                   *
 | 
					 | 
				
			||||||
                   * Default: 10
 | 
					 | 
				
			||||||
                   */
 | 
					 | 
				
			||||||
                  maxSnapDistance?: number
 | 
					 | 
				
			||||||
              }
 | 
					 | 
				
			||||||
    }[]
 | 
					    }[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -234,37 +234,27 @@ export default class LayerConfig extends WithContextLoader {
 | 
				
			||||||
                snapToLayers: undefined,
 | 
					                snapToLayers: undefined,
 | 
				
			||||||
                maxSnapDistance: undefined,
 | 
					                maxSnapDistance: undefined,
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            if (pr.preciseInput !== undefined) {
 | 
					            if (pr["preciseInput"] !== undefined) {
 | 
				
			||||||
                if (pr.preciseInput === true) {
 | 
					                throw "Layer " + this.id + " still uses the old 'preciseInput'-field"
 | 
				
			||||||
                    pr.preciseInput = {
 | 
					            }
 | 
				
			||||||
                        preferredBackground: undefined,
 | 
					            if (pr.snapToLayer !== undefined) {
 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                let snapToLayers: string[]
 | 
					                let snapToLayers: string[]
 | 
				
			||||||
                if (typeof pr.preciseInput.snapToLayer === "string") {
 | 
					                if (typeof pr.snapToLayer === "string") {
 | 
				
			||||||
                    snapToLayers = [pr.preciseInput.snapToLayer]
 | 
					                    snapToLayers = [pr.snapToLayer]
 | 
				
			||||||
                } else {
 | 
					                } else {
 | 
				
			||||||
                    snapToLayers = pr.preciseInput.snapToLayer
 | 
					                    snapToLayers = pr.snapToLayer
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                let preferredBackground: (
 | 
					 | 
				
			||||||
                    | "map"
 | 
					 | 
				
			||||||
                    | "photo"
 | 
					 | 
				
			||||||
                    | "osmbasedmap"
 | 
					 | 
				
			||||||
                    | "historicphoto"
 | 
					 | 
				
			||||||
                    | string
 | 
					 | 
				
			||||||
                )[]
 | 
					 | 
				
			||||||
                if (typeof pr.preciseInput.preferredBackground === "string") {
 | 
					 | 
				
			||||||
                    preferredBackground = [pr.preciseInput.preferredBackground]
 | 
					 | 
				
			||||||
                } else {
 | 
					 | 
				
			||||||
                    preferredBackground = pr.preciseInput.preferredBackground
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
                preciseInput = {
 | 
					                preciseInput = {
 | 
				
			||||||
                    preferredBackground,
 | 
					 | 
				
			||||||
                    snapToLayers,
 | 
					                    snapToLayers,
 | 
				
			||||||
                    maxSnapDistance: pr.preciseInput.maxSnapDistance ?? 10,
 | 
					                    maxSnapDistance: pr.maxSnapDistance ?? 10,
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					            } else if (pr.maxSnapDistance !== undefined) {
 | 
				
			||||||
 | 
					                throw (
 | 
				
			||||||
 | 
					                    "Layer " +
 | 
				
			||||||
 | 
					                    this.id +
 | 
				
			||||||
 | 
					                    " defines a maxSnapDistance, but does not include a `snapToLayer`"
 | 
				
			||||||
 | 
					                )
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            const config: PresetConfig = {
 | 
					            const config: PresetConfig = {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,12 +50,13 @@
 | 
				
			||||||
  on:mousemove={(e) => {
 | 
					  on:mousemove={(e) => {
 | 
				
			||||||
    if (isDown) {
 | 
					    if (isDown) {
 | 
				
			||||||
      onPosChange(e.clientX, e.clientY)
 | 
					      onPosChange(e.clientX, e.clientY)
 | 
				
			||||||
 | 
					      e.preventDefault()
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }}
 | 
					  }}
 | 
				
			||||||
  on:mouseup={() => {
 | 
					  on:mouseup={() => {
 | 
				
			||||||
    isDown = false
 | 
					    isDown = false
 | 
				
			||||||
  }}
 | 
					  }}
 | 
				
			||||||
  on:touchmove={(e) => onPosChange(e.touches[0].clientX, e.touches[0].clientY)}
 | 
					  on:touchmove={(e) =>{ onPosChange(e.touches[0].clientX, e.touches[0].clientY); e.preventDefault() }}
 | 
				
			||||||
  on:touchstart={(e) => onPosChange(e.touches[0].clientX, e.touches[0].clientY)}
 | 
					  on:touchstart={(e) => onPosChange(e.touches[0].clientX, e.touches[0].clientY)}
 | 
				
			||||||
>
 | 
					>
 | 
				
			||||||
  <div class="absolute top-0 left-0 h-full w-full cursor-pointer">
 | 
					  <div class="absolute top-0 left-0 h-full w-full cursor-pointer">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -83,7 +83,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<div class="min-h-32 relative h-full cursor-pointer overflow-hidden">
 | 
					<div class="min-h-32 relative h-full cursor-pointer overflow-hidden">
 | 
				
			||||||
  <div class="absolute top-0 left-0 h-full w-full cursor-pointer">
 | 
					  <div class="absolute top-0 left-0 h-full w-full cursor-pointer">
 | 
				
			||||||
    <MaplibreMap {map} />
 | 
					    <MaplibreMap center={({lng: initialCoordinate.lon, lat: initialCoordinate.lat})}} {map} />
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <div
 | 
					  <div
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,8 +7,9 @@
 | 
				
			||||||
  import { onMount } from "svelte"
 | 
					  import { onMount } from "svelte"
 | 
				
			||||||
  import { Map } from "@onsvisual/svelte-maps"
 | 
					  import { Map } from "@onsvisual/svelte-maps"
 | 
				
			||||||
  import type { Map as MaplibreMap } from "maplibre-gl"
 | 
					  import type { Map as MaplibreMap } from "maplibre-gl"
 | 
				
			||||||
  import type { Writable } from "svelte/store"
 | 
					  import type {Readable, Writable} from "svelte/store"
 | 
				
			||||||
  import { AvailableRasterLayers } from "../../Models/RasterLayers"
 | 
					  import { AvailableRasterLayers } from "../../Models/RasterLayers"
 | 
				
			||||||
 | 
					  import {writable} from "svelte/store";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
   * Beware: this map will _only_ be set by this component
 | 
					   * Beware: this map will _only_ be set by this component
 | 
				
			||||||
| 
						 | 
					@ -17,7 +18,7 @@
 | 
				
			||||||
  export let map: Writable<MaplibreMap>
 | 
					  export let map: Writable<MaplibreMap>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  export let attribution = false
 | 
					  export let attribution = false
 | 
				
			||||||
  let center = {}
 | 
					  export let center: Readable<{ lng: number ,lat : number }> = writable({lng: 0, lat: 0})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  onMount(() => {
 | 
					  onMount(() => {
 | 
				
			||||||
    $map.on("load", function () {
 | 
					    $map.on("load", function () {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,7 +17,7 @@ import SvelteUIElement from "./Base/SvelteUIElement"
 | 
				
			||||||
import Filterview from "./BigComponents/Filterview.svelte"
 | 
					import Filterview from "./BigComponents/Filterview.svelte"
 | 
				
			||||||
import FilteredLayer from "../Models/FilteredLayer"
 | 
					import FilteredLayer from "../Models/FilteredLayer"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class StatisticsForOverviewFile extends Combine {
 | 
					class StatsticsForOverviewFile extends Combine {
 | 
				
			||||||
    constructor(homeUrl: string, paths: string[]) {
 | 
					    constructor(homeUrl: string, paths: string[]) {
 | 
				
			||||||
        paths = paths.filter((p) => !p.endsWith("file-overview.json"))
 | 
					        paths = paths.filter((p) => !p.endsWith("file-overview.json"))
 | 
				
			||||||
        const layer = new LayoutConfig(<any>mcChanges, true).layers[0]
 | 
					        const layer = new LayoutConfig(<any>mcChanges, true).layers[0]
 | 
				
			||||||
| 
						 | 
					@ -177,7 +177,7 @@ class StatisticsForOverviewFile extends Combine {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default class StatisticsGUI extends VariableUiElement {
 | 
					class StatisticsGUI extends VariableUiElement {
 | 
				
			||||||
    private static readonly homeUrl =
 | 
					    private static readonly homeUrl =
 | 
				
			||||||
        "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/changeset-metadata/"
 | 
					        "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/changeset-metadata/"
 | 
				
			||||||
    private static readonly stats_files = "file-overview.json"
 | 
					    private static readonly stats_files = "file-overview.json"
 | 
				
			||||||
| 
						 | 
					@ -192,7 +192,7 @@ export default class StatisticsGUI extends VariableUiElement {
 | 
				
			||||||
                    return new Loading("Loading overview...")
 | 
					                    return new Loading("Loading overview...")
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                return new StatisticsForOverviewFile(StatisticsGUI.homeUrl, paths)
 | 
					                return new StatsticsForOverviewFile(StatisticsGUI.homeUrl, paths)
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
        this.SetClass("block w-full h-full")
 | 
					        this.SetClass("block w-full h-full")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1059,9 +1059,7 @@
 | 
				
			||||||
        "cs": "plakátovací skříň připevněná na stěnu",
 | 
					        "cs": "plakátovací skříň připevněná na stěnu",
 | 
				
			||||||
        "pt": "uma caixa de pôster montada em uma parede"
 | 
					        "pt": "uma caixa de pôster montada em uma parede"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "walls_and_buildings"
 | 
				
			||||||
        "snapToLayer": "walls_and_buildings"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
| 
						 | 
					@ -1175,16 +1173,13 @@
 | 
				
			||||||
        "fr": "un écran fixé au mur",
 | 
					        "fr": "un écran fixé au mur",
 | 
				
			||||||
        "pt": "uma tela montada em uma parede"
 | 
					        "pt": "uma tela montada em uma parede"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map",
 | 
					 | 
				
			||||||
        "snapToLayer": "walls_and_buildings",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 5
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "exampleImages": [
 | 
					      "exampleImages": [
 | 
				
			||||||
        "./assets/themes/advertising/Subway_screen.jpg",
 | 
					        "./assets/themes/advertising/Subway_screen.jpg",
 | 
				
			||||||
        "./assets/themes/advertising/TV_media.jpg",
 | 
					        "./assets/themes/advertising/TV_media.jpg",
 | 
				
			||||||
        "./assets/themes/advertising/Times square.jpg"
 | 
					        "./assets/themes/advertising/Times square.jpg"
 | 
				
			||||||
      ]
 | 
					      ],
 | 
				
			||||||
 | 
					      "snapToLayer": "walls_and_buildings",
 | 
				
			||||||
 | 
					      "maxSnapDistance": 5
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
| 
						 | 
					@ -1209,15 +1204,12 @@
 | 
				
			||||||
        "nl": "Een stuk groot, weerbestendig textiel met opgedrukte reclameboodschap die permanent aan de muur hangt",
 | 
					        "nl": "Een stuk groot, weerbestendig textiel met opgedrukte reclameboodschap die permanent aan de muur hangt",
 | 
				
			||||||
        "pt": "Uma peça de tecido impermeável com uma mensagem impressa, permanentemente ancorada na parede"
 | 
					        "pt": "Uma peça de tecido impermeável com uma mensagem impressa, permanentemente ancorada na parede"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map",
 | 
					 | 
				
			||||||
        "snapToLayer": "walls_and_buildings",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 5
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "exampleImages": [
 | 
					      "exampleImages": [
 | 
				
			||||||
        "./assets/themes/advertising/tarp_feder.jpg",
 | 
					        "./assets/themes/advertising/tarp_feder.jpg",
 | 
				
			||||||
        "./assets/themes/advertising/tarp_madrid.jpg"
 | 
					        "./assets/themes/advertising/tarp_madrid.jpg"
 | 
				
			||||||
      ]
 | 
					      ],
 | 
				
			||||||
 | 
					      "snapToLayer": "walls_and_buildings",
 | 
				
			||||||
 | 
					      "maxSnapDistance": 5
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
| 
						 | 
					@ -1252,11 +1244,6 @@
 | 
				
			||||||
        "pt": "um sinal",
 | 
					        "pt": "um sinal",
 | 
				
			||||||
        "pt_BR": "uma placa"
 | 
					        "pt_BR": "uma placa"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map",
 | 
					 | 
				
			||||||
        "snapToLayer": "walls_and_buildings",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 5
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "description": {
 | 
					      "description": {
 | 
				
			||||||
        "en": "Used for advertising signs, neon signs, logos & institutional entrance signs",
 | 
					        "en": "Used for advertising signs, neon signs, logos & institutional entrance signs",
 | 
				
			||||||
        "es": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales",
 | 
					        "es": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales",
 | 
				
			||||||
| 
						 | 
					@ -1270,7 +1257,9 @@
 | 
				
			||||||
        "./assets/themes/advertising/Waitrose_sign.jpg",
 | 
					        "./assets/themes/advertising/Waitrose_sign.jpg",
 | 
				
			||||||
        "./assets/themes/advertising/sign_EOI.jpg",
 | 
					        "./assets/themes/advertising/sign_EOI.jpg",
 | 
				
			||||||
        "./assets/themes/advertising/farma_sign.jpg"
 | 
					        "./assets/themes/advertising/farma_sign.jpg"
 | 
				
			||||||
      ]
 | 
					      ],
 | 
				
			||||||
 | 
					      "snapToLayer": "walls_and_buildings",
 | 
				
			||||||
 | 
					      "maxSnapDistance": 5
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
| 
						 | 
					@ -1304,15 +1293,12 @@
 | 
				
			||||||
        "fr": "une peinture murale",
 | 
					        "fr": "une peinture murale",
 | 
				
			||||||
        "pt": "uma pintura de parede"
 | 
					        "pt": "uma pintura de parede"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map",
 | 
					 | 
				
			||||||
        "snapToLayer": "walls_and_buildings",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 5
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "exampleImages": [
 | 
					      "exampleImages": [
 | 
				
			||||||
        "./assets/themes/advertising/Capitol_wall.jpg",
 | 
					        "./assets/themes/advertising/Capitol_wall.jpg",
 | 
				
			||||||
        "./assets/themes/advertising/clarke_wall.jpg"
 | 
					        "./assets/themes/advertising/clarke_wall.jpg"
 | 
				
			||||||
      ]
 | 
					      ],
 | 
				
			||||||
 | 
					      "snapToLayer": "walls_and_buildings",
 | 
				
			||||||
 | 
					      "maxSnapDistance": 5
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -381,4 +381,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -139,9 +139,7 @@
 | 
				
			||||||
        "cs": "umělecké dílo na zdi",
 | 
					        "cs": "umělecké dílo na zdi",
 | 
				
			||||||
        "es": "Una obra de arte en la pared"
 | 
					        "es": "Una obra de arte en la pared"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "walls_and_buildings"
 | 
				
			||||||
        "snapToLayer": "walls_and_buildings"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "calculatedTags": [
 | 
					  "calculatedTags": [
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -102,4 +102,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -108,13 +108,8 @@
 | 
				
			||||||
        "nb_NO": "En pullert i veien",
 | 
					        "nb_NO": "En pullert i veien",
 | 
				
			||||||
        "ca": "Un bol·lard a la carretera"
 | 
					        "ca": "Un bol·lard a la carretera"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "cycleways_and_roads",
 | 
				
			||||||
        "preferredBackground": [
 | 
					      "maxSnapDistance": 25
 | 
				
			||||||
          "photo"
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        "snapToLayer": "cycleways_and_roads",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 25
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "title": {
 | 
					      "title": {
 | 
				
			||||||
| 
						 | 
					@ -144,13 +139,8 @@
 | 
				
			||||||
        "nb_NO": "Sykkelbarrièrer, for å dempe farten",
 | 
					        "nb_NO": "Sykkelbarrièrer, for å dempe farten",
 | 
				
			||||||
        "ca": "Una barrera ciclista que relanteix als ciclistes"
 | 
					        "ca": "Una barrera ciclista que relanteix als ciclistes"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "cycleways_and_roads",
 | 
				
			||||||
        "preferredBackground": [
 | 
					      "maxSnapDistance": 25
 | 
				
			||||||
          "photo"
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        "snapToLayer": "cycleways_and_roads",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 25
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "tagRenderings": [
 | 
					  "tagRenderings": [
 | 
				
			||||||
| 
						 | 
					@ -613,4 +603,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -22,7 +22,7 @@
 | 
				
			||||||
    "cs": "Lavičky",
 | 
					    "cs": "Lavičky",
 | 
				
			||||||
    "pa_PK": "بینچ"
 | 
					    "pa_PK": "بینچ"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "minzoom": 17,
 | 
					  "minzoom": 14,
 | 
				
			||||||
  "source": {
 | 
					  "source": {
 | 
				
			||||||
    "osmTags": "amenity=bench"
 | 
					    "osmTags": "amenity=bench"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -358,4 +358,4 @@
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "deletion": true
 | 
					  "deletion": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -323,4 +323,4 @@
 | 
				
			||||||
    "cs": "Vrstva zobrazující automaty na cyklistické duše (buď speciální automaty na cyklistické duše, nebo klasické automaty s cyklistickými dušemi a případně dalšími předměty souvisejícími s jízdními koly, jako jsou světla, rukavice, zámky, ...)",
 | 
					    "cs": "Vrstva zobrazující automaty na cyklistické duše (buď speciální automaty na cyklistické duše, nebo klasické automaty s cyklistickými dušemi a případně dalšími předměty souvisejícími s jízdními koly, jako jsou světla, rukavice, zámky, ...)",
 | 
				
			||||||
    "ca": "Una capa que mostra màquines expenedores per a tubs de bicicleta (ja siguin màquines expenedores de tubs de bicicleta o màquines expenedores clàssiques amb tubs de bicicleta i opcionalment objectes addicionals relacionats amb la bicicleta com ara llums, guants, panys, ...)"
 | 
					    "ca": "Una capa que mostra màquines expenedores per a tubs de bicicleta (ja siguin màquines expenedores de tubs de bicicleta o màquines expenedores clàssiques amb tubs de bicicleta i opcionalment objectes addicionals relacionats amb la bicicleta com ara llums, guants, panys, ...)"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -369,4 +369,4 @@
 | 
				
			||||||
    "cs": "Cyklokavárna je kavárna zaměřená na cyklisty, například se službami, jako je pumpa, se spoustou výzdoby související s jízdními koly, …",
 | 
					    "cs": "Cyklokavárna je kavárna zaměřená na cyklisty, například se službami, jako je pumpa, se spoustou výzdoby související s jízdními koly, …",
 | 
				
			||||||
    "ca": "Un cafè ciclista és un cafè enfocat a ciclistes, per exemple, amb serveis com una manxa, amb molta decoració relacionada amb el ciclisme, …"
 | 
					    "ca": "Un cafè ciclista és un cafè enfocat a ciclistes, per exemple, amb serveis com una manxa, amb molta decoració relacionada amb el ciclisme, …"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -274,4 +274,4 @@
 | 
				
			||||||
    "cs": "Vrstva zobrazující zařízení, kde si můžete umýt kolo",
 | 
					    "cs": "Vrstva zobrazující zařízení, kde si můžete umýt kolo",
 | 
				
			||||||
    "ca": "Una capa que mostra les instal·lacions on pots netejar la teva bicicleta"
 | 
					    "ca": "Una capa que mostra les instal·lacions on pots netejar la teva bicicleta"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -720,4 +720,4 @@
 | 
				
			||||||
    "cs": "Vrstva ukazující, kde můžete zaparkovat kolo",
 | 
					    "cs": "Vrstva ukazující, kde můžete zaparkovat kolo",
 | 
				
			||||||
    "ca": "Una capa que mostra on pots aparcar la teva bicicleta"
 | 
					    "ca": "Una capa que mostra on pots aparcar la teva bicicleta"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1059,4 +1059,4 @@
 | 
				
			||||||
    "cs": "Vrstva zobrazující vzduchové kompresory na jízdní kola a stojany na nářadí pro opravu jízdních kol",
 | 
					    "cs": "Vrstva zobrazující vzduchové kompresory na jízdní kola a stojany na nářadí pro opravu jízdních kol",
 | 
				
			||||||
    "ca": "Una capa que mostra bombes de bicicletes i suports d'eines de reparació de bicicletes"
 | 
					    "ca": "Una capa que mostra bombes de bicicletes i suports d'eines de reparació de bicicletes"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -898,4 +898,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -98,4 +98,4 @@
 | 
				
			||||||
    "da": "Et lag med objekter med cykeltema, men som ikke matcher noget andet lag",
 | 
					    "da": "Et lag med objekter med cykeltema, men som ikke matcher noget andet lag",
 | 
				
			||||||
    "ca": "Una capa amb els objectes relacionats amb bicis però que no coinxideixen amb cap altra capa"
 | 
					    "ca": "Una capa amb els objectes relacionats amb bicis però que no coinxideixen amb cap altra capa"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -133,9 +133,6 @@
 | 
				
			||||||
        "da": "Et teleskop eller en kikkert monteret på en stang, som offentligheden kan se sig omkring med. <img src='./assets/layers/binocular/binoculars_example.jpg' style='height: 300px; width: auto; display: block;' />",
 | 
					        "da": "Et teleskop eller en kikkert monteret på en stang, som offentligheden kan se sig omkring med. <img src='./assets/layers/binocular/binoculars_example.jpg' style='height: 300px; width: auto; display: block;' />",
 | 
				
			||||||
        "es": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. <img src='./assets/layers/binocular/binoculars_example.jpg' style='height: 300px; width: auto; display: block;' />",
 | 
					        "es": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. <img src='./assets/layers/binocular/binoculars_example.jpg' style='height: 300px; width: auto; display: block;' />",
 | 
				
			||||||
        "ca": "Un telescopi o un parell de prismàtics muntats en un pal, a disposició del públic per mirar al seu voltant. <img src='./assets/layers/binocular/binoculars_example.jpg' style='height: 300px; width: auto; display: block;' />"
 | 
					        "ca": "Un telescopi o un parell de prismàtics muntats en un pal, a disposició del públic per mirar al seu voltant. <img src='./assets/layers/binocular/binoculars_example.jpg' style='height: 300px; width: auto; display: block;' />"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "photo"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
| 
						 | 
					@ -180,4 +177,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -412,4 +412,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -46,9 +46,6 @@
 | 
				
			||||||
        "da": "En pub, mest et sted at drikke øl i et varme, afslappede omgivelser",
 | 
					        "da": "En pub, mest et sted at drikke øl i et varme, afslappede omgivelser",
 | 
				
			||||||
        "fr": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée",
 | 
					        "fr": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée",
 | 
				
			||||||
        "ca": "Un bar, principalment per a beure cerveses en un interior càlid i relaxat"
 | 
					        "ca": "Un bar, principalment per a beure cerveses en un interior càlid i relaxat"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -74,9 +71,6 @@
 | 
				
			||||||
        "es": "Un <b>bar de copas</b> más moderno y comercial, posiblemente con una instalación de música y luz",
 | 
					        "es": "Un <b>bar de copas</b> más moderno y comercial, posiblemente con una instalación de música y luz",
 | 
				
			||||||
        "fr": "Un <b>bar</b> plus moderne et commercial, avec éventuellement musique et jeux de lumière",
 | 
					        "fr": "Un <b>bar</b> plus moderne et commercial, avec éventuellement musique et jeux de lumière",
 | 
				
			||||||
        "ca": "Un <b>bar de copes</b> més modern i comercial, possiblement amb equipació de música i llums"
 | 
					        "ca": "Un <b>bar de copes</b> més modern i comercial, possiblement amb equipació de música i llums"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -102,9 +96,6 @@
 | 
				
			||||||
        "es": "Una <b>cafetería</b> para beber té, café o una bebida alcohólica en un ambiente tranquilo",
 | 
					        "es": "Una <b>cafetería</b> para beber té, café o una bebida alcohólica en un ambiente tranquilo",
 | 
				
			||||||
        "fr": "Un <b>café</b> pour prendre un thé, un café ou une boisson alcoolisée dans un environnement calme",
 | 
					        "fr": "Un <b>café</b> pour prendre un thé, un café ou une boisson alcoolisée dans un environnement calme",
 | 
				
			||||||
        "ca": "Una <b>cafeteria</b> per a a beure té, café o una beguda alcohólica en un ambient tranquil"
 | 
					        "ca": "Una <b>cafeteria</b> per a a beure té, café o una beguda alcohólica en un ambient tranquil"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -128,9 +119,6 @@
 | 
				
			||||||
        "fr": "Une <b>boîte de nuit</b> ou discothèque pour danser sur de la musique de DJ accompagnée de jeux de lumière et un bar pour prendre une boisson (alcoolisée)",
 | 
					        "fr": "Une <b>boîte de nuit</b> ou discothèque pour danser sur de la musique de DJ accompagnée de jeux de lumière et un bar pour prendre une boisson (alcoolisée)",
 | 
				
			||||||
        "da": "En <b>natklub</b> eller diskotek med fokus på dans, musik af en DJ med tilhørende lysshow og en bar for at få (alkoholiske) drinks",
 | 
					        "da": "En <b>natklub</b> eller diskotek med fokus på dans, musik af en DJ med tilhørende lysshow og en bar for at få (alkoholiske) drinks",
 | 
				
			||||||
        "ca": "Un <b>club nocturn</b> o discoteca centrat en ballar, música d'un DJ acompanyat d'un espectacle de llums i una barra on obtindre begudes (alcohòliques)"
 | 
					        "ca": "Un <b>club nocturn</b> o discoteca centrat en ballar, música d'un DJ acompanyat d'un espectacle de llums i una barra on obtindre begudes (alcohòliques)"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
| 
						 | 
					@ -369,4 +357,4 @@
 | 
				
			||||||
    "fr": "Une couche montrants les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférentes.",
 | 
					    "fr": "Une couche montrants les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférentes.",
 | 
				
			||||||
    "ca": "Una capa que mostra cafeteries i bars on un es pot reunir amb una beguda. La capa demana algunes preguntes rellevants"
 | 
					    "ca": "Una capa que mostra cafeteries i bars on un es pot reunir amb una beguda. La capa demana algunes preguntes rellevants"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -121,4 +121,4 @@
 | 
				
			||||||
  "filter": [
 | 
					  "filter": [
 | 
				
			||||||
    "open_now"
 | 
					    "open_now"
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4705,9 +4705,6 @@
 | 
				
			||||||
        "da": "en ladestation til elektriske cykler med et normalt europæisk vægstik <img src='./assets/layers/charging_station/typee.svg' style='width: 2rem; height: 2rem; float: left; background: white; border-radius: 1rem; margin-right: 0.5rem'/> (beregnet til opladning af elektriske cykler)",
 | 
					        "da": "en ladestation til elektriske cykler med et normalt europæisk vægstik <img src='./assets/layers/charging_station/typee.svg' style='width: 2rem; height: 2rem; float: left; background: white; border-radius: 1rem; margin-right: 0.5rem'/> (beregnet til opladning af elektriske cykler)",
 | 
				
			||||||
        "de": "eine Ladestation für Elektrofahrräder mit einer normalen europäischen Steckdose <img src='./assets/layers/charging_station/typee.svg' style='width: 2rem; height: 2rem; float: left; background: white; border-radius: 1rem; margin-right: 0.5rem'/> (zum Laden von Elektrofahrrädern)",
 | 
					        "de": "eine Ladestation für Elektrofahrräder mit einer normalen europäischen Steckdose <img src='./assets/layers/charging_station/typee.svg' style='width: 2rem; height: 2rem; float: left; background: white; border-radius: 1rem; margin-right: 0.5rem'/> (zum Laden von Elektrofahrrädern)",
 | 
				
			||||||
        "es": "una estación de carga para bicicletas eléctricas con un enchufe de pared europeo normal <img src='./assets/layers/charging_station/typee.svg' style='width: 2rem; height: 2rem; float: left; background: white; border-radius: 1rem; margin-right: 0.5rem'/> (pensado para cargar bicicletas eléctricas)"
 | 
					        "es": "una estación de carga para bicicletas eléctricas con un enchufe de pared europeo normal <img src='./assets/layers/charging_station/typee.svg' style='width: 2rem; height: 2rem; float: left; background: white; border-radius: 1rem; margin-right: 0.5rem'/> (pensado para cargar bicicletas eléctricas)"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -4723,9 +4720,6 @@
 | 
				
			||||||
        "da": "en ladestation til biler",
 | 
					        "da": "en ladestation til biler",
 | 
				
			||||||
        "de": "Eine Ladestation für Elektrofahrzeuge",
 | 
					        "de": "Eine Ladestation für Elektrofahrzeuge",
 | 
				
			||||||
        "es": "una estación de carga para coches"
 | 
					        "es": "una estación de carga para coches"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
| 
						 | 
					@ -5218,4 +5212,4 @@
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "neededChangesets": 10
 | 
					    "neededChangesets": 10
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -416,4 +416,4 @@
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "mapRendering": null
 | 
					  "mapRendering": null
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -187,4 +187,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -275,4 +275,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -136,4 +136,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -255,4 +255,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -409,12 +409,6 @@
 | 
				
			||||||
        "nl": "Een publiekelijk zichtbare klok",
 | 
					        "nl": "Een publiekelijk zichtbare klok",
 | 
				
			||||||
        "de": "Eine öffentlich sichtbare Uhr",
 | 
					        "de": "Eine öffentlich sichtbare Uhr",
 | 
				
			||||||
        "ca": "Un rellotge visible públicament"
 | 
					        "ca": "Un rellotge visible públicament"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": [
 | 
					 | 
				
			||||||
          "photo",
 | 
					 | 
				
			||||||
          "map"
 | 
					 | 
				
			||||||
        ]
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -435,13 +429,7 @@
 | 
				
			||||||
        "ca": "Un rellotge visible públicament muntat en una paret",
 | 
					        "ca": "Un rellotge visible públicament muntat en una paret",
 | 
				
			||||||
        "fr": "Une horloge publique fixée sur un mur"
 | 
					        "fr": "Une horloge publique fixée sur un mur"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "walls_and_buildings"
 | 
				
			||||||
        "preferredBackground": [
 | 
					 | 
				
			||||||
          "photo",
 | 
					 | 
				
			||||||
          "map"
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        "snapToLayer": "walls_and_buildings"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "allowMove": true,
 | 
					  "allowMove": true,
 | 
				
			||||||
| 
						 | 
					@ -472,4 +460,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -79,4 +79,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -33,4 +33,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -84,13 +84,8 @@
 | 
				
			||||||
        "da": "Overgang for fodgængere og/eller cyklister",
 | 
					        "da": "Overgang for fodgængere og/eller cyklister",
 | 
				
			||||||
        "es": "Cruce para peatones y/o ciclistas"
 | 
					        "es": "Cruce para peatones y/o ciclistas"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "cycleways_and_roads",
 | 
				
			||||||
        "preferredBackground": [
 | 
					      "maxSnapDistance": 25
 | 
				
			||||||
          "photo"
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        "snapToLayer": "cycleways_and_roads",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 25
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "title": {
 | 
					      "title": {
 | 
				
			||||||
| 
						 | 
					@ -113,13 +108,8 @@
 | 
				
			||||||
        "da": "Trafiksignal på en vej",
 | 
					        "da": "Trafiksignal på en vej",
 | 
				
			||||||
        "es": "Señal de tráfico en una carretera"
 | 
					        "es": "Señal de tráfico en una carretera"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "cycleways_and_roads",
 | 
				
			||||||
        "preferredBackground": [
 | 
					      "maxSnapDistance": 25
 | 
				
			||||||
          "photo"
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        "snapToLayer": "cycleways_and_roads",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 25
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "tagRenderings": [
 | 
					  "tagRenderings": [
 | 
				
			||||||
| 
						 | 
					@ -616,4 +606,4 @@
 | 
				
			||||||
  "filter": [
 | 
					  "filter": [
 | 
				
			||||||
    "tactile_paving_advanced"
 | 
					    "tactile_paving_advanced"
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1702,4 +1702,4 @@
 | 
				
			||||||
    "fr": "Toutes les infrastructures sur lesquelles quelqu'un peut rouler, accompagnées de questions sur cette infrastructure",
 | 
					    "fr": "Toutes les infrastructures sur lesquelles quelqu'un peut rouler, accompagnées de questions sur cette infrastructure",
 | 
				
			||||||
    "ca": "Totes les infraestructures per les quals algú pot ciclar, acompanyades de preguntes sobre aquesta infraestructura"
 | 
					    "ca": "Totes les infraestructures per les quals algú pot ciclar, acompanyades de preguntes sobre aquesta infraestructura"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -72,11 +72,8 @@
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
        "emergency=defibrillator"
 | 
					        "emergency=defibrillator"
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "walls_and_buildings",
 | 
				
			||||||
        "preferredBackground": "map",
 | 
					      "maxSnapDistance": 5
 | 
				
			||||||
        "snapToLayer": "walls_and_buildings",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 5
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "tagRenderings": [
 | 
					  "tagRenderings": [
 | 
				
			||||||
| 
						 | 
					@ -674,4 +671,4 @@
 | 
				
			||||||
    "has_image",
 | 
					    "has_image",
 | 
				
			||||||
    "open_now"
 | 
					    "open_now"
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -79,4 +79,4 @@
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "deletion": true,
 | 
					  "deletion": true,
 | 
				
			||||||
  "allowMove": true
 | 
					  "allowMove": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -48,4 +48,4 @@
 | 
				
			||||||
      "color": "--catch-detail-color"
 | 
					      "color": "--catch-detail-color"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -138,4 +138,4 @@
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "deletion": true,
 | 
					  "deletion": true,
 | 
				
			||||||
  "allowMove": true
 | 
					  "allowMove": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -185,4 +185,4 @@
 | 
				
			||||||
    "reviews",
 | 
					    "reviews",
 | 
				
			||||||
    "images"
 | 
					    "images"
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -266,4 +266,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -453,15 +453,12 @@
 | 
				
			||||||
        "de": "einen Eingang",
 | 
					        "de": "einen Eingang",
 | 
				
			||||||
        "nl": "een toegang"
 | 
					        "nl": "een toegang"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "photo",
 | 
					 | 
				
			||||||
        "snapToLayer": [
 | 
					 | 
				
			||||||
          "walls_and_buildings",
 | 
					 | 
				
			||||||
          "pedestrian_path"
 | 
					 | 
				
			||||||
        ]
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
        "entrance=yes"
 | 
					        "entrance=yes"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "snapToLayer": [
 | 
				
			||||||
 | 
					        "walls_and_buildings",
 | 
				
			||||||
 | 
					        "pedestrian_path"
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -470,14 +467,11 @@
 | 
				
			||||||
        "de": "eine Innentür",
 | 
					        "de": "eine Innentür",
 | 
				
			||||||
        "nl": "een binnendeur"
 | 
					        "nl": "een binnendeur"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map",
 | 
					 | 
				
			||||||
        "snapToLayer": [
 | 
					 | 
				
			||||||
          "indoors"
 | 
					 | 
				
			||||||
        ]
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
        "indoor=door"
 | 
					        "indoor=door"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "snapToLayer": [
 | 
				
			||||||
 | 
					        "indoors"
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
| 
						 | 
					@ -520,4 +514,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -307,4 +307,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -167,4 +167,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -175,4 +175,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -317,4 +317,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -105,4 +105,4 @@
 | 
				
			||||||
  "filter": [
 | 
					  "filter": [
 | 
				
			||||||
    "open_now"
 | 
					    "open_now"
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -414,4 +414,4 @@
 | 
				
			||||||
    "enableRelocation": false,
 | 
					    "enableRelocation": false,
 | 
				
			||||||
    "enableImproveAccuracy": true
 | 
					    "enableImproveAccuracy": true
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -57,4 +57,4 @@
 | 
				
			||||||
      "width": 2
 | 
					      "width": 2
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -38,9 +38,6 @@
 | 
				
			||||||
        "de": "Ein klassisches Speiselokal mit Sitzgelegenheiten, in dem vollständige Mahlzeiten von Kellnern serviert werden",
 | 
					        "de": "Ein klassisches Speiselokal mit Sitzgelegenheiten, in dem vollständige Mahlzeiten von Kellnern serviert werden",
 | 
				
			||||||
        "es": "Un lugar de comidas formal, con mesas y sillas y que vende comidas completas servidas por camareros",
 | 
					        "es": "Un lugar de comidas formal, con mesas y sillas y que vende comidas completas servidas por camareros",
 | 
				
			||||||
        "fr": "Un lieu de restauration formel avec des installations pour s'asseoir vendant des repas complets servis par des serveurs"
 | 
					        "fr": "Un lieu de restauration formel avec des installations pour s'asseoir vendant des repas complets servis par des serveurs"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -61,9 +58,6 @@
 | 
				
			||||||
        "de": "Ein Lebensmittelunternehmen, das sich auf schnellen Thekendienst und Essen zum Mitnehmen konzentriert",
 | 
					        "de": "Ein Lebensmittelunternehmen, das sich auf schnellen Thekendienst und Essen zum Mitnehmen konzentriert",
 | 
				
			||||||
        "es": "Un negocio de comida centrado en servicio rápido solo en mostrador y comida para llevar",
 | 
					        "es": "Un negocio de comida centrado en servicio rápido solo en mostrador y comida para llevar",
 | 
				
			||||||
        "fr": "Une entreprise alimentaire se concentrant sur le service rapide au comptoir et les plats à emporter"
 | 
					        "fr": "Une entreprise alimentaire se concentrant sur le service rapide au comptoir et les plats à emporter"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
| 
						 | 
					@ -84,9 +78,6 @@
 | 
				
			||||||
        "de": "Eine Pommesbude",
 | 
					        "de": "Eine Pommesbude",
 | 
				
			||||||
        "fr": "Une restauration rapide centré sur la vente de frites",
 | 
					        "fr": "Une restauration rapide centré sur la vente de frites",
 | 
				
			||||||
        "ca": "Un local de menjar ràpid centrat en les patates fregides"
 | 
					        "ca": "Un local de menjar ràpid centrat en les patates fregides"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "map"
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
| 
						 | 
					@ -1149,4 +1140,4 @@
 | 
				
			||||||
    "ca": "Una capa que mostra restaurants i locals de menjar ràpid (amb un renderitzat especial per a fregiduries)",
 | 
					    "ca": "Una capa que mostra restaurants i locals de menjar ràpid (amb un renderitzat especial per a fregiduries)",
 | 
				
			||||||
    "cs": "Vrstva zobrazující restaurace a zařízení rychlého občerstvení (se speciálním vykreslením pro fritézy)"
 | 
					    "cs": "Vrstva zobrazující restaurace a zařízení rychlého občerstvení (se speciálním vykreslením pro fritézy)"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -244,4 +244,4 @@
 | 
				
			||||||
    "nl": "Een laag die herdenkingsplaatsen voor verongelukte fietsers toont",
 | 
					    "nl": "Een laag die herdenkingsplaatsen voor verongelukte fietsers toont",
 | 
				
			||||||
    "de": "Eine Ebene mit Gedenkstätten für Radfahrer, die bei Verkehrsunfällen ums Leben gekommen sind"
 | 
					    "de": "Eine Ebene mit Gedenkstätten für Radfahrer, die bei Verkehrsunfällen ums Leben gekommen sind"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -74,4 +74,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,4 +15,4 @@
 | 
				
			||||||
      "iconSize": "5,5,center"
 | 
					      "iconSize": "5,5,center"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -45,4 +45,4 @@
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "syncSelection": "global"
 | 
					  "syncSelection": "global"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -353,4 +353,4 @@
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "allowMove": true,
 | 
					  "allowMove": true,
 | 
				
			||||||
  "deletion": true
 | 
					  "deletion": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,4 +17,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -126,4 +126,4 @@
 | 
				
			||||||
      "width": 1
 | 
					      "width": 1
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -97,4 +97,4 @@
 | 
				
			||||||
    "enableImproveAccuracy": true,
 | 
					    "enableImproveAccuracy": true,
 | 
				
			||||||
    "enableRelocation": true
 | 
					    "enableRelocation": true
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -545,4 +545,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20215,4 +20215,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19,4 +19,4 @@
 | 
				
			||||||
      "render": "{all_tags()}"
 | 
					      "render": "{all_tags()}"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -248,4 +248,4 @@
 | 
				
			||||||
      "iconSize": "15,15, bottom"
 | 
					      "iconSize": "15,15, bottom"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -91,4 +91,4 @@
 | 
				
			||||||
    "es": "Una capa que muestra paneles informativos turísticos (ej. informan sobre el paisaje, una construcción, una característica, un mapa, ...)",
 | 
					    "es": "Una capa que muestra paneles informativos turísticos (ej. informan sobre el paisaje, una construcción, una característica, un mapa, ...)",
 | 
				
			||||||
    "ca": "Una capa que mostra panells informatius turístics (p.e. informen sobre el paissatge, una construcció, una característica, un mapa, …)"
 | 
					    "ca": "Una capa que mostra panells informatius turístics (p.e. informen sobre el paissatge, una construcció, una característica, un mapa, …)"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -254,14 +254,11 @@
 | 
				
			||||||
        "de": "Bordstein in einem Fußweg",
 | 
					        "de": "Bordstein in einem Fußweg",
 | 
				
			||||||
        "fr": "Bordure dans un trottoir"
 | 
					        "fr": "Bordure dans un trottoir"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": [
 | 
				
			||||||
        "maxSnapDistance": 10,
 | 
					        "cycleways_and_roads",
 | 
				
			||||||
        "preferredBackground": "photo",
 | 
					        "kerbs"
 | 
				
			||||||
        "snapToLayer": [
 | 
					      ],
 | 
				
			||||||
          "cycleways_and_roads",
 | 
					      "maxSnapDistance": 10
 | 
				
			||||||
          "kerbs"
 | 
					 | 
				
			||||||
        ]
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "filter": [
 | 
					  "filter": [
 | 
				
			||||||
| 
						 | 
					@ -388,4 +385,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -191,4 +191,4 @@
 | 
				
			||||||
    "enableImproveAccuracy": true
 | 
					    "enableImproveAccuracy": true
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "deletion": true
 | 
					  "deletion": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -281,4 +281,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,4 +11,4 @@
 | 
				
			||||||
      "icon": "./assets/svg/crosshair-empty.svg"
 | 
					      "icon": "./assets/svg/crosshair-empty.svg"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -216,4 +216,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,4 +21,4 @@
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "shownByDefault": false
 | 
					  "shownByDefault": false
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -547,4 +547,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -328,4 +328,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -153,4 +153,4 @@
 | 
				
			||||||
    "de": "Eine Ebene aller OpenStreetMap-Communities",
 | 
					    "de": "Eine Ebene aller OpenStreetMap-Communities",
 | 
				
			||||||
    "ca": "Una capa que mostra les comunitats d'OpenStreetMap"
 | 
					    "ca": "Una capa que mostra les comunitats d'OpenStreetMap"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,9 +34,6 @@
 | 
				
			||||||
        "de": "ein Paketschließfach",
 | 
					        "de": "ein Paketschließfach",
 | 
				
			||||||
        "ca": "una bústia intel·ligent"
 | 
					        "ca": "una bústia intel·ligent"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "photo"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
        "amenity=parcel_locker"
 | 
					        "amenity=parcel_locker"
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
| 
						 | 
					@ -280,4 +277,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -284,4 +284,4 @@
 | 
				
			||||||
      "color": "#ddcc00"
 | 
					      "color": "#ddcc00"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -206,4 +206,4 @@
 | 
				
			||||||
      "width": "1"
 | 
					      "width": "1"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -91,4 +91,4 @@
 | 
				
			||||||
      "iconSize": "20,20,center"
 | 
					      "iconSize": "20,20,center"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -37,4 +37,4 @@
 | 
				
			||||||
      "dashArray": "12 6"
 | 
					      "dashArray": "12 6"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -180,4 +180,4 @@
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "deletion": true,
 | 
					  "deletion": true,
 | 
				
			||||||
  "allowMove": true
 | 
					  "allowMove": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -74,4 +74,4 @@
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "deletion": true,
 | 
					  "deletion": true,
 | 
				
			||||||
  "allowMove": true
 | 
					  "allowMove": true
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -143,4 +143,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -122,4 +122,4 @@
 | 
				
			||||||
      "width": "2"
 | 
					      "width": "2"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -645,4 +645,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -99,4 +99,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -457,4 +457,4 @@
 | 
				
			||||||
      "width": "1"
 | 
					      "width": "1"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -65,10 +65,7 @@
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
        "amenity=public_bookcase"
 | 
					        "amenity=public_bookcase"
 | 
				
			||||||
      ],
 | 
					      ]
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "photo"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "tagRenderings": [
 | 
					  "tagRenderings": [
 | 
				
			||||||
| 
						 | 
					@ -550,4 +547,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -94,4 +94,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -55,13 +55,8 @@
 | 
				
			||||||
        "fr": "Passage piéton",
 | 
					        "fr": "Passage piéton",
 | 
				
			||||||
        "ca": "Pas de vianants"
 | 
					        "ca": "Pas de vianants"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": "cycleways_and_roads",
 | 
				
			||||||
        "preferredBackground": [
 | 
					      "maxSnapDistance": 25
 | 
				
			||||||
          "photo"
 | 
					 | 
				
			||||||
        ],
 | 
					 | 
				
			||||||
        "snapToLayer": "cycleways_and_roads",
 | 
					 | 
				
			||||||
        "maxSnapDistance": 25
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "tagRenderings": [
 | 
					  "tagRenderings": [
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,4 +11,4 @@
 | 
				
			||||||
      "color": "#cc00cc"
 | 
					      "color": "#cc00cc"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -114,4 +114,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -401,4 +401,4 @@
 | 
				
			||||||
      "width": 1
 | 
					      "width": 1
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20,4 +20,4 @@
 | 
				
			||||||
      "cssClasses": "block relative rounded-full"
 | 
					      "cssClasses": "block relative rounded-full"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -102,4 +102,4 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -292,4 +292,4 @@
 | 
				
			||||||
    "nl": "Alle verkeersvrije wegen",
 | 
					    "nl": "Alle verkeersvrije wegen",
 | 
				
			||||||
    "de": "Alle autofreien Straßen"
 | 
					    "de": "Alle autofreien Straßen"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -72,13 +72,10 @@
 | 
				
			||||||
        "nl": "een flitspaal",
 | 
					        "nl": "een flitspaal",
 | 
				
			||||||
        "es": "una cámara de velocidad"
 | 
					        "es": "una cámara de velocidad"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "preciseInput": {
 | 
					      "snapToLayer": [
 | 
				
			||||||
        "preferredBackground": "photo",
 | 
					        "maxspeed"
 | 
				
			||||||
        "maxSnapDistance": 10,
 | 
					      ],
 | 
				
			||||||
        "snapToLayer": [
 | 
					      "maxSnapDistance": 10
 | 
				
			||||||
          "maxspeed"
 | 
					 | 
				
			||||||
        ]
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "mapRendering": [
 | 
					  "mapRendering": [
 | 
				
			||||||
| 
						 | 
					@ -148,4 +145,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -78,10 +78,7 @@
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "tags": [
 | 
					      "tags": [
 | 
				
			||||||
        "highway=speed_display"
 | 
					        "highway=speed_display"
 | 
				
			||||||
      ],
 | 
					      ]
 | 
				
			||||||
      "preciseInput": {
 | 
					 | 
				
			||||||
        "preferredBackground": "photo"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "mapRendering": [
 | 
					  "mapRendering": [
 | 
				
			||||||
| 
						 | 
					@ -151,4 +148,4 @@
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,4 +15,4 @@
 | 
				
			||||||
      "iconSize": "30,30,center"
 | 
					      "iconSize": "30,30,center"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -18,4 +18,4 @@
 | 
				
			||||||
      "color": "black"
 | 
					      "color": "black"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -684,4 +684,4 @@
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "open_now"
 | 
					    "open_now"
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue