diff --git a/Docs/BuiltinIndex.md b/Docs/BuiltinIndex.md index a3282e97c..fee5c351a 100644 --- a/Docs/BuiltinIndex.md +++ b/Docs/BuiltinIndex.md @@ -80,6 +80,7 @@ - lighthouse - love_hotel - map + - mobility_hub - mountain_rescue - nature_reserve - observation_tower @@ -213,6 +214,7 @@ - food_courts - governments - hackerspace + - mobility_hub - nature_reserve - observation_tower - outdoor_seating diff --git a/Docs/ELI-overview.md b/Docs/ELI-overview.md index 63fe7f7e6..52850c2d9 100644 --- a/Docs/ELI-overview.md +++ b/Docs/ELI-overview.md @@ -27,7 +27,6 @@ This table gives a summary of ids, names and other metainformation. [See the onl | TW_NLSC_WMS_LANDSECT | Taiwan Land-Section Data | other | | © National Land Surveying and Mapping Center, Taiwan OGDL 1.0 | | TW_NLSC_WMS_Village | Taiwan Village Boundaries | other | | © National Land Surveying and Mapping Center, Taiwan OGDL 1.0 | | AL_DPGJC_ASIG_SistemiAdresave | Address System Albania (ASIG) | map | | | -| openlabs-geoportal-tirana | Municipality of Tirana (Open Labs GeoPortal) | map | | Data provided by the Muncipality of Tirana hosted by Open Labs | | bev-inspire-orthofoto | BEV INSPIRE Orthofoto | photo | | Bundesamt für Eich- und Vermessungswesen | | basemap.at | basemap.at | map | | basemap.at | | basemap.at-orthofoto | basemap.at Orthofoto | photo | ⭐ | basemap.at | @@ -705,7 +704,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl | Kansas_NG911_2018 | Kansas NG911 Orthoimagery (2018) | historicphoto | | Kansas 911 Coordinating Council | | Kansas_NG911_2021 | Kansas NG911 Orthoimagery (2021) | photo | ⭐ | Kansas 911 Coordinating Council | | KYAPED_Phase_1 | KyFromAbove Aerial Imagery (2012-2014) | historicphoto | | KyFromAbove | -| KYAPED_Phase_2 | KyFromAbove Aerial Imagery (2018-2022) | photo | | KyFromAbove | +| KYAPED_Phase_2 | KyFromAbove Aerial Imagery (2018-2022) | historicphoto | | KyFromAbove | +| KYAPED_Phase_3 | KyFromAbove Aerial Imagery (2022-2024) | photo | ⭐ | KyFromAbove | | MassGIS-LIDAR-Shaded-Relief | MassGIS LIDAR Shaded Relief | elevation | | MassGIS | | MassGIS-LIDAR-Slope | MassGIS LIDAR Slope | elevation | | MassGIS | | MassGIS_2021_Aerial | MassGIS 2021 Aerial Imagery | photo | | MassGIS | @@ -811,9 +811,9 @@ This table gives a summary of ids, names and other metainformation. [See the onl | RIGIS_Aerial_Photo_23s | Rhode Island Aerial Photo (Spring 2023) | historicphoto | | RIGIS | | RIGIS_Aerial_Photo_24s | Rhode Island Aerial Photo (Spring 2024) | photo | | RIGIS | | TNMap_Orthoimagery_Latest | TNMap Orthoimagery Latest | photo | | Tennessee Imagery Program | -| brazos_county_2019_wms | TX: Brazos County Imagery 2019 | photo | ⭐ | Strategic Mapping Program (StratMap). Brazos County Imagery, 2019-01-29 | +| brazos_county_2019_wms | StratMap Brazos County Imagery (2019) | photo | ⭐ | Strategic Mapping Program (StratMap). Brazos County Imagery, 2019-01-29 | | capcog_2022 | CAPCOG Imagery (2022) | photo | | Strategic Mapping Program (StratMap). CAPCOG Imagery, 2022-01-22 | -| caparea_2019_wms | TX: CapArea Imagery 2019 | historicphoto | | Strategic Mapping Program (StratMap). CapArea Imagery, 2019-01-29 | +| caparea_2019_wms | StratMap CapArea Imagery (2019) | historicphoto | | Strategic Mapping Program (StratMap). CapArea Imagery, 2019-01-29 | | amarillo_2016_wms | TX: City of Amarillo Imagery 2015 | photo | | Strategic Mapping Program (StratMap). City of Amarillo Imagery, 2015-03-13 | | el_paso_2015_wms | TX: City of El Paso Imagery 2015 | photo | | Strategic Mapping Program (StratMap). City of El Paso Imagery, 2015-10-25 | | georgetown_2016_wms | TX: City of Georgetown Imagery 2015 | photo | | Texas Natural Resources Information System (TNRIS). City of Georgetown Imagery, 2015-03-06 | diff --git a/Docs/Layers/mobility_hub.md b/Docs/Layers/mobility_hub.md new file mode 100644 index 000000000..55e08c997 --- /dev/null +++ b/Docs/Layers/mobility_hub.md @@ -0,0 +1,126 @@ +[//]: # (WARNING: this file is automatically generated. Please find the sources at the bottom and edit those sources) + +# mobility_hub + +Mobility hubs are places where different kinds of transit meet, making it easy to switch between them. These places are usually part of a larger network or system. + + - This layer is shown at zoomlevel **8** and higher + +## Table of contents + +1. [Themes using this layer](#themes-using-this-layer) +2. [Presets](#presets) +3. [Basic tags for this layer](#basic-tags-for-this-layer) +4. [Supported attributes](#supported-attributes) +5. [Featureview elements and TagRenderings](#featureview-elements-and-tagrenderings) + - [images](#images) + - [name](#name) + - [network](#network) + - [website](#website) + - [physical_marker](#physical_marker) + - [leftover-questions](#leftover-questions) + - [move-button](#move-button) + - [lod](#lod) + +## Themes using this layer + + - [personal](https://mapcomplete.org/personal) + - [transit](https://mapcomplete.org/transit) + +## Presets + +The following options to create new points are included: + + - **a mobility hub** which has the following tags:amenity=mobility_hub & tourism=information + +## Basic tags for this layer + +Elements must match the expression **amenity=mobility_hub** + +[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22mobility_hub%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B) + +## Supported attributes + +**Warning:**: this quick overview is incomplete + +| attribute | type | values which are supported by this layer | +-----|-----|----- | +| [name](https://wiki.openstreetmap.org/wiki/Key:name) | [string](../SpecialInputElements.md#string) | | +| [network](https://wiki.openstreetmap.org/wiki/Key:network) | [string](../SpecialInputElements.md#string) | [Groningen-Drenthe](https://wiki.openstreetmap.org/wiki/Tag:network%3DGroningen-Drenthe) [Hoppin](https://wiki.openstreetmap.org/wiki/Tag:network%3DHoppin) [Jelbi](https://wiki.openstreetmap.org/wiki/Tag:network%3DJelbi) | +| [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | | +| [tourism](https://wiki.openstreetmap.org/wiki/Key:tourism) | Multiple choice | [information](https://wiki.openstreetmap.org/wiki/Tag:tourism%3Dinformation) [information](https://wiki.openstreetmap.org/wiki/Tag:tourism%3Dinformation) [information](https://wiki.openstreetmap.org/wiki/Tag:tourism%3Dinformation) | + +## Featureview elements and TagRenderings + +| id | question | labels | freeform key | +-----|-----|-----|----- | +| [images](#images)
_(Original in [questions](./BuiltinQuestions.md#images))_ | _{image_carousel()}{image_upload()}_ | | _Multiple choice only_ | +| [name](#name) | What is the name of this mobility hub?
_This mobility hub is called {name}_ | | *[name](https://wiki.osm.org/wiki/Key:name)* ([string](../SpecialInputElements.md#string)) | +| [network](#network) | To which network does this mobility hub belong to?
_This mobility hub belongs to the network {network}_
3 options | | *[network](https://wiki.osm.org/wiki/Key:network)* ([string](../SpecialInputElements.md#string)) | +| [website](#website)
_(Original in [questions](./BuiltinQuestions.md#website))_ | What is the website of ?
_{website}_
1 options | contact | *[website](https://wiki.osm.org/wiki/Key:website)* ([url](../SpecialInputElements.md#url)) | +| [physical_marker](#physical_marker) | What kind of physical marker is used to mark this mobility hub?
3 options | | _Multiple choice only_ | +| [leftover-questions](#leftover-questions) | _{questions( ,hidden)}_ | ignore-docs, added_by_default | _Multiple choice only_ | +| [move-button](#move-button) | _{move_button()}_ | | _Multiple choice only_ | +| [lod](#lod)
_(Original in [questions](./BuiltinQuestions.md#lod))_ | _{linked_data_from_website()}_ | added_by_default | _Multiple choice only_ | + +### images +This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images +_This tagrendering has no question and is thus read-only_ +*{image_carousel()}{image_upload()}* + +### name + +The question is `What is the name of this mobility hub?` +*This mobility hub is called {name}* is shown if `name` is set + +### network + +The question is `To which network does this mobility hub belong to?` +*This mobility hub belongs to the network {network}* is shown if `network` is set + + - *This mobility hub belongs to the Groningen-Drenthe network* is shown if with network=Groningen-Drenthe + - *This mobility hub belongs to the Hoppin network* is shown if with network=Hoppin + - *This mobility hub belongs to the Jelbi network* is shown if with network=Jelbi + +### website + +The question is `What is the website of {title()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* is shown if with contact:website~.+. _This option cannot be chosen as answer_ + +This tagrendering has labels +`contact` + +### physical_marker + +The question is `What kind of physical marker is used to mark this mobility hub?` + + - *This mobility hub is marked by a board, containing information about the hub* is shown if with tourism=information & information=board + - *This mobility hub is marked by a sign with an electronic display* is shown if with tourism=information & information=terminal + - *This mobility hub is marked by a simple sign showing only basic information like the logo or name* is shown if with tourism=information & information=sign + +### leftover-questions + +_This tagrendering has no question and is thus read-only_ +*{questions( ,hidden)}* + +This tagrendering has labels +`ignore-docs` +`added_by_default` + +### move-button + +_This tagrendering has no question and is thus read-only_ +*{move_button()}* + +### lod + +_This tagrendering has no question and is thus read-only_ +*{linked_data_from_website()}* + +This tagrendering has labels +`added_by_default` + + +This document is autogenerated from [assets/layers/mobility_hub/mobility_hub.json](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/assets/layers/mobility_hub/mobility_hub.json) diff --git a/Docs/SpecialRenderings.md b/Docs/SpecialRenderings.md index 741fa6dcf..0382baabd 100644 --- a/Docs/SpecialRenderings.md +++ b/Docs/SpecialRenderings.md @@ -1086,7 +1086,7 @@ The special element which shows the questions which are unkown. Added by default ### statistics -Show general statistics about the elements currently in view. Intended to use on the `current_view`-layer +Show general statistics about all the elements currently in view. Intended to use on the `current_view`-layer. They will be split per layer #### Example usage of statistics diff --git a/Docs/TagInfo/mapcomplete_transit.json b/Docs/TagInfo/mapcomplete_transit.json index 9c831c665..640e86b63 100644 --- a/Docs/TagInfo/mapcomplete_transit.json +++ b/Docs/TagInfo/mapcomplete_transit.json @@ -10,6 +10,136 @@ "contact_email": "info@mapcomplete.org" }, "tags": [ + { + "key": "amenity", + "value": "mobility_hub", + "description": "Features with this tag are displayed by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "id", + "description": "id~.+ is displayed as \"You just created this element! Thanks for sharing this info with the world and helping people worldwide.\" by layers Mobility Hubs, Transit Stops, Bus lines, Bike parking, Parking, Shelter", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#just_created", + "icon_url": "./assets/svg/party.svg" + }, + { + "key": "image", + "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Mobility Hubs, Transit Stops, Bike parking, Parking, Shelter", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#images", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "panoramax", + "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Mobility Hubs, Transit Stops, Bike parking, Parking, Shelter", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#images", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "mapillary", + "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Mobility Hubs, Transit Stops, Bike parking, Parking, Shelter", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#images", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "wikidata", + "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Mobility Hubs, Transit Stops, Bike parking, Parking, Shelter", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#images", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "wikipedia", + "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Mobility Hubs, Transit Stops, Bike parking, Parking, Shelter", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#images", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "name", + "description": "Values of `name` are shown with \"This mobility hub is called {name}\" and can be updated. The question is \"What is the name of this mobility hub?\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#name", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "network", + "description": "Values of `network` are shown with \"This mobility hub belongs to the network {network}\" and can be updated. The question is \"To which network does this mobility hub belong to?\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#network", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "network", + "value": "Groningen-Drenthe", + "description": "network=Groningen-Drenthe is displayed as \"This mobility hub belongs to the Groningen-Drenthe network\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#network", + "icon_url": "./assets/layers/mobility_hub/hub-gd.svg" + }, + { + "key": "network", + "value": "Hoppin", + "description": "network=Hoppin is displayed as \"This mobility hub belongs to the Hoppin network\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#network", + "icon_url": "./assets/layers/mobility_hub/logo-hoppin.svg" + }, + { + "key": "network", + "value": "Jelbi", + "description": "network=Jelbi is displayed as \"This mobility hub belongs to the Jelbi network\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#network", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "website", + "description": "Values of `website` are shown with \"{website}\" and can be updated. The question is \"What is the website of {title()}?\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#website", + "icon_url": "./assets/layers/icons/website.svg" + }, + { + "key": "contact:website", + "description": "contact:website~.+ is displayed as \"{contact:website}\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#website", + "icon_url": "./assets/layers/icons/website.svg" + }, + { + "key": "tourism", + "value": "information", + "description": "tourism=information & information=board is displayed as \"This mobility hub is marked by a board, containing information about the hub\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#physical_marker", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "information", + "value": "board", + "description": "tourism=information & information=board is displayed as \"This mobility hub is marked by a board, containing information about the hub\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#physical_marker", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "tourism", + "value": "information", + "description": "tourism=information & information=terminal is displayed as \"This mobility hub is marked by a sign with an electronic display\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#physical_marker", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "information", + "value": "terminal", + "description": "tourism=information & information=terminal is displayed as \"This mobility hub is marked by a sign with an electronic display\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#physical_marker", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "tourism", + "value": "information", + "description": "tourism=information & information=sign is displayed as \"This mobility hub is marked by a simple sign showing only basic information like the logo or name\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#physical_marker", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, + { + "key": "information", + "value": "sign", + "description": "tourism=information & information=sign is displayed as \"This mobility hub is marked by a simple sign showing only basic information like the logo or name\" by layer Mobility Hubs", + "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/mobility_hub.md#physical_marker", + "icon_url": "./assets/layers/mobility_hub/hub.svg" + }, { "key": "highway", "value": "bus_stop", @@ -17,12 +147,6 @@ "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md", "icon_url": "./assets/layers/transit_stops/bus_stop.svg" }, - { - "key": "id", - "description": "id~.+ is displayed as \"You just created this element! Thanks for sharing this info with the world and helping people worldwide.\" by layers Transit Stops, Bus lines, Bike parking, Parking, Shelter", - "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#just_created", - "icon_url": "./assets/svg/party.svg" - }, { "key": "name", "description": "Values of `name` are shown with \"This stop is called {name}\" and can be updated. The question is \"What is the name of this stop?\" by layer Transit Stops", @@ -42,36 +166,6 @@ "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#stop_name", "icon_url": "./assets/layers/transit_stops/bus_stop.svg" }, - { - "key": "image", - "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Transit Stops, Bike parking, Parking, Shelter", - "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#images", - "icon_url": "./assets/layers/transit_stops/bus_stop.svg" - }, - { - "key": "panoramax", - "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Transit Stops, Bike parking, Parking, Shelter", - "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#images", - "icon_url": "./assets/layers/transit_stops/bus_stop.svg" - }, - { - "key": "mapillary", - "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Transit Stops, Bike parking, Parking, Shelter", - "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#images", - "icon_url": "./assets/layers/transit_stops/bus_stop.svg" - }, - { - "key": "wikidata", - "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Transit Stops, Bike parking, Parking, Shelter", - "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#images", - "icon_url": "./assets/layers/transit_stops/bus_stop.svg" - }, - { - "key": "wikipedia", - "description": "Images are displayed based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary by layers Transit Stops, Bike parking, Parking, Shelter", - "doc_url": "https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Layers/transit_stops.md#images", - "icon_url": "./assets/layers/transit_stops/bus_stop.svg" - }, { "key": "shelter", "value": "yes", diff --git a/Docs/Themes/personal.md b/Docs/Themes/personal.md index 287f7cde1..b96a1a2b2 100644 --- a/Docs/Themes/personal.md +++ b/Docs/Themes/personal.md @@ -91,6 +91,7 @@ This theme contains the following layers: - [maproulette_challenge](../Layers/maproulette_challenge.md) - [maxspeed](../Layers/maxspeed.md) - [memorial](../Layers/memorial.md) + - [mobility_hub](../Layers/mobility_hub.md) - [mountain_rescue](../Layers/mountain_rescue.md) - [nature_reserve](../Layers/nature_reserve.md) - [note](../Layers/note.md) diff --git a/Docs/Themes/transit.md b/Docs/Themes/transit.md index 605ecd525..39fcedd99 100644 --- a/Docs/Themes/transit.md +++ b/Docs/Themes/transit.md @@ -8,6 +8,7 @@ The theme introduction reads: This theme contains the following layers: + - [mobility_hub](../Layers/mobility_hub.md) - [transit_stops](../Layers/transit_stops.md) - [transit_routes](../Layers/transit_routes.md) - [bike_parking](../Layers/bike_parking.md) diff --git a/Docs/URL_Parameters.md b/Docs/URL_Parameters.md index a9ace5812..907d7af13 100644 --- a/Docs/URL_Parameters.md +++ b/Docs/URL_Parameters.md @@ -419,7 +419,7 @@ The default value is _false_ The mode the application starts in, e.g. 'map', 'dashboard' or 'statistics' -This documentation is defined in the source code at [generateDocs.ts](ervdvn/git2/MapComplete/scripts/generateDocs.ts#L449) +This documentation is defined in the source code at [generateDocs.ts](ervdvn/git2/MapComplete/scripts/generateDocs.ts#L451) The default value is _map_ diff --git a/langs/layers/en.json b/langs/layers/en.json index 44928395e..7503f57a2 100644 --- a/langs/layers/en.json +++ b/langs/layers/en.json @@ -7542,6 +7542,65 @@ "render": "Memorial plaque" } }, + "mobility_hub": { + "description": "Mobility hubs are places where different kinds of transit meet, making it easy to switch between them. These places are usually part of a larger network or system.", + "name": "Mobility Hubs", + "presets": { + "0": { + "description": "A mobility hub which is marked by a physical sign, usually with a logo.", + "title": "a mobility hub" + } + }, + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Name of the mobility hub" + }, + "question": "What is the name of this mobility hub?", + "render": "This mobility hub is called {name}" + }, + "network": { + "freeform": { + "placeholder": "Network for this mobility hub" + }, + "mappings": { + "0": { + "then": "This mobility hub belongs to the Groningen-Drenthe network" + }, + "1": { + "then": "This mobility hub belongs to the Hoppin network" + }, + "2": { + "then": "This mobility hub belongs to the Jelbi network" + } + }, + "question": "To which network does this mobility hub belong to?", + "render": "This mobility hub belongs to the network {network}" + }, + "physical_marker": { + "mappings": { + "0": { + "then": "This mobility hub is marked by a board, containing information about the hub" + }, + "1": { + "then": "This mobility hub is marked by a sign with an electronic display" + }, + "2": { + "then": "This mobility hub is marked by a simple sign showing only basic information like the logo or name" + } + }, + "question": "What kind of physical marker is used to mark this mobility hub?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Mobility hub {name}" + } + }, + "render": "Mobility hub" + } + }, "mountain_rescue": { "description": "A building where first aid responders store material and might be on watch", "name": "Mountain rescue stations", diff --git a/langs/layers/nl.json b/langs/layers/nl.json index 37e439ce6..0bb510456 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -6566,6 +6566,65 @@ } } }, + "mobility_hub": { + "description": "Mobiliteitshubs zijn plaatsen waar verschillende soorten vervoer bij elkaar komen, waardoor het makkelijk is om te wisselen van vervoer. Deze plaatsen maken meestal deel uit van een groter netwerk of systeem.", + "name": "Mobiliteitshubs", + "presets": { + "0": { + "description": "Een mobiliteitshub die gemarkeerd is door een fysiek bord, meestal met een logo.", + "title": "een mobiliteitshub" + } + }, + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Naam van de mobiliteitshub" + }, + "question": "Wat is de naam van deze mobiliteitshub?", + "render": "Deze mobiliteitshub heet {name}" + }, + "network": { + "freeform": { + "placeholder": "Netwerk van deze mobiliteitshub" + }, + "mappings": { + "0": { + "then": "Deze mobiliteitshub hoort bij het netwerk Groningen-Drenthe" + }, + "1": { + "then": "Deze mobiliteitshub hoort bij het Hoppin netwerk" + }, + "2": { + "then": "Deze mobiliteitshub hoort bij het Jelbi netwerk" + } + }, + "question": "Bij welk netwerk hoort deze mobiliteitshub?", + "render": "Deze mobiliteitshub hoort bij het netwerk {network}" + }, + "physical_marker": { + "mappings": { + "0": { + "then": "Deze mobiliteitshub is gemarkeerd door een bord, met informatie over de hub" + }, + "1": { + "then": "Deze mobiliteitshub is gemarkeerd door een bord met een elektronisch display" + }, + "2": { + "then": "Deze mobiliteitshub is gemarkeerd door een eenvoudig bord met alleen simpele informatie zoals het logo of de naam" + } + }, + "question": "Wat voor fysieke markering is er voor deze mobiliteitshub?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Mobiliteitshub {name}" + } + }, + "render": "Mobiliteitshub" + } + }, "nature_reserve": { "description": "Een natuurgebied is een gebied waar actief ruimte gemaakt word voor de natuur. Typisch zijn deze in beheer van Natuurpunt of het Agentschap Natuur en Bos of zijn deze erkend door de overheid.", "filter": { diff --git a/src/Logic/Actors/GeoLocationHandler.ts b/src/Logic/Actors/GeoLocationHandler.ts index fc3c6781f..928dc33d9 100644 --- a/src/Logic/Actors/GeoLocationHandler.ts +++ b/src/Logic/Actors/GeoLocationHandler.ts @@ -13,7 +13,6 @@ import StaticFeatureSource, { } from "../FeatureSource/Sources/StaticFeatureSource" import { MapProperties } from "../../Models/MapProperties" import { Orientation } from "../../Sensors/Orientation" - ;("use strict") /** * The geolocation-handler takes a map-location and a geolocation state. diff --git a/src/Logic/GeoOperations.ts b/src/Logic/GeoOperations.ts index 854b57fb2..c59235dc1 100644 --- a/src/Logic/GeoOperations.ts +++ b/src/Logic/GeoOperations.ts @@ -14,7 +14,6 @@ import { } from "geojson" import { Tiles } from "../Models/TileRange" import { Utils } from "../Utils" - ;("use strict") export class GeoOperations { diff --git a/src/Logic/Osm/Overpass.ts b/src/Logic/Osm/Overpass.ts index a0f5b39de..0dceed532 100644 --- a/src/Logic/Osm/Overpass.ts +++ b/src/Logic/Osm/Overpass.ts @@ -5,7 +5,6 @@ import { BBox } from "../BBox" import osmtogeojson from "osmtogeojson" import { FeatureCollection, Geometry } from "geojson" import { OsmTags } from "../../Models/OsmFeature" - ;("use strict") /** * Interfaces overpass to get all the latest data diff --git a/src/UI/History/AggregateView.svelte b/src/UI/History/AggregateView.svelte index c4b8bb8ec..712dc1e30 100644 --- a/src/UI/History/AggregateView.svelte +++ b/src/UI/History/AggregateView.svelte @@ -32,7 +32,9 @@ }[] > = allHistories.mapD((histories) => HistoryUtils.fullHistoryDiff(histories, usernames)) - const trs = shared_questions.tagRenderings.map((tr) => new TagRenderingConfig(tr)) + const trs = shared_questions.tagRenderings.map( + (tr) => new TagRenderingConfig(tr) + ) function detectQuestion(key: string): TagRenderingConfig { return trs.find((tr) => tr.freeform?.key === key) @@ -69,7 +71,7 @@ keyCounts.forEach((values: Map, key: string) => { const keyTotal: { value: string; features: Feature[] }[] = [] values.forEach((count, value) => { - keyTotal.push({ value, features: count.map(step => step.asGeoJson()) }) + keyTotal.push({ value, features: count.map((step) => step.asGeoJson()) }) }) let countForKey: Feature[] = [] for (const { features } of keyTotal) { @@ -78,10 +80,14 @@ keyTotal.sort((a, b) => b.features.length - a.features.length) const tr = detectQuestion(key) perKey.push({ - count: countForKey.length, tr, key, values: keyTotal.map(({ value, features }) => ({ + count: countForKey.length, + tr, + key, + values: keyTotal.map(({ value, features }) => ({ value, - count: features.length - })), features: countForKey + count: features.length, + })), + features: countForKey, }) }) perKey.sort((a, b) => b.count - a.count) @@ -118,14 +124,13 @@ {/each} {#if diff.tr} -
- +
{:else} diff --git a/src/UI/History/HistoryUtils.ts b/src/UI/History/HistoryUtils.ts index 9816b9e4b..c070de00c 100644 --- a/src/UI/History/HistoryUtils.ts +++ b/src/UI/History/HistoryUtils.ts @@ -44,37 +44,37 @@ export class HistoryUtils { .filter((ch) => ch.oldValue !== ch.value) } - public static fullHistoryDiff(histories: OsmObject[][], onlyShowUsername?: Set): { - key: string; - value?: string; - oldValue?: string; + public static fullHistoryDiff( + histories: OsmObject[][], + onlyShowUsername?: Set + ): { + key: string + value?: string + oldValue?: string step: OsmObject }[] { - const allDiffs: { - key: string; - value?: string; - oldValue?: string; + key: string + value?: string + oldValue?: string step: OsmObject }[] = [] for (const history of histories) { const filtered = history.filter( (step) => - !onlyShowUsername || - onlyShowUsername?.has(step.tags["_last_edit:contributor"]) + !onlyShowUsername || onlyShowUsername?.has(step.tags["_last_edit:contributor"]) ) for (const step of filtered) { const diff: { - key: string; - value?: string; - oldValue?: string; + key: string + value?: string + oldValue?: string step: OsmObject }[] = HistoryUtils.tagHistoryDiff(step, history) allDiffs.push(...diff) } } - return allDiffs } } diff --git a/src/UI/InspectorGUI.svelte b/src/UI/InspectorGUI.svelte index 6b292a473..978c87dd8 100644 --- a/src/UI/InspectorGUI.svelte +++ b/src/UI/InspectorGUI.svelte @@ -71,7 +71,6 @@ } }) - let state = { mapProperties: maplibremap, searchState: { @@ -175,10 +174,9 @@ } map.data.flyTo({ zoom: 14, - center: [suggestion.lon, suggestion.lat] + center: [suggestion.lon, suggestion.lat], }) } -
diff --git a/src/UI/Search/SearchResults.svelte b/src/UI/Search/SearchResults.svelte index 29fd8408c..2dc074b11 100644 --- a/src/UI/Search/SearchResults.svelte +++ b/src/UI/Search/SearchResults.svelte @@ -55,9 +55,12 @@ {#if $allowFilters} {/if} - { - state.searchState.applyGeocodeResult(select.detail) - }}> + { + state.searchState.applyGeocodeResult(select.detail) + }} + > {#if $recentlySeen?.length > 0} diff --git a/src/UI/SpecialVisualizations.ts b/src/UI/SpecialVisualizations.ts index 439c3e03f..8d7f39307 100644 --- a/src/UI/SpecialVisualizations.ts +++ b/src/UI/SpecialVisualizations.ts @@ -1,7 +1,11 @@ import { FixedUiElement } from "./Base/FixedUiElement" import BaseUIElement from "./BaseUIElement" import { default as FeatureTitle } from "./Popup/Title.svelte" -import { RenderingSpecification, SpecialVisualization, SpecialVisualizationState } from "./SpecialVisualization" +import { + RenderingSpecification, + SpecialVisualization, + SpecialVisualizationState, +} from "./SpecialVisualization" import { HistogramViz } from "./Popup/HistogramViz" import { UploadToOsmViz } from "./Popup/UploadToOsmViz" import { MultiApplyViz } from "./Popup/MultiApplyViz" @@ -36,11 +40,8 @@ import { UISpecialVisualisations } from "./SpecialVisualisations/UISpecialVisual import { SettingsVisualisations } from "./SpecialVisualisations/SettingsVisualisations" import { ReviewSpecialVisualisations } from "./SpecialVisualisations/ReviewSpecialVisualisations" import { DataImportSpecialVisualisations } from "./SpecialVisualisations/DataImportSpecialVisualisations" -import TagrenderingManipulationSpecialVisualisations - from "./SpecialVisualisations/TagrenderingManipulationSpecialVisualisations" -import { - WebAndCommunicationSpecialVisualisations -} from "./SpecialVisualisations/WebAndCommunicationSpecialVisualisations" +import TagrenderingManipulationSpecialVisualisations from "./SpecialVisualisations/TagrenderingManipulationSpecialVisualisations" +import { WebAndCommunicationSpecialVisualisations } from "./SpecialVisualisations/WebAndCommunicationSpecialVisualisations" import ClearGPSHistory from "./BigComponents/ClearGPSHistory.svelte" import AllFeaturesStatistics from "./Statistics/AllFeaturesStatistics.svelte" diff --git a/src/assets/contributors.json b/src/assets/contributors.json index d1c9d5333..62282a5bc 100644 --- a/src/assets/contributors.json +++ b/src/assets/contributors.json @@ -1,11 +1,11 @@ { "contributors": [ { - "commits": 9515, + "commits": 9531, "contributor": "Pieter Vander Vennet" }, { - "commits": 546, + "commits": 557, "contributor": "Robin van der Linde" }, { diff --git a/src/assets/language_in_country.json b/src/assets/language_in_country.json index 432121b43..d350af377 100644 --- a/src/assets/language_in_country.json +++ b/src/assets/language_in_country.json @@ -682,9 +682,9 @@ "vi" ], "VU": [ - "fr", "en", - "bi" + "bi", + "fr" ], "WS": [ "en", diff --git a/src/assets/schemas/layerconfigmeta.json b/src/assets/schemas/layerconfigmeta.json index 12860a471..7ad2b5207 100644 --- a/src/assets/schemas/layerconfigmeta.json +++ b/src/assets/schemas/layerconfigmeta.json @@ -11133,6 +11133,10 @@ "if": "value=memorial", "then": "memorial - Layer showing memorial plaques, based upon a unofficial theme. Can be expanded to have multiple types of memorials later on" }, + { + "if": "value=mobility_hub", + "then": "mobility_hub - Mobility hubs are places where different kinds of transit meet, making it easy to switch between them. These places are usually part of a larger network or system." + }, { "if": "value=mountain_rescue", "then": "mountain_rescue - A building where first aid responders store material and might be on watch" diff --git a/src/assets/schemas/layoutconfigmeta.json b/src/assets/schemas/layoutconfigmeta.json index 43393b27f..7171f101b 100644 --- a/src/assets/schemas/layoutconfigmeta.json +++ b/src/assets/schemas/layoutconfigmeta.json @@ -1012,6 +1012,10 @@ "if": "value=memorial", "then": "memorial (builtin) - Layer showing memorial plaques, based upon a unofficial theme. Can be expanded to have multiple types of memorials later on" }, + { + "if": "value=mobility_hub", + "then": "mobility_hub (builtin) - Mobility hubs are places where different kinds of transit meet, making it easy to switch between them. These places are usually part of a larger network or system." + }, { "if": "value=mountain_rescue", "then": "mountain_rescue (builtin) - A building where first aid responders store material and might be on watch" @@ -13777,6 +13781,10 @@ "if": "value=memorial", "then": "memorial - Layer showing memorial plaques, based upon a unofficial theme. Can be expanded to have multiple types of memorials later on" }, + { + "if": "value=mobility_hub", + "then": "mobility_hub - Mobility hubs are places where different kinds of transit meet, making it easy to switch between them. These places are usually part of a larger network or system." + }, { "if": "value=mountain_rescue", "then": "mountain_rescue - A building where first aid responders store material and might be on watch" @@ -35578,6 +35586,10 @@ "if": "value=memorial", "then": "memorial - Layer showing memorial plaques, based upon a unofficial theme. Can be expanded to have multiple types of memorials later on" }, + { + "if": "value=mobility_hub", + "then": "mobility_hub - Mobility hubs are places where different kinds of transit meet, making it easy to switch between them. These places are usually part of a larger network or system." + }, { "if": "value=mountain_rescue", "then": "mountain_rescue - A building where first aid responders store material and might be on watch"