Housekeeping

This commit is contained in:
Pieter Vander Vennet 2023-12-01 15:23:28 +01:00
parent 7ad311d91a
commit 60efd0844f
175 changed files with 24802 additions and 1949 deletions

View file

@ -638,7 +638,7 @@ attribute | type | values which are supported by this layer
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-pictures-license#values) [mapcomplete-pictures-license](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-pictures-license) | Multiple choice | [CC0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC0) [CC-BY 4.0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC-BY 4.0) [CC-BY-SA 4.0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC-BY-SA 4.0)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-show_tags#values) [mapcomplete-show_tags](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_tags) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_tags%3Dno) [](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_tags%3D) [yes](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_tags%3Dyes) [full](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_tags%3Dfull)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-show-all-questions#values) [mapcomplete-show-all-questions](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show-all-questions) | Multiple choice | [true](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show-all-questions%3Dtrue) [false](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show-all-questions%3Dfalse)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-show_crosshair#values) [mapcomplete-show_crosshair](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_crosshair) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dno)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-show_crosshair#values) [mapcomplete-show_crosshair](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_crosshair) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dno) [always](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dalways)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-fixate-north#values) [mapcomplete-fixate-north](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-fixate-north) | Multiple choice | [](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-fixate-north%3D) [yes](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-fixate-north%3Dyes)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-translation-mode#values) [mapcomplete-translation-mode](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-translation-mode) | Multiple choice | [false](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-translation-mode%3Dfalse) [true](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-translation-mode%3Dtrue) [mobile](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-translation-mode%3Dmobile)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-translation-mode#values) [mapcomplete-translation-mode](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-translation-mode) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-translation-mode%3Dyes)
@ -807,10 +807,11 @@ The question is *Should a crosshair be shown in the center of the display?*
- *Show a crosshair in the center of the map (when zoomed in above level 17)* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_crosshair' target='_blank'>mapcomplete-show_crosshair</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dyes' target='_blank'>yes</a>
- *Show a crosshair in the center of the map when zoomed in above level 17* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_crosshair' target='_blank'>mapcomplete-show_crosshair</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dyes' target='_blank'>yes</a>
- *Do not show a crosshair in the center of the map* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_crosshair' target='_blank'>mapcomplete-show_crosshair</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dno' target='_blank'>no</a>
- *Do not show a crosshair in the center of the map* corresponds with mapcomplete-show_crosshair=
- _This option cannot be chosen as answer_
- *Always show a crosshair in the center of the map* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:mapcomplete-show_crosshair' target='_blank'>mapcomplete-show_crosshair</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-show_crosshair%3Dalways' target='_blank'>always</a>

View file

@ -113,8 +113,8 @@ This is rendered with `This is a bicycle parking of the type: {bicycle_parking}
- *Staple racks* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dstands' target='_blank'>stands</a>
- *Wheel rack/loops* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dwall_loops' target='_blank'>wall_loops</a>
- *Stands* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dstands' target='_blank'>stands</a>
- *Wheelbenders / rack* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dwall_loops' target='_blank'>wall_loops</a>
- *Handlebar holder* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dhandlebar_holder' target='_blank'>handlebar_holder</a>
- *Rack* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Drack' target='_blank'>rack</a>
- *Two-tiered* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:bicycle_parking' target='_blank'>bicycle_parking</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dtwo_tier' target='_blank'>two_tier</a>

View file

@ -14,7 +14,7 @@ camper sites
- This layer is shown at zoomlevel **10** and higher
- This layer is shown at zoomlevel **7** and higher

View file

@ -14,7 +14,7 @@ Sanitary dump stations
- This layer is shown at zoomlevel **10** and higher
- This layer is shown at zoomlevel **7** and higher

View file

@ -59,7 +59,7 @@ attribute | type | values which are supported by this layer
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/id#values) [id](https://wiki.openstreetmap.org/wiki/Key:id) | Multiple choice |
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/sport#values) [sport](https://wiki.openstreetmap.org/wiki/Key:sport) | [string](../SpecialInputElements.md#string) | [basketball](https://wiki.openstreetmap.org/wiki/Tag:sport%3Dbasketball) [soccer](https://wiki.openstreetmap.org/wiki/Tag:sport%3Dsoccer) [table_tennis](https://wiki.openstreetmap.org/wiki/Tag:sport%3Dtable_tennis) [tennis](https://wiki.openstreetmap.org/wiki/Tag:sport%3Dtennis) [korfball](https://wiki.openstreetmap.org/wiki/Tag:sport%3Dkorfball) [skateboard](https://wiki.openstreetmap.org/wiki/Tag:sport%3Dskateboard)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/hoops#values) [hoops](https://wiki.openstreetmap.org/wiki/Key:hoops) | Multiple choice | [1](https://wiki.openstreetmap.org/wiki/Tag:hoops%3D1) [2](https://wiki.openstreetmap.org/wiki/Tag:hoops%3D2) [4](https://wiki.openstreetmap.org/wiki/Tag:hoops%3D4)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/surface#values) [surface](https://wiki.openstreetmap.org/wiki/Key:surface) | [string](../SpecialInputElements.md#string) | [grass](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dgrass) [sand](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dsand) [paving_stones](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dpaving_stones) [asphalt](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dasphalt) [concrete](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dconcrete)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/surface#values) [surface](https://wiki.openstreetmap.org/wiki/Key:surface) | [string](../SpecialInputElements.md#string) | [grass](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dgrass) [sand](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dsand) [paving_stones](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dpaving_stones) [asphalt](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dasphalt) [concrete](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dconcrete) [fine_gravel](https://wiki.openstreetmap.org/wiki/Tag:surface%3Dfine_gravel)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/access#values) [access](https://wiki.openstreetmap.org/wiki/Key:access) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:access%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:access%3Dlimited) [members](https://wiki.openstreetmap.org/wiki/Tag:access%3Dmembers) [private](https://wiki.openstreetmap.org/wiki/Tag:access%3Dprivate)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/reservation#values) [reservation](https://wiki.openstreetmap.org/wiki/Key:reservation) | Multiple choice | [required](https://wiki.openstreetmap.org/wiki/Tag:reservation%3Drequired) [recommended](https://wiki.openstreetmap.org/wiki/Tag:reservation%3Drecommended) [yes](https://wiki.openstreetmap.org/wiki/Tag:reservation%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reservation%3Dno)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/phone#values) [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) |
@ -166,6 +166,7 @@ This is rendered with `The surface is <b>{surface}</b>`
- *The surface is <b>paving stones</b>* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:surface' target='_blank'>surface</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:surface%3Dpaving_stones' target='_blank'>paving_stones</a>
- *The surface is <b>asphalt</b>* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:surface' target='_blank'>surface</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:surface%3Dasphalt' target='_blank'>asphalt</a>
- *The surface is <b>concrete</b>* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:surface' target='_blank'>surface</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:surface%3Dconcrete' target='_blank'>concrete</a>
- *The surface is <b>fine gravel</b>* corresponds with <a href='https://wiki.openstreetmap.org/wiki/Key:surface' target='_blank'>surface</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:surface%3Dfine_gravel' target='_blank'>fine_gravel</a>

View file

@ -413,324 +413,6 @@
"key": "description",
"description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "amenity",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag",
"value": "bicycle_rental"
},
{
"key": "bicycle_rental",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag"
},
{
"key": "service:bicycle:rental",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag",
"value": "yes"
},
{
"key": "rental",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag"
},
{
"key": "id",
"description": "Layer 'Bicycle rental' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
},
{
"key": "image",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "mapillary",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikidata",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikipedia",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "shop",
"description": "Layer 'Bicycle rental' shows shop=rental & bicycle_rental=shop with a fixed text, namely 'This is a shop whose main focus is bicycle 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 amenity=bicycle_rental)",
"value": "rental"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows shop=rental & bicycle_rental=shop with a fixed text, namely 'This is a shop whose main focus is bicycle 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 amenity=bicycle_rental)",
"value": "shop"
},
{
"key": "shop",
"description": "Layer 'Bicycle rental' shows shop=rental with a fixed text, namely 'This is a rental business which rents out various objects and/or vehicles. It rents out bicycles too, but this is not the main focus' 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_rental)",
"value": "rental"
},
{
"key": "service:bicycle:rental",
"description": "Layer 'Bicycle rental' shows service:bicycle:rental=yes & shop=bicycle with a fixed text, namely 'This is a shop which sells or repairs bicycles, but also rents out bicycles' 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_rental)",
"value": "yes"
},
{
"key": "shop",
"description": "Layer 'Bicycle rental' shows service:bicycle:rental=yes & shop=bicycle with a fixed text, namely 'This is a shop which sells or repairs bicycles, but also rents out bicycles' 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_rental)",
"value": "bicycle"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows bicycle_rental=docking_station with a fixed text, namely 'This is an automated docking station, where a bicycle is mechanically locked to a structure' 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_rental)",
"value": "docking_station"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows bicycle_rental=key_dispensing_machine with a fixed text, namely 'A machine is present which dispenses and accepts keys, eventually after authentication and/or payment. The bicycles are parked nearby' 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_rental)",
"value": "key_dispensing_machine"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows bicycle_rental=dropoff_point with a fixed text, namely 'This is a dropoff point, e.g. a reserved parking to place the bicycles clearly marked as being for the rental service only' 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_rental)",
"value": "dropoff_point"
},
{
"key": "website",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:website",
"description": "Layer 'Bicycle rental' shows contact:website~.+ with a fixed text, namely '<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "email",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:email",
"description": "Layer 'Bicycle rental' shows contact:email~.+ with a fixed text, namely '<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "phone",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:phone",
"description": "Layer 'Bicycle rental' shows contact:phone~.+ with a fixed text, namely '<a href='tel:{contact:phone}'>{contact:phone}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "opening_hours",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if shop~.+ | opening_hours~.+)"
},
{
"key": "payment:cash",
"description": "Layer 'Bicycle rental' shows payment:cash=yes with a fixed text, namely 'Cash is accepted 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 shop~.+)",
"value": "yes"
},
{
"key": "payment:cards",
"description": "Layer 'Bicycle rental' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted 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 shop~.+)",
"value": "yes"
},
{
"key": "payment:qr_code",
"description": "Layer 'Bicycle rental' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible 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 shop~.+)",
"value": "yes"
},
{
"key": "payment:cash",
"description": "Layer 'Bicycle rental' shows payment:cash=yes with a fixed text, namely 'Cash is accepted 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 shop=)",
"value": "yes"
},
{
"key": "payment:cards",
"description": "Layer 'Bicycle rental' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted 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 shop=)",
"value": "yes"
},
{
"key": "payment:qr_code",
"description": "Layer 'Bicycle rental' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible 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 shop=)",
"value": "yes"
},
{
"key": "payment:app",
"description": "Layer 'Bicycle rental' shows payment:app=yes with a fixed text, namely 'Payment is done using a dedicated app' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if shop=)",
"value": "yes"
},
{
"key": "payment:membership_card",
"description": "Layer 'Bicycle rental' shows payment:membership_card=yes with a fixed text, namely 'Payment is done using a membership card' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if shop=)",
"value": "yes"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'rental' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "city_bike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "ebike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "bmx"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "mtb"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "kid_bike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "tandem"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "racebike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "bike_helmet"
},
{
"key": "capacity:city_bike",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:ebike",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:kid_bike",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:bmx",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:mtb",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:bicycle_pannier",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:tandem_bicycle",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "amenity",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle library showing features with this tag",
"value": "bicycle_library"
},
{
"key": "id",
"description": "Layer 'Bicycle library' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
},
{
"key": "image",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "mapillary",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikidata",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikipedia",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "name",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "website",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:website",
"description": "Layer 'Bicycle library' shows contact:website~.+ with a fixed text, namely '<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "phone",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:phone",
"description": "Layer 'Bicycle library' shows contact:phone~.+ with a fixed text, namely '<a href='tel:{contact:phone}'>{contact:phone}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "email",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:email",
"description": "Layer 'Bicycle library' shows contact:email~.+ with a fixed text, namely '<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "opening_hours",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "charge",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "fee",
"description": "Layer 'Bicycle library' shows fee=no & charge= with a fixed text, namely 'Lending a bicycle is free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "no"
},
{
"key": "charge",
"description": "Layer 'Bicycle library' shows fee=no & charge= with a fixed text, namely 'Lending a bicycle is free' 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 charge.",
"value": ""
},
{
"key": "fee",
"description": "Layer 'Bicycle library' shows fee=yes & charge=€20warranty + €20/year with a fixed text, namely 'Lending a bicycle costs €20/year and €20 warranty' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "yes"
},
{
"key": "charge",
"description": "Layer 'Bicycle library' shows fee=yes & charge=€20warranty + €20/year with a fixed text, namely 'Lending a bicycle costs €20/year and €20 warranty' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "€20warranty + €20/year"
},
{
"key": "bicycle_library:for",
"description": "Layer 'Bicycle library' shows bicycle_library:for=child with a fixed text, namely 'Bikes for children available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "child"
},
{
"key": "bicycle_library:for",
"description": "Layer 'Bicycle library' shows bicycle_library:for=adult with a fixed text, namely 'Bikes for adult available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "adult"
},
{
"key": "bicycle_library:for",
"description": "Layer 'Bicycle library' shows bicycle_library:for=disabled with a fixed text, namely 'Bikes for disabled persons available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "disabled"
},
{
"key": "description",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "amenity",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle pump and repair showing features with this tag",
@ -1309,6 +991,324 @@
"description": "Layer 'Bike cleaning service' shows fee=yes with a fixed text, namely 'There is a fee to use this cleaning service' 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=bike_wash | amenity=bicycle_wash)",
"value": "yes"
},
{
"key": "amenity",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag",
"value": "bicycle_rental"
},
{
"key": "bicycle_rental",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag"
},
{
"key": "service:bicycle:rental",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag",
"value": "yes"
},
{
"key": "rental",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag"
},
{
"key": "id",
"description": "Layer 'Bicycle rental' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
},
{
"key": "image",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "mapillary",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikidata",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikipedia",
"description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "shop",
"description": "Layer 'Bicycle rental' shows shop=rental & bicycle_rental=shop with a fixed text, namely 'This is a shop whose main focus is bicycle 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 amenity=bicycle_rental)",
"value": "rental"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows shop=rental & bicycle_rental=shop with a fixed text, namely 'This is a shop whose main focus is bicycle 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 amenity=bicycle_rental)",
"value": "shop"
},
{
"key": "shop",
"description": "Layer 'Bicycle rental' shows shop=rental with a fixed text, namely 'This is a rental business which rents out various objects and/or vehicles. It rents out bicycles too, but this is not the main focus' 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_rental)",
"value": "rental"
},
{
"key": "service:bicycle:rental",
"description": "Layer 'Bicycle rental' shows service:bicycle:rental=yes & shop=bicycle with a fixed text, namely 'This is a shop which sells or repairs bicycles, but also rents out bicycles' 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_rental)",
"value": "yes"
},
{
"key": "shop",
"description": "Layer 'Bicycle rental' shows service:bicycle:rental=yes & shop=bicycle with a fixed text, namely 'This is a shop which sells or repairs bicycles, but also rents out bicycles' 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_rental)",
"value": "bicycle"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows bicycle_rental=docking_station with a fixed text, namely 'This is an automated docking station, where a bicycle is mechanically locked to a structure' 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_rental)",
"value": "docking_station"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows bicycle_rental=key_dispensing_machine with a fixed text, namely 'A machine is present which dispenses and accepts keys, eventually after authentication and/or payment. The bicycles are parked nearby' 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_rental)",
"value": "key_dispensing_machine"
},
{
"key": "bicycle_rental",
"description": "Layer 'Bicycle rental' shows bicycle_rental=dropoff_point with a fixed text, namely 'This is a dropoff point, e.g. a reserved parking to place the bicycles clearly marked as being for the rental service only' 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_rental)",
"value": "dropoff_point"
},
{
"key": "website",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:website",
"description": "Layer 'Bicycle rental' shows contact:website~.+ with a fixed text, namely '<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "email",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:email",
"description": "Layer 'Bicycle rental' shows contact:email~.+ with a fixed text, namely '<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "phone",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:phone",
"description": "Layer 'Bicycle rental' shows contact:phone~.+ with a fixed text, namely '<a href='tel:{contact:phone}'>{contact:phone}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "opening_hours",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if shop~.+ | opening_hours~.+)"
},
{
"key": "payment:cash",
"description": "Layer 'Bicycle rental' shows payment:cash=yes with a fixed text, namely 'Cash is accepted 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 shop~.+)",
"value": "yes"
},
{
"key": "payment:cards",
"description": "Layer 'Bicycle rental' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted 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 shop~.+)",
"value": "yes"
},
{
"key": "payment:qr_code",
"description": "Layer 'Bicycle rental' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible 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 shop~.+)",
"value": "yes"
},
{
"key": "payment:cash",
"description": "Layer 'Bicycle rental' shows payment:cash=yes with a fixed text, namely 'Cash is accepted 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 shop=)",
"value": "yes"
},
{
"key": "payment:cards",
"description": "Layer 'Bicycle rental' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted 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 shop=)",
"value": "yes"
},
{
"key": "payment:qr_code",
"description": "Layer 'Bicycle rental' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible 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 shop=)",
"value": "yes"
},
{
"key": "payment:app",
"description": "Layer 'Bicycle rental' shows payment:app=yes with a fixed text, namely 'Payment is done using a dedicated app' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if shop=)",
"value": "yes"
},
{
"key": "payment:membership_card",
"description": "Layer 'Bicycle rental' shows payment:membership_card=yes with a fixed text, namely 'Payment is done using a membership card' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if shop=)",
"value": "yes"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' shows and asks freeform values for key 'rental' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "city_bike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "ebike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "bmx"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "mtb"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "kid_bike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "tandem"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "racebike"
},
{
"key": "rental",
"description": "Layer 'Bicycle rental' 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')",
"value": "bike_helmet"
},
{
"key": "capacity:city_bike",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:ebike",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:kid_bike",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:bmx",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:mtb",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:bicycle_pannier",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "capacity:tandem_bicycle",
"description": "Layer 'Bicycle rental' 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.*)$)"
},
{
"key": "amenity",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle library showing features with this tag",
"value": "bicycle_library"
},
{
"key": "id",
"description": "Layer 'Bicycle library' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
},
{
"key": "image",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "mapillary",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikidata",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "wikipedia",
"description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary"
},
{
"key": "name",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "website",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:website",
"description": "Layer 'Bicycle library' shows contact:website~.+ with a fixed text, namely '<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "phone",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:phone",
"description": "Layer 'Bicycle library' shows contact:phone~.+ with a fixed text, namely '<a href='tel:{contact:phone}'>{contact:phone}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "email",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "contact:email",
"description": "Layer 'Bicycle library' shows contact:email~.+ with a fixed text, namely '<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "opening_hours",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "charge",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "fee",
"description": "Layer 'Bicycle library' shows fee=no & charge= with a fixed text, namely 'Lending a bicycle is free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "no"
},
{
"key": "charge",
"description": "Layer 'Bicycle library' shows fee=no & charge= with a fixed text, namely 'Lending a bicycle is free' 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 charge.",
"value": ""
},
{
"key": "fee",
"description": "Layer 'Bicycle library' shows fee=yes & charge=€20warranty + €20/year with a fixed text, namely 'Lending a bicycle costs €20/year and €20 warranty' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "yes"
},
{
"key": "charge",
"description": "Layer 'Bicycle library' shows fee=yes & charge=€20warranty + €20/year with a fixed text, namely 'Lending a bicycle costs €20/year and €20 warranty' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "€20warranty + €20/year"
},
{
"key": "bicycle_library:for",
"description": "Layer 'Bicycle library' shows bicycle_library:for=child with a fixed text, namely 'Bikes for children available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "child"
},
{
"key": "bicycle_library:for",
"description": "Layer 'Bicycle library' shows bicycle_library:for=adult with a fixed text, namely 'Bikes for adult available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "adult"
},
{
"key": "bicycle_library:for",
"description": "Layer 'Bicycle library' shows bicycle_library:for=disabled with a fixed text, namely 'Bikes for disabled persons available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "disabled"
},
{
"key": "description",
"description": "Layer 'Bicycle library' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')"
},
{
"key": "amenity",
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bike parking showing features with this tag",
@ -1340,12 +1340,12 @@
},
{
"key": "bicycle_parking",
"description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Staple racks' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Stands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "stands"
},
{
"key": "bicycle_parking",
"description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheel rack/loops' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheelbenders / rack' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "wall_loops"
},
{

View file

@ -1848,12 +1848,12 @@
},
{
"key": "bicycle_parking",
"description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Staple racks' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Stands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "stands"
},
{
"key": "bicycle_parking",
"description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheel rack/loops' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheelbenders / rack' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "wall_loops"
},
{
@ -12976,6 +12976,11 @@
"description": "Layer 'Sport pitches' shows surface=concrete with a fixed text, namely 'The surface is <b>concrete</b>' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "concrete"
},
{
"key": "surface",
"description": "Layer 'Sport pitches' shows surface=fine_gravel with a fixed text, namely 'The surface is <b>fine gravel</b>' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "fine_gravel"
},
{
"key": "access",
"description": "Layer 'Sport pitches' shows access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",

View file

@ -122,6 +122,11 @@
"description": "Layer 'Sport pitches' shows surface=concrete with a fixed text, namely 'The surface is <b>concrete</b>' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sport pitches')",
"value": "concrete"
},
{
"key": "surface",
"description": "Layer 'Sport pitches' shows surface=fine_gravel with a fixed text, namely 'The surface is <b>fine gravel</b>' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sport pitches')",
"value": "fine_gravel"
},
{
"key": "access",
"description": "Layer 'Sport pitches' shows access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sport pitches')",

View file

@ -122,6 +122,11 @@
"description": "Layer 'Sport pitches' shows surface=concrete with a fixed text, namely 'The surface is <b>concrete</b>' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports')",
"value": "concrete"
},
{
"key": "surface",
"description": "Layer 'Sport pitches' shows surface=fine_gravel with a fixed text, namely 'The surface is <b>fine gravel</b>' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports')",
"value": "fine_gravel"
},
{
"key": "access",
"description": "Layer 'Sport pitches' shows access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports')",

View file

@ -237,12 +237,12 @@
},
{
"key": "bicycle_parking",
"description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Staple racks' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')",
"description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Stands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')",
"value": "stands"
},
{
"key": "bicycle_parking",
"description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheel rack/loops' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')",
"description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheelbenders / rack' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')",
"value": "wall_loops"
},
{

View file

@ -13,14 +13,14 @@ This theme contains the following layers:
- [bike_cafe](../Layers/bike_cafe.md)
- [bike_shop](../Layers/bike_shop.md)
- [bicycle_rental_non_docking](../Layers/bicycle_rental_non_docking.md)
- [bicycle_rental](../Layers/bicycle_rental.md)
- [bicycle_library](../Layers/bicycle_library.md)
- [bike_repair_station](../Layers/bike_repair_station.md)
- [bicycle_tube_vending_machine](../Layers/bicycle_tube_vending_machine.md)
- [drinking_water](../Layers/drinking_water.md)
- [bike_themed_object](../Layers/bike_themed_object.md)
- [bike_cleaning](../Layers/bike_cleaning.md)
- [bicycle_rental_non_docking](../Layers/bicycle_rental_non_docking.md)
- [bicycle_rental](../Layers/bicycle_rental.md)
- [bicycle_library](../Layers/bicycle_library.md)
- [bike_parking](../Layers/bike_parking.md)
- [charging_station_ebikes](../Layers/charging_station_ebikes.md)
- [charging_station](../Layers/charging_station.md)

View file

@ -27,6 +27,7 @@ Available languages:
- en
- de
- cs
This document is autogenerated from [assets/themes/icecream/icecream.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/icecream/icecream.json)

View file

@ -112,7 +112,7 @@ This documentation is defined in the source code at [Locale.ts](/src/UI/i18n/Loc
If set, will show a translation button next to every string.
This documentation is defined in the source code at [Locale.ts](/src/UI/i18n/Locale.ts#L70)
This documentation is defined in the source code at [Locale.ts](/src/UI/i18n/Locale.ts#L73)
The default value is _false_

View file

@ -330,7 +330,7 @@ The position of a signpost can be used by a hiker/biker/rider...
{{service_item
|name= [https://mapcomplete.org/icecream icecream]
|region= Worldwide
|lang= {{#language:en|en}}, {{#language:de|en}}
|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:cs|en}}
|descr= A MapComplete theme: A map showing ice cream parlors and ice cream vending machines
|material= {{yes|[https://mapcomplete.org/ Yes]}}
|image= MapComplete_Screenshot.png

View file

@ -88,7 +88,7 @@
"title": {
"en": "a bike parking",
"nl": "een fietsparking",
"fr": "une parking à vélo",
"fr": "un parking à vélo",
"gl": "Aparcadoiro de bicicletas",
"de": "einen Fahrrad-Parkplatz",
"hu": "Kerékpártároló",
@ -157,7 +157,7 @@
{
"if": "bicycle_parking=stands",
"then": {
"en": "Staple racks",
"en": "Stands",
"nl": "Nietjes",
"fr": "Arceaux",
"gl": "De roda (Stands)",
@ -178,7 +178,7 @@
{
"if": "bicycle_parking=wall_loops",
"then": {
"en": "Wheel rack/loops",
"en": "Wheelbenders / rack",
"nl": "Wielrek/lussen",
"fr": "Pinces-roues",
"gl": "Aros",

View file

@ -459,8 +459,8 @@
{
"if": "surface=fine_gravel",
"then": {
"en":"The surface is <b>fine gravel</b>",
"nl":"De ondergrond bestaat uit <b>grind</b>"
"en": "The surface is <b>fine gravel</b>",
"nl": "De ondergrond bestaat uit <b>grind</b>"
}
}
],

View file

@ -859,24 +859,6 @@
],
"sources": []
},
{
"path": "no_checkmark.svg",
"license": "TRIVIAL",
"authors": [],
"sources": []
},
{
"path": "no_checkmark.svg",
"license": "TRIVIAL",
"authors": [],
"sources": []
},
{
"path": "none.svg",
"license": "TRIVIAL",
"authors": [],
"sources": []
},
{
"path": "not_found.svg",
"license": "CC-BY-4.0",

View file

@ -179,7 +179,8 @@
"question": {
"en": "What is the reference number of this cycling node?",
"nl": "Wat is het referentienummer van dit fietsknooppunt?",
"de": "Wie lautet die Nummer des Knotenpunkts im Fahrradknotenpunktnetzwerk?"
"de": "Wie lautet die Nummer des Knotenpunkts im Fahrradknotenpunktnetzwerk?",
"cs": "Jaké je referenční číslo tohoto cyklistického uzlu?"
},
"freeform": {
"key": "rcn_ref",
@ -187,13 +188,15 @@
"placeholder": {
"en": "e.g. 1",
"nl": "bijv. 1",
"de": "z.B. 1"
"de": "z.B. 1",
"cs": "e.g. 1"
}
},
"render": {
"en": "This cycling node has reference number {rcn_ref}",
"nl": "Dit fietsknooppunt heeft referentienummer {rcn_ref}",
"de": "Knotenpunktnummer {rcn_ref} des Fahrradknotenpunktnetzwerks"
"de": "Knotenpunktnummer {rcn_ref} des Fahrradknotenpunktnetzwerks",
"cs": "Tento cyklistický uzel má referenční číslo {rcn_ref}"
}
},
{
@ -249,7 +252,8 @@
"placeholder": {
"en": "e.g. 3",
"nl": "bijv. 3",
"de": "z.B. 3"
"de": "z.B. 3",
"cs": "e.g. 3"
}
},
"id": "node-expected_rcn_route_relations"
@ -298,12 +302,14 @@
],
"name": {
"en": "Cycling guideposts",
"de": "Fahrrad-Wegweiser"
"de": "Fahrrad-Wegweiser",
"cs": "Cyklistické ukazatele"
},
"title": {
"render": {
"en": "Cycling guidepost",
"de": "Fahrrad-Wegweiser"
"de": "Fahrrad-Wegweiser",
"cs": "Cyklistický ukazatel"
}
}
},
@ -330,7 +336,8 @@
],
"title": {
"en": "a route marker for a node to node link",
"de": "Eine Routenmarkierung für eine Verbindung von Knoten zu Knoten"
"de": "Eine Routenmarkierung für eine Verbindung von Knoten zu Knoten",
"cs": "značka trasy pro spojení mezi uzlem"
},
"=exampleImages": [
"./assets/layers/route_marker/bicycle_route_marker.jpg"

View file

@ -102,9 +102,10 @@
"=pointRendering": [
{
"marker": [
{"icon": "pin",
"color":"#ba2792"}
,
{
"icon": "pin",
"color": "#ba2792"
},
{
"icon": "./assets/themes/cyclofix/key.svg"
}

View file

@ -2,11 +2,13 @@
"id": "icecream",
"title": {
"en": "Icecream",
"de": "Eiscreme"
"de": "Eiscreme",
"cs": "Zmrzlina"
},
"description": {
"en": "A map showing ice cream parlors and ice cream vending machines",
"de": "Eine Karte, die Eisdielen und Eisautomaten zeigt"
"de": "Eine Karte, die Eisdielen und Eisautomaten zeigt",
"cs": "Mapa zobrazující prodej zmrzliny a automaty na zmrzlinu"
},
"icon": "./assets/layers/ice_cream/ice_cream.svg",
"layers": [

View file

@ -166,31 +166,31 @@
{
"if": "sidewalk:left|right=yes",
"then": {
"en": "There is a sidewalk on this side of the road",
"de": "Es gibt einen Bürgersteig auf dieser Straßenseite",
"da": "Der er et fortov på denne side af vejen",
"nl": "Er is een stoep aan deze kant van de weg",
"fr": "Il y a un trottoir de ce côté de la route",
"ca": "Hi ha una vorera a aquest costat del carrer",
"es": "Hay una acera en este lado de la calle",
"cs": "Na této straně silnice je chodník",
"it": "C'è un marciapiede su questo lato della strada",
"pl": "Jest chodnik z boku drogi"
"en": "Yes, there is a sidewalk on this side of the road",
"de": "Ja, es gibt einen Bürgersteig auf dieser Straßenseite",
"da": "Ja, der er et fortov på denne side af vejen",
"nl": "Ja, er is een stoep aan deze kant van de weg",
"fr": "Oui, il y a un trottoir de ce côté de la route",
"ca": "Sí, hi ha una vorera a aquest costat del carrer",
"es": "Sí, hay una acera en este lado de la calle",
"cs": "Ano, na této straně silnice je chodník",
"it": "Sì, c'è un marciapiede su questo lato della strada",
"pl": "Tak, jest chodnik z boku drogi"
}
},
{
"if": "sidewalk:left|right=no",
"then": {
"en": "There is no sidewalk to walk on",
"de": "Es gibt keinen Bürgersteig für Fußgänger",
"da": "Der er ikke noget fortov at gå på",
"nl": "Er is geen stoep om op te lopen",
"fr": "Il n'y a pas de trottoir où marcher",
"ca": "No hi ha vorera per la que caminar",
"es": "No hay acera por la que caminar",
"cs": "Není tu žádný chodník",
"it": "Non c'è un marciapiede su cui camminare",
"pl": "Nie ma chodnika, którym można chodzić"
"en": "No, there is no sidewalk to walk on",
"de": "Nein, es gibt keinen Bürgersteig für Fußgänger",
"da": "Nej, der er ikke noget fortov at gå på",
"nl": "Nee, er is geen stoep om op te lopen",
"fr": "Non, il n'y a pas de trottoir où marcher",
"ca": "No, no hi ha vorera per la que caminar",
"es": "No, no hay acera por la que caminar",
"cs": "Ne, není tu žádný chodník",
"it": "No, non c'è un marciapiede su cui camminare",
"pl": "Nie, nie ma chodnika, którym można chodzić"
}
},
{

View file

@ -8,7 +8,8 @@
"description": {
"en": "This map shows walking node networks and allows you to add new nodes easily",
"nl": "Deze kaart toont wandelknooppunten en laat je toe om eenvoudigweg nieuwe knooppunten toe te voegen",
"de": "Diese Karte zeigt Wandernetzwerke und ermöglicht es Ihnen, einfach neue Knoten hinzuzufügen"
"de": "Diese Karte zeigt Wandernetzwerke und ermöglicht es Ihnen, einfach neue Knoten hinzuzufügen",
"cs": "Tato mapa zobrazuje sítě uzlových bodů a umožňuje snadné přidávání nových uzlů"
},
"icon": "./assets/themes/walkingnodes/logo.svg",
"startZoom": 11,
@ -161,7 +162,8 @@
"question": {
"en": "What is the reference number of this walking node?",
"nl": "Wat is het referentienummer van dit wandelknooppunt?",
"de": "Was ist die Referenznummer dieses Wanderknotens?"
"de": "Was ist die Referenznummer dieses Wanderknotens?",
"cs": "Jaké je referenční číslo tohoto pěšího uzlu?"
},
"freeform": {
"key": "rwn_ref",
@ -169,7 +171,8 @@
"placeholder": {
"en": "e.g. 1",
"nl": "bijv. 1",
"de": "z.B. 1"
"de": "z.B. 1",
"cs": "e.g. 1"
}
},
"render": {
@ -197,7 +200,8 @@
"question": {
"en": "How many other walking nodes does this node link to?",
"nl": "Met hoeveel andere wandelknooppunten heeft dit knooppunt een verbinding?",
"de": "Mit wie vielen anderen Wanderknoten ist dieser Knoten verbunden?"
"de": "Mit wie vielen anderen Wanderknoten ist dieser Knoten verbunden?",
"cs": "S kolika dalšími pěšími uzly je tento uzel propojen?"
},
"render": {
"en": "This node links to {expected_rwn_route_relations} other walking nodes.",
@ -210,7 +214,8 @@
"placeholder": {
"en": "e.g. 3",
"nl": "bijv. 3",
"de": "z.B. 3"
"de": "z.B. 3",
"cs": "e.g. 3"
}
},
"id": "node-expected_rwn_route_relations"

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -33,16 +33,6 @@
"1": {
"title": "un panneau à affiches scellé au sol"
},
"10": {
"description": "Désigne une enseigne publicitaire, une enseigne néon, les logos ou des indications d'entrées",
"title": "une enseigne"
},
"11": {
"title": "une sculpture"
},
"12": {
"title": "une peinture murale"
},
"2": {
"title": "un panneau à affiches monté sur un mur"
},
@ -69,6 +59,16 @@
},
"9": {
"title": "un totem"
},
"10": {
"description": "Désigne une enseigne publicitaire, une enseigne néon, les logos ou des indications d'entrées",
"title": "une enseigne"
},
"11": {
"title": "une sculpture"
},
"12": {
"title": "une peinture murale"
}
},
"tagRenderings": {
@ -160,9 +160,6 @@
"1": {
"then": "C'est un petit panneau"
},
"10": {
"then": "C'est une peinture murale"
},
"2": {
"then": "C'est une colonne"
},
@ -186,6 +183,9 @@
},
"9": {
"then": "C'est un totem"
},
"10": {
"then": "C'est une peinture murale"
}
},
"question": "De quel type de dispositif publicitaire s'agit-il ?"
@ -196,9 +196,6 @@
"1": {
"then": "Petit panneau"
},
"10": {
"then": "Peinture murale"
},
"3": {
"then": "Colonne"
},
@ -219,6 +216,9 @@
},
"9": {
"then": "Totem"
},
"10": {
"then": "Peinture murale"
}
}
}
@ -300,15 +300,6 @@
"1": {
"then": "Peinture murale"
},
"10": {
"then": "Azulejo (faïence latine)"
},
"11": {
"then": "Carrelage"
},
"12": {
"then": "Sculpture sur bois"
},
"2": {
"then": "Peinture"
},
@ -332,6 +323,15 @@
},
"9": {
"then": "Relief"
},
"10": {
"then": "Azulejo (faïence latine)"
},
"11": {
"then": "Carrelage"
},
"12": {
"then": "Sculpture sur bois"
}
},
"question": "Quel est le type de cette œuvre d'art ?",
@ -2489,15 +2489,6 @@
"1": {
"then": "Cette piste cyclable est goudronée"
},
"10": {
"then": "Cette piste cyclable est faite en graviers fins"
},
"11": {
"then": "Cette piste cyclable est en cailloux"
},
"12": {
"then": "Cette piste cyclable est faite en sol brut"
},
"2": {
"then": "Cette piste cyclable est asphaltée"
},
@ -2521,6 +2512,15 @@
},
"9": {
"then": "Cette piste cyclable est faite en graviers"
},
"10": {
"then": "Cette piste cyclable est faite en graviers fins"
},
"11": {
"then": "Cette piste cyclable est en cailloux"
},
"12": {
"then": "Cette piste cyclable est faite en sol brut"
}
},
"question": "De quoi est faite la surface de la piste cyclable ?",
@ -2569,15 +2569,6 @@
"1": {
"then": "Cette piste cyclable est pavée"
},
"10": {
"then": "Cette piste cyclable est faite en graviers fins"
},
"11": {
"then": "Cette piste cyclable est en cailloux"
},
"12": {
"then": "Cette piste cyclable est faite en sol brut"
},
"2": {
"then": "Cette piste cyclable est asphaltée"
},
@ -2601,6 +2592,15 @@
},
"9": {
"then": "Cette piste cyclable est faite en graviers"
},
"10": {
"then": "Cette piste cyclable est faite en graviers fins"
},
"11": {
"then": "Cette piste cyclable est en cailloux"
},
"12": {
"then": "Cette piste cyclable est faite en sol brut"
}
},
"question": "De quel materiel est faite cette rue ?",
@ -3456,21 +3456,6 @@
"1": {
"then": "C'est une friterie"
},
"10": {
"then": "Des plats chinois sont servis ici"
},
"11": {
"then": "Des plats grecs sont servis ici"
},
"12": {
"then": "Des plats indiens sont servis ici"
},
"13": {
"then": "Des plats turcs sont servis ici"
},
"14": {
"then": "Des plats thaïlandais sont servis ici"
},
"2": {
"then": "Restaurant Italien"
},
@ -3494,6 +3479,21 @@
},
"9": {
"then": "Des plats français sont servis ici"
},
"10": {
"then": "Des plats chinois sont servis ici"
},
"11": {
"then": "Des plats grecs sont servis ici"
},
"12": {
"then": "Des plats indiens sont servis ici"
},
"13": {
"then": "Des plats turcs sont servis ici"
},
"14": {
"then": "Des plats thaïlandais sont servis ici"
}
},
"question": "Quelle type de nourriture est servie ici ?",
@ -5078,6 +5078,30 @@
"1": {
"question": "Recyclage de piles et batteries domestiques"
},
"2": {
"question": "Recyclage d'emballage de boissons"
},
"3": {
"question": "Recyclage de boites de conserve et de canettes"
},
"4": {
"question": "Recyclage de vêtements"
},
"5": {
"question": "Recyclage des huiles de friture"
},
"6": {
"question": "Recyclage des huiles de moteur"
},
"7": {
"question": "Recyclage des lampes fluorescentes"
},
"8": {
"question": "Recyclage des déchets verts"
},
"9": {
"question": "Recyclage des bouteilles en verre et des bocaux"
},
"10": {
"question": "Recyclage de tout type de verre"
},
@ -5108,35 +5132,11 @@
"19": {
"question": "Recyclage des autres déchets"
},
"2": {
"question": "Recyclage d'emballage de boissons"
},
"20": {
"question": "Recyclage des cartouches d'imprimante"
},
"21": {
"question": "Recyclage des vélos"
},
"3": {
"question": "Recyclage de boites de conserve et de canettes"
},
"4": {
"question": "Recyclage de vêtements"
},
"5": {
"question": "Recyclage des huiles de friture"
},
"6": {
"question": "Recyclage des huiles de moteur"
},
"7": {
"question": "Recyclage des lampes fluorescentes"
},
"8": {
"question": "Recyclage des déchets verts"
},
"9": {
"question": "Recyclage des bouteilles en verre et des bocaux"
}
}
},
@ -5199,6 +5199,30 @@
"1": {
"then": "Les briques alimentaires en carton peuvent être recyclées ici"
},
"2": {
"then": "Les boites de conserve et canettes peuvent être recyclées ici"
},
"3": {
"then": "Les vêtements peuvent être recyclés ici"
},
"4": {
"then": "Les huiles de friture peuvent être recyclées ici"
},
"5": {
"then": "Les huiles de moteur peuvent être recyclées ici"
},
"6": {
"then": "Les lampes fluorescentes peuvent être recyclées ici"
},
"7": {
"then": "Les déchets verts peuvent être recyclés ici"
},
"8": {
"then": "Les déchets organiques peuvent être recyclés ici"
},
"9": {
"then": "Les bouteilles en verre et bocaux peuvent être recyclés ici"
},
"10": {
"then": "Tout type de verre peut être recyclé ici"
},
@ -5229,9 +5253,6 @@
"19": {
"then": "Les chaussures peuvent être recyclées ici"
},
"2": {
"then": "Les boites de conserve et canettes peuvent être recyclées ici"
},
"20": {
"then": "Les petits appareils électriques peuvent être recyclés ici"
},
@ -5246,27 +5267,6 @@
},
"24": {
"then": "Les vélos peuvent être recyclés ici"
},
"3": {
"then": "Les vêtements peuvent être recyclés ici"
},
"4": {
"then": "Les huiles de friture peuvent être recyclées ici"
},
"5": {
"then": "Les huiles de moteur peuvent être recyclées ici"
},
"6": {
"then": "Les lampes fluorescentes peuvent être recyclées ici"
},
"7": {
"then": "Les déchets verts peuvent être recyclés ici"
},
"8": {
"then": "Les déchets organiques peuvent être recyclés ici"
},
"9": {
"then": "Les bouteilles en verre et bocaux peuvent être recyclés ici"
}
},
"question": "Que peut-on recycler ici ?"
@ -6534,27 +6534,6 @@
"1": {
"question": "Vente de boissons"
},
"10": {
"question": "Vente de lait"
},
"11": {
"question": "Vente de pain"
},
"12": {
"question": "Vente d'œufs"
},
"13": {
"question": "Vente de fromage"
},
"14": {
"question": "Vente de miel"
},
"15": {
"question": "Vente de pommes de terre"
},
"19": {
"question": "Vente de fleurs"
},
"2": {
"question": "Ventre de confiseries"
},
@ -6578,6 +6557,27 @@
},
"9": {
"question": "Vente de chambres à air pour vélo"
},
"10": {
"question": "Vente de lait"
},
"11": {
"question": "Vente de pain"
},
"12": {
"question": "Vente d'œufs"
},
"13": {
"question": "Vente de fromage"
},
"14": {
"question": "Vente de miel"
},
"15": {
"question": "Vente de pommes de terre"
},
"19": {
"question": "Vente de fleurs"
}
}
}
@ -6618,24 +6618,6 @@
"1": {
"then": "Vent des confiseries"
},
"10": {
"then": "Vent du pain"
},
"11": {
"then": "Vent des œufs"
},
"12": {
"then": "Vent du fromage"
},
"13": {
"then": "Vent du miel"
},
"14": {
"then": "Vent des pommes de terre"
},
"18": {
"then": "Vent des fleurs"
},
"2": {
"then": "Vent de la nourriture"
},
@ -6659,6 +6641,24 @@
},
"9": {
"then": "Vent du lait"
},
"10": {
"then": "Vent du pain"
},
"11": {
"then": "Vent des œufs"
},
"12": {
"then": "Vent du fromage"
},
"13": {
"then": "Vent du miel"
},
"14": {
"then": "Vent des pommes de terre"
},
"18": {
"then": "Vent des fleurs"
}
},
"question": "Que vent ce distributeur ?",

View file

@ -7927,6 +7927,9 @@
},
"4": {
"then": "De ondergrond is <b>beton</b>"
},
"5": {
"then": "De ondergrond bestaat uit <b>grind</b>"
}
},
"question": "Wat is de ondergrond van dit sportveld?",

View file

@ -1019,33 +1019,6 @@
"onwheels": {
"description": "Na této mapě jsou zobrazena veřejně přístupná místa pro vozíčkáře, a lze je také snadno přidat",
"layers": {
"19": {
"override": {
"=title": {
"render": "Statistiky"
}
}
},
"20": {
"override": {
"+tagRenderings": {
"0": {
"render": {
"special": {
"text": "Dovoz"
}
}
},
"1": {
"render": {
"special": {
"message": "Přidat všechny navrhované značky"
}
}
}
}
}
},
"4": {
"override": {
"filter": {
@ -1088,6 +1061,33 @@
"override": {
"name": "Parkovací místa pro osoby se zdravotním postižením"
}
},
"19": {
"override": {
"=title": {
"render": "Statistiky"
}
}
},
"20": {
"override": {
"+tagRenderings": {
"0": {
"render": {
"special": {
"text": "Dovoz"
}
}
},
"1": {
"render": {
"special": {
"message": "Přidat všechny navrhované značky"
}
}
}
}
}
}
},
"title": "Na kolečkách"
@ -1248,6 +1248,10 @@
"stations": {
"description": "Zobrazení, úprava a přidání podrobností o vlakovém nádraží",
"layers": {
"3": {
"description": "Vrstva zobrazující vlaková nádraží",
"name": "Vlaková nádraží"
},
"16": {
"description": "Zobrazuje vlaky odjíždějící z této stanice",
"name": "Odjezdové tabule",
@ -1279,10 +1283,6 @@
"title": {
"render": "Odjezdová tabule"
}
},
"3": {
"description": "Vrstva zobrazující vlaková nádraží",
"name": "Vlaková nádraží"
}
},
"title": "Vlaková nádraží"

16
package-lock.json generated
View file

@ -1,12 +1,12 @@
{
"name": "mapcomplete",
"version": "0.34.9",
"version": "0.35.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "mapcomplete",
"version": "0.34.9",
"version": "0.35.1",
"license": "GPL-3.0-or-later",
"dependencies": {
"@rgossiaux/svelte-headlessui": "^1.0.2",
@ -4993,9 +4993,9 @@
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001564",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz",
"integrity": "sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==",
"version": "1.0.30001565",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz",
"integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==",
"dev": true,
"funding": [
{
@ -17079,9 +17079,9 @@
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA=="
},
"caniuse-lite": {
"version": "1.0.30001564",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz",
"integrity": "sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==",
"version": "1.0.30001565",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz",
"integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==",
"dev": true
},
"canvg": {

View file

@ -280,8 +280,8 @@ async function generateCsp(
"https://pietervdvn.goatcounter.com",
].concat(...(await eliUrls()))
SpecialVisualizations.specialVisualizations.forEach(sv => {
if(typeof sv.needsUrls === "function"){
SpecialVisualizations.specialVisualizations.forEach((sv) => {
if (typeof sv.needsUrls === "function") {
return
}
apiUrls.push(...sv.needsUrls)

View file

@ -64,7 +64,12 @@ export class PreferredRasterLayerSelector {
const foundLayer = isCategory
? available.find((l) => l.properties.category === targetLayerId)
: available.find((l) => l.properties.id === targetLayerId)
console.debug("Updating background layer to", foundLayer?.id,{targetLayerId, queryParam:this._queryParameter?.data, preferred: this._preferredBackgroundLayer?.data, isCategory})
console.debug("Updating background layer to", foundLayer?.id, {
targetLayerId,
queryParam: this._queryParameter?.data,
preferred: this._preferredBackgroundLayer?.data,
isCategory,
})
if (foundLayer) {
this._rasterLayerSetting.setData(foundLayer)
return true

View file

@ -1,74 +1,78 @@
<script lang="ts">
import { OsmConnectionFeatureSwitches } from "../Logic/State/FeatureSwitchState";
import { OsmConnection } from "../Logic/Osm/OsmConnection";
import { QueryParameters } from "../Logic/Web/QueryParameters";
import UserRelatedState from "../Logic/State/UserRelatedState";
import LanguagePicker from "./InputElement/LanguagePicker.svelte";
import Translations from "./i18n/Translations";
import Logo from "../assets/svg/Logo.svelte";
import Tr from "./Base/Tr.svelte";
import ToSvelte from "./Base/ToSvelte.svelte";
import MoreScreen from "./BigComponents/MoreScreen";
import LoginToggle from "./Base/LoginToggle.svelte";
import Pencil from "../assets/svg/Pencil.svelte";
import Login from "../assets/svg/Login.svelte";
import Constants from "../Models/Constants";
import { OsmConnectionFeatureSwitches } from "../Logic/State/FeatureSwitchState"
import { OsmConnection } from "../Logic/Osm/OsmConnection"
import { QueryParameters } from "../Logic/Web/QueryParameters"
import UserRelatedState from "../Logic/State/UserRelatedState"
import LanguagePicker from "./InputElement/LanguagePicker.svelte"
import Translations from "./i18n/Translations"
import Logo from "../assets/svg/Logo.svelte"
import Tr from "./Base/Tr.svelte"
import ToSvelte from "./Base/ToSvelte.svelte"
import MoreScreen from "./BigComponents/MoreScreen"
import LoginToggle from "./Base/LoginToggle.svelte"
import Pencil from "../assets/svg/Pencil.svelte"
import Login from "../assets/svg/Login.svelte"
import Constants from "../Models/Constants"
const featureSwitches = new OsmConnectionFeatureSwitches();
const featureSwitches = new OsmConnectionFeatureSwitches()
const osmConnection = new OsmConnection({
fakeUser: featureSwitches.featureSwitchFakeUser.data,
oauth_token: QueryParameters.GetQueryParameter(
"oauth_token",
undefined,
"Used to complete the login"
)
});
const state = new UserRelatedState(osmConnection);
const t = Translations.t.index;
let userLanguages = osmConnection.userDetails.map(ud => ud.languages);
),
})
const state = new UserRelatedState(osmConnection)
const t = Translations.t.index
let userLanguages = osmConnection.userDetails.map((ud) => ud.languages)
</script>
<div class="flex flex-col m-4">
<div class="m-4 flex flex-col">
<div class="self-end">
<LanguagePicker assignTo={state.language} availableLanguages={t.title.SupportedLanguages()}
preferredLanguages={userLanguages} />
<LanguagePicker
assignTo={state.language}
availableLanguages={t.title.SupportedLanguages()}
preferredLanguages={userLanguages}
/>
</div>
<div class="flex mt-4">
<div class="flex-none m-3">
<Logo alt="MapComplete Logo" class="w-12 h-12 sm:h-24 sm:w-24" />
<div class="mt-4 flex">
<div class="m-3 flex-none">
<Logo alt="MapComplete Logo" class="h-12 w-12 sm:h-24 sm:w-24" />
</div>
<div class="flex flex-col">
<h1 class="tracking-tight font-extrabold md:text-6xl m-0">
<h1 class="m-0 font-extrabold tracking-tight md:text-6xl">
<Tr t={t.title} />
</h1>
<Tr cls="my-4 mr-4 text-base font-semibold sm:text-lg md:mt-5 md:text-xl lg:mx-0"
t={Translations.t.index.intro} />
<Tr
cls="my-4 mr-4 text-base font-semibold sm:text-lg md:mt-5 md:text-xl lg:mx-0"
t={Translations.t.index.intro}
/>
</div>
</div>
<ToSvelte construct={new MoreScreen(state, true)} />
<LoginToggle state={state}>
<LoginToggle {state}>
<div slot="not-logged-in">
<button class="w-full" on:click={() => osmConnection.AttemptLogin()}>
<Login class="w-6 h-6 mr-2 "/>
<Login class="mr-2 h-6 w-6 " />
<Tr t={Translations.t.index.logIn} />
</button>
</div>
<a class="w-full h-fit button" href={window.location.protocol + "//" + window.location.host + "/studio.html"}>
<Pencil class="w-6 h-6 mr-2" />
<Tr t={ Translations.t.general.morescreen.createYourOwnTheme} />
<a
class="button h-fit w-full"
href={window.location.protocol + "//" + window.location.host + "/studio.html"}
>
<Pencil class="mr-2 h-6 w-6" />
<Tr t={Translations.t.general.morescreen.createYourOwnTheme} />
</a>
</LoginToggle>
<Tr cls="link-underline" t={Translations.t.general.aboutMapComplete.intro}/>
<div class="subtle self-end mb-16">
<Tr cls="link-underline" t={Translations.t.general.aboutMapComplete.intro} />
<div class="subtle mb-16 self-end">
v{Constants.vNumber}
</div>
</div>

View file

@ -5,7 +5,7 @@
*/
import { Store } from "../../Logic/UIEventSource"
import { onDestroy } from "svelte"
import Hand from "../../assets/svg/Hand.svelte";
import Hand from "../../assets/svg/Hand.svelte"
let mainElem: HTMLElement
export let hideSignal: Store<any>

View file

@ -1,31 +1,35 @@
<script lang="ts">
import { UIEventSource } from "../../Logic/UIEventSource.js";
import { UIEventSource } from "../../Logic/UIEventSource.js"
export let value: UIEventSource<any>
let i: any = value.data
let htmlElement : HTMLSelectElement
function selectAppropriateValue(){
if(!htmlElement){
return;
let htmlElement: HTMLSelectElement
function selectAppropriateValue() {
if (!htmlElement) {
return
}
const v = value.data
for (let option of htmlElement.getElementsByTagName("option")) {
if(option.value === v){
if (option.value === v) {
option.selected = true
return
}
}
}
value.addCallbackD(() => selectAppropriateValue())
$: {
if(htmlElement){
if (htmlElement) {
selectAppropriateValue()
}
}
</script>
<select bind:this={htmlElement} on:change={(e) => {value.setData(e.srcElement.value)}}>
<select
bind:this={htmlElement}
on:change={(e) => {
value.setData(e.srcElement.value)
}}
>
<slot />
</select>

View file

@ -6,7 +6,7 @@
import Tr from "./Tr.svelte"
import { OsmConnection } from "../../Logic/Osm/OsmConnection"
import { ImmutableStore, UIEventSource } from "../../Logic/UIEventSource"
import Invalid from "../../assets/svg/Invalid.svelte";
import Invalid from "../../assets/svg/Invalid.svelte"
export let state: {
osmConnection: OsmConnection

View file

@ -1,15 +1,17 @@
<script lang="ts">
import { OsmConnection } from "../../Logic/Osm/OsmConnection";
import Logout from "../../assets/svg/Logout.svelte";
import Translations from "../i18n/Translations";
import Tr from "./Tr.svelte";
import { OsmConnection } from "../../Logic/Osm/OsmConnection"
import Logout from "../../assets/svg/Logout.svelte"
import Translations from "../i18n/Translations"
import Tr from "./Tr.svelte"
export let osmConnection: OsmConnection
</script>
<button on:click={() => {
state.osmConnection.LogOut()
}}>
<Logout class="w-6 h-6"/>
<Tr t={Translations.t.general.logout}/>
<button
on:click={() => {
state.osmConnection.LogOut()
}}
>
<Logout class="h-6 w-6" />
<Tr t={Translations.t.general.logout} />
</button>

View file

@ -1,37 +1,37 @@
<script lang="ts">
import { UIEventSource } from "../../Logic/UIEventSource";
import Translations from "../i18n/Translations";
import Tr from "./Tr.svelte";
import Josm_logo from "../../assets/svg/Josm_logo.svelte";
import Constants from "../../Models/Constants";
import type { SpecialVisualizationState } from "../SpecialVisualization";
import { UIEventSource } from "../../Logic/UIEventSource"
import Translations from "../i18n/Translations"
import Tr from "./Tr.svelte"
import Josm_logo from "../../assets/svg/Josm_logo.svelte"
import Constants from "../../Models/Constants"
import type { SpecialVisualizationState } from "../SpecialVisualization"
export let state : SpecialVisualizationState
const t = Translations.t.general.attribution;
const josmState = new UIEventSource<"OK" | string>(undefined);
export let state: SpecialVisualizationState
const t = Translations.t.general.attribution
const josmState = new UIEventSource<"OK" | string>(undefined)
// Reset after 15s
josmState.stabilized(15000).addCallbackD(() => josmState.setData(undefined));
josmState.stabilized(15000).addCallbackD(() => josmState.setData(undefined))
const showButton = state.osmConnection.userDetails.map(
(ud) => ud.loggedIn && ud.csCount >= Constants.userJourney.historyLinkVisible
);
)
function openJosm() {
const bbox = state.mapProperties. bounds.data;
const bbox = state.mapProperties.bounds.data
if (bbox === undefined) {
return;
return
}
const top = bbox.getNorth();
const bottom = bbox.getSouth();
const right = bbox.getEast();
const left = bbox.getWest();
const josmLink = `http://127.0.0.1:8111/load_and_zoom?left=${left}&right=${right}&top=${top}&bottom=${bottom}`;
const top = bbox.getNorth()
const bottom = bbox.getSouth()
const right = bbox.getEast()
const left = bbox.getWest()
const josmLink = `http://127.0.0.1:8111/load_and_zoom?left=${left}&right=${right}&top=${top}&bottom=${bottom}`
Utils.download(josmLink)
.then((answer) => josmState.setData(answer.replace(/\n/g, "").trim()))
.catch(() => josmState.setData("ERROR"));
.catch(() => josmState.setData("ERROR"))
}
</script>
{#if $showButton}
{#if $josmState === undefined}
<!-- empty -->

View file

@ -1,7 +1,7 @@
<script lang="ts">
import ToSvelte from "./ToSvelte.svelte"
import Svg from "../../Svg"
import Share from "../../assets/svg/Share.svelte";
import Share from "../../assets/svg/Share.svelte"
export let generateShareData: () => {
text: string
@ -26,6 +26,6 @@
<button on:click={share} class="secondary m-0 h-8 w-8 p-0">
<slot name="content">
<Share class="w-7 h-7 p-1"/>
<Share class="h-7 w-7 p-1" />
</slot>
</button>

View file

@ -1,7 +1,7 @@
<script lang="ts">
import Locale from "../i18n/Locale"
import LinkToWeblate from "./LinkToWeblate"
import Translate from "../../assets/svg/Translate.svelte";
import Translate from "../../assets/svg/Translate.svelte"
/**
* Shows a small icon which will open up weblate; a contributor can translate the item for 'context' there

View file

@ -4,7 +4,7 @@
import { Store } from "../../Logic/UIEventSource"
import Tr from "../Base/Tr.svelte"
import ToSvelte from "../Base/ToSvelte.svelte"
import Mapillary_black from "../../assets/svg/Mapillary_black.svelte";
import Mapillary_black from "../../assets/svg/Mapillary_black.svelte"
/*
A subtleButton which opens mapillary in a new tab at the current location
@ -22,7 +22,7 @@
</script>
<a class="button flex items-center" href={mapillaryLink} target="_blank">
<Mapillary_black class="w-12 h-12 m-2 mr-4 shrink-0"/>
<Mapillary_black class="m-2 mr-4 h-12 w-12 shrink-0" />
<div class="flex flex-col">
<Tr t={Translations.t.general.attribution.openMapillary} />
<Tr cls="subtle" t={Translations.t.general.attribution.mapillaryHelp} />

View file

@ -16,7 +16,7 @@
import LayerConfig from "../../Models/ThemeConfig/LayerConfig"
import { Utils } from "../../Utils"
import { createEventDispatcher } from "svelte"
import Move_arrows from "../../assets/svg/Move_arrows.svelte";
import Move_arrows from "../../assets/svg/Move_arrows.svelte"
/**
* An advanced location input, which has support to:
@ -126,6 +126,6 @@
maxDistanceInMeters="50"
>
<slot name="image" slot="image">
<Move_arrows class="h-full max-h-24" />
<Move_arrows class="h-full max-h-24" />
</slot>
</LocationInput>

View file

@ -1,21 +1,21 @@
<script lang="ts">
import Translations from "../i18n/Translations";
import Tr from "../Base/Tr.svelte";
import NextButton from "../Base/NextButton.svelte";
import Geosearch from "./Geosearch.svelte";
import ThemeViewState from "../../Models/ThemeViewState";
import { UIEventSource } from "../../Logic/UIEventSource";
import { SearchIcon } from "@rgossiaux/svelte-heroicons/solid";
import { twJoin } from "tailwind-merge";
import { Utils } from "../../Utils";
import type { GeolocationPermissionState } from "../../Logic/State/GeoLocationState";
import { GeoLocationState } from "../../Logic/State/GeoLocationState";
import If from "../Base/If.svelte";
import { ExclamationTriangleIcon } from "@babeard/svelte-heroicons/mini";
import type { Readable } from "svelte/store";
import Add from "../../assets/svg/Add.svelte";
import Location_refused from "../../assets/svg/Location_refused.svelte";
import Crosshair from "../../assets/svg/Crosshair.svelte";
import Translations from "../i18n/Translations"
import Tr from "../Base/Tr.svelte"
import NextButton from "../Base/NextButton.svelte"
import Geosearch from "./Geosearch.svelte"
import ThemeViewState from "../../Models/ThemeViewState"
import { UIEventSource } from "../../Logic/UIEventSource"
import { SearchIcon } from "@rgossiaux/svelte-heroicons/solid"
import { twJoin } from "tailwind-merge"
import { Utils } from "../../Utils"
import type { GeolocationPermissionState } from "../../Logic/State/GeoLocationState"
import { GeoLocationState } from "../../Logic/State/GeoLocationState"
import If from "../Base/If.svelte"
import { ExclamationTriangleIcon } from "@babeard/svelte-heroicons/mini"
import type { Readable } from "svelte/store"
import Add from "../../assets/svg/Add.svelte"
import Location_refused from "../../assets/svg/Location_refused.svelte"
import Crosshair from "../../assets/svg/Crosshair.svelte"
/**
* The theme introduction panel
@ -71,7 +71,7 @@
<If condition={state.featureSwitches.featureSwitchGeolocation}>
{#if $currentGPSLocation !== undefined || $geopermission === "prompt"}
<button class="flex w-full items-center gap-x-2" on:click={jumpToCurrentLocation}>
<Crosshair class="w-8 h-8"/>
<Crosshair class="h-8 w-8" />
<Tr t={Translations.t.general.openTheMapAtGeolocation} />
</button>
<!-- No geolocation granted - we don't show the button -->
@ -81,17 +81,23 @@
on:click={jumpToCurrentLocation}
>
<!-- Even though disabled, when clicking we request the location again in case the contributor dismissed the location popup -->
<Crosshair class="w-8 h-8" style="animation: 3s linear 0s infinite normal none running spin;" />
<Crosshair
class="h-8 w-8"
style="animation: 3s linear 0s infinite normal none running spin;"
/>
<Tr t={Translations.t.general.waitingForGeopermission} />
</button>
{:else if $geopermission === "denied"}
<button class="disabled flex w-full items-center gap-x-2">
<Location_refused class="w-8 h-8"/>
<Location_refused class="h-8 w-8" />
<Tr t={Translations.t.general.geopermissionDenied} />
</button>
{:else}
<button class="disabled flex w-full items-center gap-x-2">
<Crosshair class="w-8 h-8" style="animation: 3s linear 0s infinite normal none running spin;" />
<Crosshair
class="h-8 w-8"
style="animation: 3s linear 0s infinite normal none running spin;"
/>
<Tr t={Translations.t.general.waitingForLocation} />
</button>
{/if}
@ -149,7 +155,7 @@
<div class="links-as-button links-w-full m-2 flex flex-col gap-y-1">
<!-- bottom buttons, a bit hidden away: switch layout -->
<a class="flex" href={Utils.HomepageLink()}>
<Add class="h-6 w-6"/>
<Add class="h-6 w-6" />
<Tr t={Translations.t.general.backToIndex} />
</a>
</div>

View file

@ -3,15 +3,15 @@
* Shows an 'upload'-button which will start the upload for this feature
*/
import type { SpecialVisualizationState } from "../SpecialVisualization";
import { ImmutableStore, Store } from "../../Logic/UIEventSource";
import type { OsmTags } from "../../Models/OsmFeature";
import LoginToggle from "../Base/LoginToggle.svelte";
import Translations from "../i18n/Translations";
import Tr from "../Base/Tr.svelte";
import UploadingImageCounter from "./UploadingImageCounter.svelte";
import FileSelector from "../Base/FileSelector.svelte";
import Camera_plus from "../../assets/svg/Camera_plus.svelte";
import type { SpecialVisualizationState } from "../SpecialVisualization"
import { ImmutableStore, Store } from "../../Logic/UIEventSource"
import type { OsmTags } from "../../Models/OsmFeature"
import LoginToggle from "../Base/LoginToggle.svelte"
import Translations from "../i18n/Translations"
import Tr from "../Base/Tr.svelte"
import UploadingImageCounter from "./UploadingImageCounter.svelte"
import FileSelector from "../Base/FileSelector.svelte"
import Camera_plus from "../../assets/svg/Camera_plus.svelte"
export let state: SpecialVisualizationState
@ -57,7 +57,7 @@
{#if image !== undefined}
<img src={image} />
{:else}
<Camera_plus class="block w-12 h-12 p-1 text-4xl"/>
<Camera_plus class="block h-12 w-12 p-1 text-4xl" />
{/if}
{#if labelText}
{labelText}

View file

@ -6,7 +6,7 @@
import MaplibreMap from "../../Map/MaplibreMap.svelte"
import ToSvelte from "../../Base/ToSvelte.svelte"
import Svg from "../../../Svg.js"
import Direction_stroke from "../../../assets/svg/Direction_stroke.svelte";
import Direction_stroke from "../../../assets/svg/Direction_stroke.svelte"
/**
* A visualisation to pick a direction on a map background.
@ -68,6 +68,6 @@
</div>
<div bind:this={directionElem} class="absolute top-0 left-0 h-full w-full">
<Direction_stroke/>
<Direction_stroke />
</div>
</div>

View file

@ -12,7 +12,7 @@
import * as turf from "@turf/turf"
import LayerConfig from "../../../Models/ThemeConfig/LayerConfig"
import { createEventDispatcher, onDestroy } from "svelte"
import Move_arrows from "../../../assets/svg/Move_arrows.svelte";
import Move_arrows from "../../../assets/svg/Move_arrows.svelte"
/**
* A visualisation to pick a location on a map background
@ -91,7 +91,7 @@
class="pointer-events-none absolute top-0 left-0 flex h-full w-full items-center p-8 opacity-50"
>
<slot name="image">
<Move_arrows class="h-full max-h-24"/>
<Move_arrows class="h-full max-h-24" />
</slot>
</div>

View file

@ -1,44 +1,42 @@
<script lang="ts">
// Languages in the language itself
import native from "../../assets/language_native.json";
import native from "../../assets/language_native.json"
// Translated languages
import language_translations from "../../assets/language_translations.json";
import language_translations from "../../assets/language_translations.json"
import { UIEventSource } from "../../Logic/UIEventSource";
import Locale from "../i18n/Locale";
import { LanguageIcon } from "@babeard/svelte-heroicons/solid";
import Dropdown from "../Base/Dropdown.svelte";
import { UIEventSource } from "../../Logic/UIEventSource"
import Locale from "../i18n/Locale"
import { LanguageIcon } from "@babeard/svelte-heroicons/solid"
import Dropdown from "../Base/Dropdown.svelte"
/**
* Languages one can choose from
* Defaults to _all_ languages known by MapComplete
*/
export let availableLanguages: string[] = Object.keys(native);
export let availableLanguages: string[] = Object.keys(native)
/**
* EventStore to assign to, defaults to 'Locale.langauge'
*/
export let assignTo: UIEventSource<string> = Locale.language;
export let preferredLanguages: UIEventSource<string[]> = undefined;
let preferredFiltered: string[] = undefined;
preferredLanguages?.addCallbackAndRunD(preferredLanguages => {
let lng = navigator.language;
export let assignTo: UIEventSource<string> = Locale.language
export let preferredLanguages: UIEventSource<string[]> = undefined
let preferredFiltered: string[] = undefined
preferredLanguages?.addCallbackAndRunD((preferredLanguages) => {
let lng = navigator.language
if (lng === "en-US") {
lng = "en";
lng = "en"
}
if (preferredLanguages?.indexOf(lng) < 0) {
preferredLanguages?.push(lng);
preferredLanguages?.push(lng)
}
preferredFiltered = preferredLanguages?.filter(l => availableLanguages.indexOf(l) >= 0);
});
let current = Locale.language;
preferredFiltered = preferredLanguages?.filter((l) => availableLanguages.indexOf(l) >= 0)
})
let current = Locale.language
</script>
{#if availableLanguages?.length > 1}
<form class="flex items-center">
<LanguageIcon class="h-4 w-4 mr-1" />
<LanguageIcon class="mr-1 h-4 w-4" />
<Dropdown value={assignTo}>
{#if preferredFiltered}
{#each preferredFiltered as language}
@ -49,18 +47,17 @@
{/if}
</option>
{/each}
<option disabled></option>
<option disabled />
{/if}
{#each availableLanguages as language}
<option value={language} class="font-bold">
{native[language] ?? ""}
{#if language !== $current}
({(language_translations[language]?.[$current] + " - " + language) ?? language})
({language_translations[language]?.[$current] + " - " + language ?? language})
{/if}
</option>
{/each}
</Dropdown>
</form>
{/if}

View file

@ -1,17 +1,18 @@
<script lang="ts">
import { IconConfig } from "../../Models/ThemeConfig/PointRenderingConfig";
import { ImmutableStore, Store } from "../../Logic/UIEventSource";
import DynamicIcon from "./DynamicIcon.svelte";
import TagRenderingConfig from "../../Models/ThemeConfig/TagRenderingConfig";
import { IconConfig } from "../../Models/ThemeConfig/PointRenderingConfig"
import { ImmutableStore, Store } from "../../Logic/UIEventSource"
import DynamicIcon from "./DynamicIcon.svelte"
import TagRenderingConfig from "../../Models/ThemeConfig/TagRenderingConfig"
/**
* Renders a 'marker', which consists of multiple 'icons'
*/
export let marker: IconConfig[] = config?.marker;
export let tags: Store<Record<string, string>>;
export let marker: IconConfig[] = config?.marker
export let tags: Store<Record<string, string>>
export let rotation: TagRenderingConfig
let _rotation = rotation ? tags.map(tags => rotation.GetRenderValue(tags).Subs(tags).txt) : new ImmutableStore(0);
let _rotation = rotation
? tags.map((tags) => rotation.GetRenderValue(tags).Subs(tags).txt)
: new ImmutableStore(0)
</script>
{#if marker && marker}

View file

@ -19,9 +19,9 @@
import Teardrop from "../../assets/svg/Teardrop.svelte"
import Teardrop_with_hole_green from "../../assets/svg/Teardrop_with_hole_green.svelte"
import Triangle from "../../assets/svg/Triangle.svelte"
import Brick_wall_square from "../../assets/svg/Brick_wall_square.svelte";
import Brick_wall_round from "../../assets/svg/Brick_wall_round.svelte";
import Gps_arrow from "../../assets/svg/Gps_arrow.svelte";
import Brick_wall_square from "../../assets/svg/Brick_wall_square.svelte"
import Brick_wall_round from "../../assets/svg/Brick_wall_round.svelte"
import Gps_arrow from "../../assets/svg/Gps_arrow.svelte"
/**
* Renders a single icon.

View file

@ -12,7 +12,7 @@
import { createEventDispatcher } from "svelte"
import ToSvelte from "../Base/ToSvelte.svelte"
import Svg from "../../Svg"
import Plantnet_logo from "../../assets/svg/Plantnet_logo.svelte";
import Plantnet_logo from "../../assets/svg/Plantnet_logo.svelte"
/**
* The main entry point for the plantnet wizard
@ -143,7 +143,7 @@
</BackButton>
{/if}
<div class="low-interaction flex self-end rounded-xl p-2">
<Plantnet_logo class="w-8 h-8 p-1 mr-1 bg-white rounded-full"/>
<Plantnet_logo class="mr-1 h-8 w-8 rounded-full bg-white p-1" />
<Tr t={t.poweredByPlantnet} />
</div>
</div>

View file

@ -3,110 +3,110 @@
* This component ties together all the steps that are needed to create a new point.
* There are many subcomponents which help with that
*/
import type { SpecialVisualizationState } from "../../SpecialVisualization";
import PresetList from "./PresetList.svelte";
import type PresetConfig from "../../../Models/ThemeConfig/PresetConfig";
import LayerConfig from "../../../Models/ThemeConfig/LayerConfig";
import Tr from "../../Base/Tr.svelte";
import SubtleButton from "../../Base/SubtleButton.svelte";
import Translations from "../../i18n/Translations.js";
import TagHint from "../TagHint.svelte";
import { And } from "../../../Logic/Tags/And.js";
import LoginToggle from "../../Base/LoginToggle.svelte";
import Constants from "../../../Models/Constants.js";
import FilteredLayer from "../../../Models/FilteredLayer";
import { Store, UIEventSource } from "../../../Logic/UIEventSource";
import { EyeIcon, EyeOffIcon } from "@rgossiaux/svelte-heroicons/solid";
import LoginButton from "../../Base/LoginButton.svelte";
import NewPointLocationInput from "../../BigComponents/NewPointLocationInput.svelte";
import CreateNewNodeAction from "../../../Logic/Osm/Actions/CreateNewNodeAction";
import { OsmWay } from "../../../Logic/Osm/OsmObject";
import { Tag } from "../../../Logic/Tags/Tag";
import type { WayId } from "../../../Models/OsmFeature";
import Loading from "../../Base/Loading.svelte";
import type { GlobalFilter } from "../../../Models/GlobalFilter";
import { onDestroy } from "svelte";
import NextButton from "../../Base/NextButton.svelte";
import BackButton from "../../Base/BackButton.svelte";
import ToSvelte from "../../Base/ToSvelte.svelte";
import Svg from "../../../Svg";
import OpenBackgroundSelectorButton from "../../BigComponents/OpenBackgroundSelectorButton.svelte";
import { twJoin } from "tailwind-merge";
import Confirm from "../../../assets/svg/Confirm.svelte";
import Close from "../../../assets/svg/Close.svelte";
import type { SpecialVisualizationState } from "../../SpecialVisualization"
import PresetList from "./PresetList.svelte"
import type PresetConfig from "../../../Models/ThemeConfig/PresetConfig"
import LayerConfig from "../../../Models/ThemeConfig/LayerConfig"
import Tr from "../../Base/Tr.svelte"
import SubtleButton from "../../Base/SubtleButton.svelte"
import Translations from "../../i18n/Translations.js"
import TagHint from "../TagHint.svelte"
import { And } from "../../../Logic/Tags/And.js"
import LoginToggle from "../../Base/LoginToggle.svelte"
import Constants from "../../../Models/Constants.js"
import FilteredLayer from "../../../Models/FilteredLayer"
import { Store, UIEventSource } from "../../../Logic/UIEventSource"
import { EyeIcon, EyeOffIcon } from "@rgossiaux/svelte-heroicons/solid"
import LoginButton from "../../Base/LoginButton.svelte"
import NewPointLocationInput from "../../BigComponents/NewPointLocationInput.svelte"
import CreateNewNodeAction from "../../../Logic/Osm/Actions/CreateNewNodeAction"
import { OsmWay } from "../../../Logic/Osm/OsmObject"
import { Tag } from "../../../Logic/Tags/Tag"
import type { WayId } from "../../../Models/OsmFeature"
import Loading from "../../Base/Loading.svelte"
import type { GlobalFilter } from "../../../Models/GlobalFilter"
import { onDestroy } from "svelte"
import NextButton from "../../Base/NextButton.svelte"
import BackButton from "../../Base/BackButton.svelte"
import ToSvelte from "../../Base/ToSvelte.svelte"
import Svg from "../../../Svg"
import OpenBackgroundSelectorButton from "../../BigComponents/OpenBackgroundSelectorButton.svelte"
import { twJoin } from "tailwind-merge"
import Confirm from "../../../assets/svg/Confirm.svelte"
import Close from "../../../assets/svg/Close.svelte"
export let coordinate: { lon: number; lat: number };
export let state: SpecialVisualizationState;
export let coordinate: { lon: number; lat: number }
export let state: SpecialVisualizationState
let selectedPreset: {
preset: PresetConfig
layer: LayerConfig
icon: string
tags: Record<string, string>
} = undefined;
let checkedOfGlobalFilters: number = 0;
let confirmedCategory = false;
} = undefined
let checkedOfGlobalFilters: number = 0
let confirmedCategory = false
$: if (selectedPreset === undefined) {
confirmedCategory = false;
creating = false;
checkedOfGlobalFilters = 0;
confirmedCategory = false
creating = false
checkedOfGlobalFilters = 0
}
let flayer: FilteredLayer = undefined;
let layerIsDisplayed: UIEventSource<boolean> | undefined = undefined;
let layerHasFilters: Store<boolean> | undefined = undefined;
let globalFilter: UIEventSource<GlobalFilter[]> = state.layerState.globalFilters;
let _globalFilter: GlobalFilter[] = [];
let flayer: FilteredLayer = undefined
let layerIsDisplayed: UIEventSource<boolean> | undefined = undefined
let layerHasFilters: Store<boolean> | undefined = undefined
let globalFilter: UIEventSource<GlobalFilter[]> = state.layerState.globalFilters
let _globalFilter: GlobalFilter[] = []
onDestroy(
globalFilter.addCallbackAndRun((globalFilter) => {
console.log("Global filters are", globalFilter);
_globalFilter = globalFilter ?? [];
console.log("Global filters are", globalFilter)
_globalFilter = globalFilter ?? []
})
);
)
$: {
flayer = state.layerState.filteredLayers.get(selectedPreset?.layer?.id);
layerIsDisplayed = flayer?.isDisplayed;
layerHasFilters = flayer?.hasFilter;
flayer = state.layerState.filteredLayers.get(selectedPreset?.layer?.id)
layerIsDisplayed = flayer?.isDisplayed
layerHasFilters = flayer?.hasFilter
}
const t = Translations.t.general.add;
const t = Translations.t.general.add
const zoom = state.mapProperties.zoom;
const zoom = state.mapProperties.zoom
const isLoading = state.dataIsLoading;
let preciseCoordinate: UIEventSource<{ lon: number; lat: number }> = new UIEventSource(undefined);
let snappedToObject: UIEventSource<string> = new UIEventSource<string>(undefined);
const isLoading = state.dataIsLoading
let preciseCoordinate: UIEventSource<{ lon: number; lat: number }> = new UIEventSource(undefined)
let snappedToObject: UIEventSource<string> = new UIEventSource<string>(undefined)
// Small helper variable: if the map is tapped, we should let the 'Next'-button grab some attention as users have to click _that_ to continue, not the map
let preciseInputIsTapped = false;
let preciseInputIsTapped = false
let creating = false;
let creating = false
/**
* Call when the user should restart the flow by clicking on the map, e.g. because they disabled filters.
* Will delete the lastclick-location
*/
function abort() {
state.selectedElement.setData(undefined);
state.selectedElement.setData(undefined)
// When aborted, we force the contributors to place the pin _again_
// This is because there might be a nearby object that was disabled; this forces them to re-evaluate the map
state.lastClickObject.features.setData([]);
preciseInputIsTapped = false;
state.lastClickObject.features.setData([])
preciseInputIsTapped = false
}
async function confirm() {
creating = true;
const location: { lon: number; lat: number } = preciseCoordinate.data;
const snapTo: WayId | undefined = <WayId>snappedToObject.data;
creating = true
const location: { lon: number; lat: number } = preciseCoordinate.data
const snapTo: WayId | undefined = <WayId>snappedToObject.data
const tags: Tag[] = selectedPreset.preset.tags.concat(
..._globalFilter.map((f) => f?.onNewPoint?.tags ?? [])
);
console.log("Creating new point at", location, "snapped to", snapTo, "with tags", tags);
)
console.log("Creating new point at", location, "snapped to", snapTo, "with tags", tags)
let snapToWay: undefined | OsmWay = undefined;
let snapToWay: undefined | OsmWay = undefined
if (snapTo !== undefined && snapTo !== null) {
const downloaded = await state.osmObjectDownloader.DownloadObjectAsync(snapTo, 0);
const downloaded = await state.osmObjectDownloader.DownloadObjectAsync(snapTo, 0)
if (downloaded !== "deleted") {
snapToWay = downloaded;
snapToWay = downloaded
}
}
@ -114,44 +114,44 @@
theme: state.layout?.id ?? "unkown",
changeType: "create",
snapOnto: snapToWay,
reusePointWithinMeters: 1
});
await state.changes.applyAction(newElementAction);
state.newFeatures.features.ping();
reusePointWithinMeters: 1,
})
await state.changes.applyAction(newElementAction)
state.newFeatures.features.ping()
// The 'changes' should have created a new point, which added this into the 'featureProperties'
const newId = newElementAction.newElementId;
console.log("Applied pending changes, fetching store for", newId);
const tagsStore = state.featureProperties.getStore(newId);
const newId = newElementAction.newElementId
console.log("Applied pending changes, fetching store for", newId)
const tagsStore = state.featureProperties.getStore(newId)
if (!tagsStore) {
console.error("Bug: no tagsStore found for", newId);
console.error("Bug: no tagsStore found for", newId)
}
{
// Set some metainfo
const properties = tagsStore.data;
const properties = tagsStore.data
if (snapTo) {
// metatags (starting with underscore) are not uploaded, so we can safely mark this
delete properties["_referencing_ways"];
properties["_referencing_ways"] = `["${snapTo}"]`;
delete properties["_referencing_ways"]
properties["_referencing_ways"] = `["${snapTo}"]`
}
properties["_backend"] = state.osmConnection.Backend();
properties["_last_edit:timestamp"] = new Date().toISOString();
const userdetails = state.osmConnection.userDetails.data;
properties["_last_edit:contributor"] = userdetails.name;
properties["_last_edit:uid"] = "" + userdetails.uid;
tagsStore.ping();
properties["_backend"] = state.osmConnection.Backend()
properties["_last_edit:timestamp"] = new Date().toISOString()
const userdetails = state.osmConnection.userDetails.data
properties["_last_edit:contributor"] = userdetails.name
properties["_last_edit:uid"] = "" + userdetails.uid
tagsStore.ping()
}
const feature = state.indexedFeatures.featuresById.data.get(newId);
console.log("Selecting feature", feature, "and opening their popup");
abort();
state.selectedLayer.setData(selectedPreset.layer);
state.selectedElement.setData(feature);
tagsStore.ping();
const feature = state.indexedFeatures.featuresById.data.get(newId)
console.log("Selecting feature", feature, "and opening their popup")
abort()
state.selectedLayer.setData(selectedPreset.layer)
state.selectedElement.setData(feature)
tagsStore.ping()
}
function confirmSync() {
confirm()
.then((_) => console.debug("New point successfully handled"))
.catch((e) => console.error("Handling the new point went wrong due to", e));
.catch((e) => console.error("Handling the new point went wrong due to", e))
}
</script>

View file

@ -9,7 +9,7 @@
import Lazy from "../Base/Lazy"
import BaseUIElement from "../BaseUIElement"
import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig"
import { VariableUiElement } from "../Base/VariableUIElement";
import { VariableUiElement } from "../Base/VariableUIElement"
//Svelte props
export let tags: UIEventSource<any>
@ -55,7 +55,11 @@
return parts
})
const tagsTable = new VariableUiElement(allTags.mapD(_allTags => new Table(["Key", "Value"], _allTags).SetClass("zebra-table break-all")))
const tagsTable = new VariableUiElement(
allTags.mapD((_allTags) =>
new Table(["Key", "Value"], _allTags).SetClass("zebra-table break-all")
)
)
</script>
<section>

View file

@ -15,8 +15,8 @@
import NewPointLocationInput from "../BigComponents/NewPointLocationInput.svelte"
import ToSvelte from "../Base/ToSvelte.svelte"
import Svg from "../../Svg"
import Layers from "../../assets/svg/Layers.svelte";
import AddSmall from "../../assets/svg/AddSmall.svelte";
import Layers from "../../assets/svg/Layers.svelte"
import AddSmall from "../../assets/svg/AddSmall.svelte"
export let coordinate: UIEventSource<{ lon: number; lat: number }>
export let state: SpecialVisualizationState
@ -99,7 +99,7 @@
<Tr t={Translations.t.notes.noteLayerHasFilters} />
</div>
<SubtleButton on:click={() => notelayer.disableAllFilters()}>
<Layers class="mr-4 h-8 w-8"/>
<Layers class="mr-4 h-8 w-8" />
<Tr slot="message" t={Translations.t.notes.disableAllNoteFilters} />
</SubtleButton>
</div>

View file

@ -11,7 +11,7 @@
import ToSvelte from "../Base/ToSvelte.svelte"
import { XCircleIcon } from "@babeard/svelte-heroicons/solid"
import exp from "constants"
import Camera_plus from "../../assets/svg/Camera_plus.svelte";
import Camera_plus from "../../assets/svg/Camera_plus.svelte"
export let tags: Store<OsmTags>
export let state: SpecialVisualizationState
@ -43,7 +43,7 @@
expanded = true
}}
>
<Camera_plus class="block w-8 h-8 p-1 mr-2"/>
<Camera_plus class="mr-2 block h-8 w-8 p-1" />
<Tr t={t.seeNearby} />
</button>
{/if}

View file

@ -23,8 +23,8 @@
import UserRelatedState from "../../../Logic/State/UserRelatedState"
import { twJoin } from "tailwind-merge"
import { TagUtils } from "../../../Logic/Tags/TagUtils"
import Search from "../../../assets/svg/Search.svelte";
import Login from "../../../assets/svg/Login.svelte";
import Search from "../../../assets/svg/Search.svelte"
import Login from "../../../assets/svg/Login.svelte"
export let config: TagRenderingConfig
export let tags: UIEventSource<Record<string, string>>
@ -213,7 +213,7 @@
{#if config.mappings?.length >= 8}
<div class="sticky flex w-full">
<Search class="h-6 w-6"/>
<Search class="h-6 w-6" />
<input type="text" bind:value={$searchTerm} class="w-full" />
</div>
{/if}

View file

@ -12,7 +12,7 @@
import LayerConfig from "../../Models/ThemeConfig/LayerConfig"
import ToSvelte from "../Base/ToSvelte.svelte"
import Svg from "../../Svg"
import Mangrove_logo from "../../assets/svg/Mangrove_logo.svelte";
import Mangrove_logo from "../../assets/svg/Mangrove_logo.svelte"
/**
* An element showing all reviews
@ -41,7 +41,7 @@
<Tr t={Translations.t.reviews.no_reviews_yet} />
{/if}
<div class="flex justify-end">
<Mangrove_logo class="w-12 h-12 shrink-0 p-1"/>
<Mangrove_logo class="h-12 w-12 shrink-0 p-1" />
<Tr cls="text-sm subtle" t={Translations.t.reviews.attribution} />
</div>
</div>

View file

@ -2,9 +2,9 @@
import ToSvelte from "../Base/ToSvelte.svelte"
import Svg from "../../Svg"
import { createEventDispatcher } from "svelte"
import Star from "../../assets/svg/Star.svelte";
import Star_half from "../../assets/svg/Star_half.svelte";
import Star_outline from "../../assets/svg/Star_outline.svelte";
import Star from "../../assets/svg/Star.svelte"
import Star_half from "../../assets/svg/Star_half.svelte"
import Star_outline from "../../assets/svg/Star_outline.svelte"
export let score: number
export let cutoff: number
@ -26,10 +26,10 @@
on:mousemove={(e) => dispatch("hover", { score: getScore(e) })}
>
{#if score >= cutoff}
<Star class={starSize}/>
<Star class={starSize} />
{:else if score + 10 >= cutoff}
<Star_half class={starSize}/>
<Star_half class={starSize} />
{:else}
<Star_outline class={starSize}/>
<Star_outline class={starSize} />
{/if}
</div>

View file

@ -1,36 +1,36 @@
<script lang="ts">
import NextButton from "./Base/NextButton.svelte"
import { Store, UIEventSource } from "../Logic/UIEventSource"
import EditLayerState, { EditThemeState } from "./Studio/EditLayerState"
import EditLayer from "./Studio/EditLayer.svelte"
import Loading from "../assets/svg/Loading.svelte"
import StudioServer from "./Studio/StudioServer"
import LoginToggle from "./Base/LoginToggle.svelte"
import { OsmConnection } from "../Logic/Osm/OsmConnection"
import { QueryParameters } from "../Logic/Web/QueryParameters"
import NextButton from "./Base/NextButton.svelte"
import { Store, UIEventSource } from "../Logic/UIEventSource"
import EditLayerState, { EditThemeState } from "./Studio/EditLayerState"
import EditLayer from "./Studio/EditLayer.svelte"
import Loading from "../assets/svg/Loading.svelte"
import StudioServer from "./Studio/StudioServer"
import LoginToggle from "./Base/LoginToggle.svelte"
import { OsmConnection } from "../Logic/Osm/OsmConnection"
import { QueryParameters } from "../Logic/Web/QueryParameters"
import layerSchemaRaw from "../../src/assets/schemas/layerconfigmeta.json"
import layoutSchemaRaw from "../../src/assets/schemas/layoutconfigmeta.json"
import layerSchemaRaw from "../../src/assets/schemas/layerconfigmeta.json"
import layoutSchemaRaw from "../../src/assets/schemas/layoutconfigmeta.json"
import If from "./Base/If.svelte"
import BackButton from "./Base/BackButton.svelte"
import ChooseLayerToEdit from "./Studio/ChooseLayerToEdit.svelte"
import FloatOver from "./Base/FloatOver.svelte"
import Walkthrough from "./Walkthrough/Walkthrough.svelte"
import * as intro from "../assets/studio_introduction.json"
import * as intro_tagrenderings from "../assets/studio_tagrenderings_intro.json"
import If from "./Base/If.svelte"
import BackButton from "./Base/BackButton.svelte"
import ChooseLayerToEdit from "./Studio/ChooseLayerToEdit.svelte"
import FloatOver from "./Base/FloatOver.svelte"
import Walkthrough from "./Walkthrough/Walkthrough.svelte"
import * as intro from "../assets/studio_introduction.json"
import * as intro_tagrenderings from "../assets/studio_tagrenderings_intro.json"
import { QuestionMarkCircleIcon } from "@babeard/svelte-heroicons/mini"
import type { ConfigMeta } from "./Studio/configMeta"
import EditTheme from "./Studio/EditTheme.svelte"
import * as meta from "../../package.json"
import Checkbox from "./Base/Checkbox.svelte"
import { Utils } from "../Utils"
import Translations from "./i18n/Translations"
import Tr from "./Base/Tr.svelte"
import Add from "../assets/svg/Add.svelte"
import { QuestionMarkCircleIcon } from "@babeard/svelte-heroicons/mini"
import type { ConfigMeta } from "./Studio/configMeta"
import EditTheme from "./Studio/EditTheme.svelte"
import * as meta from "../../package.json"
import Checkbox from "./Base/Checkbox.svelte"
import { Utils } from "../Utils"
import Translations from "./i18n/Translations"
import Tr from "./Base/Tr.svelte"
import Add from "../assets/svg/Add.svelte"
export let studioUrl =
export let studioUrl =
window.location.hostname === "127.0.0.2"
? "http://127.0.0.1:1235"
: "https://studio.mapcomplete.org"
@ -196,7 +196,7 @@
<QuestionMarkCircleIcon class="h-6 w-6" />
Show the introduction again
</button>
<a class="flex button" href={Utils.HomepageLink()}>
<a class="button flex" href={Utils.HomepageLink()}>
<Add class="h-6 w-6" />
<Tr t={Translations.t.general.backToIndex} />
</a>

View file

@ -1,8 +1,8 @@
<script lang="ts">
import Svg from "../Svg"
import Loading from "./Base/Loading.svelte"
import ToSvelte from "./Base/ToSvelte.svelte"
import Community from "../assets/svg/Community.svelte"
import Svg from "../Svg"
import Loading from "./Base/Loading.svelte"
import ToSvelte from "./Base/ToSvelte.svelte"
import Community from "../assets/svg/Community.svelte"
</script>
<div>
@ -41,16 +41,16 @@
<div class="flex">
<button class="primary">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Main action
</button>
<button class="primary disabled">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Main action (disabled)
</button>
<button class="small">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Small button
</button>
@ -59,11 +59,11 @@
</div>
<div class="flex">
<button>
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Secondary action
</button>
<button class="disabled">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Secondary action (disabled)
</button>
</div>
@ -82,7 +82,7 @@
</label>
<label for="javascript">
<input id="javascript" name="fav_language" type="radio" value="JavaScript" />
<Community class="w-8 h-8"/>
<Community class="h-8 w-8" />
JavaScript
</label>
</div>
@ -106,26 +106,26 @@
<div class="flex">
<button class="primary">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Main action
</button>
<button class="primary disabled">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Main action (disabled)
</button>
<button class="small">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Small button
</button>
</div>
<div class="flex">
<button>
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Secondary action
</button>
<button class="disabled">
<Community class="w-6 h-6" />
<Community class="h-6 w-6" />
Secondary action (disabled)
</button>
</div>

View file

@ -1,6 +1,5 @@
<script lang="ts">
// Testing grounds
</script>
<div class="w-full">
No tests
</div>
<div class="w-full">No tests</div>

View file

@ -1,71 +1,71 @@
<script lang="ts">
import { Store, UIEventSource } from "../Logic/UIEventSource"
import { Map as MlMap } from "maplibre-gl"
import MaplibreMap from "./Map/MaplibreMap.svelte"
import FeatureSwitchState from "../Logic/State/FeatureSwitchState"
import MapControlButton from "./Base/MapControlButton.svelte"
import ToSvelte from "./Base/ToSvelte.svelte"
import If from "./Base/If.svelte"
import { GeolocationControl } from "./BigComponents/GeolocationControl"
import type { Feature } from "geojson"
import SelectedElementView from "./BigComponents/SelectedElementView.svelte"
import LayerConfig from "../Models/ThemeConfig/LayerConfig"
import Filterview from "./BigComponents/Filterview.svelte"
import ThemeViewState from "../Models/ThemeViewState"
import type { MapProperties } from "../Models/MapProperties"
import Geosearch from "./BigComponents/Geosearch.svelte"
import Translations from "./i18n/Translations"
import { CogIcon, EyeIcon, MenuIcon, XCircleIcon } from "@rgossiaux/svelte-heroicons/solid"
import Tr from "./Base/Tr.svelte"
import CommunityIndexView from "./BigComponents/CommunityIndexView.svelte"
import FloatOver from "./Base/FloatOver.svelte"
import PrivacyPolicy from "./BigComponents/PrivacyPolicy"
import Constants from "../Models/Constants"
import TabbedGroup from "./Base/TabbedGroup.svelte"
import UserRelatedState from "../Logic/State/UserRelatedState"
import LoginToggle from "./Base/LoginToggle.svelte"
import LoginButton from "./Base/LoginButton.svelte"
import CopyrightPanel from "./BigComponents/CopyrightPanel"
import DownloadPanel from "./DownloadFlow/DownloadPanel.svelte"
import ModalRight from "./Base/ModalRight.svelte"
import { Utils } from "../Utils"
import Hotkeys from "./Base/Hotkeys"
import { VariableUiElement } from "./Base/VariableUIElement"
import SvelteUIElement from "./Base/SvelteUIElement"
import OverlayToggle from "./BigComponents/OverlayToggle.svelte"
import LevelSelector from "./BigComponents/LevelSelector.svelte"
import ExtraLinkButton from "./BigComponents/ExtraLinkButton"
import SelectedElementTitle from "./BigComponents/SelectedElementTitle.svelte"
import ThemeIntroPanel from "./BigComponents/ThemeIntroPanel.svelte"
import type { RasterLayerPolygon } from "../Models/RasterLayers"
import { AvailableRasterLayers } from "../Models/RasterLayers"
import RasterLayerOverview from "./Map/RasterLayerOverview.svelte"
import IfHidden from "./Base/IfHidden.svelte"
import { onDestroy } from "svelte"
import MapillaryLink from "./BigComponents/MapillaryLink.svelte"
import OpenIdEditor from "./BigComponents/OpenIdEditor.svelte"
import OpenBackgroundSelectorButton from "./BigComponents/OpenBackgroundSelectorButton.svelte"
import StateIndicator from "./BigComponents/StateIndicator.svelte"
import ShareScreen from "./BigComponents/ShareScreen.svelte"
import UploadingImageCounter from "./Image/UploadingImageCounter.svelte"
import PendingChangesIndicator from "./BigComponents/PendingChangesIndicator.svelte"
import Cross from "../assets/svg/Cross.svelte"
import Summary from "./BigComponents/Summary.svelte"
import Mastodon from "../assets/svg/Mastodon.svelte"
import Bug from "../assets/svg/Bug.svelte"
import Liberapay from "../assets/svg/Liberapay.svelte"
import Min from "../assets/svg/Min.svelte"
import Plus from "../assets/svg/Plus.svelte"
import Filter from "../assets/svg/Filter.svelte"
import Add from "../assets/svg/Add.svelte"
import Statistics from "../assets/svg/Statistics.svelte"
import Community from "../assets/svg/Community.svelte"
import Download from "../assets/svg/Download.svelte"
import Share from "../assets/svg/Share.svelte"
import LanguagePicker from "./InputElement/LanguagePicker.svelte"
import OpenJosm from "./Base/OpenJosm.svelte"
import { Store, UIEventSource } from "../Logic/UIEventSource"
import { Map as MlMap } from "maplibre-gl"
import MaplibreMap from "./Map/MaplibreMap.svelte"
import FeatureSwitchState from "../Logic/State/FeatureSwitchState"
import MapControlButton from "./Base/MapControlButton.svelte"
import ToSvelte from "./Base/ToSvelte.svelte"
import If from "./Base/If.svelte"
import { GeolocationControl } from "./BigComponents/GeolocationControl"
import type { Feature } from "geojson"
import SelectedElementView from "./BigComponents/SelectedElementView.svelte"
import LayerConfig from "../Models/ThemeConfig/LayerConfig"
import Filterview from "./BigComponents/Filterview.svelte"
import ThemeViewState from "../Models/ThemeViewState"
import type { MapProperties } from "../Models/MapProperties"
import Geosearch from "./BigComponents/Geosearch.svelte"
import Translations from "./i18n/Translations"
import { CogIcon, EyeIcon, MenuIcon, XCircleIcon } from "@rgossiaux/svelte-heroicons/solid"
import Tr from "./Base/Tr.svelte"
import CommunityIndexView from "./BigComponents/CommunityIndexView.svelte"
import FloatOver from "./Base/FloatOver.svelte"
import PrivacyPolicy from "./BigComponents/PrivacyPolicy"
import Constants from "../Models/Constants"
import TabbedGroup from "./Base/TabbedGroup.svelte"
import UserRelatedState from "../Logic/State/UserRelatedState"
import LoginToggle from "./Base/LoginToggle.svelte"
import LoginButton from "./Base/LoginButton.svelte"
import CopyrightPanel from "./BigComponents/CopyrightPanel"
import DownloadPanel from "./DownloadFlow/DownloadPanel.svelte"
import ModalRight from "./Base/ModalRight.svelte"
import { Utils } from "../Utils"
import Hotkeys from "./Base/Hotkeys"
import { VariableUiElement } from "./Base/VariableUIElement"
import SvelteUIElement from "./Base/SvelteUIElement"
import OverlayToggle from "./BigComponents/OverlayToggle.svelte"
import LevelSelector from "./BigComponents/LevelSelector.svelte"
import ExtraLinkButton from "./BigComponents/ExtraLinkButton"
import SelectedElementTitle from "./BigComponents/SelectedElementTitle.svelte"
import ThemeIntroPanel from "./BigComponents/ThemeIntroPanel.svelte"
import type { RasterLayerPolygon } from "../Models/RasterLayers"
import { AvailableRasterLayers } from "../Models/RasterLayers"
import RasterLayerOverview from "./Map/RasterLayerOverview.svelte"
import IfHidden from "./Base/IfHidden.svelte"
import { onDestroy } from "svelte"
import MapillaryLink from "./BigComponents/MapillaryLink.svelte"
import OpenIdEditor from "./BigComponents/OpenIdEditor.svelte"
import OpenBackgroundSelectorButton from "./BigComponents/OpenBackgroundSelectorButton.svelte"
import StateIndicator from "./BigComponents/StateIndicator.svelte"
import ShareScreen from "./BigComponents/ShareScreen.svelte"
import UploadingImageCounter from "./Image/UploadingImageCounter.svelte"
import PendingChangesIndicator from "./BigComponents/PendingChangesIndicator.svelte"
import Cross from "../assets/svg/Cross.svelte"
import Summary from "./BigComponents/Summary.svelte"
import Mastodon from "../assets/svg/Mastodon.svelte"
import Bug from "../assets/svg/Bug.svelte"
import Liberapay from "../assets/svg/Liberapay.svelte"
import Min from "../assets/svg/Min.svelte"
import Plus from "../assets/svg/Plus.svelte"
import Filter from "../assets/svg/Filter.svelte"
import Add from "../assets/svg/Add.svelte"
import Statistics from "../assets/svg/Statistics.svelte"
import Community from "../assets/svg/Community.svelte"
import Download from "../assets/svg/Download.svelte"
import Share from "../assets/svg/Share.svelte"
import LanguagePicker from "./InputElement/LanguagePicker.svelte"
import OpenJosm from "./Base/OpenJosm.svelte"
export let state: ThemeViewState
export let state: ThemeViewState
let layout = state.layout
let maplibremap: UIEventSource<MlMap> = state.map
@ -214,7 +214,7 @@
<!-- bottom left elements -->
<If condition={state.featureSwitches.featureSwitchFilter}>
<MapControlButton on:click={() => state.guistate.openFilterView()}>
<Filter class="h-6 w-6"/>
<Filter class="h-6 w-6" />
</MapControlButton>
</If>
<If condition={state.featureSwitches.featureSwitchBackgroundSelection}>
@ -254,10 +254,10 @@
</div>
</If>
<MapControlButton on:click={() => mapproperties.zoom.update((z) => z + 1)}>
<Plus class="w-8 h-8" />
<Plus class="h-8 w-8" />
</MapControlButton>
<MapControlButton on:click={() => mapproperties.zoom.update((z) => z - 1)}>
<Min class="w-8 h-8"/>
<Min class="h-8 w-8" />
</MapControlButton>
<If condition={featureSwitches.featureSwitchGeolocation}>
<MapControlButton>
@ -273,7 +273,7 @@
</div>
<LoginToggle ignoreLoading={true} {state}>
{#if ($showCrosshair === "yes" && $currentZoom >= 17) || $showCrosshair === "always" || $arrowKeysWereUsed !== undefined }
{#if ($showCrosshair === "yes" && $currentZoom >= 17) || $showCrosshair === "always" || $arrowKeysWereUsed !== undefined}
<div
class="pointer-events-none absolute top-0 left-0 flex h-full w-full items-center justify-center"
>
@ -350,7 +350,7 @@
</div>
<div class="flex" slot="title1">
<Filter class="w-4 h-4"/>
<Filter class="h-4 w-4" />
<Tr t={Translations.t.general.menu.filter} />
</div>
@ -374,7 +374,7 @@
<div class="flex" slot="title2">
<If condition={state.featureSwitches.featureSwitchEnableExport}>
<Download class="w-4 h-4"/>
<Download class="h-4 w-4" />
<Tr t={Translations.t.general.download.title} />
</If>
</div>
@ -389,7 +389,7 @@
<ToSvelte construct={() => new CopyrightPanel(state)} slot="content3" />
<div class="flex" slot="title4">
<Share class="w-4 h-4"/>
<Share class="h-4 w-4" />
<Tr t={Translations.t.general.sharescreen.title} />
</div>
<div class="m-2" slot="content4">
@ -441,17 +441,17 @@
<Tr t={Translations.t.general.aboutMapComplete.intro} />
<a class="flex" href={Utils.HomepageLink()}>
<Add class="h-6 w-6"/>
<Add class="h-6 w-6" />
<Tr t={Translations.t.general.backToIndex} />
</a>
<a class="flex" href="https://github.com/pietervdvn/MapComplete/issues" target="_blank">
<Bug class="h-6 w-6"/>
<Bug class="h-6 w-6" />
<Tr t={Translations.t.general.attribution.openIssueTracker} />
</a>
<a class="flex" href="https://en.osm.town/@MapComplete" target="_blank">
<Mastodon class="w-6 h-6" />
<Mastodon class="h-6 w-6" />
<Tr t={Translations.t.general.attribution.followOnMastodon} />
</a>
@ -495,7 +495,7 @@
</div>
<div class="flex" slot="title2">
<Community class="w-6 h-6"/>
<Community class="h-6 w-6" />
<Tr t={Translations.t.communityIndex.title} />
</div>
<div class="m-2" slot="content2">
@ -513,7 +513,7 @@
<div class="m-2 flex flex-col" slot="content4">
<If condition={featureSwitches.featureSwitchEnableLogin}>
<OpenIdEditor mapProperties={state.mapProperties} />
<OpenJosm {state}/>
<OpenJosm {state} />
<MapillaryLink mapProperties={state.mapProperties} />
</If>

View file

@ -1,25 +1,24 @@
<script lang="ts">
import BackButton from "../Base/BackButton.svelte";
import NextButton from "../Base/NextButton.svelte";
import { createEventDispatcher } from "svelte";
import BackButton from "../Base/BackButton.svelte"
import NextButton from "../Base/NextButton.svelte"
import { createEventDispatcher } from "svelte"
const dispatch = createEventDispatcher<{ back; next }>();
export let islast = false;
export let isFirst = false;
export let pageNumber: number = undefined;
export let totalPages: number = undefined;
const dispatch = createEventDispatcher<{ back; next }>()
export let islast = false
export let isFirst = false
export let pageNumber: number = undefined
export let totalPages: number = undefined
</script>
<div class="flex h-full w-full flex-col justify-between link-underline">
<div class="link-underline flex h-full w-full flex-col justify-between">
<div class="overflow-y-auto">
<slot />
</div>
<div class="flex flex-col">
{#if pageNumber !== undefined && totalPages !== undefined}
<div class="flex justify-end">
<div class="subtle">{pageNumber+1}/{totalPages}</div>
<div class="subtle">{pageNumber + 1}/{totalPages}</div>
</div>
{/if}
<div class="flex w-full">
@ -35,8 +34,6 @@
Next
{/if}
</NextButton>
</div>
</div>
</div>

View file

@ -9,7 +9,7 @@
import WikidataPreviewBox from "./WikidataPreviewBox"
import Tr from "../Base/Tr.svelte"
import Translations from "../i18n/Translations"
import Wikipedia from "../../assets/svg/Wikipedia.svelte";
import Wikipedia from "../../assets/svg/Wikipedia.svelte"
/**
* Shows a wikipedia-article + wikidata preview for the given item
@ -19,7 +19,7 @@
{#if $wikipediaDetails.articleUrl}
<a class="flex" href={$wikipediaDetails.articleUrl} rel="noreferrer" target="_blank">
<Wikipedia class="h-6 w-6"/>
<Wikipedia class="h-6 w-6" />
<Tr t={Translations.t.general.wikipedia.fromWikipedia} />
</a>
{/if}

View file

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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
{"sections":["# How to work with TagRenderings\n\nThe information box shows various attributes of the selected feature in a human friendly way.\n\nThis is done by a **tagRendering** which converts attributes into text.\n\nThis can be done by using **predefined options** (mappings) or with a **render**-string\n","# Predefined options\n\nA predefined option states that, `if` a certain tag is present, `then` a certain text should be shown.\n\nFor example, a playground may be lit or not.\nIn OpenStreetMap, this is encoded with the tag `lit=yes` or `lit=no`. We might want to show `This playground is lit at night` and `This playground is not lit at night` to users of MapComplete.\n\nThis is what this will look like in the interface:\n\n<img class=\"w-1/2\" src=\"./assets/docs/PredefinedOption.png\"/>\n","# Substituting attributes\n\nIf none of the predefined options match, the string given in the `render`-field is used (under the question _\"What text should be rendered?\"_).\n\nA special property about all shown texts is that, **if the name of a key appears between braces, this will be replaced by the corresponding value**.\n\nFor example, if the object has tags `min_age=3` and the text to display is `Accessible to kids older than {min_age} years`, then this will be displayed to the user as **Accessible to kids older than 3 years**\n\nNote that this also works withing predifined options\n","# Special values\n\nSpecial components can be summoned by calling them. For example, the relevant wikipedia will be displayed by entering the text `{wikipedia()}`. A table with opening hours is displayed with `{opening_hours()}`. For a full reference, [see the documentation](../SpecialRenderings.md).\n","# Requesting data with predefined options\n\nThese renderings can be turned into a way to contribute data easily. If a **question** is provided, then these renderings will be asked if unknown or gain the pencil to make changes. \n\nA predefined option will show up as an option that can be picked.\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionPredefinedOptions.png\"/>\n","# Requesting data with an input field\n\nIt is also possible to have a text field. For this, the **key** to write into must be given (_What is the name of the attribute that should be written to?_), in this case `max_age`.\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionTextField.png\"/>\n","# Combining predefined options and freeform text\n\nA text field and predefined options can be combined. The contributor can then choose between a predefined option or filling out something.\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionCombined.png\"/>\n","# Selecting multiple values\n\nOne can set a question to allow multiple answers. This works with predefined options or a freeform text field.\n\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionMulti.png\"/>\n\nNote that these will be rendered as a list:\n\n<img class=\"w-1/2\" src=\"./assets/docs/RenderMulti.png\"/>\n"]}
{"sections":["# How to work with TagRenderings\n\nThe information box shows various attributes of the selected feature in a human friendly way.\n\nThis is done by a **tagRendering** which converts attributes into text.\n\nThis can be done by using **predefined options** (mappings) or with a **render**-string\n","# Predefined options\n\nA predefined option states that, `if` a certain tag is present, `then` a certain text should be shown.\n\nFor example, a playground may be lit or not.\nIn OpenStreetMap, this is encoded with the tag `lit=yes` or `lit=no`. We might want to show `This playground is lit at night` and `This playground is not lit at night` to users of MapComplete.\n\nThis is what this will look like in the interface:\n\n<img class=\"w-1/2\" src=\"./assets/docs/PredefinedOption.png\"/>\n","# Substituting attributes\n\nIf none of the predefined options match, the string given in the `render`-field is used (under the question _\"What text should be rendered?\"_).\n\nA special property about all shown texts is that, **if the name of a key appears between braces, this will be replaced by the corresponding value**.\n\nFor example, if the object has tags `min_age=3` and the text to display is `Accessible to kids older than {min_age} years`, then this will be displayed to the user as **Accessible to kids older than 3 years**\n\nNote that this also works withing predifined options\n","# Special values\n\nSpecial components can be summoned by calling them. For example, the relevant wikipedia will be displayed by entering the text `{wikipedia()}`. A table with opening hours is displayed with `{opening_hours()}`. For a full reference, [see the documentation](https://github.com/pietervdvn/MapComplete/blob/master/Docs/SpecialRenderings.md).\n","# Requesting data with predefined options\n\nThese renderings can be turned into a way to contribute data easily. If a **question** is provided, then these renderings will be asked if unknown or gain the pencil to make changes. \n\nA predefined option will show up as an option that can be picked.\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionPredefinedOptions.png\"/>\n","# Requesting data with an input field\n\nIt is also possible to have a text field. For this, the **key** to write into must be given (_What is the name of the attribute that should be written to?_), in this case `max_age`.\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionTextField.png\"/>\n","# Combining predefined options and freeform text\n\nA text field and predefined options can be combined. The contributor can then choose between a predefined option or filling out something.\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionCombined.png\"/>\n","# Selecting multiple values\n\nOne can set a question to allow multiple answers. This works with predefined options or a freeform text field.\n\n<img class=\"w-1/2\" src=\"./assets/docs/QuestionMulti.png\"/>\n\nNote that these will be rendered as a list:\n\n<img class=\"w-1/2\" src=\"./assets/docs/RenderMulti.png\"/>\n"]}

View file

@ -1,4 +1,38 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="303px" height="374px" viewBox="0 0 303 374" version="1.1"> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(43.921569%,77.254903%,28.627452%);fill-opacity:1;" d="M 163.890625 344.988281 C 158.277344 356.675781 141.632812 356.675781 136.019531 344.988281 L 41.4375 148.097656 C 36.507812 137.839844 43.988281 125.953125 55.375 125.953125 L 244.535156 125.953125 C 255.917969 125.953125 263.398438 137.839844 258.46875 148.097656 Z M 163.890625 344.988281 "/> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(43.921569%,77.254903%,28.627452%);fill-opacity:1;" d="M 303 151.453125 C 303 235.101562 235.171875 302.910156 151.5 302.910156 C 67.828125 302.910156 0 235.101562 0 151.453125 C 0 67.808594 67.828125 0 151.5 0 C 235.171875 0 303 67.808594 303 151.453125 Z M 303 151.453125 "/> <path style="fill: none !important;stroke-width:7.514114;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;" d="M 22.101015 291.358766 L 5.785842 275.043593 " transform="matrix(4.837809,-4.836357,4.837809,4.836357,-1287.063942,-1153.71106)"/> <path style="fill: none !important;stroke-width:7.514114;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;" d="M 22.125279 274.965231 L 5.810459 291.28005 " transform="matrix(4.837809,-4.836357,4.837809,4.836357,-1287.063942,-1153.71106)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="303px"
height="374px"
viewBox="0 0 303 374"
version="1.1"
>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(43.921569%,77.254903%,28.627452%);fill-opacity:1;"
d="M 163.890625 344.988281 C 158.277344 356.675781 141.632812 356.675781 136.019531 344.988281 L 41.4375 148.097656 C 36.507812 137.839844 43.988281 125.953125 55.375 125.953125 L 244.535156 125.953125 C 255.917969 125.953125 263.398438 137.839844 258.46875 148.097656 Z M 163.890625 344.988281 "
/>
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(43.921569%,77.254903%,28.627452%);fill-opacity:1;"
d="M 303 151.453125 C 303 235.101562 235.171875 302.910156 151.5 302.910156 C 67.828125 302.910156 0 235.101562 0 151.453125 C 0 67.808594 67.828125 0 151.5 0 C 235.171875 0 303 67.808594 303 151.453125 Z M 303 151.453125 "
/>
<path
style="fill: none !important;stroke-width:7.514114;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;"
d="M 22.101015 291.358766 L 5.785842 275.043593 "
transform="matrix(4.837809,-4.836357,4.837809,4.836357,-1287.063942,-1153.71106)"
/>
<path
style="fill: none !important;stroke-width:7.514114;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;"
d="M 22.125279 274.965231 L 5.810459 291.28005 "
transform="matrix(4.837809,-4.836357,4.837809,4.836357,-1287.063942,-1153.71106)"
/>
</g>
</svg>

View file

@ -1,4 +1,29 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill-rule:nonzero;fill:rgb(21.568628%,83.92157%,28.627452%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(37.64706%,37.64706%,37.64706%);stroke-opacity:1;stroke-miterlimit:4;" d="M 98 49.021438 C 98 76.083729 76.062292 98.021438 49 98.021438 C 21.937708 98.021438 0 76.083729 0 49.021438 C 0 21.959146 21.937708 0.0214375 49 0.0214375 C 76.062292 0.0214375 98 21.959146 98 49.021438 Z M 98 49.021438 " transform="matrix(3.826531,0,0,3.826531,0,0)"/> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 185.398438 53.390625 C 176.808594 53.523438 168.636719 57.125 162.738281 63.378906 C 157.074219 69.394531 153.96875 77.378906 154.085938 85.640625 L 154.085938 152.132812 L 88.527344 152.132812 C 79.929688 152.011719 71.644531 155.371094 65.566406 161.453125 C 56.40625 170.613281 53.710938 184.414062 58.761719 196.347656 C 63.808594 208.28125 75.585938 215.960938 88.539062 215.765625 L 154.085938 215.765625 L 154.085938 281.003906 C 153.898438 292.488281 159.917969 303.183594 169.835938 308.984375 C 179.753906 314.785156 192.027344 314.785156 201.945312 308.992188 C 211.863281 303.199219 217.890625 292.503906 217.707031 281.019531 L 217.707031 215.765625 L 283.894531 215.765625 C 295.296875 215.820312 305.855469 209.769531 311.574219 199.90625 C 317.292969 190.042969 317.296875 177.871094 311.582031 168.007812 C 305.871094 158.140625 295.3125 152.085938 283.910156 152.132812 L 217.703125 152.132812 L 217.703125 85.640625 C 217.820312 77.042969 214.453125 68.765625 208.367188 62.6875 C 202.28125 56.613281 193.996094 53.261719 185.398438 53.390625 Z M 185.398438 53.390625 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill-rule:nonzero;fill:rgb(21.568628%,83.92157%,28.627452%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(37.64706%,37.64706%,37.64706%);stroke-opacity:1;stroke-miterlimit:4;"
d="M 98 49.021438 C 98 76.083729 76.062292 98.021438 49 98.021438 C 21.937708 98.021438 0 76.083729 0 49.021438 C 0 21.959146 21.937708 0.0214375 49 0.0214375 C 76.062292 0.0214375 98 21.959146 98 49.021438 Z M 98 49.021438 "
transform="matrix(3.826531,0,0,3.826531,0,0)"
/>
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;"
d="M 185.398438 53.390625 C 176.808594 53.523438 168.636719 57.125 162.738281 63.378906 C 157.074219 69.394531 153.96875 77.378906 154.085938 85.640625 L 154.085938 152.132812 L 88.527344 152.132812 C 79.929688 152.011719 71.644531 155.371094 65.566406 161.453125 C 56.40625 170.613281 53.710938 184.414062 58.761719 196.347656 C 63.808594 208.28125 75.585938 215.960938 88.539062 215.765625 L 154.085938 215.765625 L 154.085938 281.003906 C 153.898438 292.488281 159.917969 303.183594 169.835938 308.984375 C 179.753906 314.785156 192.027344 314.785156 201.945312 308.992188 C 211.863281 303.199219 217.890625 292.503906 217.707031 281.019531 L 217.707031 215.765625 L 283.894531 215.765625 C 295.296875 215.820312 305.855469 209.769531 311.574219 199.90625 C 317.292969 190.042969 317.296875 177.871094 311.582031 168.007812 C 305.871094 158.140625 295.3125 152.085938 283.910156 152.132812 L 217.703125 152.132812 L 217.703125 85.640625 C 217.820312 77.042969 214.453125 68.765625 208.367188 62.6875 C 202.28125 56.613281 193.996094 53.261719 185.398438 53.390625 Z M 185.398438 53.390625 "
/>
</g>
</svg>

View file

@ -1,4 +1,24 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="303px" height="374px" viewBox="0 0 303 374" version="1.1"> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(43.921569%,77.254903%,28.627452%);fill-opacity:1;" d="M 151.5 0 C 67.828125 0 0 67.808594 0 151.453125 C 0.0742188 203.539062 26.914062 251.933594 71.0625 279.589844 C 83.773438 287.726562 98.976562 305.320312 111.8125 321.363281 C 125.679688 338.699219 133.386719 374.292969 150.203125 374.5625 C 167.015625 374.292969 174.730469 338.699219 188.597656 321.363281 C 199.703125 307.480469 211.496094 292.414062 224.496094 283.984375 C 272.859375 257.398438 302.933594 206.628906 303 151.453125 C 303 67.808594 235.171875 0 151.5 0 Z M 151.5 0 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="303px"
height="374px"
viewBox="0 0 303 374"
version="1.1"
>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(43.921569%,77.254903%,28.627452%);fill-opacity:1;"
d="M 151.5 0 C 67.828125 0 0 67.808594 0 151.453125 C 0.0742188 203.539062 26.914062 251.933594 71.0625 279.589844 C 83.773438 287.726562 98.976562 305.320312 111.8125 321.363281 C 125.679688 338.699219 133.386719 374.292969 150.203125 374.5625 C 167.015625 374.292969 174.730469 338.699219 188.597656 321.363281 C 199.703125 307.480469 211.496094 292.414062 224.496094 283.984375 C 272.859375 257.398438 302.933594 206.628906 303 151.453125 C 303 67.808594 235.171875 0 151.5 0 Z M 151.5 0 "
/>
</g>
</svg>

View file

@ -1,4 +1,30 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:5.291667;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 14.287499 23.618748 L 4.143209 13.229167 L 14.287499 2.871556 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,0)"/> <path style="fill: none !important;stroke-width:3.96875;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 5.532271 13.229167 C 12.346946 13.21704 23.467714 13.190031 23.8125 13.200504 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,0)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:5.291667;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 14.287499 23.618748 L 4.143209 13.229167 L 14.287499 2.871556 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,0)"
/>
<path
style="fill: none !important;stroke-width:3.96875;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 5.532271 13.229167 C 12.346946 13.21704 23.467714 13.190031 23.8125 13.200504 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,0)"
/>
</g>
</svg>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,24 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="268px" height="373px" viewBox="0 0 268 373" version="1.1"> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;" d="M 88.972656 57.019531 C 69.667969 77.699219 74.996094 110.734375 74.996094 110.734375 C 74.996094 110.734375 94.699219 134.046875 133.414062 134.046875 C 172.128906 134.046875 191.84375 110.734375 191.84375 110.734375 C 191.84375 110.734375 197.09375 78.144531 178.199219 57.4375 C 190.019531 50.871094 196.980469 41.378906 194.105469 34.921875 C 190.839844 27.648438 176.441406 27 161.882812 33.476562 C 156.472656 35.878906 151.863281 38.929688 148.28125 42.175781 C 143.742188 41.355469 138.925781 40.796875 133.414062 40.796875 C 128.28125 40.796875 123.714844 41.285156 119.414062 41.980469 C 115.886719 38.792969 111.359375 35.835938 106.074219 33.476562 C 91.515625 27.023438 77.09375 27.671875 73.851562 34.921875 C 71.023438 41.242188 77.609375 50.472656 88.972656 57.019531 Z M 235.433594 207.535156 C 232.417969 206.898438 229.542969 206.535156 226.761719 206.261719 C 226.761719 205.488281 226.898438 204.757812 226.898438 203.960938 C 226.898438 191.726562 225.164062 180.046875 222.355469 168.949219 C 228.359375 169.460938 236.003906 168.082031 243.738281 164.65625 C 258.296875 158.179688 267.472656 147.035156 264.230469 139.808594 C 260.992188 132.535156 246.566406 131.886719 232.007812 138.363281 C 225.207031 141.390625 219.664062 145.453125 215.945312 149.621094 C 213.113281 142.972656 209.917969 136.585938 206.152344 130.78125 C 195.132812 139.945312 174.273438 153.625 145.15625 156.664062 L 145.15625 273.875 C 145.15625 273.875 145.0625 285.53125 133.460938 285.53125 C 121.867188 285.53125 121.777344 273.875 121.777344 273.875 L 121.777344 156.710938 C 92.636719 153.671875 71.765625 139.964844 60.765625 130.824219 C 57.160156 136.402344 54.058594 142.480469 51.296875 148.800781 C 47.542969 144.929688 42.304688 141.207031 35.972656 138.382812 C 21.414062 131.929688 6.992188 132.578125 3.75 139.828125 C 0.5 147.082031 9.683594 158.203125 24.242188 164.679688 C 31.488281 167.902344 38.675781 169.347656 44.496094 169.085938 C 41.699219 180.160156 39.941406 191.792969 39.941406 203.984375 C 39.941406 204.78125 40.082031 205.535156 40.101562 206.351562 C 37.648438 206.625 35.105469 206.992188 32.515625 207.535156 C 13.539062 211.453125 -0.996094 221.242188 0.078125 229.324219 C 1.148438 237.453125 17.421875 240.796875 36.441406 236.859375 C 38.917969 236.359375 41.347656 235.722656 43.664062 235.015625 C 47.007812 249.882812 52.359375 263.675781 59.761719 275.5625 C 55.371094 277.769531 50.804688 281.023438 46.605469 285.257812 C 34.96875 296.871094 30.246094 310.984375 36.0625 316.789062 C 41.882812 322.597656 56.019531 317.882812 67.660156 306.296875 C 71.070312 302.878906 73.808594 299.285156 75.929688 295.730469 C 91.824219 311.257812 111.734375 320.546875 133.460938 320.546875 C 155.492188 320.546875 175.734375 310.984375 191.707031 295.070312 C 193.855469 298.828125 196.730469 302.652344 200.335938 306.25 C 211.949219 317.859375 226.121094 322.574219 231.941406 316.769531 C 237.757812 310.960938 233.035156 296.871094 221.398438 285.257812 C 216.902344 280.75 212.019531 277.335938 207.363281 275.082031 C 214.710938 263.246094 220.003906 249.449219 223.316406 234.628906 C 225.9375 235.445312 228.675781 236.222656 231.550781 236.835938 C 250.5625 240.773438 266.832031 237.40625 267.925781 229.300781 C 268.953125 221.242188 254.417969 211.453125 235.433594 207.535156 Z M 235.433594 207.535156 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="268px"
height="373px"
viewBox="0 0 268 373"
version="1.1"
>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;"
d="M 88.972656 57.019531 C 69.667969 77.699219 74.996094 110.734375 74.996094 110.734375 C 74.996094 110.734375 94.699219 134.046875 133.414062 134.046875 C 172.128906 134.046875 191.84375 110.734375 191.84375 110.734375 C 191.84375 110.734375 197.09375 78.144531 178.199219 57.4375 C 190.019531 50.871094 196.980469 41.378906 194.105469 34.921875 C 190.839844 27.648438 176.441406 27 161.882812 33.476562 C 156.472656 35.878906 151.863281 38.929688 148.28125 42.175781 C 143.742188 41.355469 138.925781 40.796875 133.414062 40.796875 C 128.28125 40.796875 123.714844 41.285156 119.414062 41.980469 C 115.886719 38.792969 111.359375 35.835938 106.074219 33.476562 C 91.515625 27.023438 77.09375 27.671875 73.851562 34.921875 C 71.023438 41.242188 77.609375 50.472656 88.972656 57.019531 Z M 235.433594 207.535156 C 232.417969 206.898438 229.542969 206.535156 226.761719 206.261719 C 226.761719 205.488281 226.898438 204.757812 226.898438 203.960938 C 226.898438 191.726562 225.164062 180.046875 222.355469 168.949219 C 228.359375 169.460938 236.003906 168.082031 243.738281 164.65625 C 258.296875 158.179688 267.472656 147.035156 264.230469 139.808594 C 260.992188 132.535156 246.566406 131.886719 232.007812 138.363281 C 225.207031 141.390625 219.664062 145.453125 215.945312 149.621094 C 213.113281 142.972656 209.917969 136.585938 206.152344 130.78125 C 195.132812 139.945312 174.273438 153.625 145.15625 156.664062 L 145.15625 273.875 C 145.15625 273.875 145.0625 285.53125 133.460938 285.53125 C 121.867188 285.53125 121.777344 273.875 121.777344 273.875 L 121.777344 156.710938 C 92.636719 153.671875 71.765625 139.964844 60.765625 130.824219 C 57.160156 136.402344 54.058594 142.480469 51.296875 148.800781 C 47.542969 144.929688 42.304688 141.207031 35.972656 138.382812 C 21.414062 131.929688 6.992188 132.578125 3.75 139.828125 C 0.5 147.082031 9.683594 158.203125 24.242188 164.679688 C 31.488281 167.902344 38.675781 169.347656 44.496094 169.085938 C 41.699219 180.160156 39.941406 191.792969 39.941406 203.984375 C 39.941406 204.78125 40.082031 205.535156 40.101562 206.351562 C 37.648438 206.625 35.105469 206.992188 32.515625 207.535156 C 13.539062 211.453125 -0.996094 221.242188 0.078125 229.324219 C 1.148438 237.453125 17.421875 240.796875 36.441406 236.859375 C 38.917969 236.359375 41.347656 235.722656 43.664062 235.015625 C 47.007812 249.882812 52.359375 263.675781 59.761719 275.5625 C 55.371094 277.769531 50.804688 281.023438 46.605469 285.257812 C 34.96875 296.871094 30.246094 310.984375 36.0625 316.789062 C 41.882812 322.597656 56.019531 317.882812 67.660156 306.296875 C 71.070312 302.878906 73.808594 299.285156 75.929688 295.730469 C 91.824219 311.257812 111.734375 320.546875 133.460938 320.546875 C 155.492188 320.546875 175.734375 310.984375 191.707031 295.070312 C 193.855469 298.828125 196.730469 302.652344 200.335938 306.25 C 211.949219 317.859375 226.121094 322.574219 231.941406 316.769531 C 237.757812 310.960938 233.035156 296.871094 221.398438 285.257812 C 216.902344 280.75 212.019531 277.335938 207.363281 275.082031 C 214.710938 263.246094 220.003906 249.449219 223.316406 234.628906 C 225.9375 235.445312 228.675781 236.222656 231.550781 236.835938 C 250.5625 240.773438 266.832031 237.40625 267.925781 229.300781 C 268.953125 221.242188 254.417969 211.453125 235.433594 207.535156 Z M 235.433594 207.535156 "
/>
</g>
</svg>

View file

@ -1,4 +1,38 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;" d="M 169.460938 135.585938 C 184.714844 135.585938 197.761719 141.003906 208.59375 151.835938 C 219.425781 162.667969 224.84375 175.714844 224.84375 190.972656 C 224.84375 206.226562 219.425781 219.273438 208.59375 230.105469 C 197.761719 240.9375 184.714844 246.355469 169.460938 246.355469 C 154.203125 246.355469 141.160156 240.9375 130.324219 230.105469 C 119.492188 219.273438 114.074219 206.226562 114.074219 190.972656 C 114.074219 175.714844 119.492188 162.667969 130.324219 151.835938 C 141.160156 141.003906 154.203125 135.585938 169.460938 135.585938 M 322.921875 74.816406 C 336.511719 74.816406 348.113281 79.625 357.730469 89.242188 C 367.34375 98.855469 372.152344 110.457031 372.152344 124.046875 L 372.152344 296.355469 C 372.152344 309.945312 367.34375 321.546875 357.730469 331.164062 C 348.113281 340.777344 336.511719 345.585938 322.921875 345.585938 L 52.152344 345.585938 C 38.5625 345.585938 26.960938 340.777344 17.34375 331.164062 C 7.730469 321.546875 2.921875 309.945312 2.921875 296.355469 L 2.921875 124.046875 C 2.921875 110.457031 7.730469 98.855469 17.34375 89.242188 C 26.960938 79.625 38.5625 74.816406 52.152344 74.816406 L 77.152344 74.816406 L 86.960938 48.664062 C 89.394531 42.382812 93.851562 36.964844 100.324219 32.414062 C 106.800781 27.863281 113.433594 25.585938 120.230469 25.585938 L 218.691406 25.585938 C 225.484375 25.585938 232.121094 27.863281 238.59375 32.414062 C 245.070312 36.964844 249.523438 42.382812 251.960938 48.664062 L 261.765625 74.816406 L 322.921875 74.816406 M 169.460938 277.125 C 193.175781 277.125 213.464844 268.695312 230.324219 251.835938 C 247.183594 234.976562 255.613281 214.6875 255.613281 190.972656 C 255.613281 167.253906 247.183594 146.964844 230.324219 130.105469 C 213.464844 113.246094 193.175781 104.816406 169.460938 104.816406 C 145.742188 104.816406 125.453125 113.246094 108.59375 130.105469 C 91.734375 146.964844 83.304688 167.253906 83.304688 190.972656 C 83.304688 214.6875 91.734375 234.976562 108.59375 251.835938 C 125.453125 268.695312 145.742188 277.125 169.460938 277.125 "/> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(49.411765%,73.725492%,43.529412%);fill-opacity:1;" d="M 374.332031 308.261719 C 374.332031 343.875 345.464844 372.746094 309.851562 372.746094 C 274.238281 372.746094 245.371094 343.875 245.371094 308.261719 C 245.371094 272.652344 274.238281 243.78125 309.851562 243.78125 C 345.464844 243.78125 374.332031 272.652344 374.332031 308.261719 Z M 374.332031 308.261719 "/> <path style="fill: none !important;stroke-width:95.518036;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;" d="M 1154.783124 1044.338782 L 1543.909686 1044.338782 " transform="matrix(0.192308,0,0,0.192308,49.973197,107.396088)"/> <path style="fill: none !important;stroke-width:95.518036;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;" d="M 1349.925311 849.359094 L 1349.925311 1238.505969 " transform="matrix(0.192308,0,0,0.192308,49.973197,107.396088)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;"
d="M 169.460938 135.585938 C 184.714844 135.585938 197.761719 141.003906 208.59375 151.835938 C 219.425781 162.667969 224.84375 175.714844 224.84375 190.972656 C 224.84375 206.226562 219.425781 219.273438 208.59375 230.105469 C 197.761719 240.9375 184.714844 246.355469 169.460938 246.355469 C 154.203125 246.355469 141.160156 240.9375 130.324219 230.105469 C 119.492188 219.273438 114.074219 206.226562 114.074219 190.972656 C 114.074219 175.714844 119.492188 162.667969 130.324219 151.835938 C 141.160156 141.003906 154.203125 135.585938 169.460938 135.585938 M 322.921875 74.816406 C 336.511719 74.816406 348.113281 79.625 357.730469 89.242188 C 367.34375 98.855469 372.152344 110.457031 372.152344 124.046875 L 372.152344 296.355469 C 372.152344 309.945312 367.34375 321.546875 357.730469 331.164062 C 348.113281 340.777344 336.511719 345.585938 322.921875 345.585938 L 52.152344 345.585938 C 38.5625 345.585938 26.960938 340.777344 17.34375 331.164062 C 7.730469 321.546875 2.921875 309.945312 2.921875 296.355469 L 2.921875 124.046875 C 2.921875 110.457031 7.730469 98.855469 17.34375 89.242188 C 26.960938 79.625 38.5625 74.816406 52.152344 74.816406 L 77.152344 74.816406 L 86.960938 48.664062 C 89.394531 42.382812 93.851562 36.964844 100.324219 32.414062 C 106.800781 27.863281 113.433594 25.585938 120.230469 25.585938 L 218.691406 25.585938 C 225.484375 25.585938 232.121094 27.863281 238.59375 32.414062 C 245.070312 36.964844 249.523438 42.382812 251.960938 48.664062 L 261.765625 74.816406 L 322.921875 74.816406 M 169.460938 277.125 C 193.175781 277.125 213.464844 268.695312 230.324219 251.835938 C 247.183594 234.976562 255.613281 214.6875 255.613281 190.972656 C 255.613281 167.253906 247.183594 146.964844 230.324219 130.105469 C 213.464844 113.246094 193.175781 104.816406 169.460938 104.816406 C 145.742188 104.816406 125.453125 113.246094 108.59375 130.105469 C 91.734375 146.964844 83.304688 167.253906 83.304688 190.972656 C 83.304688 214.6875 91.734375 234.976562 108.59375 251.835938 C 125.453125 268.695312 145.742188 277.125 169.460938 277.125 "
/>
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(49.411765%,73.725492%,43.529412%);fill-opacity:1;"
d="M 374.332031 308.261719 C 374.332031 343.875 345.464844 372.746094 309.851562 372.746094 C 274.238281 372.746094 245.371094 343.875 245.371094 308.261719 C 245.371094 272.652344 274.238281 243.78125 309.851562 243.78125 C 345.464844 243.78125 374.332031 272.652344 374.332031 308.261719 Z M 374.332031 308.261719 "
/>
<path
style="fill: none !important;stroke-width:95.518036;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;"
d="M 1154.783124 1044.338782 L 1543.909686 1044.338782 "
transform="matrix(0.192308,0,0,0.192308,49.973197,107.396088)"
/>
<path
style="fill: none !important;stroke-width:95.518036;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;"
d="M 1349.925311 849.359094 L 1349.925311 1238.505969 "
transform="matrix(0.192308,0,0,0.192308,49.973197,107.396088)"
/>
</g>
</svg>

View file

@ -1,4 +1,25 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="374px" height="259px" viewBox="0 0 374 259" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 2.999896 7.285624 L 10.826182 14.99991 L 23.000104 3.00009 " transform="matrix(14.384615,0,0,14.388889,0,0)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="374px"
height="259px"
viewBox="0 0 374 259"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 2.999896 7.285624 L 10.826182 14.99991 L 23.000104 3.00009 "
transform="matrix(14.384615,0,0,14.388889,0,0)"
/>
</g>
</svg>

View file

@ -1,4 +1,25 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill:{color};" class="selectable" d="M 375 187.5 C 375 291.054688 291.054688 375 187.5 375 C 83.945312 375 0 291.054688 0 187.5 C 0 83.945312 83.945312 0 187.5 0 C 291.054688 0 375 83.945312 375 187.5 Z M 375 187.5 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill:{color};"
class="selectable"
d="M 375 187.5 C 375 291.054688 291.054688 375 187.5 375 C 83.945312 375 0 291.054688 0 187.5 C 0 83.945312 83.945312 0 187.5 0 C 291.054688 0 375 83.945312 375 187.5 Z M 375 187.5 "
/>
</g>
</svg>

View file

@ -1,4 +1,30 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:9;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 46 55.932292 L 66.551042 55.932292 " transform="matrix(3.75,0,0,3.75,0,0)"/> <path style="fill: none !important;stroke-width:9;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 46 55.534375 L 46 27.729167 " transform="matrix(3.75,0,0,3.75,0,0)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:9;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 46 55.932292 L 66.551042 55.932292 "
transform="matrix(3.75,0,0,3.75,0,0)"
/>
<path
style="fill: none !important;stroke-width:9;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 46 55.534375 L 46 27.729167 "
transform="matrix(3.75,0,0,3.75,0,0)"
/>
</g>
</svg>

View file

@ -1,4 +1,30 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:6.012842;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 23.165924 293.603402 L 3.541282 273.978759 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> <path style="fill: none !important;stroke-width:6.012921;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 23.195414 273.884226 L 3.571047 293.508593 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:6.012842;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 23.165924 293.603402 L 3.541282 273.978759 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
<path
style="fill: none !important;stroke-width:6.012921;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 23.195414 273.884226 L 3.571047 293.508593 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
</g>
</svg>

View file

@ -1,4 +1,35 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<!-- Created with Inkscape (http://www.inkscape.org/) --> <svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown width="1124.975mm" height="1111.9373mm" viewBox="0 0 1124.975 1111.9373" version="1.1" id="svg5" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> <defs id="defs2" /> <g id="layer1" transform="translate(429.38456,373.85159)" style="display:inline"> <path id="path858" d="m 465.50195,-1412.9824 c -48.13018,0 -95.14167,6.6605 -140.92968,19.3242 -517.78906,36.4545 -1004.59215,263.4542 -1364.78127,639.11132 -125.578,130.97093 -232.0356,276.80492 -318.709,432.875 l -3.0996,0.006 0.012,5.62891 c -169.1451,306.7883664 -260.6208,653.52706 -260.8652,1009.62695 v 0.0645 c 0,555.45592 220.6943,1088.26072 613.4609,1481.02732 378.0703,378.0702 885.96964,596.0875 1418.85161,611.92 18.51351,1.9864 37.20113,3.0136 56.06054,3.0136 17.25834,0 34.36078,-0.9283 51.33008,-2.5937 224.45873,-4.8504 444.64455,-45.7063 652.83597,-119.1836 -60.8675,-43.0776 -118.1478,-91.0122 -171.27933,-143.334 -121.72268,40.4323 -230.24225,90.5328 -428.68164,58.6602 l -3.38086,-1775.19732 233.78516,-0.44532 c 42.42213,-67.09791 90.54812,-130.41487 143.84375,-189.24804 l -377.98828,0.7207 -1.43946,-755.89648 634.26176,-1.38672 c 32.7782,154.928763 56.3858,319.47347 69.9629,489.41797 58.6612,-33.17515 119.6711,-62.01386 182.541,-86.28516 -13.1747,-138.65014 -32.7954,-273.7956044 -58.7852,-403.55664 l 791.918,-1.73242 c 54.2995,111.507047 97.5037,228.170813 129.2012,348.26953 72.3897,18.82425 143.1313,43.49582 211.5273,73.77148 -80.6791,-402.00209 -278.3137,-774.77273 -572.5098,-1068.96875 -363.7812,-363.78173 -847.7515,-579.57553 -1358.52731,-609.49993 -41.8967,-10.5343 -84.78727,-16.1094 -128.61524,-16.1094 z m 96.98438,204.4375 c 159.67283,49.2174 326.54513,218.8615 462.03907,516.93552 49.6393,109.20202 92.1295,232.60044 128.4531,364.44727 l -588.81053,1.28711 z m -188.97461,0.9179 1.67969,882.16411 -597.98243,1.30664 c 36.4911,-132.99204 79.25432,-257.42426 129.269536,-367.45313 133.780665,-294.30513 298.164144,-463.66612 455.992184,-515.27932 3.68603,-0.2115 7.36574,-0.4597 11.04102,-0.7383 z m 591.27148,61.1954 c 320.2851,85.8427 615.6781,254.12924 854.2344,492.68551 99.0716,99.07158 185.6177,208.20254 259.6738,324.5625 l -729.584,1.59375 c -41.2536,-159.09493 -91.7465,-308.46744 -152.5469,-442.22266 -67.1207,-147.65948 -144.9895,-275.0596 -231.7773,-376.6191 z m -1003.50195,5.9433 c -84.79247,100.5848 -161.00089,225.84047 -226.83789,370.6758 -61.29809,134.85015 -112.17438,285.51379 -153.59961,446.08594 l -720.14645,1.57422 c 67.8012,-107.37947 146.33969,-208.61822 235.49997,-301.60743 238.54174,-248.78579 538.10225,-425.81263 865.08398,-516.72853 z m 414.26953,1004.00002 1.43945,755.8418 -727.68554,1.38671 c 4.20418,-264.24481 32.77031,-520.983169 82.2207,-755.82031 z m -837.92773,1.83203 c -47.33699,237.75431 -73.46184,493.4318 -77.33789,755.75781 l -892.42186,1.70117 c 10.0141,-264.11069 74.8439,-521.07351 188.0937,-755.75 z m 839.72656,942.98437 1.3457,707.00198 -646.08984,1.414 c -46.71986,-220.2353 -75.01919,-459.8106 -82.07617,-707.03121 z m -915.85156,1.74415 c 6.57514,245.41033 32.61831,484.16193 77.38867,707.09573 l -784.53902,1.7148 c -105.8005,-220.1735 -168.8074,-460.0874 -184.1446,-707.11327 z m 917.55859,894.23433 1.68359,884.2715 C 217.38802,2544.4462 45.439072,2373.9426 -93.521484,2068.2422 -142.93255,1959.5424 -185.25941,1836.7732 -221.48047,1705.6211 Z m -796.66211,1.7422 c 41.17164,158.3984 91.48351,307.1603 152.04883,440.3985 69.28935,152.4302 150.07483,283.1451 240.259765,386.2558 C -344.1327,2446.5457 -638.16035,2278.6776 -875.7832,2041.0547 -977.36504,1939.4729 -1065.801,1827.3298 -1141.0586,1707.6328 Z" transform="scale(0.26458333)" /> <path id="path928" d="" /> <path id="path890" d="" /> <path id="path3123" d="m 500.42418,99.52416 c -162.9348,1.72512 -108.06353,223.75011 -69.65465,274.06343 l 1.09709,35.29034 c -176.038,13.83721 -191.80907,75.90897 -198.43798,158.82719 -2.02223,25.29521 3.89762,50.2628 9.81667,80.72646 97.56502,-0.71585 177.50757,-0.62612 275.07185,-0.49796 84.27329,-45.47436 147.33813,-122.20106 175.63579,-213.68411 -28.16643,-12.43076 -66.9608,-21.14889 -120.68876,-25.37209 l 1.09762,-35.29036 C 613.0731,322.8775 663.35897,97.79884 500.42418,99.52416 Z" /> </g> </svg>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
width="1124.975mm"
height="1111.9373mm"
viewBox="0 0 1124.975 1111.9373"
version="1.1"
id="svg5"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
>
<defs id="defs2" />
<g id="layer1" transform="translate(429.38456,373.85159)" style="display:inline">
<path
id="path858"
d="m 465.50195,-1412.9824 c -48.13018,0 -95.14167,6.6605 -140.92968,19.3242 -517.78906,36.4545 -1004.59215,263.4542 -1364.78127,639.11132 -125.578,130.97093 -232.0356,276.80492 -318.709,432.875 l -3.0996,0.006 0.012,5.62891 c -169.1451,306.7883664 -260.6208,653.52706 -260.8652,1009.62695 v 0.0645 c 0,555.45592 220.6943,1088.26072 613.4609,1481.02732 378.0703,378.0702 885.96964,596.0875 1418.85161,611.92 18.51351,1.9864 37.20113,3.0136 56.06054,3.0136 17.25834,0 34.36078,-0.9283 51.33008,-2.5937 224.45873,-4.8504 444.64455,-45.7063 652.83597,-119.1836 -60.8675,-43.0776 -118.1478,-91.0122 -171.27933,-143.334 -121.72268,40.4323 -230.24225,90.5328 -428.68164,58.6602 l -3.38086,-1775.19732 233.78516,-0.44532 c 42.42213,-67.09791 90.54812,-130.41487 143.84375,-189.24804 l -377.98828,0.7207 -1.43946,-755.89648 634.26176,-1.38672 c 32.7782,154.928763 56.3858,319.47347 69.9629,489.41797 58.6612,-33.17515 119.6711,-62.01386 182.541,-86.28516 -13.1747,-138.65014 -32.7954,-273.7956044 -58.7852,-403.55664 l 791.918,-1.73242 c 54.2995,111.507047 97.5037,228.170813 129.2012,348.26953 72.3897,18.82425 143.1313,43.49582 211.5273,73.77148 -80.6791,-402.00209 -278.3137,-774.77273 -572.5098,-1068.96875 -363.7812,-363.78173 -847.7515,-579.57553 -1358.52731,-609.49993 -41.8967,-10.5343 -84.78727,-16.1094 -128.61524,-16.1094 z m 96.98438,204.4375 c 159.67283,49.2174 326.54513,218.8615 462.03907,516.93552 49.6393,109.20202 92.1295,232.60044 128.4531,364.44727 l -588.81053,1.28711 z m -188.97461,0.9179 1.67969,882.16411 -597.98243,1.30664 c 36.4911,-132.99204 79.25432,-257.42426 129.269536,-367.45313 133.780665,-294.30513 298.164144,-463.66612 455.992184,-515.27932 3.68603,-0.2115 7.36574,-0.4597 11.04102,-0.7383 z m 591.27148,61.1954 c 320.2851,85.8427 615.6781,254.12924 854.2344,492.68551 99.0716,99.07158 185.6177,208.20254 259.6738,324.5625 l -729.584,1.59375 c -41.2536,-159.09493 -91.7465,-308.46744 -152.5469,-442.22266 -67.1207,-147.65948 -144.9895,-275.0596 -231.7773,-376.6191 z m -1003.50195,5.9433 c -84.79247,100.5848 -161.00089,225.84047 -226.83789,370.6758 -61.29809,134.85015 -112.17438,285.51379 -153.59961,446.08594 l -720.14645,1.57422 c 67.8012,-107.37947 146.33969,-208.61822 235.49997,-301.60743 238.54174,-248.78579 538.10225,-425.81263 865.08398,-516.72853 z m 414.26953,1004.00002 1.43945,755.8418 -727.68554,1.38671 c 4.20418,-264.24481 32.77031,-520.983169 82.2207,-755.82031 z m -837.92773,1.83203 c -47.33699,237.75431 -73.46184,493.4318 -77.33789,755.75781 l -892.42186,1.70117 c 10.0141,-264.11069 74.8439,-521.07351 188.0937,-755.75 z m 839.72656,942.98437 1.3457,707.00198 -646.08984,1.414 c -46.71986,-220.2353 -75.01919,-459.8106 -82.07617,-707.03121 z m -915.85156,1.74415 c 6.57514,245.41033 32.61831,484.16193 77.38867,707.09573 l -784.53902,1.7148 c -105.8005,-220.1735 -168.8074,-460.0874 -184.1446,-707.11327 z m 917.55859,894.23433 1.68359,884.2715 C 217.38802,2544.4462 45.439072,2373.9426 -93.521484,2068.2422 -142.93255,1959.5424 -185.25941,1836.7732 -221.48047,1705.6211 Z m -796.66211,1.7422 c 41.17164,158.3984 91.48351,307.1603 152.04883,440.3985 69.28935,152.4302 150.07483,283.1451 240.259765,386.2558 C -344.1327,2446.5457 -638.16035,2278.6776 -875.7832,2041.0547 -977.36504,1939.4729 -1065.801,1827.3298 -1141.0586,1707.6328 Z"
transform="scale(0.26458333)"
/>
<path id="path928" d="" />
<path id="path890" d="" />
<path
id="path3123"
d="m 500.42418,99.52416 c -162.9348,1.72512 -108.06353,223.75011 -69.65465,274.06343 l 1.09709,35.29034 c -176.038,13.83721 -191.80907,75.90897 -198.43798,158.82719 -2.02223,25.29521 3.89762,50.2628 9.81667,80.72646 97.56502,-0.71585 177.50757,-0.62612 275.07185,-0.49796 84.27329,-45.47436 147.33813,-122.20106 175.63579,-213.68411 -28.16643,-12.43076 -66.9608,-21.14889 -120.68876,-25.37209 l 1.09762,-35.29036 C 613.0731,322.8775 663.35897,97.79884 500.42418,99.52416 Z"
/>
</g>
</svg>

View file

@ -1,4 +1,26 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><circle fill="#F4900C" cx="18" cy="18" r="18"/><circle fill="#FFD983" cx="18" cy="18" r="14.5"/><circle fill="#F5F8FA" cx="18" cy="18" r="13"/><path fill="#CCD6DD" d="M18 8l1.531 6.304 5.54-3.375-3.375 5.54L28 18l-6.304 1.531 3.375 5.54-5.54-3.375L18 28l-1.531-6.304-5.54 3.375 3.375-5.54L8 18l6.304-1.531-3.375-5.54 5.54 3.375z"/><path fill="#292F33" d="M17.343 20.748l8.777 5.381-5.379-8.778z"/><path fill="#DD2E44" d="M18.657 15.267L9.879 9.886l5.38 8.779z"/><circle fill="#8899A6" cx="18" cy="18.008" r="3.055"/><circle fill="#F5F8FA" cx="18" cy="18.008" r="1.648"/></svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 36 36"
>
<circle fill="#F4900C" cx="18" cy="18" r="18" />
<circle fill="#FFD983" cx="18" cy="18" r="14.5" />
<circle fill="#F5F8FA" cx="18" cy="18" r="13" />
<path
fill="#CCD6DD"
d="M18 8l1.531 6.304 5.54-3.375-3.375 5.54L28 18l-6.304 1.531 3.375 5.54-5.54-3.375L18 28l-1.531-6.304-5.54 3.375 3.375-5.54L8 18l6.304-1.531-3.375-5.54 5.54 3.375z"
/>
<path fill="#292F33" d="M17.343 20.748l8.777 5.381-5.379-8.778z" />
<path fill="#DD2E44" d="M18.657 15.267L9.879 9.886l5.38 8.779z" />
<circle fill="#8899A6" cx="18" cy="18.008" r="3.055" />
<circle fill="#F5F8FA" cx="18" cy="18.008" r="1.648" />
</svg>

View file

@ -1,4 +1,49 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown width="157.33984" height="157.33984" viewBox="0 0 157.33984 157.33984" version="1.1" id="svg9" sodipodi:docname="confirm.svg" inkscape:version="1.1.2 (1:1.1+202202050950+0a00cf5339)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> <defs id="defs13" /> <sodipodi:namedview id="namedview11" pagecolor="#505050" bordercolor="#eeeeee" borderopacity="1" inkscape:pageshadow="0" inkscape:pageopacity="0" inkscape:pagecheckerboard="0" showgrid="false" inkscape:zoom="2.312" inkscape:cx="-18.598616" inkscape:cy="57.093426" inkscape:current-layer="svg9" /> <path style="fill:#35d447;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 157.33984,78.66796 c 0,43.44922 -35.21875,78.67188 -78.66796,78.67188 C 35.22266,157.33984 0,122.11718 0,78.66796 0,35.22265 35.22266,0 78.67188,0 c 43.44921,0 78.66796,35.22265 78.66796,78.66796 z m 0,0" id="path4" /> <path style="fill: none !important;stroke:#ffffff;stroke-width:19.7495;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1" d="m 37.69921,75.49609 35.55078,39.5 47.39844,-63.19922" id="path6" /> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
width="157.33984"
height="157.33984"
viewBox="0 0 157.33984 157.33984"
version="1.1"
id="svg9"
sodipodi:docname="confirm.svg"
inkscape:version="1.1.2 (1:1.1+202202050950+0a00cf5339)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
>
<defs id="defs13" />
<sodipodi:namedview
id="namedview11"
pagecolor="#505050"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.312"
inkscape:cx="-18.598616"
inkscape:cy="57.093426"
inkscape:current-layer="svg9"
/>
<path
style="fill:#35d447;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 157.33984,78.66796 c 0,43.44922 -35.21875,78.67188 -78.66796,78.67188 C 35.22266,157.33984 0,122.11718 0,78.66796 0,35.22265 35.22266,0 78.67188,0 c 43.44921,0 78.66796,35.22265 78.66796,78.66796 z m 0,0"
id="path4"
/>
<path
style="fill: none !important;stroke:#ffffff;stroke-width:19.7495;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
d="m 37.69921,75.49609 35.55078,39.5 47.39844,-63.19922"
id="path6"
/>
</svg>

View file

@ -1,4 +1,51 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown width="375px" height="375px" viewBox="0 0 375 375" version="1.1" id="svg5" sodipodi:docname="copyright.svg" inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> <defs id="defs9" /> <sodipodi:namedview id="namedview7" pagecolor="#505050" bordercolor="#eeeeee" borderopacity="1" inkscape:pageshadow="0" inkscape:pageopacity="0" inkscape:pagecheckerboard="0" showgrid="false" inkscape:zoom="2.4012481" inkscape:cx="194.06574" inkscape:cy="30.192632" inkscape:window-width="1920" inkscape:window-height="995" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg5" /> <g id="surface1" transform="matrix(1.2644961,0,0,1.2644961,-49.593016,-49.593016)"> <path style="fill:{color};fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 159.26562,170.73437 c 0.73438,-4.85156 2.35157,-9.11718 4.41016,-12.79296 2.0625,-3.67579 5,-6.76172 8.67969,-9.11719 3.52734,-2.20313 7.9375,-3.23438 13.3789,-3.37891 3.38282,0.14453 6.47266,0.73438 9.26563,1.91016 2.94141,1.32422 5.58594,3.08594 7.64453,5.29297 2.05859,2.20703 3.67969,4.85156 5,7.79297 1.32422,2.9414 1.91406,6.17578 2.05859,9.41406 h 26.32422 c -0.29297,-6.91406 -1.61718,-13.23438 -4.11718,-18.97266 -2.5,-5.73437 -5.88282,-10.73437 -10.29297,-14.85156 -4.41407,-4.11719 -9.70703,-7.35156 -15.88282,-9.70312 -6.17578,-2.35547 -12.9414,-3.38282 -20.4414,-3.38282 -9.5586,0 -17.9375,1.61719 -24.9961,5 -7.05859,3.38281 -12.9414,7.79297 -17.64843,13.52735 -4.70313,5.73437 -8.23438,12.35156 -10.44141,20 -2.20312,7.64453 -3.52734,15.58593 -3.52734,24.11718 v 3.96875 c 0,8.52735 1.17578,16.46875 3.38281,24.11719 2.20312,7.64453 5.73437,14.26172 10.44141,19.85156 4.70312,5.58594 10.58593,10.14453 17.64453,13.38282 7.05859,3.23437 15.4414,5 25,5 6.91015,0 13.3789,-1.17969 19.41015,-3.38282 6.02735,-2.20703 11.32422,-5.29687 15.87891,-9.26562 4.55859,-3.96875 8.23828,-8.52735 10.88281,-13.82422 2.64844,-5.29297 4.26563,-10.87891 4.41406,-16.91016 h -26.32421 c -0.14454,3.08985 -0.88282,5.88282 -2.20704,8.53125 -1.32031,2.64453 -3.08593,4.85157 -5.29296,6.76172 -2.20313,1.91406 -4.70313,3.38281 -7.64454,4.41406 -2.79687,1.02735 -5.73437,1.32032 -8.82421,1.46875 -5.29297,-0.14843 -9.70704,-1.17578 -13.08594,-3.38281 -3.67969,-2.35156 -6.61719,-5.4414 -8.67969,-9.11719 -2.05859,-3.67578 -3.67578,-8.08593 -4.41016,-12.9375 -0.73437,-4.85546 -1.17578,-9.85546 -1.17578,-14.70703 v -3.96875 c 0,-5.14843 0.44141,-10 1.17578,-14.85547 z M 187.5,40.449219 c -81.17187,0 -147.050781,65.878911 -147.050781,147.050781 0,81.17187 65.878911,147.05078 147.050781,147.05078 81.17187,0 147.05078,-65.87891 147.05078,-147.05078 0,-81.17187 -65.87891,-147.050781 -147.05078,-147.050781 z m 0,264.691401 c -64.84766,0 -117.640625,-52.79296 -117.640625,-117.64062 0,-64.84766 52.792965,-117.640625 117.640625,-117.640625 64.84766,0 117.64062,52.792965 117.64062,117.640625 0,64.84766 -52.79296,117.64062 -117.64062,117.64062 z m 0,0" id="path2" /> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
id="svg5"
sodipodi:docname="copyright.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
>
<defs id="defs9" />
<sodipodi:namedview
id="namedview7"
pagecolor="#505050"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.4012481"
inkscape:cx="194.06574"
inkscape:cy="30.192632"
inkscape:window-width="1920"
inkscape:window-height="995"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg5"
/>
<g id="surface1" transform="matrix(1.2644961,0,0,1.2644961,-49.593016,-49.593016)">
<path
style="fill:{color};fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 159.26562,170.73437 c 0.73438,-4.85156 2.35157,-9.11718 4.41016,-12.79296 2.0625,-3.67579 5,-6.76172 8.67969,-9.11719 3.52734,-2.20313 7.9375,-3.23438 13.3789,-3.37891 3.38282,0.14453 6.47266,0.73438 9.26563,1.91016 2.94141,1.32422 5.58594,3.08594 7.64453,5.29297 2.05859,2.20703 3.67969,4.85156 5,7.79297 1.32422,2.9414 1.91406,6.17578 2.05859,9.41406 h 26.32422 c -0.29297,-6.91406 -1.61718,-13.23438 -4.11718,-18.97266 -2.5,-5.73437 -5.88282,-10.73437 -10.29297,-14.85156 -4.41407,-4.11719 -9.70703,-7.35156 -15.88282,-9.70312 -6.17578,-2.35547 -12.9414,-3.38282 -20.4414,-3.38282 -9.5586,0 -17.9375,1.61719 -24.9961,5 -7.05859,3.38281 -12.9414,7.79297 -17.64843,13.52735 -4.70313,5.73437 -8.23438,12.35156 -10.44141,20 -2.20312,7.64453 -3.52734,15.58593 -3.52734,24.11718 v 3.96875 c 0,8.52735 1.17578,16.46875 3.38281,24.11719 2.20312,7.64453 5.73437,14.26172 10.44141,19.85156 4.70312,5.58594 10.58593,10.14453 17.64453,13.38282 7.05859,3.23437 15.4414,5 25,5 6.91015,0 13.3789,-1.17969 19.41015,-3.38282 6.02735,-2.20703 11.32422,-5.29687 15.87891,-9.26562 4.55859,-3.96875 8.23828,-8.52735 10.88281,-13.82422 2.64844,-5.29297 4.26563,-10.87891 4.41406,-16.91016 h -26.32421 c -0.14454,3.08985 -0.88282,5.88282 -2.20704,8.53125 -1.32031,2.64453 -3.08593,4.85157 -5.29296,6.76172 -2.20313,1.91406 -4.70313,3.38281 -7.64454,4.41406 -2.79687,1.02735 -5.73437,1.32032 -8.82421,1.46875 -5.29297,-0.14843 -9.70704,-1.17578 -13.08594,-3.38281 -3.67969,-2.35156 -6.61719,-5.4414 -8.67969,-9.11719 -2.05859,-3.67578 -3.67578,-8.08593 -4.41016,-12.9375 -0.73437,-4.85546 -1.17578,-9.85546 -1.17578,-14.70703 v -3.96875 c 0,-5.14843 0.44141,-10 1.17578,-14.85547 z M 187.5,40.449219 c -81.17187,0 -147.050781,65.878911 -147.050781,147.050781 0,81.17187 65.878911,147.05078 147.050781,147.05078 81.17187,0 147.05078,-65.87891 147.05078,-147.05078 0,-81.17187 -65.87891,-147.050781 -147.05078,-147.050781 z m 0,264.691401 c -64.84766,0 -117.640625,-52.79296 -117.640625,-117.64062 0,-64.84766 52.792965,-117.640625 117.640625,-117.640625 64.84766,0 117.64062,52.792965 117.64062,117.640625 0,64.84766 -52.79296,117.64062 -117.64062,117.64062 z m 0,0"
id="path2"
/>
</g>
</svg>

View file

@ -1,4 +1,42 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" width="9" height="9" viewBox="0 0 9 9" version="1.1" sodipodi:docname="cross.svg" inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" xmlns="http://www.w3.org/2000/svg" > <path style="fill: none !important;stroke:{color};stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403" d="M 1,4.5 H 8" id="path941"/> <path style="fill: none !important;stroke:{color};stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403" d="M 4.5,1 V 4" id="path941"/> <path style="fill: none !important;stroke:{color};stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403" d="M 4.5,5 V 8" id="path941"/> <path style="fill: none !important;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403" d="M 3.5,5 v 3.5 h 2 v -3 h 3 v -2 h -3 v -3 h -2 v 3 h -3 v 2 h3" id="path941"/> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
width="9"
height="9"
viewBox="0 0 9 9"
version="1.1"
sodipodi:docname="cross.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns="http://www.w3.org/2000/svg"
>
<path
style="fill: none !important;stroke:{color};stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403"
d="M 1,4.5 H 8"
id="path941"
/>
<path
style="fill: none !important;stroke:{color};stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403"
d="M 4.5,1 V 4"
id="path941"
/>
<path
style="fill: none !important;stroke:{color};stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403"
d="M 4.5,5 V 8"
id="path941"
/>
<path
style="fill: none !important;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.50314403"
d="M 3.5,5 v 3.5 h 2 v -3 h 3 v -2 h -3 v -3 h -2 v 3 h -3 v 2 h3"
id="path941"
/>
</svg>

View file

@ -1,4 +1,30 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:3.439583;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 18.97295 289.3838 L 7.74695 278.1578 " transform="matrix(11.65716,0,0,11.65716,130.176942,-3023.744742)"/> <path style="fill: none !important;stroke-width:3.439583;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 18.989705 278.103849 L 7.763705 289.329515 " transform="matrix(11.65716,0,0,11.65716,130.176942,-3023.744742)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:3.439583;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 18.97295 289.3838 L 7.74695 278.1578 "
transform="matrix(11.65716,0,0,11.65716,130.176942,-3023.744742)"
/>
<path
style="fill: none !important;stroke-width:3.439583;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 18.989705 278.103849 L 7.763705 289.329515 "
transform="matrix(11.65716,0,0,11.65716,130.176942,-3023.744742)"
/>
</g>
</svg>

View file

@ -1,4 +1,25 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown width="375px" height="375px" viewBox="0 0 375 375" version="1.1" id="svg15" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> <path id="path2" style="color:{color};fill:{color};fill-opacity:0.988235;stroke-linecap:round;stroke-linejoin:round;-inkscape-stroke:none" d="M 187.5 0.17578125 A 15 15 0 0 0 172.5 15.175781 L 172.5 43.708984 C 104.37541 50.343145 49.843699 104.61884 42.837891 172.63672 L 14.765625 172.63672 A 14.86235 14.86235 0 0 0 -0.09765625 187.5 A 14.86235 14.86235 0 0 0 14.765625 202.36133 L 42.837891 202.36133 C 49.842792 270.37794 104.37427 324.65648 172.5 331.29102 L 172.5 360.10156 A 15 15 0 0 0 187.5 375.10156 A 15 15 0 0 0 202.5 360.10156 L 202.5 331.08594 C 269.70108 323.65092 323.26953 269.82518 330.26953 202.5 L 360.08203 202.5 A 15 15 0 0 0 375.08203 187.5 A 15 15 0 0 0 360.08203 172.5 L 330.26953 172.5 C 323.26946 105.17266 269.70061 51.348735 202.5 43.914062 L 202.5 15.175781 A 15 15 0 0 0 187.5 0.17578125 z M 186.5625 80.511719 C 245.87515 80.511719 293.55078 128.18741 293.55078 187.5 C 293.55078 246.80822 245.87443 294.48828 186.5625 294.48828 C 127.25056 294.48828 79.574219 246.80822 79.574219 187.5 C 79.574219 128.1874 127.24984 80.511719 186.5625 80.511719 z M 187.5 139.21094 C 160.83203 139.21094 139.21094 160.83203 139.21094 187.5 C 139.21094 214.16797 160.83203 235.78906 187.5 235.78906 C 214.16797 235.78906 235.78906 214.16797 235.78906 187.5 C 235.78906 160.83203 214.16797 139.21094 187.5 139.21094 z " /> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
id="svg15"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
>
<path
id="path2"
style="color:{color};fill:{color};fill-opacity:0.988235;stroke-linecap:round;stroke-linejoin:round;-inkscape-stroke:none"
d="M 187.5 0.17578125 A 15 15 0 0 0 172.5 15.175781 L 172.5 43.708984 C 104.37541 50.343145 49.843699 104.61884 42.837891 172.63672 L 14.765625 172.63672 A 14.86235 14.86235 0 0 0 -0.09765625 187.5 A 14.86235 14.86235 0 0 0 14.765625 202.36133 L 42.837891 202.36133 C 49.842792 270.37794 104.37427 324.65648 172.5 331.29102 L 172.5 360.10156 A 15 15 0 0 0 187.5 375.10156 A 15 15 0 0 0 202.5 360.10156 L 202.5 331.08594 C 269.70108 323.65092 323.26953 269.82518 330.26953 202.5 L 360.08203 202.5 A 15 15 0 0 0 375.08203 187.5 A 15 15 0 0 0 360.08203 172.5 L 330.26953 172.5 C 323.26946 105.17266 269.70061 51.348735 202.5 43.914062 L 202.5 15.175781 A 15 15 0 0 0 187.5 0.17578125 z M 186.5625 80.511719 C 245.87515 80.511719 293.55078 128.18741 293.55078 187.5 C 293.55078 246.80822 245.87443 294.48828 186.5625 294.48828 C 127.25056 294.48828 79.574219 246.80822 79.574219 187.5 C 79.574219 128.1874 127.24984 80.511719 186.5625 80.511719 z M 187.5 139.21094 C 160.83203 139.21094 139.21094 160.83203 139.21094 187.5 C 139.21094 214.16797 160.83203 235.78906 187.5 235.78906 C 214.16797 235.78906 235.78906 214.16797 235.78906 187.5 C 235.78906 160.83203 214.16797 139.21094 187.5 139.21094 z "
/>
</svg>

View file

@ -1,4 +1,49 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:2.645833;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;" d="M 22.034555 283.770823 C 22.034555 288.670301 18.062773 292.642358 13.16302 292.642358 C 8.263267 292.642358 4.291486 288.670301 4.291486 283.770823 C 4.291486 278.871071 8.263267 274.899289 13.16302 274.899289 C 18.062773 274.899289 22.034555 278.871071 22.034555 283.770823 Z M 22.034555 283.770823 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> <path style="fill: none !important;stroke-width:2.097239;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;" d="M 3.28414 283.770823 L 1.041796 283.770823 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> <path style="fill: none !important;stroke-width:2.116667;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;" d="M 25.405787 283.770823 L 23.286365 283.770823 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> <path style="fill: none !important;stroke-width:2.116667;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;" d="M 13.229166 295.948823 L 13.229166 293.831329 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> <path style="fill: none !important;stroke-width:2.116667;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;" d="M 13.229166 275.057488 L 13.229166 271.612392 " transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"/> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(33.333334%,33.333334%,92.54902%);fill-opacity:0.988235;" d="M 238.824219 161.203125 L 229.523438 161.203125 L 229.523438 134.96875 C 229.523438 134.96875 229.523438 91.246094 186.066406 91.246094 C 142.609375 91.246094 142.609375 134.96875 142.609375 134.96875 L 142.609375 161.203125 L 133.308594 161.203125 C 124.042969 161.203125 116.535156 168.757812 116.535156 178.082031 L 116.535156 249.347656 C 116.582031 258.636719 124.078125 266.136719 133.308594 266.136719 L 238.824219 266.136719 C 248.085938 266.136719 255.597656 258.582031 255.597656 249.261719 L 255.597656 178.082031 C 255.597656 168.757812 248.085938 161.203125 238.824219 161.203125 Z M 186.066406 231.160156 C 176.464844 231.160156 168.683594 223.328125 168.683594 213.671875 C 168.683594 204.011719 176.464844 196.179688 186.066406 196.179688 C 195.664062 196.179688 203.449219 204.011719 203.449219 213.671875 C 203.449219 223.328125 195.664062 231.160156 186.066406 231.160156 Z M 212.140625 161.203125 L 159.992188 161.203125 L 159.992188 139.339844 C 159.992188 126.226562 159.992188 108.734375 186.066406 108.734375 C 212.140625 108.734375 212.140625 126.226562 212.140625 139.339844 Z M 212.140625 161.203125 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:2.645833;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;"
d="M 22.034555 283.770823 C 22.034555 288.670301 18.062773 292.642358 13.16302 292.642358 C 8.263267 292.642358 4.291486 288.670301 4.291486 283.770823 C 4.291486 278.871071 8.263267 274.899289 13.16302 274.899289 C 18.062773 274.899289 22.034555 278.871071 22.034555 283.770823 Z M 22.034555 283.770823 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
<path
style="fill: none !important;stroke-width:2.097239;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;"
d="M 3.28414 283.770823 L 1.041796 283.770823 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
<path
style="fill: none !important;stroke-width:2.116667;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;"
d="M 25.405787 283.770823 L 23.286365 283.770823 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
<path
style="fill: none !important;stroke-width:2.116667;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;"
d="M 13.229166 295.948823 L 13.229166 293.831329 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
<path
style="fill: none !important;stroke-width:2.116667;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(33.333334%,33.333334%,92.54902%);stroke-opacity:0.988235;stroke-miterlimit:4;"
d="M 13.229166 275.057488 L 13.229166 271.612392 "
transform="matrix(14.173228,0,0,14.173228,0.0000135166,-3834.448583)"
/>
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(33.333334%,33.333334%,92.54902%);fill-opacity:0.988235;"
d="M 238.824219 161.203125 L 229.523438 161.203125 L 229.523438 134.96875 C 229.523438 134.96875 229.523438 91.246094 186.066406 91.246094 C 142.609375 91.246094 142.609375 134.96875 142.609375 134.96875 L 142.609375 161.203125 L 133.308594 161.203125 C 124.042969 161.203125 116.535156 168.757812 116.535156 178.082031 L 116.535156 249.347656 C 116.582031 258.636719 124.078125 266.136719 133.308594 266.136719 L 238.824219 266.136719 C 248.085938 266.136719 255.597656 258.582031 255.597656 249.261719 L 255.597656 178.082031 C 255.597656 168.757812 248.085938 161.203125 238.824219 161.203125 Z M 186.066406 231.160156 C 176.464844 231.160156 168.683594 223.328125 168.683594 213.671875 C 168.683594 204.011719 176.464844 196.179688 186.066406 196.179688 C 195.664062 196.179688 203.449219 204.011719 203.449219 213.671875 C 203.449219 223.328125 195.664062 231.160156 186.066406 231.160156 Z M 212.140625 161.203125 L 159.992188 161.203125 L 159.992188 139.339844 C 159.992188 126.226562 159.992188 108.734375 186.066406 108.734375 C 212.140625 108.734375 212.140625 126.226562 212.140625 139.339844 Z M 212.140625 161.203125 "
/>
</g>
</svg>

View file

@ -1,4 +1,24 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,0%,0%);fill-opacity:1;" d="M 148.457031 148.796875 L 148.457031 269.332031 C 148.457031 271.285156 147.828125 272.890625 146.574219 274.144531 C 145.316406 275.402344 143.714844 276.027344 141.761719 276.027344 L 128.367188 276.027344 C 126.414062 276.027344 124.808594 275.402344 123.554688 274.144531 C 122.296875 272.890625 121.671875 271.285156 121.671875 269.332031 L 121.671875 148.796875 C 121.671875 146.84375 122.296875 145.238281 123.554688 143.984375 C 124.808594 142.726562 126.414062 142.101562 128.367188 142.101562 L 141.761719 142.101562 C 143.714844 142.101562 145.316406 142.726562 146.574219 143.984375 C 147.828125 145.238281 148.457031 146.84375 148.457031 148.796875 Z M 202.027344 148.796875 L 202.027344 269.332031 C 202.027344 271.285156 201.398438 272.890625 200.144531 274.144531 C 198.890625 275.402344 197.285156 276.027344 195.332031 276.027344 L 181.9375 276.027344 C 179.984375 276.027344 178.382812 275.402344 177.125 274.144531 C 175.871094 272.890625 175.242188 271.285156 175.242188 269.332031 L 175.242188 148.796875 C 175.242188 146.84375 175.871094 145.238281 177.125 143.984375 C 178.382812 142.726562 179.984375 142.101562 181.9375 142.101562 L 195.332031 142.101562 C 197.285156 142.101562 198.890625 142.726562 200.144531 143.984375 C 201.398438 145.238281 202.027344 146.84375 202.027344 148.796875 Z M 255.597656 148.796875 L 255.597656 269.332031 C 255.597656 271.285156 254.972656 272.890625 253.714844 274.144531 C 252.460938 275.402344 250.855469 276.027344 248.902344 276.027344 L 235.511719 276.027344 C 233.558594 276.027344 231.953125 275.402344 230.695312 274.144531 C 229.441406 272.890625 228.8125 271.285156 228.8125 269.332031 L 228.8125 148.796875 C 228.8125 146.84375 229.441406 145.238281 230.695312 143.984375 C 231.953125 142.726562 233.558594 142.101562 235.511719 142.101562 L 248.902344 142.101562 C 250.855469 142.101562 252.460938 142.726562 253.714844 143.984375 C 254.972656 145.238281 255.597656 146.84375 255.597656 148.796875 Z M 282.386719 300.304688 L 282.386719 101.921875 L 94.886719 101.921875 L 94.886719 300.304688 C 94.886719 303.371094 95.375 306.199219 96.351562 308.777344 C 97.328125 311.359375 98.335938 313.242188 99.382812 314.429688 C 100.429688 315.613281 101.164062 316.207031 101.582031 316.207031 L 275.6875 316.207031 C 276.105469 316.207031 276.839844 315.613281 277.886719 314.429688 C 278.933594 313.242188 279.945312 311.359375 280.921875 308.777344 C 281.898438 306.199219 282.386719 303.371094 282.386719 300.304688 Z M 141.761719 75.136719 L 235.511719 75.136719 L 225.464844 50.652344 C 224.488281 49.398438 223.304688 48.628906 221.90625 48.351562 L 155.570312 48.351562 C 154.175781 48.628906 152.992188 49.398438 152.015625 50.652344 Z M 335.957031 81.832031 L 335.957031 95.226562 C 335.957031 97.179688 335.328125 98.78125 334.074219 100.039062 C 332.816406 101.292969 331.214844 101.921875 329.261719 101.921875 L 309.171875 101.921875 L 309.171875 300.304688 C 309.171875 311.882812 305.890625 321.894531 299.335938 330.332031 C 292.777344 338.773438 284.894531 342.992188 275.6875 342.992188 L 101.582031 342.992188 C 92.375 342.992188 84.492188 338.914062 77.933594 330.75 C 71.378906 322.589844 68.097656 312.71875 68.097656 301.140625 L 68.097656 101.921875 L 48.011719 101.921875 C 46.058594 101.921875 44.453125 101.292969 43.195312 100.039062 C 41.941406 98.78125 41.3125 97.179688 41.3125 95.226562 L 41.3125 81.832031 C 41.3125 79.878906 41.941406 78.273438 43.195312 77.019531 C 44.453125 75.765625 46.058594 75.136719 48.011719 75.136719 L 112.671875 75.136719 L 127.320312 40.1875 C 129.414062 35.027344 133.179688 30.632812 138.621094 27.003906 C 144.0625 23.378906 149.574219 21.566406 155.152344 21.566406 L 222.117188 21.566406 C 227.699219 21.566406 233.207031 23.378906 238.648438 27.003906 C 244.089844 30.632812 247.855469 35.027344 249.949219 40.1875 L 264.597656 75.136719 L 329.261719 75.136719 C 331.214844 75.136719 332.816406 75.765625 334.074219 77.019531 C 335.328125 78.273438 335.957031 79.878906 335.957031 81.832031 Z M 335.957031 81.832031 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,0%,0%);fill-opacity:1;"
d="M 148.457031 148.796875 L 148.457031 269.332031 C 148.457031 271.285156 147.828125 272.890625 146.574219 274.144531 C 145.316406 275.402344 143.714844 276.027344 141.761719 276.027344 L 128.367188 276.027344 C 126.414062 276.027344 124.808594 275.402344 123.554688 274.144531 C 122.296875 272.890625 121.671875 271.285156 121.671875 269.332031 L 121.671875 148.796875 C 121.671875 146.84375 122.296875 145.238281 123.554688 143.984375 C 124.808594 142.726562 126.414062 142.101562 128.367188 142.101562 L 141.761719 142.101562 C 143.714844 142.101562 145.316406 142.726562 146.574219 143.984375 C 147.828125 145.238281 148.457031 146.84375 148.457031 148.796875 Z M 202.027344 148.796875 L 202.027344 269.332031 C 202.027344 271.285156 201.398438 272.890625 200.144531 274.144531 C 198.890625 275.402344 197.285156 276.027344 195.332031 276.027344 L 181.9375 276.027344 C 179.984375 276.027344 178.382812 275.402344 177.125 274.144531 C 175.871094 272.890625 175.242188 271.285156 175.242188 269.332031 L 175.242188 148.796875 C 175.242188 146.84375 175.871094 145.238281 177.125 143.984375 C 178.382812 142.726562 179.984375 142.101562 181.9375 142.101562 L 195.332031 142.101562 C 197.285156 142.101562 198.890625 142.726562 200.144531 143.984375 C 201.398438 145.238281 202.027344 146.84375 202.027344 148.796875 Z M 255.597656 148.796875 L 255.597656 269.332031 C 255.597656 271.285156 254.972656 272.890625 253.714844 274.144531 C 252.460938 275.402344 250.855469 276.027344 248.902344 276.027344 L 235.511719 276.027344 C 233.558594 276.027344 231.953125 275.402344 230.695312 274.144531 C 229.441406 272.890625 228.8125 271.285156 228.8125 269.332031 L 228.8125 148.796875 C 228.8125 146.84375 229.441406 145.238281 230.695312 143.984375 C 231.953125 142.726562 233.558594 142.101562 235.511719 142.101562 L 248.902344 142.101562 C 250.855469 142.101562 252.460938 142.726562 253.714844 143.984375 C 254.972656 145.238281 255.597656 146.84375 255.597656 148.796875 Z M 282.386719 300.304688 L 282.386719 101.921875 L 94.886719 101.921875 L 94.886719 300.304688 C 94.886719 303.371094 95.375 306.199219 96.351562 308.777344 C 97.328125 311.359375 98.335938 313.242188 99.382812 314.429688 C 100.429688 315.613281 101.164062 316.207031 101.582031 316.207031 L 275.6875 316.207031 C 276.105469 316.207031 276.839844 315.613281 277.886719 314.429688 C 278.933594 313.242188 279.945312 311.359375 280.921875 308.777344 C 281.898438 306.199219 282.386719 303.371094 282.386719 300.304688 Z M 141.761719 75.136719 L 235.511719 75.136719 L 225.464844 50.652344 C 224.488281 49.398438 223.304688 48.628906 221.90625 48.351562 L 155.570312 48.351562 C 154.175781 48.628906 152.992188 49.398438 152.015625 50.652344 Z M 335.957031 81.832031 L 335.957031 95.226562 C 335.957031 97.179688 335.328125 98.78125 334.074219 100.039062 C 332.816406 101.292969 331.214844 101.921875 329.261719 101.921875 L 309.171875 101.921875 L 309.171875 300.304688 C 309.171875 311.882812 305.890625 321.894531 299.335938 330.332031 C 292.777344 338.773438 284.894531 342.992188 275.6875 342.992188 L 101.582031 342.992188 C 92.375 342.992188 84.492188 338.914062 77.933594 330.75 C 71.378906 322.589844 68.097656 312.71875 68.097656 301.140625 L 68.097656 101.921875 L 48.011719 101.921875 C 46.058594 101.921875 44.453125 101.292969 43.195312 100.039062 C 41.941406 98.78125 41.3125 97.179688 41.3125 95.226562 L 41.3125 81.832031 C 41.3125 79.878906 41.941406 78.273438 43.195312 77.019531 C 44.453125 75.765625 46.058594 75.136719 48.011719 75.136719 L 112.671875 75.136719 L 127.320312 40.1875 C 129.414062 35.027344 133.179688 30.632812 138.621094 27.003906 C 144.0625 23.378906 149.574219 21.566406 155.152344 21.566406 L 222.117188 21.566406 C 227.699219 21.566406 233.207031 23.378906 238.648438 27.003906 C 244.089844 30.632812 247.855469 35.027344 249.949219 40.1875 L 264.597656 75.136719 L 329.261719 75.136719 C 331.214844 75.136719 332.816406 75.765625 334.074219 77.019531 C 335.328125 78.273438 335.957031 79.878906 335.957031 81.832031 Z M 335.957031 81.832031 "
/>
</g>
</svg>

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,104 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns="http://www.w3.org/2000/svg" version="1.0" width="860.50732pt" height="860.50732pt" viewBox="0 0 860.50732 860.50732" preserveAspectRatio="xMidYMid meet" id="svg14" sodipodi:docname="direction_gradient.svg" inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"> <defs id="defs18"> <linearGradient inkscape:collect="always" id="linearGradient832"> <stop style="stop-color:{color};stop-opacity:1;" offset="0" id="stop828"/> <stop style="stop-color:{color};stop-opacity:0;" offset="1" id="stop830"/> </linearGradient> <radialGradient inkscape:collect="always" xlink:href="#linearGradient832" id="radialGradient838" cx="430.25363" cy="519.61188" fx="430.25363" fy="519.61188" r="305.54589" gradientTransform="matrix(0.95288409,-0.94890664,0.94542304,0.94938587,-470.98122,345.21193)" gradientUnits="userSpaceOnUse"/> </defs> <sodipodi:namedview pagecolor="#ffffff" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920" inkscape:window-height="999" id="namedview16" showgrid="false" showguides="true" inkscape:guide-bbox="true" inkscape:zoom="0.70710678" inkscape:cx="279.00239" inkscape:cy="856.75313" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg14"> <sodipodi:guide position="430.25363,862.49682" orientation="1,0" id="guide832" inkscape:locked="false"/> <sodipodi:guide position="-42.427977,430.25368" orientation="0,1" id="guide834" inkscape:locked="false"/> <sodipodi:guide position="398.27788,720.18823" orientation="0,1" id="guide840" inkscape:locked="false"/> </sodipodi:namedview> <metadata id="metadata2"> Created by potrace 1.15, written by Peter Selinger 2001-2017 <rdf:RDF> <cc:Work rdf:about=""> <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/> <dc:title/> </cc:Work> </rdf:RDF> </metadata> <path style="fill:url(#radialGradient838);fill-opacity:1;stroke:none;stroke-width:2.83464575;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 735.79979,124.70799 C 654.79116,43.598883 544.88842,-2.0206645 430.25389,-2.121103 315.61937,-2.0206592 205.71663,43.598888 124.70801,124.70799 l 305.54588,305.54589 z" id="path836" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccc"/> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns="http://www.w3.org/2000/svg"
version="1.0"
width="860.50732pt"
height="860.50732pt"
viewBox="0 0 860.50732 860.50732"
preserveAspectRatio="xMidYMid meet"
id="svg14"
sodipodi:docname="direction_gradient.svg"
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"
>
<defs id="defs18">
<linearGradient inkscape:collect="always" id="linearGradient832">
<stop style="stop-color:{color};stop-opacity:1;" offset="0" id="stop828" />
<stop style="stop-color:{color};stop-opacity:0;" offset="1" id="stop830" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient832"
id="radialGradient838"
cx="430.25363"
cy="519.61188"
fx="430.25363"
fy="519.61188"
r="305.54589"
gradientTransform="matrix(0.95288409,-0.94890664,0.94542304,0.94938587,-470.98122,345.21193)"
gradientUnits="userSpaceOnUse"
/>
</defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="999"
id="namedview16"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:zoom="0.70710678"
inkscape:cx="279.00239"
inkscape:cy="856.75313"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg14"
>
<sodipodi:guide
position="430.25363,862.49682"
orientation="1,0"
id="guide832"
inkscape:locked="false"
/>
<sodipodi:guide
position="-42.427977,430.25368"
orientation="0,1"
id="guide834"
inkscape:locked="false"
/>
<sodipodi:guide
position="398.27788,720.18823"
orientation="0,1"
id="guide840"
inkscape:locked="false"
/>
</sodipodi:namedview>
<metadata id="metadata2">
Created by potrace 1.15, written by Peter Selinger 2001-2017 <rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<path
style="fill:url(#radialGradient838);fill-opacity:1;stroke:none;stroke-width:2.83464575;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 735.79979,124.70799 C 654.79116,43.598883 544.88842,-2.0206645 430.25389,-2.121103 315.61937,-2.0206592 205.71663,43.598888 124.70801,124.70799 l 305.54588,305.54589 z"
id="path836"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc"
/>
</svg>

View file

@ -1,4 +1,40 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,100%,96.078432%);stroke-opacity:1;stroke-miterlimit:4;" d="M -177.48351 -16.993714 C -177.484166 101.48875 -226.288922 214.739751 -312.411923 296.10684 C -398.528411 377.467771 -514.363074 419.770216 -632.651731 413.060164 " transform="matrix(-0.316636,-0.299423,0.299423,-0.316636,0,0)"/> <path style="fill: none !important;stroke-width:6;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;" d="M 743.478328 134.561833 L 430.253662 430.253662 L 117.002105 134.508051 " transform="matrix(0.435789,0,0,0.435789,0,0)"/> <path style="fill: none !important;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M -177.48351 -16.993714 C -177.484166 101.48875 -226.288922 214.739751 -312.411923 296.10684 C -398.528411 377.467771 -514.363074 419.770216 -632.651731 413.060164 " transform="matrix(-0.316636,-0.299423,0.299423,-0.316636,0,0)"/> <path style="fill: none !important;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 743.478328 134.561833 L 430.253662 430.253662 L 117.002105 134.508051 " transform="matrix(0.435789,0,0,0.435789,0,0)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(97.254902%,100%,96.078432%);stroke-opacity:1;stroke-miterlimit:4;"
d="M -177.48351 -16.993714 C -177.484166 101.48875 -226.288922 214.739751 -312.411923 296.10684 C -398.528411 377.467771 -514.363074 419.770216 -632.651731 413.060164 "
transform="matrix(-0.316636,-0.299423,0.299423,-0.316636,0,0)"
/>
<path
style="fill: none !important;stroke-width:6;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(100%,100%,100%);stroke-opacity:1;stroke-miterlimit:4;"
d="M 743.478328 134.561833 L 430.253662 430.253662 L 117.002105 134.508051 "
transform="matrix(0.435789,0,0,0.435789,0,0)"
/>
<path
style="fill: none !important;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M -177.48351 -16.993714 C -177.484166 101.48875 -226.288922 214.739751 -312.411923 296.10684 C -398.528411 377.467771 -514.363074 419.770216 -632.651731 413.060164 "
transform="matrix(-0.316636,-0.299423,0.299423,-0.316636,0,0)"
/>
<path
style="fill: none !important;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 743.478328 134.561833 L 430.253662 430.253662 L 117.002105 134.508051 "
transform="matrix(0.435789,0,0,0.435789,0,0)"
/>
</g>
</svg>

View file

@ -1,4 +1,23 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path d="M 280.75 123.625 L 218.375 123.625 L 218.375 27.8125 C 218.375 19.0625 211.375 11.875 202.75 11.875 L 171.5625 11.875 C 163 11.875 155.9375 19.0625 155.9375 27.8125 L 155.9375 123.625 L 93.5625 123.625 L 187.125 251.375 Z M 351 171.5625 C 338.0625 171.5625 327.625 182.3125 327.625 195.5 L 327.625 315.25 L 46.8125 315.25 L 46.8125 195.5 C 46.8125 182.25 36.3125 171.5625 23.4375 171.5625 C 10.5 171.5625 0 182.25 0 195.5 L 0 339.1875 C 0 352.375 10.5 363.125 23.375 363.125 L 350.9375 363.125 C 363.875 363.125 374.3125 352.375 374.3125 339.1875 L 374.3125 195.5 C 374.375 182.25 363.875 171.5625 351 171.5625 Z M 351 171.5625 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
d="M 280.75 123.625 L 218.375 123.625 L 218.375 27.8125 C 218.375 19.0625 211.375 11.875 202.75 11.875 L 171.5625 11.875 C 163 11.875 155.9375 19.0625 155.9375 27.8125 L 155.9375 123.625 L 93.5625 123.625 L 187.125 251.375 Z M 351 171.5625 C 338.0625 171.5625 327.625 182.3125 327.625 195.5 L 327.625 315.25 L 46.8125 315.25 L 46.8125 195.5 C 46.8125 182.25 36.3125 171.5625 23.4375 171.5625 C 10.5 171.5625 0 182.25 0 195.5 L 0 339.1875 C 0 352.375 10.5 363.125 23.375 363.125 L 350.9375 363.125 C 363.875 363.125 374.3125 352.375 374.3125 339.1875 L 374.3125 195.5 C 374.375 182.25 363.875 171.5625 351 171.5625 Z M 351 171.5625 "
/>
</g>
</svg>

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,41 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown version="1.1" id="elevator" x="0px" y="0px" viewBox="0 0 65.9 66" style="enable-background:new 0 0 65.9 66;" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <path d="M 48.2,15.6 H 19.3 c -1.6,0 -2.8,1.3 -2.8,2.8 v 29 c 0,1.6 1.3,2.8 2.8,2.8 h 28.9 c 1.6,0 2.8,-1.3 2.8,-2.8 V 18.5 C 51,17 49.7,15.6 48.2,15.6 Z m 0.3,30.7 c 0,0.8 -0.6,1.4 -1.4,1.4 H 20.4 C 19.6,47.7 19,47.1 19,46.3 V 19.6 c 0,-0.8 0.6,-1.4 1.4,-1.4 h 26.7 c 0.8,0 1.4,0.6 1.4,1.4 z" id="path2"/> <polygon points="29.4,9.5 33.7,5.5 38.1,9.5 35.3,9.5 35.3,13.5 32.2,13.5 32.2,9.5 " id="polygon8"/> <polygon points="38.1,56.6 33.7,60.5 29.4,56.6 32.2,56.6 32.2,52.5 35.3,52.5 35.3,56.6 " id="polygon10"/> <circle cx="28.6" cy="21.4" r="1.9" id="circle12"/> <path d="m 29.1,35.6 c 0,-0.2 -0.2,-0.5 -0.5,-0.5 -0.3,0 -0.5,0.2 -0.5,0.5 v 1.7 3 5 c 0,0.6 -0.6,1.2 -1.2,1.2 -0.6,0 -1.2,-0.5 -1.2,-1.2 V 40.5 37.3 33.2 32 28.2 28.3 c 0,-0.2 -0.1,-0.4 -0.4,-0.4 -0.2,0 -0.4,0.2 -0.4,0.4 v 1.3 3.5 1.8 c 0,0.4 -0.3,0.7 -0.7,0.7 -0.4,0 -0.7,-0.3 -0.7,-0.7 v -1 -3.5 -4.2 c 0,-1 0.8,-1.9 1.9,-1.9 h 5.2 0.3 c 0.2,0 0.5,0.1 0.6,0.3 l 2.1,2.1 2.5,-2.5 c 0.4,-0.4 1,-0.4 1.3,0 0.4,0.4 0.4,1 0,1.3 l -3.2,3.2 C 34,28.9 33.8,29 33.5,29 33.3,29 33,28.9 32.8,28.7 L 32,27.9 31.8,27.8 h -0.2 c -0.2,0 -0.4,0.2 -0.4,0.4 v 1.6 10.6 l 7.68e-4,4.906766 c 9.4e-5,0.6 -0.6,1.2 -1.2,1.2 -0.6,0 -0.957071,-0.484801 -0.957071,-1.184801 0,0 0.0563,-6.496244 0.0563,-9.721965 z" id="path14" /> <circle cx="42.400002" cy="21" r="1.5" id="circle16"/> <circle cx="42.400002" cy="24.5" r="1.5" id="circle18"/> <circle cx="42.400002" cy="28.200001" r="1.5" id="circle20"/> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
version="1.1"
id="elevator"
x="0px"
y="0px"
viewBox="0 0 65.9 66"
style="enable-background:new 0 0 65.9 66;"
xml:space="preserve"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M 48.2,15.6 H 19.3 c -1.6,0 -2.8,1.3 -2.8,2.8 v 29 c 0,1.6 1.3,2.8 2.8,2.8 h 28.9 c 1.6,0 2.8,-1.3 2.8,-2.8 V 18.5 C 51,17 49.7,15.6 48.2,15.6 Z m 0.3,30.7 c 0,0.8 -0.6,1.4 -1.4,1.4 H 20.4 C 19.6,47.7 19,47.1 19,46.3 V 19.6 c 0,-0.8 0.6,-1.4 1.4,-1.4 h 26.7 c 0.8,0 1.4,0.6 1.4,1.4 z"
id="path2"
/>
<polygon
points="29.4,9.5 33.7,5.5 38.1,9.5 35.3,9.5 35.3,13.5 32.2,13.5 32.2,9.5 "
id="polygon8"
/>
<polygon
points="38.1,56.6 33.7,60.5 29.4,56.6 32.2,56.6 32.2,52.5 35.3,52.5 35.3,56.6 "
id="polygon10"
/>
<circle cx="28.6" cy="21.4" r="1.9" id="circle12" />
<path
d="m 29.1,35.6 c 0,-0.2 -0.2,-0.5 -0.5,-0.5 -0.3,0 -0.5,0.2 -0.5,0.5 v 1.7 3 5 c 0,0.6 -0.6,1.2 -1.2,1.2 -0.6,0 -1.2,-0.5 -1.2,-1.2 V 40.5 37.3 33.2 32 28.2 28.3 c 0,-0.2 -0.1,-0.4 -0.4,-0.4 -0.2,0 -0.4,0.2 -0.4,0.4 v 1.3 3.5 1.8 c 0,0.4 -0.3,0.7 -0.7,0.7 -0.4,0 -0.7,-0.3 -0.7,-0.7 v -1 -3.5 -4.2 c 0,-1 0.8,-1.9 1.9,-1.9 h 5.2 0.3 c 0.2,0 0.5,0.1 0.6,0.3 l 2.1,2.1 2.5,-2.5 c 0.4,-0.4 1,-0.4 1.3,0 0.4,0.4 0.4,1 0,1.3 l -3.2,3.2 C 34,28.9 33.8,29 33.5,29 33.3,29 33,28.9 32.8,28.7 L 32,27.9 31.8,27.8 h -0.2 c -0.2,0 -0.4,0.2 -0.4,0.4 v 1.6 10.6 l 7.68e-4,4.906766 c 9.4e-5,0.6 -0.6,1.2 -1.2,1.2 -0.6,0 -0.957071,-0.484801 -0.957071,-1.184801 0,0 0.0563,-6.496244 0.0563,-9.721965 z"
id="path14"
/>
<circle cx="42.400002" cy="21" r="1.5" id="circle16" />
<circle cx="42.400002" cy="24.5" r="1.5" id="circle18" />
<circle cx="42.400002" cy="28.200001" r="1.5" id="circle20" />
</svg>

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,45 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style="fill: none !important;stroke-width:8.16402;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 9.669812 22.725188 L 42.932875 56.977438 C 42.932875 56.977438 55.27575 71.374687 69.062625 56.977438 C 88.864187 36.300688 103.1225 22.224062 103.1225 22.224062 " transform="matrix(3.289474,0,0,3.289474,0,0)"/> <path style="fill: none !important;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 9.902563 22.944875 L 102.88975 22.461562 L 102.88975 92.383938 " transform="matrix(3.289474,0,0,3.289474,0,0)"/> <path style="fill: none !important;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 102.88975 92.383938 L 9.902563 92.866062 L 9.902563 22.944875 " transform="matrix(3.289474,0,0,3.289474,0,0)"/> <path style="fill: none !important;stroke-width:2.889384;stroke-linecap:butt;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 15.059875 89.897312 L 52.138375 60.1255 " transform="matrix(3.289474,0,0,3.289474,0,0)"/> <path style="fill: none !important;stroke-width:2.894905;stroke-linecap:butt;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;" d="M 59.644562 61.332 L 98.072063 89.495937 " transform="matrix(3.289474,0,0,3.289474,0,0)"/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style="fill: none !important;stroke-width:8.16402;stroke-linecap:round;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 9.669812 22.725188 L 42.932875 56.977438 C 42.932875 56.977438 55.27575 71.374687 69.062625 56.977438 C 88.864187 36.300688 103.1225 22.224062 103.1225 22.224062 "
transform="matrix(3.289474,0,0,3.289474,0,0)"
/>
<path
style="fill: none !important;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 9.902563 22.944875 L 102.88975 22.461562 L 102.88975 92.383938 "
transform="matrix(3.289474,0,0,3.289474,0,0)"
/>
<path
style="fill: none !important;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 102.88975 92.383938 L 9.902563 92.866062 L 9.902563 22.944875 "
transform="matrix(3.289474,0,0,3.289474,0,0)"
/>
<path
style="fill: none !important;stroke-width:2.889384;stroke-linecap:butt;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 15.059875 89.897312 L 52.138375 60.1255 "
transform="matrix(3.289474,0,0,3.289474,0,0)"
/>
<path
style="fill: none !important;stroke-width:2.894905;stroke-linecap:butt;stroke-linejoin:miter;stroke:{color};stroke-opacity:1;stroke-miterlimit:4;"
d="M 59.644562 61.332 L 98.072063 89.495937 "
transform="matrix(3.289474,0,0,3.289474,0,0)"
/>
</g>
</svg>

View file

@ -1,4 +1,24 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="375px" height="375px" viewBox="0 0 375 375" version="1.1"> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;" d="M 343.453125 190.519531 C 322.914062 158.628906 297.171875 134.777344 266.222656 118.964844 C 274.46875 133.019531 278.589844 148.222656 278.589844 164.574219 C 278.589844 189.574219 269.703125 210.960938 251.933594 228.730469 C 234.164062 246.5 212.777344 255.386719 187.777344 255.386719 C 162.777344 255.386719 141.394531 246.5 123.621094 228.730469 C 105.851562 210.960938 96.96875 189.574219 96.96875 164.574219 C 96.96875 148.222656 101.089844 133.019531 109.332031 118.964844 C 78.386719 134.777344 52.644531 158.628906 32.101562 190.519531 C 50.074219 218.222656 72.609375 240.285156 99.703125 256.703125 C 126.796875 273.121094 156.15625 281.332031 187.777344 281.332031 C 219.398438 281.332031 248.757812 273.121094 275.851562 256.703125 C 302.945312 240.285156 325.480469 218.222656 343.453125 190.519531 Z M 197.507812 112.683594 C 197.507812 109.980469 196.5625 107.683594 194.671875 105.789062 C 192.777344 103.898438 190.480469 102.953125 187.777344 102.953125 C 170.886719 102.953125 156.394531 109 144.296875 121.09375 C 132.203125 133.1875 126.15625 147.683594 126.15625 164.574219 C 126.15625 167.277344 127.101562 169.574219 128.996094 171.464844 C 130.886719 173.359375 133.183594 174.304688 135.886719 174.304688 C 138.589844 174.304688 140.886719 173.359375 142.777344 171.464844 C 144.671875 169.574219 145.617188 167.277344 145.617188 164.574219 C 145.617188 152.953125 149.738281 143.019531 157.980469 134.777344 C 166.222656 126.535156 176.15625 122.410156 187.777344 122.410156 C 190.480469 122.410156 192.777344 121.464844 194.671875 119.574219 C 196.5625 117.683594 197.507812 115.386719 197.507812 112.683594 Z M 369.398438 190.519531 C 369.398438 195.113281 368.046875 199.777344 365.347656 204.507812 C 346.425781 235.585938 320.988281 260.484375 289.027344 279.203125 C 257.070312 297.917969 223.320312 307.277344 187.777344 307.277344 C 152.238281 307.277344 118.488281 297.886719 86.527344 279.101562 C 54.570312 260.316406 29.128906 235.453125 10.210938 204.507812 C 7.507812 199.777344 6.15625 195.113281 6.15625 190.519531 C 6.15625 185.925781 7.507812 181.261719 10.210938 176.535156 C 29.128906 145.585938 54.570312 120.722656 86.527344 101.9375 C 118.488281 83.15625 152.238281 73.761719 187.777344 73.761719 C 223.320312 73.761719 257.070312 83.15625 289.027344 101.9375 C 320.988281 120.722656 346.425781 145.585938 365.347656 176.535156 C 368.046875 181.261719 369.398438 185.925781 369.398438 190.519531 Z M 369.398438 190.519531 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="375px"
height="375px"
viewBox="0 0 375 375"
version="1.1"
>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;"
d="M 343.453125 190.519531 C 322.914062 158.628906 297.171875 134.777344 266.222656 118.964844 C 274.46875 133.019531 278.589844 148.222656 278.589844 164.574219 C 278.589844 189.574219 269.703125 210.960938 251.933594 228.730469 C 234.164062 246.5 212.777344 255.386719 187.777344 255.386719 C 162.777344 255.386719 141.394531 246.5 123.621094 228.730469 C 105.851562 210.960938 96.96875 189.574219 96.96875 164.574219 C 96.96875 148.222656 101.089844 133.019531 109.332031 118.964844 C 78.386719 134.777344 52.644531 158.628906 32.101562 190.519531 C 50.074219 218.222656 72.609375 240.285156 99.703125 256.703125 C 126.796875 273.121094 156.15625 281.332031 187.777344 281.332031 C 219.398438 281.332031 248.757812 273.121094 275.851562 256.703125 C 302.945312 240.285156 325.480469 218.222656 343.453125 190.519531 Z M 197.507812 112.683594 C 197.507812 109.980469 196.5625 107.683594 194.671875 105.789062 C 192.777344 103.898438 190.480469 102.953125 187.777344 102.953125 C 170.886719 102.953125 156.394531 109 144.296875 121.09375 C 132.203125 133.1875 126.15625 147.683594 126.15625 164.574219 C 126.15625 167.277344 127.101562 169.574219 128.996094 171.464844 C 130.886719 173.359375 133.183594 174.304688 135.886719 174.304688 C 138.589844 174.304688 140.886719 173.359375 142.777344 171.464844 C 144.671875 169.574219 145.617188 167.277344 145.617188 164.574219 C 145.617188 152.953125 149.738281 143.019531 157.980469 134.777344 C 166.222656 126.535156 176.15625 122.410156 187.777344 122.410156 C 190.480469 122.410156 192.777344 121.464844 194.671875 119.574219 C 196.5625 117.683594 197.507812 115.386719 197.507812 112.683594 Z M 369.398438 190.519531 C 369.398438 195.113281 368.046875 199.777344 365.347656 204.507812 C 346.425781 235.585938 320.988281 260.484375 289.027344 279.203125 C 257.070312 297.917969 223.320312 307.277344 187.777344 307.277344 C 152.238281 307.277344 118.488281 297.886719 86.527344 279.101562 C 54.570312 260.316406 29.128906 235.453125 10.210938 204.507812 C 7.507812 199.777344 6.15625 195.113281 6.15625 190.519531 C 6.15625 185.925781 7.507812 181.261719 10.210938 176.535156 C 29.128906 145.585938 54.570312 120.722656 86.527344 101.9375 C 118.488281 83.15625 152.238281 73.761719 187.777344 73.761719 C 223.320312 73.761719 257.070312 83.15625 289.027344 101.9375 C 320.988281 120.722656 346.425781 145.585938 365.347656 176.535156 C 368.046875 181.261719 369.398438 185.925781 369.398438 190.519531 Z M 369.398438 190.519531 "
/>
</g>
</svg>

View file

@ -1,4 +1,23 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns="http://www.w3.org/2000/svg" width="328px" height="374px" viewBox="0 0 328 374" version="1.1"> <g id="surface1"> <path d="M 204.175781 186.890625 L 204.175781 350.699219 C 204.683594 353.851562 204.40625 357.082031 203.367188 360.09375 C 202.328125 363.105469 200.5625 365.8125 198.230469 367.957031 C 194.390625 371.824219 189.195312 374 183.78125 374 C 178.363281 374 173.171875 371.824219 169.332031 367.957031 L 128.335938 326.378906 C 126.113281 324.152344 124.421875 321.4375 123.390625 318.445312 C 122.363281 315.453125 122.019531 312.269531 122.390625 309.121094 L 122.390625 187.09375 L 4.328125 33.679688 C 1 29.34375 -0.503906 23.851562 0.148438 18.398438 C 0.800781 12.945312 3.558594 7.976562 7.8125 4.578125 C 11.417969 1.644531 15.898438 0.0273438 20.519531 0 L 307.480469 0 C 312.105469 0.0273438 316.582031 1.644531 320.1875 4.578125 C 324.445312 7.976562 327.199219 12.945312 327.851562 18.398438 C 328.503906 23.851562 327 29.34375 323.671875 33.679688 L 205.609375 187.09375 Z M 204.175781 186.890625 "/> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns="http://www.w3.org/2000/svg"
width="328px"
height="374px"
viewBox="0 0 328 374"
version="1.1"
>
<g id="surface1">
<path
d="M 204.175781 186.890625 L 204.175781 350.699219 C 204.683594 353.851562 204.40625 357.082031 203.367188 360.09375 C 202.328125 363.105469 200.5625 365.8125 198.230469 367.957031 C 194.390625 371.824219 189.195312 374 183.78125 374 C 178.363281 374 173.171875 371.824219 169.332031 367.957031 L 128.335938 326.378906 C 126.113281 324.152344 124.421875 321.4375 123.390625 318.445312 C 122.363281 315.453125 122.019531 312.269531 122.390625 309.121094 L 122.390625 187.09375 L 4.328125 33.679688 C 1 29.34375 -0.503906 23.851562 0.148438 18.398438 C 0.800781 12.945312 3.558594 7.976562 7.8125 4.578125 C 11.417969 1.644531 15.898438 0.0273438 20.519531 0 L 307.480469 0 C 312.105469 0.0273438 316.582031 1.644531 320.1875 4.578125 C 324.445312 7.976562 327.199219 12.945312 327.851562 18.398438 C 328.503906 23.851562 327 29.34375 323.671875 33.679688 L 205.609375 187.09375 Z M 204.175781 186.890625 "
/>
</g>
</svg>

View file

@ -1,4 +1,62 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown width="328px" height="374px" viewBox="0 0 328 374" version="1.1" id="svg5" sodipodi:docname="filter_disable.svg" inkscape:version="1.1.2 (1:1.1+202202050950+0a00cf5339)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> <defs id="defs9" /> <sodipodi:namedview id="namedview7" pagecolor="#505050" bordercolor="#eeeeee" borderopacity="1" inkscape:pageshadow="0" inkscape:pageopacity="0" inkscape:pagecheckerboard="0" showgrid="false" inkscape:zoom="2.2486631" inkscape:cx="164.0975" inkscape:cy="187.22235" inkscape:current-layer="svg5" /> <g id="surface1"> <path style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;" d="M 204.175781 186.890625 L 204.175781 350.699219 C 204.683594 353.851562 204.40625 357.082031 203.367188 360.09375 C 202.328125 363.105469 200.5625 365.8125 198.230469 367.957031 C 194.390625 371.824219 189.195312 374 183.78125 374 C 178.363281 374 173.171875 371.824219 169.332031 367.957031 L 128.335938 326.378906 C 126.113281 324.152344 124.421875 321.4375 123.390625 318.445312 C 122.363281 315.453125 122.019531 312.269531 122.390625 309.121094 L 122.390625 187.09375 L 4.328125 33.679688 C 1 29.34375 -0.503906 23.851562 0.148438 18.398438 C 0.800781 12.945312 3.558594 7.976562 7.8125 4.578125 C 11.417969 1.644531 15.898438 0.0273438 20.519531 0 L 307.480469 0 C 312.105469 0.0273438 316.582031 1.644531 320.1875 4.578125 C 324.445312 7.976562 327.199219 12.945312 327.851562 18.398438 C 328.503906 23.851562 327 29.34375 323.671875 33.679688 L 205.609375 187.09375 Z M 204.175781 186.890625 " id="path2" /> </g> <g id="surface1-3" transform="matrix(1.2223339,0,0,1.2223339,-152.85378,-266.10503)" style="fill:#ff0000;fill-opacity:1"> <path style="fill:#ff0000;fill-opacity:1;stroke:#b40000;stroke-width:34.2679;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1" d="M 364.47831,491.73933 252.63509,379.89612" id="path826" /> <path style="fill:#ff0000;fill-opacity:1;stroke:#b40000;stroke-width:34.2684;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1" d="M 364.64638,379.35739 252.80473,491.199" id="path828" /> </g> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
width="328px"
height="374px"
viewBox="0 0 328 374"
version="1.1"
id="svg5"
sodipodi:docname="filter_disable.svg"
inkscape:version="1.1.2 (1:1.1+202202050950+0a00cf5339)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
>
<defs id="defs9" />
<sodipodi:namedview
id="namedview7"
pagecolor="#505050"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.2486631"
inkscape:cx="164.0975"
inkscape:cy="187.22235"
inkscape:current-layer="svg5"
/>
<g id="surface1">
<path
style=" stroke:none;fill-rule:nonzero;fill:{color};fill-opacity:1;"
d="M 204.175781 186.890625 L 204.175781 350.699219 C 204.683594 353.851562 204.40625 357.082031 203.367188 360.09375 C 202.328125 363.105469 200.5625 365.8125 198.230469 367.957031 C 194.390625 371.824219 189.195312 374 183.78125 374 C 178.363281 374 173.171875 371.824219 169.332031 367.957031 L 128.335938 326.378906 C 126.113281 324.152344 124.421875 321.4375 123.390625 318.445312 C 122.363281 315.453125 122.019531 312.269531 122.390625 309.121094 L 122.390625 187.09375 L 4.328125 33.679688 C 1 29.34375 -0.503906 23.851562 0.148438 18.398438 C 0.800781 12.945312 3.558594 7.976562 7.8125 4.578125 C 11.417969 1.644531 15.898438 0.0273438 20.519531 0 L 307.480469 0 C 312.105469 0.0273438 316.582031 1.644531 320.1875 4.578125 C 324.445312 7.976562 327.199219 12.945312 327.851562 18.398438 C 328.503906 23.851562 327 29.34375 323.671875 33.679688 L 205.609375 187.09375 Z M 204.175781 186.890625 "
id="path2"
/>
</g>
<g
id="surface1-3"
transform="matrix(1.2223339,0,0,1.2223339,-152.85378,-266.10503)"
style="fill:#ff0000;fill-opacity:1"
>
<path
style="fill:#ff0000;fill-opacity:1;stroke:#b40000;stroke-width:34.2679;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
d="M 364.47831,491.73933 252.63509,379.89612"
id="path826"
/>
<path
style="fill:#ff0000;fill-opacity:1;stroke:#b40000;stroke-width:34.2684;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
d="M 364.64638,379.35739 252.80473,491.199"
id="path828"
/>
</g>
</svg>

View file

@ -1,4 +1,116 @@
<script>
export let color = "#000000"
export let color = "#000000"
</script>
<svg {...$$restProps} on:click on:mouseover on:mouseenter on:mouseleave on:keydown xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" width="48" height="48"> <defs> <linearGradient id="d"> <stop offset="0"/> <stop offset="1" stop-opacity="0"/> </linearGradient> <linearGradient id="c"> <stop offset="0" stop-color="#858585"/> <stop offset=".5" stop-color="#cbcbcb"/> <stop offset="1" stop-color="#6b6b6b"/> </linearGradient> <linearGradient id="b"> <stop offset="0" stop-color="#fff"/> <stop offset="1" stop-color="#fff" stop-opacity="0"/> </linearGradient> <linearGradient id="a"> <stop offset="0" stop-color="#1e2d69"/> <stop offset="1" stop-color="#78a7e0"/> </linearGradient> <linearGradient id="f" x1="40.885" x2="16.88" y1="71.869" y2="-.389" gradientTransform="matrix(.97661 0 0 1.13979 .564 -3.271)" gradientUnits="userSpaceOnUse" xlink:href="#a"/> <linearGradient id="g" x1="13.784" x2="33.075" y1="-.997" y2="55.702" gradientTransform="matrix(.98543 0 0 1.14818 .641 -2.934)" gradientUnits="userSpaceOnUse" xlink:href="#b"/> <linearGradient id="h" x1="20.125" x2="28.563" y1="21.844" y2="42.469" gradientTransform="matrix(1.0677 0 0 1.12153 -1.369 -5.574)" gradientUnits="userSpaceOnUse" xlink:href="#c"/> <radialGradient id="e" cx="24.313" cy="41.156" r="22.875" fx="24.313" fy="41.156" gradientTransform="matrix(1 0 0 .26913 0 30.08)" gradientUnits="userSpaceOnUse" xlink:href="#d"/> </defs> <path fill="url(#e)" d="M47.188 41.156a22.875 6.156 0 1 1-45.75 0 22.875 6.156 0 1 1 45.75 0z" opacity=".506" transform="matrix(.91803 0 0 .98122 1.68 .648)"/> <path fill="url(#f)" stroke="#25375f" stroke-linecap="round" stroke-linejoin="round" d="M4.558 3.568h38.89c.59 0 1.064.474 1.064 1.063v37.765c0 .59-.475 1.064-1.064 1.064H6.558l-3.064-3.064V4.631a1.06 1.06 0 0 1 1.064-1.063z"/> <path fill="#fff" d="M9 4h30v23H9z"/> <rect width="30" height="4" x="9" y="4" fill="#d31c00" rx=".126" ry=".126"/> <rect width="2" height="2" x="6" y="6" opacity=".739" rx=".126" ry=".126"/> <path stroke="{color}" d="M11 12.5h26m-26 5h26m-26 5h26" opacity=".131"/> <path fill="none" stroke="url(#g)" stroke-linecap="round" d="M4.619 4.528h38.768c.07 0 .127.056.127.126v37.648c0 .07-.057.126-.127.126H6.928l-2.435-2.391V4.654c0-.07.056-.126.126-.126z" opacity=".597"/> <path fill="url(#h)" stroke="#525252" d="M14.114 28.562h19.75c.888 0 1.603.751 1.603 1.684v13.201H12.51V30.246c0-.933.715-1.684 1.603-1.684z"/> <rect width="5.03" height="10.066" x="16.464" y="30.457" fill="#4967a2" stroke="#525252" rx=".751" ry=".751"/> </svg>
<svg
{...$$restProps}
on:click
on:mouseover
on:mouseenter
on:mouseleave
on:keydown
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
width="48"
height="48"
>
<defs>
<linearGradient id="d">
<stop offset="0" />
<stop offset="1" stop-opacity="0" />
</linearGradient>
<linearGradient id="c">
<stop offset="0" stop-color="#858585" />
<stop offset=".5" stop-color="#cbcbcb" />
<stop offset="1" stop-color="#6b6b6b" />
</linearGradient>
<linearGradient id="b">
<stop offset="0" stop-color="#fff" />
<stop offset="1" stop-color="#fff" stop-opacity="0" />
</linearGradient>
<linearGradient id="a">
<stop offset="0" stop-color="#1e2d69" />
<stop offset="1" stop-color="#78a7e0" />
</linearGradient>
<linearGradient
id="f"
x1="40.885"
x2="16.88"
y1="71.869"
y2="-.389"
gradientTransform="matrix(.97661 0 0 1.13979 .564 -3.271)"
gradientUnits="userSpaceOnUse"
xlink:href="#a"
/>
<linearGradient
id="g"
x1="13.784"
x2="33.075"
y1="-.997"
y2="55.702"
gradientTransform="matrix(.98543 0 0 1.14818 .641 -2.934)"
gradientUnits="userSpaceOnUse"
xlink:href="#b"
/>
<linearGradient
id="h"
x1="20.125"
x2="28.563"
y1="21.844"
y2="42.469"
gradientTransform="matrix(1.0677 0 0 1.12153 -1.369 -5.574)"
gradientUnits="userSpaceOnUse"
xlink:href="#c"
/>
<radialGradient
id="e"
cx="24.313"
cy="41.156"
r="22.875"
fx="24.313"
fy="41.156"
gradientTransform="matrix(1 0 0 .26913 0 30.08)"
gradientUnits="userSpaceOnUse"
xlink:href="#d"
/>
</defs>
<path
fill="url(#e)"
d="M47.188 41.156a22.875 6.156 0 1 1-45.75 0 22.875 6.156 0 1 1 45.75 0z"
opacity=".506"
transform="matrix(.91803 0 0 .98122 1.68 .648)"
/>
<path
fill="url(#f)"
stroke="#25375f"
stroke-linecap="round"
stroke-linejoin="round"
d="M4.558 3.568h38.89c.59 0 1.064.474 1.064 1.063v37.765c0 .59-.475 1.064-1.064 1.064H6.558l-3.064-3.064V4.631a1.06 1.06 0 0 1 1.064-1.063z"
/>
<path fill="#fff" d="M9 4h30v23H9z" />
<rect width="30" height="4" x="9" y="4" fill="#d31c00" rx=".126" ry=".126" />
<rect width="2" height="2" x="6" y="6" opacity=".739" rx=".126" ry=".126" />
<path stroke={color} d="M11 12.5h26m-26 5h26m-26 5h26" opacity=".131" />
<path
fill="none"
stroke="url(#g)"
stroke-linecap="round"
d="M4.619 4.528h38.768c.07 0 .127.056.127.126v37.648c0 .07-.057.126-.127.126H6.928l-2.435-2.391V4.654c0-.07.056-.126.126-.126z"
opacity=".597"
/>
<path
fill="url(#h)"
stroke="#525252"
d="M14.114 28.562h19.75c.888 0 1.603.751 1.603 1.684v13.201H12.51V30.246c0-.933.715-1.684 1.603-1.684z"
/>
<rect
width="5.03"
height="10.066"
x="16.464"
y="30.457"
fill="#4967a2"
stroke="#525252"
rx=".751"
ry=".751"
/>
</svg>

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