chore: automated housekeeping...

This commit is contained in:
Pieter Vander Vennet 2025-03-07 21:53:42 +01:00
parent c1a2126b32
commit 4c93f023dd
32 changed files with 1551 additions and 76 deletions

File diff suppressed because one or more lines are too long

View file

@ -340,6 +340,835 @@
"key": "name",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'shop' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bicycle_rental with a fixed text, namely 'Bicycle rental shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bicycle_rental"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=agrarian with a fixed text, namely 'Farm Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "agrarian"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=alcohol with a fixed text, namely 'Liquor Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "alcohol"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=anime with a fixed text, namely 'Anime / Manga Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "anime"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=antiques with a fixed text, namely 'Antique Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "antiques"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=appliance with a fixed text, namely 'Appliance Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "appliance"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=art with a fixed text, namely 'Art Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "art"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=baby_goods with a fixed text, namely 'Baby Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "baby_goods"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bag with a fixed text, namely 'Bag/Luggage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bag"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bakery with a fixed text, namely 'Bakery' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bakery"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bathroom_furnishing with a fixed text, namely 'Bathroom Furnishing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bathroom_furnishing"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=beauty with a fixed text, namely 'Beauty Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "beauty"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bed with a fixed text, namely 'Bedding/Mattress Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bed"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=beverages with a fixed text, namely 'Beverage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "beverages"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bicycle with a fixed text, namely 'Bicycle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bicycle"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=boat with a fixed text, namely 'Boat Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "boat"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=bookmaker with a fixed text, namely 'Bookmaker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "bookmaker"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=books with a fixed text, namely 'Bookstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "books"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=brewing_supplies with a fixed text, namely 'Brewing Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "brewing_supplies"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=butcher with a fixed text, namely 'Butcher' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "butcher"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=camera with a fixed text, namely 'Camera Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "camera"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=candles with a fixed text, namely 'Candle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "candles"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=cannabis with a fixed text, namely 'Cannabis Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "cannabis"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=car with a fixed text, namely 'Car Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "car"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=car_parts with a fixed text, namely 'Car Parts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "car_parts"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=car_repair with a fixed text, namely 'Car Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "car_repair"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=caravan with a fixed text, namely 'RV Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "caravan"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=carpet with a fixed text, namely 'Carpet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "carpet"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=catalogue with a fixed text, namely 'Catalog Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "catalogue"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=charity with a fixed text, namely 'Charity Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "charity"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=cheese with a fixed text, namely 'Cheese Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "cheese"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=chemist with a fixed text, namely 'Drugstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "chemist"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=chocolate with a fixed text, namely 'Chocolate Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "chocolate"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=clothes with a fixed text, namely 'Clothing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "clothes"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=coffee with a fixed text, namely 'Coffee Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "coffee"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=collector with a fixed text, namely 'Collectibles Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "collector"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=computer with a fixed text, namely 'Computer Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "computer"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=confectionery with a fixed text, namely 'Candy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "confectionery"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=convenience with a fixed text, namely 'Convenience Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "convenience"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=copyshop with a fixed text, namely 'Copy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "copyshop"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=cosmetics with a fixed text, namely 'Cosmetics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "cosmetics"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=country_store with a fixed text, namely 'Rural Supplies Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "country_store"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=craft with a fixed text, namely 'Arts & Crafts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "craft"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=curtain with a fixed text, namely 'Curtain Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "curtain"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=dairy with a fixed text, namely 'Dairy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "dairy"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=deli with a fixed text, namely 'Delicatessen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "deli"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=department_store with a fixed text, namely 'Department Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "department_store"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=doityourself with a fixed text, namely 'DIY Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "doityourself"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=doors with a fixed text, namely 'Door Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "doors"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=dry_cleaning with a fixed text, namely 'Dry Cleaner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "dry_cleaning"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=e-cigarette with a fixed text, namely 'E-Cigarette Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "e-cigarette"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=electrical with a fixed text, namely 'Electrical Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "electrical"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=electronics with a fixed text, namely 'Electronics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "electronics"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=erotic with a fixed text, namely 'Erotic Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "erotic"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=fabric with a fixed text, namely 'Fabric Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "fabric"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=farm with a fixed text, namely 'Produce Stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "farm"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=fashion_accessories with a fixed text, namely 'Fashion Accessories Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "fashion_accessories"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=fireplace with a fixed text, namely 'Fireplace Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "fireplace"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=fishing with a fixed text, namely 'Fishing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "fishing"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=flooring with a fixed text, namely 'Flooring Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "flooring"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=florist with a fixed text, namely 'Florist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "florist"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=frame with a fixed text, namely 'Framing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "frame"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=frozen_food with a fixed text, namely 'Frozen Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "frozen_food"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=fuel with a fixed text, namely 'Fuel Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "fuel"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=funeral_directors with a fixed text, namely 'Funeral Home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "funeral_directors"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=furniture with a fixed text, namely 'Furniture Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "furniture"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=games with a fixed text, namely 'Tabletop Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "games"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=garden_centre with a fixed text, namely 'Garden Center' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "garden_centre"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=gas with a fixed text, namely 'Bottled Gas Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "gas"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=general with a fixed text, namely 'General Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "general"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=gift with a fixed text, namely 'Gift Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "gift"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=greengrocer with a fixed text, namely 'Greengrocer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "greengrocer"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=hairdresser with a fixed text, namely 'Hairdresser' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "hairdresser"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=hairdresser_supply with a fixed text, namely 'Hairdresser Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "hairdresser_supply"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=hardware with a fixed text, namely 'Hardware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "hardware"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=health_food with a fixed text, namely 'Health Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "health_food"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=hearing_aids with a fixed text, namely 'Hearing Aids Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "hearing_aids"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=herbalist with a fixed text, namely 'Herbalist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "herbalist"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=hifi with a fixed text, namely 'Hifi Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "hifi"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=honey with a fixed text, namely 'Honey Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "honey"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=household_linen with a fixed text, namely 'Household Linen Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "household_linen"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=houseware with a fixed text, namely 'Houseware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "houseware"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=hunting with a fixed text, namely 'Hunting Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "hunting"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=interior_decoration with a fixed text, namely 'Interior Decoration Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "interior_decoration"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=jewelry with a fixed text, namely 'Jewelry Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "jewelry"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=kiosk with a fixed text, namely 'Kiosk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "kiosk"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=kitchen with a fixed text, namely 'Kitchen Design Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "kitchen"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=laundry with a fixed text, namely 'Laundry' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "laundry"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=leather with a fixed text, namely 'Leather Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "leather"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=lighting with a fixed text, namely 'Lighting Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "lighting"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=locksmith with a fixed text, namely 'Locksmith' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "locksmith"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=lottery with a fixed text, namely 'Lottery Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "lottery"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=mall with a fixed text, namely 'Mall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "mall"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=massage with a fixed text, namely 'Massage Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "massage"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=medical_supply with a fixed text, namely 'Medical Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "medical_supply"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=military_surplus with a fixed text, namely 'Military Surplus Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "military_surplus"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=mobile_phone with a fixed text, namely 'Mobile Phone Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "mobile_phone"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=model with a fixed text, namely 'Model Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "model"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=money_lender with a fixed text, namely 'Money Lender' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "money_lender"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=motorcycle with a fixed text, namely 'Motorcycle Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "motorcycle"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=motorcycle_repair with a fixed text, namely 'Motorcycle Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "motorcycle_repair"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=music with a fixed text, namely 'Music Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "music"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=musical_instrument with a fixed text, namely 'Musical Instrument Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "musical_instrument"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=newsagent with a fixed text, namely 'Newsstand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "newsagent"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=nutrition_supplements with a fixed text, namely 'Nutrition Supplements Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "nutrition_supplements"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=nuts with a fixed text, namely 'Nuts Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "nuts"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=optician with a fixed text, namely 'Optician' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "optician"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=outdoor with a fixed text, namely 'Outdoors Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "outdoor"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=outpost with a fixed text, namely 'Online Retailer Outpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "outpost"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=paint with a fixed text, namely 'Paint Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "paint"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=party with a fixed text, namely 'Party Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "party"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pasta with a fixed text, namely 'Pasta Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pasta"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pastry with a fixed text, namely 'Pastry Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pastry"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pawnbroker with a fixed text, namely 'Pawnshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pawnbroker"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=perfumery with a fixed text, namely 'Perfume Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "perfumery"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pet with a fixed text, namely 'Pet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pet"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pet_grooming with a fixed text, namely 'Pet Groomer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pet_grooming"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=photo with a fixed text, namely 'Photography Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "photo"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pottery with a fixed text, namely 'Pottery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pottery"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=printer_ink with a fixed text, namely 'Printer Ink Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "printer_ink"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=psychic with a fixed text, namely 'Psychic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "psychic"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=pyrotechnics with a fixed text, namely 'Fireworks Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "pyrotechnics"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=radiotechnics with a fixed text, namely 'Radio/Electronic Component Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "radiotechnics"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=religion with a fixed text, namely 'Religious Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "religion"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=rental with a fixed text, namely 'Rental Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "rental"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=repair with a fixed text, namely 'Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "repair"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=rice with a fixed text, namely 'Rice Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "rice"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=scuba_diving with a fixed text, namely 'Scuba Diving Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "scuba_diving"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=seafood with a fixed text, namely 'Seafood Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "seafood"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=second_hand with a fixed text, namely 'Thrift Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "second_hand"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=sewing with a fixed text, namely 'Sewing Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "sewing"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=shoe_repair with a fixed text, namely 'Shoe Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "shoe_repair"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=shoes with a fixed text, namely 'Shoe Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "shoes"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=spices with a fixed text, namely 'Spice Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "spices"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=sports with a fixed text, namely 'Sporting Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "sports"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=stationery with a fixed text, namely 'Stationery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "stationery"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=storage_rental with a fixed text, namely 'Storage Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "storage_rental"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=supermarket with a fixed text, namely 'Supermarket' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "supermarket"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=swimming_pool with a fixed text, namely 'Pool Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "swimming_pool"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tailor with a fixed text, namely 'Tailor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tailor"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tattoo with a fixed text, namely 'Tattoo Parlor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tattoo"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tea with a fixed text, namely 'Tea Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tea"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=telecommunication with a fixed text, namely 'Telecom Retail Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "telecommunication"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=ticket with a fixed text, namely 'Ticket Seller' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "ticket"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tiles with a fixed text, namely 'Tile Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tiles"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tobacco with a fixed text, namely 'Tobacco Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tobacco"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tool_hire with a fixed text, namely 'Tool Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tool_hire"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=toys with a fixed text, namely 'Toy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "toys"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=trade with a fixed text, namely 'Trade Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "trade"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=travel_agency with a fixed text, namely 'Travel Agency' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "travel_agency"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=trophy with a fixed text, namely 'Trophy Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "trophy"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=tyres with a fixed text, namely 'Tire Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "tyres"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=vacuum_cleaner with a fixed text, namely 'Vacuum Cleaner Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "vacuum_cleaner"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=variety_store with a fixed text, namely 'Discount Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "variety_store"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=video with a fixed text, namely 'Video Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "video"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=video_games with a fixed text, namely 'Video Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "video_games"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=watches with a fixed text, namely 'Watches Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "watches"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=water with a fixed text, namely 'Drinking Water Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "water"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=water_sports with a fixed text, namely 'Watersport/Swim Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "water_sports"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=weapons with a fixed text, namely 'Weapon Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "weapons"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=wholesale with a fixed text, namely 'Wholesale Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "wholesale"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=wigs with a fixed text, namely 'Wig Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "wigs"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=window_blind with a fixed text, namely 'Window Blind Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "window_blind"
},
{
"key": "shop",
"description": "Layer 'Bike repair/shop' shows shop=wine with a fixed text, namely 'Wine Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if craft=)",
"value": "wine"
},
{
"key": "disused:shop",
"description": "Layer 'Bike repair/shop' shows disused:shop= with a fixed text, namely 'This shop is no longer used. It is vacant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') Picking this answer will delete the key disused:shop. (This is only shown if craft=)",
"value": ""
},
{
"key": "brand",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
@ -565,6 +1394,83 @@
"description": "Layer 'Bike repair/shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)",
"value": "no"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'rental' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=city_bike with a fixed text, namely 'Normal city bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "city_bike"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=ebike with a fixed text, namely 'Electrical bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "ebike"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=bmx with a fixed text, namely 'BMX bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "bmx"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=mtb with a fixed text, namely 'Mountainbikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "mtb"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=kid_bike with a fixed text, namely 'Bikes for children can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "kid_bike"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=tandem with a fixed text, namely 'Tandem bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "tandem"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=racebike with a fixed text, namely 'Race bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "racebike"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=bike_helmet with a fixed text, namely 'Bike helmets can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "bike_helmet"
},
{
"key": "rental",
"description": "Layer 'Bike repair/shop' shows rental=cargo_bike with a fixed text, namely 'Cargo bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))",
"value": "cargo_bike"
},
{
"key": "capacity:city_bike",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:city_bike' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*city_bike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "capacity:ebike",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:ebike' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*ebike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "capacity:kid_bike",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:kid_bike' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*kid_bike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "capacity:bmx",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:bmx' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*bmx.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "capacity:mtb",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:mtb' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*mtb.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "capacity:bicycle_pannier",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:bicycle_pannier' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*bicycle_pannier.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "capacity:tandem_bicycle",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:tandem_bicycle' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if rental~^(.*tandem_bicycle.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))"
},
{
"key": "service:bicycle:pump",
"description": "Layer 'Bike repair/shop' shows service:bicycle:pump=yes with a fixed text, namely 'This shop offers a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)",
@ -610,6 +1516,25 @@
"description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning=no with a fixed text, namely 'This shop doesn't offer bicycle cleaning' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)",
"value": "no"
},
{
"key": "service:bicycle:cleaning:charge",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)"
},
{
"key": "service:bicycle:cleaning:fee",
"description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning:fee=no with a fixed text, namely 'The cleaning service is free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
"value": "no"
},
{
"key": "service:bicycle:cleaning:fee",
"description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
"value": "yes"
},
{
"key": "service:bicycle:cleaning:charge",
"description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') Picking this answer will delete the key service:bicycle:cleaning:charge. (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
"value": ""
},
{
"key": "internet_access",
"description": "Layer 'Bike repair/shop' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",

View file

@ -31,6 +31,7 @@ Available languages:
- uk
- hu
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -14,6 +14,8 @@ This theme contains the following layers:
Available languages:
- en
- de
- zh_Hant
# Table of contents

View file

@ -36,6 +36,7 @@ Available languages:
- uk
- hu
- ko
- cy
# Table of contents

View file

@ -38,6 +38,7 @@ Available languages:
- fil
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -34,6 +34,7 @@ Available languages:
- zh_Hans
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -32,6 +32,7 @@ Available languages:
- pl
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -27,6 +27,7 @@ Available languages:
- pl
- ko
- zh_Hant
- cy
# Table of contents

View file

@ -35,6 +35,7 @@ Available languages:
- uk
- nl
- ko
- zh_Hant
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -30,6 +30,7 @@ Available languages:
- pl
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -32,6 +32,7 @@ Available languages:
- hu
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -24,6 +24,8 @@ Available languages:
- uk
- nl
- ko
- cy
- zh_Hant
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -31,6 +31,7 @@ Available languages:
- pl
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -29,6 +29,7 @@ Available languages:
- fr
- nl
- ko
- zh_Hant
# Table of contents

View file

@ -22,6 +22,7 @@ Available languages:
- uk
- nl
- ko
- zh_Hant
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -36,6 +36,7 @@ Available languages:
- hu
- uk
- ko
- cy
# Table of contents

View file

@ -31,6 +31,7 @@ Available languages:
- hu
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -25,6 +25,7 @@ Available languages:
- fr
- nl
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -34,6 +34,7 @@ Available languages:
- hu
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -28,6 +28,7 @@ Available languages:
- hu
- uk
- ko
- cy
# Table of contents

View file

@ -31,6 +31,7 @@ Available languages:
- hu
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -28,6 +28,7 @@ Available languages:
- ru
- uk
- ko
- cy
# Layers defined in this theme configuration file
These layers can not be reused in different themes.

View file

@ -40,7 +40,7 @@
{{service_item
|name= [https://mapcomplete.org/food food]
|region= Worldwide
|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:nb_NO|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}}, {{#language:ko|en}}, {{#language:zh_Hant|en}}
|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:nb_NO|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}}, {{#language:ko|en}}, {{#language:zh_Hant|en}}, {{#language:cy|en}}
|descr= A MapComplete theme: Restaurants and fast food
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png
@ -49,7 +49,7 @@
{{service_item
|name= [https://mapcomplete.org/cafes_and_pubs cafes_and_pubs]
|region= Worldwide
|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:pa_PK|en}}, {{#language:cs|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}}, {{#language:ko|en}}
|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:pa_PK|en}}, {{#language:cs|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}}, {{#language:ko|en}}, {{#language:cy|en}}
|descr= A MapComplete theme: Coffeehouses, pubs and bars
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png
@ -193,7 +193,7 @@
{{service_item
|name= [https://mapcomplete.org/architecture architecture]
|region= Worldwide
|lang= {{#language:en|en}}
|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:zh_Hant|en}}
|descr= A MapComplete theme: A map showing the archetectural style of buildings
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png
@ -211,7 +211,7 @@
{{service_item
|name= [https://mapcomplete.org/benches benches]
|region= Worldwide
|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:pt_BR|en}}, {{#language:hu|en}}, {{#language:id|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:zh_Hans|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:pt|en}}, {{#language:fil|en}}, {{#language:uk|en}}, {{#language:ko|en}}
|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:pt_BR|en}}, {{#language:hu|en}}, {{#language:id|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:zh_Hans|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:pt|en}}, {{#language:fil|en}}, {{#language:uk|en}}, {{#language:ko|en}}, {{#language:cy|en}}
|descr= A MapComplete theme: A map of benches
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png
@ -301,7 +301,7 @@
{{service_item
|name= [https://mapcomplete.org/disaster_response disaster_response]
|region= Worldwide
|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}}, {{#language:nl|en}}, {{#language:ko|en}}
|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}}, {{#language:nl|en}}, {{#language:ko|en}}, {{#language:zh_Hant|en}}
|descr= A MapComplete theme: This map contains elements meant for disaster preparedness and response
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png
@ -310,7 +310,7 @@
{{service_item
|name= [https://mapcomplete.org/education education]
|region= Worldwide
|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}}, {{#language:ko|en}}
|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}}, {{#language:ko|en}}, {{#language:zh_Hant|en}}
|descr= A MapComplete theme: On this map, you'll find information about all types of schools and education and can easily add more information
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png
@ -319,7 +319,7 @@
{{service_item
|name= [https://mapcomplete.org/elongated_coin elongated_coin]
|region= Worldwide
|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}}, {{#language:nl|en}}, {{#language:ko|en}}
|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}}, {{#language:nl|en}}, {{#language:ko|en}}, {{#language:zh_Hant|en}}
|descr= A MapComplete theme: Find penny presses to create your own elongated coins
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png

View file

@ -35,14 +35,17 @@ export interface SnappingOptions {
}
export default class SnappingFeatureSource
implements FeatureSource<Feature<Point, { "snapped-to": string; dist: number }>> {
implements FeatureSource<Feature<Point, { "snapped-to": string; dist: number }>>
{
public readonly features: Store<[Feature<Point, { "snapped-to": string; dist: number }>]>
/*Contains the id of the way it snapped to*/
public readonly snappedTo: Store<string>
private readonly _snappedTo: UIEventSource<string>
// private static readonly downloadedRelations: UIEventSource<Map<RelationId, OsmRelation>> = new UIEventSource(new Map())
private static readonly downloadedRelationMembers: UIEventSource<Feature[]> = new UIEventSource([])
private static readonly downloadedRelationMembers: UIEventSource<Feature[]> = new UIEventSource(
[]
)
constructor(
snapTo: FeatureSource,
@ -54,9 +57,11 @@ export default class SnappingFeatureSource
this.snappedTo = this._snappedTo
const simplifiedFeatures = snapTo.features
.mapD((features) =>
[].concat(...features
.filter((feature) => feature.geometry.type !== "Point")
.map((f) => GeoOperations.forceLineString(<any>f)))
[].concat(
...features
.filter((feature) => feature.geometry.type !== "Point")
.map((f) => GeoOperations.forceLineString(<any>f))
)
)
.map(
(features) => {
@ -67,10 +72,11 @@ export default class SnappingFeatureSource
[location]
)
this.features = location.mapD(
({ lon, lat }) => {
const features = simplifiedFeatures.data.concat(...SnappingFeatureSource.downloadedRelationMembers.data)
const features = simplifiedFeatures.data.concat(
...SnappingFeatureSource.downloadedRelationMembers.data
)
const loc: [number, number] = [lon, lat]
const maxDistance = (options?.maxDistance ?? 1000) / 1000
let bestSnap: Feature<Point, { "snapped-to": string; dist: number }> = undefined
@ -79,12 +85,15 @@ export default class SnappingFeatureSource
// TODO handle Polygons with holes
continue
}
const snapped: Feature<Point, {
dist: number;
index: number;
multiFeatureIndex: number;
location: number
}> = GeoOperations.nearestPoint(feature, loc)
const snapped: Feature<
Point,
{
dist: number
index: number
multiFeatureIndex: number
location: number
}
> = GeoOperations.nearestPoint(feature, loc)
if (snapped.properties.dist > maxDistance) {
continue
}
@ -104,7 +113,7 @@ export default class SnappingFeatureSource
}
bestSnap = {
...snapped,
properties: { ...snapped.properties, "snapped-to": id }
properties: { ...snapped.properties, "snapped-to": id },
}
}
}
@ -114,12 +123,12 @@ export default class SnappingFeatureSource
type: "Feature",
geometry: {
type: "Point",
coordinates: [lon, lat]
coordinates: [lon, lat],
},
properties: {
"snapped-to": undefined,
dist: -1
}
dist: -1,
},
}
}
const c = bestSnap.geometry.coordinates
@ -149,11 +158,15 @@ export default class SnappingFeatureSource
if (member.role !== "outer" && member.role !== "inner") {
continue
}
const way = await SnappingFeatureSource._downloader.DownloadObjectAsync(member.type + "/" + member.ref)
const way = await SnappingFeatureSource._downloader.DownloadObjectAsync(
member.type + "/" + member.ref
)
if (way === "deleted") {
continue
}
SnappingFeatureSource.downloadedRelationMembers.data.push(...GeoOperations.forceLineString(way.asGeoJson()))
SnappingFeatureSource.downloadedRelationMembers.data.push(
...GeoOperations.forceLineString(way.asGeoJson())
)
}
SnappingFeatureSource.downloadedRelationMembers.ping()
}

View file

@ -10,12 +10,12 @@ import {
MultiPolygon,
Point,
Polygon,
Position
Position,
} from "geojson"
import { Tiles } from "../Models/TileRange"
import { Utils } from "../Utils"
("use strict")
;("use strict")
export class GeoOperations {
private static readonly _earthRadius = 6378137
@ -29,7 +29,7 @@ export class GeoOperations {
"behind",
"sharp_left",
"left",
"slight_left"
"slight_left",
] as const
private static reverseBearing = {
N: 0,
@ -47,7 +47,7 @@ export class GeoOperations {
W: 270,
WNW: 292.5,
NW: 315,
NNW: 337.5
NNW: 337.5,
}
/**
@ -309,7 +309,7 @@ export class GeoOperations {
bufferSizeInMeter: number
): Feature<Polygon | MultiPolygon> | FeatureCollection<Polygon | MultiPolygon> {
return turf.buffer(feature, bufferSizeInMeter / 1000, {
units: "kilometers"
units: "kilometers",
})
}
@ -325,9 +325,9 @@ export class GeoOperations {
[lon0, lat],
[lon0, lat0],
[lon, lat0],
[lon, lat]
]
}
[lon, lat],
],
},
}
}
@ -373,25 +373,32 @@ export class GeoOperations {
type: "Feature",
geometry: {
type: "LineString",
coordinates: linestringCoors
coordinates: linestringCoors,
},
properties: way.properties
properties: way.properties,
}
})
}
if (way.geometry.type === "MultiPolygon") {
const mpoly: Feature<MultiPolygon> = <Feature<MultiPolygon>>way
return [].concat(...mpoly.geometry.coordinates.map(linestrings =>
[].concat(...linestrings.map(linestring =>
<Feature<LineString>>{
type: "Feature",
geometry: {
type: "LineString",
coordinates: linestring
},
properties: way.properties
}))))
return [].concat(
...mpoly.geometry.coordinates.map((linestrings) =>
[].concat(
...linestrings.map(
(linestring) =>
<Feature<LineString>>{
type: "Feature",
geometry: {
type: "LineString",
coordinates: linestring,
},
properties: way.properties,
}
)
)
)
)
}
if (way.geometry.type === "LineString") {
return [<Feature<LineString>>way]
@ -568,7 +575,7 @@ export class GeoOperations {
}
const properties = {
...f.properties,
id
id,
}
intersectionPart.properties = properties
newFeatures.push(intersectionPart)
@ -600,8 +607,8 @@ export class GeoOperations {
properties: {},
geometry: {
type: "Point",
coordinates: p
}
coordinates: p,
},
}
)
}
@ -617,7 +624,7 @@ export class GeoOperations {
trackPoints.push(trkpt)
}
const header =
"<gpx version=\"1.1\" creator=\"mapcomplete.org\" xmlns=\"http://www.topografix.com/GPX/1/1\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd\">"
'<gpx version="1.1" creator="mapcomplete.org" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">'
return (
header +
"\n<name>" +
@ -656,7 +663,7 @@ export class GeoOperations {
trackPoints.push(trkpt)
}
const header =
"<gpx version=\"1.1\" creator=\"mapcomplete.org\" xmlns=\"http://www.topografix.com/GPX/1/1\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd\">"
'<gpx version="1.1" creator="mapcomplete.org" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">'
return (
header +
"\n<name>" +
@ -682,7 +689,7 @@ export class GeoOperations {
const copy = {
...feature,
geometry: { ...feature.geometry }
geometry: { ...feature.geometry },
}
let coordinates: [number, number][]
if (feature.geometry.type === "LineString") {
@ -740,8 +747,8 @@ export class GeoOperations {
type: "Feature",
geometry: {
type: "LineString",
coordinates: [a, b]
}
coordinates: [a, b],
},
},
distanceMeter,
{ units: "meters" }
@ -788,8 +795,8 @@ export class GeoOperations {
type: "Feature",
geometry: {
type: "Polygon",
coordinates
}
coordinates,
},
}
)
return !polygons.some((polygon) => !booleanWithin(polygon, possiblyEnclosingFeature))
@ -868,8 +875,8 @@ export class GeoOperations {
type: "Feature",
properties: { ...toSplit.properties },
geometry: boundary.geometry,
bbox: boundary.bbox
}
bbox: boundary.bbox,
},
]
}
return []
@ -967,8 +974,8 @@ export class GeoOperations {
properties: p.properties,
geometry: {
type: "LineString",
coordinates: p.geometry.coordinates[0]
}
coordinates: p.geometry.coordinates[0],
},
}
}
@ -996,7 +1003,7 @@ export class GeoOperations {
console.debug("Splitting way", feature.properties.id)
result.push(<Feature>{
...feature,
geometry: { ...feature.geometry, coordinates: coors.slice(i + 1) }
geometry: { ...feature.geometry, coordinates: coors.slice(i + 1) },
})
coors = coors.slice(0, i + 1)
break
@ -1005,7 +1012,7 @@ export class GeoOperations {
}
result.push(<Feature>{
...feature,
geometry: { ...feature.geometry, coordinates: coors }
geometry: { ...feature.geometry, coordinates: coors },
})
}
}
@ -1179,8 +1186,8 @@ export class GeoOperations {
properties: multiLineStringFeature.properties,
geometry: {
type: "LineString",
coordinates: coors[0]
}
coordinates: coors[0],
},
}
}
return {
@ -1188,8 +1195,8 @@ export class GeoOperations {
properties: multiLineStringFeature.properties,
geometry: {
type: "MultiLineString",
coordinates: coors
}
coordinates: coors,
},
}
}
@ -1342,7 +1349,7 @@ export class GeoOperations {
const intersection = turf.intersect(
turf.featureCollection([
turf.truncate(feature),
turf.truncate(otherFeature)
turf.truncate(otherFeature),
])
)
if (intersection == null) {

View file

@ -160,8 +160,8 @@ export default class FeatureReviews {
private readonly _testmode: Store<boolean>
public readonly loadingAllowed: UIEventSource<boolean | null>
private readonly _options: Readonly<{
nameKey?: "name" | string;
fallbackName?: string;
nameKey?: "name" | string
fallbackName?: string
uncertaintyRadius?: number
}>
@ -300,15 +300,21 @@ export default class FeatureReviews {
},
state?: SpecialVisualizationState
): FeatureReviews {
const key = feature.properties.id + ";" + (options?.nameKey ?? "") + ";" + (options?.fallbackName ?? "")
const key =
feature.properties.id +
";" +
(options?.nameKey ?? "") +
";" +
(options?.fallbackName ?? "")
const cached = FeatureReviews._featureReviewsCache[key]
if (cached !== undefined) {
return cached
}
const themeIsSensitive = state?.theme?.enableMorePrivacy ?? false
const settings = state?.osmConnection?.getPreference<"always" | "yes" | "ask" | "hidden">(
"reviews-allowed"
) ?? new ImmutableStore("yes");
const settings =
state?.osmConnection?.getPreference<"always" | "yes" | "ask" | "hidden">(
"reviews-allowed"
) ?? new ImmutableStore("yes")
const loadingAllowed = new UIEventSource(false)
settings.addCallbackAndRun((s) => {
if (s === "hidden") {

View file

@ -163,7 +163,7 @@
<Tr cls="subtle mt-4" t={t.tos} />
{/if}
{#if $debug || $test}
<span class="self-end subtle">{$subject}</span>
<span class="subtle self-end">{$subject}</span>
{/if}
</div>
{/if}

View file

@ -1 +1 @@
{"properties":{"name":"Bing Maps Aerial","id":"Bing","url":"https://ecn.t1.tiles.virtualearth.net/tiles/a{quadkey}.jpeg?g=15059&pr=odbl&n=f","type":"bing","category":"photo","min_zoom":1,"max_zoom":22},"type":"Feature","geometry":null}
{"properties":{"name":"Bing Maps Aerial","id":"Bing","url":"https://ecn.t3.tiles.virtualearth.net/tiles/a{quadkey}.jpeg?g=15063&pr=odbl&n=f","type":"bing","category":"photo","min_zoom":1,"max_zoom":22},"type":"Feature","geometry":null}

View file

@ -1,7 +1,7 @@
{
"contributors": [
{
"commits": 9299,
"commits": 9310,
"contributor": "Pieter Vander Vennet"
},
{

View file

@ -1,5 +1,6 @@
{
"ca": "català",
"cy": "Cymraeg",
"da": "dansk",
"de": "Deutsch",
"en": "English",

File diff suppressed because it is too large Load diff