Rendering raw tag values with some extra rules works OK, but it's not ideal. Examples:
shop=bicycle just renders as Bicycle because we can't add "shop" to all the shop types where it doesn't make sense. And "Bike shop" would be even better than "Bicycle shop"
Some tags differ directly from how they're supposed to be understood. For example "tourism=chalet" is supposed to be a Holiday Home or Vacation Home, not a hut in the mountains.
The labels can then be used not just to render content, but also for tagging, when adding/editing OSM places in Marco.
Since any JS/TS app will have to do this themselves at the moment, we'll create a new shared module that can be used across apps.
Rendering raw tag values with some extra rules works OK, but it's not ideal. Examples:
* `shop=bicycle` just renders as `Bicycle` because we can't add "shop" to all the shop types where it doesn't make sense. And "Bike shop" would be even better than "Bicycle shop"
* Some tags differ directly from how they're supposed to be understood. For example "tourism=chalet" is supposed to be a Holiday Home or Vacation Home, not a hut in the mountains.
The labels can then be used not just to render content, but also for tagging, when adding/editing OSM places in Marco.
Since any JS/TS app will have to do this themselves at the moment, we'll create a new shared module that can be used across apps.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Rendering raw tag values with some extra rules works OK, but it's not ideal. Examples:
shop=bicyclejust renders asBicyclebecause we can't add "shop" to all the shop types where it doesn't make sense. And "Bike shop" would be even better than "Bicycle shop"The labels can then be used not just to render content, but also for tagging, when adding/editing OSM places in Marco.
Since any JS/TS app will have to do this themselves at the moment, we'll create a new shared module that can be used across apps.