Compare commits

..

11 Commits

Author SHA1 Message Date
Yannik Bloscheck
53e1361276 [styles] Keep using shorter type for simple charging stations
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2026-01-09 18:22:22 +01:00
Yannik Bloscheck
f2a0b4470f [styles] Optimize displaying of charging stations, handle implicit motorcars tagging and add motorcycles
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2026-01-09 18:22:22 +01:00
Jean-Baptiste
111fd10af9 [android] Apply new dark background on bottomsheet and map buttons
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-09 18:15:03 +01:00
Jean-Baptiste
52edb5da6d [android] Enable more languages on Android
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-09 17:28:16 +01:00
matheusgomesms
70215404c3 [iOS] Improve confirmed existence format
Signed-off-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
2026-01-09 17:21:00 +01:00
Chris H. Meyer
49b0ec164d [types] Swap abandoned and disused bridge/tunnel
Drop abandoned bridge and tunnel in favor of disused ones.

Signed-off-by: Chris H. Meyer <christian.h.meyer@t-online.de>
2026-01-09 17:07:15 +01:00
Lukas H.
018259bb0f [styles] swap rendering of railway=abandoned and railway=disused
Signed-off-by: Lukas H. <lukas@ideallygrey.uk>
Co-authored-by: Chris H. Meyer <christian.h.meyer@t-online.de>
2026-01-09 17:07:15 +01:00
Jean-Baptiste
b7733786df [android] Remove useless property apply in main TextView style
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-09 13:56:15 +01:00
Henry Sternberg
245646c45d [routing] parking_aisle fixes v2
Signed-off-by: Henry Sternberg <henry@bluelightmaps.com>
2026-01-09 12:23:33 +00:00
Jean-Baptiste
6799f17c1b [android] Rework text style applied on title in app bar
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-09 11:44:18 +01:00
Henry Sternberg
e3abbc712b [routing] Fix crash on 32-bit devices with conditional access
The deserialization of conditional road access data was using
size_t which is 8 bytes on 64-bit (where maps are generated)
but only 4 bytes on 32-bit devices. This caused stream
misalignment and eventual std::length_error when garbage data
was interpreted as a huge vector size.

Fix by using uint64_t to always read 8 bytes, matching what
64-bit build servers write.

Signed-off-by: Henry Sternberg <henry@bluelightmaps.com>
2026-01-09 11:15:38 +01:00
64 changed files with 418 additions and 193 deletions

View File

@@ -256,17 +256,18 @@ android {
noCompress = ['txt', 'bin', 'html', 'png', 'json', 'mwm', 'ttf', 'sdf', 'ui', 'config', 'csv', 'spv', 'obj']
// Some languages not supported by Android require to be specified here to be applied
localeFilters += [
"en",
"af",
"ar",
"az",
"be",
"bg",
"bn",
"ca",
"cs",
"da",
"de",
"el",
"en",
"en-rGB",
"es",
"es-rMX",
@@ -276,11 +277,16 @@ android {
"fi",
"fr",
"fr-rCA",
"iw",
"gl",
"gsw",
"he",
"hi",
"hu",
"id",
"in",
"is",
"it",
"iw",
"ja",
"kw",
"ko",
@@ -289,16 +295,20 @@ android {
"mr",
"mt",
"nb",
"nb-rNO",
"nl",
"pl",
"pt",
"pt-rBR",
"ro",
"ru",
"sl",
"sk",
"sr",
"sr-rCyrl",
"sr-rLatn",
"sv",
"sw",
"ta",
"th",
"tr",
"uk",

View File

@@ -132,7 +132,6 @@ import app.organicmaps.widget.placepage.PlacePageViewModel;
import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.textview.MaterialTextView;
import java.util.ArrayList;
import java.util.Objects;
@@ -712,7 +711,6 @@ public class MwmActivity extends BaseMwmFragmentActivity
if (!TextUtils.isEmpty(appName))
{
setTitle(appName);
((MaterialTextView) mPointChooser.findViewById(R.id.title)).setText(appName);
}
}

View File

@@ -53,7 +53,7 @@ public class MenuBottomSheetFragment extends BottomSheetDialogFragment
@Override
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState)
{
return new BottomSheetDialog(requireContext(), getTheme()) {
return new BottomSheetDialog(requireContext(), R.style.MwmTheme_BottomSheetDialog) {
@Override
public void onAttachedToWindow()
{

View File

@@ -41,5 +41,5 @@
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_gravity="bottom|start"
android:background="?cardBackground"/>
android:background="?colorSurfaceContainerLow"/>
</FrameLayout>

View File

@@ -8,7 +8,6 @@
android:paddingStart="@dimen/margin_base"
android:paddingEnd="@dimen/margin_base"
android:gravity="center_vertical"
android:background="?clickableBackground"
android:orientation="horizontal">
<com.google.android.material.imageview.ShapeableImageView

View File

@@ -20,8 +20,8 @@
android:gravity="center"
android:layout_gravity="end|center_vertical"
android:background="?selectableItemBackgroundBorderless"
android:textSize="@dimen/text_size_toolbar"
android:padding="@dimen/margin_half"
android:textAppearance="@style/MwmTextAppearance.Toolbar.Title"
android:text="@string/editor_report_problem_send_button"/>
</com.google.android.material.appbar.MaterialToolbar>

View File

@@ -40,5 +40,5 @@
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_gravity="bottom|center"
android:background="?cardBackground"/>
android:background="?colorSurfaceContainerLow"/>
</FrameLayout>

View File

@@ -4,6 +4,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:descendantFocusability="blocksDescendants"
android:background="?cardBackground"
android:orientation="vertical">
<include
android:id="@+id/pp__preview"

View File

@@ -15,15 +15,8 @@
android:theme="@style/MwmWidget.ToolbarTheme"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textview.MaterialTextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="@dimen/margin_half"
android:text="@string/editor_add_select_location"
android:textAppearance="@style/MwmTextAppearance.Toolbar.Title"/>
app:layout_constraintTop_toTopOf="parent"
app:title="@string/editor_add_select_location">
</com.google.android.material.appbar.MaterialToolbar>
<com.google.android.material.textview.MaterialTextView

View File

@@ -15,6 +15,7 @@
<color name="bg_cards">#FF3C4044</color>
<color name="bg_panel">@color/bg_window</color>
<color name="bg_primary_dark">#FF588157</color>
<color name="bg_app">#10140F</color>
<color name="bg_menu">#CC2D3237</color>

View File

@@ -98,16 +98,6 @@
<item name="android:textColorHint">@color/text_light_hint</item>
</style>
<style name="MwmTextAppearance.Toolbar.Title" parent="android:TextAppearance.Material.Widget.ActionBar.Title">
<item name="android:textSize">@dimen/text_size_toolbar</item>
<item name="android:textColor">@color/text_light</item>
<item name="android:textColorHint">@color/text_light_hint</item>
</style>
<style name="MwmTextAppearance.Toolbar.Title.Light">
<item name="android:textColor">@color/bg_cards</item>
</style>
<style name="MwmTextAppearance.NavMenu">
<item name="android:textStyle">bold</item>
</style>

View File

@@ -143,8 +143,7 @@
<item name="android:background">?colorPrimary</item>
<item name="android:displayOptions">homeAsUp|showTitle</item>
<item name="contentInsetStart">0dp</item>
<item name="android:titleTextAppearance">@style/MwmTextAppearance.Toolbar.Title</item>
<item name="titleTextAppearance">@style/MwmTextAppearance.Toolbar.Title</item>
<item name="titleTextColor">@color/text_light</item>
<item name="buttonGravity">center_vertical</item>
</style>
@@ -169,9 +168,7 @@
<item name="android:cacheColorHint">@android:color/transparent</item>
</style>
<style name="MwmWidget.TextView" parent="Widget.MaterialComponents.TextView">
<item name="android:background">@android:color/transparent</item>
</style>
<style name="MwmWidget.TextView" parent="Widget.MaterialComponents.TextView" />
<style name="MwmWidget.TextView.Item">
<item name="android:layout_width">match_parent</item>
@@ -290,13 +287,13 @@
</style>
<style name="MwmWidget.BottomSheetDialog" parent="Widget.Material3.BottomSheet.Modal">
<item name="backgroundTint">?cardBackground</item>
<item name="backgroundTint">?colorSurfaceContainerLow</item>
<item name="elevationOverlayEnabled">false</item>
<item name="shapeAppearance">@style/ShapeAppearance.Material3.LargeComponent</item>
</style>
<style name="MwmWidget.BottomSheet" parent="MwmWidget.BottomSheetDialog">
<item name="android:background">?cardBackground</item>
<item name="android:background">?colorSurfaceContainerLow</item>
<item name="behavior_hideable">false</item>
</style>

View File

@@ -7,6 +7,7 @@
<locale android:name="az" />
<locale android:name="be" />
<locale android:name="bg" />
<locale android:name="bn" />
<locale android:name="ca" />
<locale android:name="cs" />
<locale android:name="da" />
@@ -21,11 +22,16 @@
<locale android:name="fi" />
<locale android:name="fr" />
<locale android:name="fr-CA" />
<locale android:name="iw" />
<locale android:name="gl" />
<locale android:name="gsw" />
<locale android:name="he" />
<locale android:name="hi" />
<locale android:name="hu" />
<locale android:name="id" />
<locale android:name="in" />
<locale android:name="is" />
<locale android:name="it" />
<locale android:name="iw" />
<locale android:name="ja" />
<locale android:name="kw" />
<locale android:name="ko" />
@@ -34,16 +40,20 @@
<locale android:name="mr" />
<locale android:name="mt" />
<locale android:name="nb" />
<locale android:name="nb-NO" />
<locale android:name="nl" />
<locale android:name="pl" />
<locale android:name="pt" />
<locale android:name="pt-BR" />
<locale android:name="ro" />
<locale android:name="ru" />
<locale android:name="sl" />
<locale android:name="sk" />
<locale android:name="sr" />
<locale android:name="sr-Cyrl" />
<locale android:name="sr-Latn" />
<locale android:name="sv" />
<locale android:name="sw" />
<locale android:name="ta" />
<locale android:name="th" />
<locale android:name="tr" />
<locale android:name="uk" />

View File

@@ -43,9 +43,10 @@
<string name="type.leisure.adult_gaming_centre">Spielhalle für Erwachsene</string>
<string name="type.leisure.amusement_arcade">Spielhalle für Unterhaltungsspiele</string>
<string name="type.amenity.charging_station">Ladestation</string>
<string name="type.amenity.charging_station.bicycle">Fahrrad-Ladestation</string>
<string name="type.amenity.charging_station.motorcar">Kfz-Ladestation</string>
<string name="type.amenity.charging_station.motorcar.small">Kfz-Ladestation</string>
<string name="type.amenity.charging_station.bicycle">Fahrräder</string>
<string name="type.amenity.charging_station.motorcycle">Motorräder</string>
<string name="type.amenity.charging_station.motorcar">Autos</string>
<string name="type.amenity.charging_station.small">Begrenzte Kapazität</string>
<string name="type.amenity.childcare">Kindertagesstätte</string>
<string name="type.amenity.cinema">Kino</string>
<string name="type.leisure.bowling_alley">Bowlingbahn</string>

View File

@@ -53,9 +53,10 @@
<string name="type.leisure.adult_gaming_centre">Adult Gaming Centre</string>
<string name="type.leisure.amusement_arcade">Arcade</string>
<string name="type.amenity.charging_station">Charging Station</string>
<string name="type.amenity.charging_station.bicycle">Bicycle Charging Station</string>
<string name="type.amenity.charging_station.motorcar">Car Charging Station</string>
<string name="type.amenity.charging_station.motorcar.small">Car Charging Point</string>
<string name="type.amenity.charging_station.bicycle">Bicycles</string>
<string name="type.amenity.charging_station.motorcycle">Motorcycles</string>
<string name="type.amenity.charging_station.motorcar">Cars</string>
<string name="type.amenity.charging_station.small">Limited Capacity</string>
<string name="type.amenity.childcare">Nursery</string>
<string name="type.amenity.cinema">Cinema</string>
<string name="type.amenity.studio">Media Studio</string>
@@ -931,11 +932,11 @@
<string name="type.public_transport.platform">Platform</string>
<string name="type.railway">Railway</string>
<string name="type.railway.abandoned">Abandoned Railway</string>
<string name="type.railway.abandoned.bridge">Abandoned Railway Bridge</string>
<string name="type.railway.abandoned.tunnel">Abandoned Railway Tunnel</string>
<string name="type.railway.construction">Railway Construction</string>
<string name="type.railway.crossing">Railway Crossing</string>
<string name="type.railway.disused">Disused Railway</string>
<string name="type.railway.disused.bridge">Disused Railway Bridge</string>
<string name="type.railway.disused.tunnel">Disused Railway Tunnel</string>
<string name="type.railway.funicular">Funicular</string>
<string name="type.railway.funicular.bridge">Funicular Bridge</string>
<string name="type.railway.funicular.tunnel">Funicular Tunnel</string>

View File

@@ -331,7 +331,9 @@
"amenity-car_wash": "4Autowaschanlage|Autowäsche",
"amenity-veterinary": "4Tierarzt|4Tierärztin|4Tierarztpraxis|4Tierpraxis|4Tierdoktor|5Hundearzt|5Katzenarzt|4Haustiere|U+2695",
"@charging_station": "4Ladestation|aufladen",
"amenity-charging_station-bicycle|@charging_station": "Fahrrad aufladen",
"amenity-charging_station-bicycle|@charging_station": "5Fahrradladestation|Fahrrad aufladen|E-Bike aufladen|Fahrrad laden|E-Bike laden",
"amenity-charging_station-motorcycle|@charging_station": "6Motorradladestation|Motorrad aufladen|Motorrad laden",
"amenity-charging_station-motorcar|@charging_station": "4Autoladestation|5Autoladegerät|Auto aufladen|Auto laden",
"amenity-childcare": "Kindertagesstätte|Kindergarten|Kinderbetreuung",
"amenity-bicycle_parking": "6Fahrradständer",
"amenity-waste_basket": "6Abfalleimer|4Mülleimer|4Restmüll|3Müll|4Müllkorb|U+1F6AE|U+1F5D1",
@@ -516,7 +518,6 @@
"attraction-amusement_ride|attraction-carousel|attraction-roller_coaster|attraction-maze|attraction-historic|attraction-big_wheel|attraction-bumper_car|@category_children": "4Attraktion|4Labyrinth",
"building-guardhouse": "4Wache",
"shop-lighting|@shop": "Leuchtmittel|Lampen|Leuchte",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "4Autoladestation|5Autoladegerät|4Ladestation|4Ladegerät|U+1F50C|U+1FAAB|U+1F50B",
"amenity-mobile_money_agent": "6Mobile Money Vertretung|6Mobile Money|6Mobiles Geld",
"man_made-telescope|man_made-telescope-optical|man_made-telescope-radio|man_made-telescope-gamma": "4Teleskop",
"amenity-sailing_school": "5Segelschule|5Bootsschule|Bootsfahrschule",

View File

@@ -353,10 +353,11 @@
"man_made-observatory": "4Observatory",
"amenity-veterinary": "4Veterinary Doctor|3Veterinary|vet|veterinarian",
"amenity-animal_shelter": "6Animal Shelter",
"@charging_station": "4Charging Station|charging",
"@charging_station": "4Charging Station|charging|charger",
"amenity-charging_station|@charging_station": "",
"amenity-charging_station-bicycle|@charging_station": "4Bicycle Charging|4Bike Charging",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "4Motorcar Charging|3Car Charging|Charger",
"amenity-charging_station-bicycle|@charging_station": "4Bicycle Charging Station|Bicycle Charging|Bike Charging",
"amenity-charging_station-motorcycle|@charging_station": "5Motorcycle Charging Station|Motorcycle Charging|Motorbike Charging",
"amenity-charging_station-motorcar|@charging_station": "3Car Charging Station|Motorcar Charging|Car Charging",
"amenity-childcare": "Nursery|4Child Care|childcare",
"amenity-bicycle_parking": "4Bicycle Parking|4Bike Parking",
"amenity-waste_basket": "4Trash Bin|4litter bin|5waste basket|bin",

View File

@@ -518,7 +518,7 @@
"amenity-toilets|toilets-yes|@category_toilet": "wc",
"leisure-sports_centre-sport-swimming": "4Centro de natación",
"amenity-police|@category_police": "Estación de policía|policía",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "Cargador de autos|cargador de coches|cargador de carros|4Estación de carga|3Estación de carga|Cargador",
"amenity-charging_station-motorcar|@charging_station": "Cargador de autos|cargador de coches|cargador de carros|4Estación de carga|3Estación de carga|Cargador",
"amenity-sailing_school": "Escuela de vela|Escuela de navegación",
"amenity-flight_school": "Escuela de aviación|Escuela de aeronáutica|Escuela de pilotos|aeronáutica|vuelo|aviación",
"amenity-prep_school": "Propedéutico|Tutoría",

View File

@@ -486,7 +486,7 @@
"amenity-love_hotel": "Hôtel de passe|Hôtel de sexe|Hôtel pour adultes",
"healthcare-sample_collection": "Prélèvement d'échantillons",
"recycling-cardboard|@category_recycling": "5Recyclage de carton|Déchets de carton|Carton",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "Chargeur automobile|Chargeur de voiture|Chargeur",
"amenity-charging_station-motorcar|@charging_station": "Chargeur automobile|Chargeur de voiture|Chargeur",
"shop-lighting|@shop": "4Lumières|Luminaires|4Lampes",
"office-security": "Bureau de sécurité",
"building-guardhouse": "Garde|poste de sécurité|poste de gardiennage",

View File

@@ -320,7 +320,7 @@
"amenity-veterinary": "4Veterinārārsts|vetārsts|vetklīnika|veterinārā klīnika",
"@charging_station": "4Uzlādes stacija|uzlāde",
"amenity-charging_station-bicycle|@charging_station": "4Velosipēdu uzlāde|Riteņu uzlāde|Ričuku uzlāde|Divriteņu uzlāde",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "Automobiļu uzlāde|mašīnu uzlāde",
"amenity-charging_station-motorcar|@charging_station": "Automobiļu uzlāde|mašīnu uzlāde",
"amenity-childcare": "Bērnistaba",
"amenity-bicycle_parking": "4Velonovietne",
"amenity-waste_basket": "Atkritumu tvertne|4miskaste",

View File

@@ -330,7 +330,7 @@
"amenity-animal_shelter": "Приют для животных",
"@charging_station": "4Зарядная станция|зарядка|электрозарядка|зарядить",
"amenity-charging_station-bicycle|@charging_station": "4Велозарядка|Зарядка для велосипедов",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "4Автозарядка",
"amenity-charging_station-motorcar|@charging_station": "4Автозарядка",
"amenity-childcare": "Детская комната|3ясли",
"amenity-bicycle_parking": "4Велопарковка|велостоянка",
"amenity-waste_basket": "3Урна|4Мусорная корзина",

View File

@@ -331,7 +331,7 @@
"amenity-veterinary": "4Veteriner",
"@charging_station": "Şarj İstasyonu|şarj etme",
"amenity-charging_station-bicycle|@charging_station": "4Bisiklet Şarjı",
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "4Otomobil Şarj Cihazı|4Araba Şarj Cihazı|4Araç Şarj Cihazı|3Trugo|4TOGG Şarj",
"amenity-charging_station-motorcar|@charging_station": "4Otomobil Şarj Cihazı|4Araba Şarj Cihazı|4Araç Şarj Cihazı|3Trugo|4TOGG Şarj",
"amenity-childcare": "Çocuk Yuvası|Kreş",
"amenity-bicycle_parking": "4Bisiklet park etme|bisiklet park",
"amenity-waste_basket": "Çöp Kutusu",

View File

@@ -302,7 +302,7 @@ railway|crossing;197;
boundary|national_park;198;
deprecated:natural|wood|deciduous:01.2020;[natural=wood][wood=deciduous],[natural=wood][leaf_type=deciduous],[natural=wood][leaf_cycle=deciduous];x;name;int_name;199;landuse|forest|deciduous
waterway|dam;200;
amenity|charging_station|motorcar|small;[amenity=charging_station][motorcar?][!capacity],[amenity=charging_station][motorcar?][capacity=1],[amenity=charging_station][motorcar?][capacity=2];;name;int_name;201;
amenity|charging_station|small;[amenity=charging_station][motorcar?][!capacity],[amenity=charging_station][motorcar?][capacity=1],[amenity=charging_station][motorcar?][capacity=2],[amenity=charging_station][!capacity],[amenity=charging_station][capacity=1],[amenity=charging_station][capacity=2],;;name;int_name;201;
leisure|golf_course;202;
highway|service|bridge;[highway=service][bridge?];;name;int_name;203;
# ~250K usages.
@@ -403,15 +403,14 @@ place|farm;294;
deprecated:boundary|administrative|11:04.2024;[boundary=administrative][admin_level=11];x;name;int_name;295;
waterway|weir;296;
highway|secondary|tunnel;[highway=secondary][tunnel?];;name;int_name;297;
# TODO: its a mismapping likely, if there is a bridge structure still, then it should be railway=disused.
railway|abandoned|bridge;[railway=abandoned][bridge?];;name;int_name;298;
railway|disused|bridge;[railway=disused][bridge?],[railway=abandoned][bridge?];;name;int_name;298;
man_made|lighthouse;299;
deprecated:highway|path|demanding_mountain_hiking:04.2024;[highway=path][sac_scale=demanding_mountain_hiking];x;name;int_name;300;highway|path|difficult
amenity|charging_station|motorcycle;[amenity=charging_station][motorcycle?];;name;int_name;300;
man_made|storage_tank;301;
man_made|silo;302;
power|generator;303;
highway|pedestrian|bridge;[highway=pedestrian][bridge?];;name;int_name;304;
amenity|charging_station|motorcar;[amenity=charging_station][motorcar?][capacity?];;name;int_name;305;
amenity|charging_station|motorcar;[amenity=charging_station][motorcar?][capacity?],[amenity=charging_station][motorcar?];;name;int_name;305;
natural|saddle;306;
mountain_pass;[mountain_pass];;name;int_name;307;
highway|raceway;308;
@@ -420,7 +419,7 @@ highway|primary_link|bridge;[highway=primary_link][bridge?];;name;int_name;310;
man_made|tower|communication;[man_made=tower][tower:type=communication];;name;int_name;311;
sport|equestrian;312;
tourism|information|office;[tourism=information][information=office];;name;int_name;313;
deprecated:highway|footway|hiking:04.2024;[highway=footway][sac_scale=hiking];x;name;int_name;314;highway|path
amenity|charging_station|carless;[amenity=charging_station][motorcar=not],[amenity=charging_station][motorcar=no];;name;int_name;314;
aeroway|gate;315;
# TODO: railway=preserved is deprecated in OSM, recommended mapping is railway:preserved=yes + railway=*
railway|preserved;316;
@@ -511,8 +510,7 @@ railway|rail|spur|tunnel;[railway=rail][service=spur][!usage][tunnel?];;name;int
highway|secondary_link|bridge;[highway=secondary_link][bridge?];;name;int_name;397;
railway|tram|tunnel;[railway=tram][tunnel?];;name;int_name;398;
railway|rail|tourism;[railway=rail][usage=tourism][!service];;name;int_name;399;
# TODO: its a mismapping likely, if there is a tunnel structure still, then it should be railway=disused.
railway|abandoned|tunnel;[railway=abandoned][tunnel?];;name;int_name;400;
railway|disused|tunnel;[railway=disused][tunnel?],[railway=abandoned][tunnel?];;name;int_name;400;
area:highway|living_street;401;
piste:type|sled;402;
leisure|beach_resort;403;
@@ -1193,7 +1191,7 @@ shop|tyres;1064;
craft|beekeeper;1065;
amenity|car_wash;1066;
amenity|veterinary;1067;
amenity|charging_station;1068;
amenity|charging_station;[amenity=charging_station];;name;int_name;1068;
amenity|childcare;1069;
craft|blacksmith;1070;
amenity|bicycle_parking;1071;
Can't render this file because it contains an unexpected character in line 7 and column 16.

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -559,8 +559,9 @@ area|z15-[amenity=marketplace],
area|z15-[office=diplomatic],
area|z15-[amenity=vehicle_inspection],
area|z15-[amenity=car_wash],
area|z15-[amenity=charging_station][motorcar?],
area|z15-[amenity=fuel],
area|z15-[amenity=charging_station][motorcar?],
area|z16-[amenity=charging_station],
area|z15-[amenity=motorcycle_parking],
area|z15-[amenity=bicycle_parking],
{fill-opacity: 1; fill-color: @general_area;}

View File

@@ -2399,18 +2399,28 @@ node|z17-[amenity=fuel],
node|z18-[amenity=fuel],
{font-size: 11;}
node|z15-[amenity=charging_station][motorcar?],
node|z16-[amenity=charging_station][motorcycle?],
node|z16-[amenity=charging_station][bicycle?],
node|z16-[amenity=charging_station][motorcar=not],
node|z16-[amenity=charging_station],
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-s.svg;}
node|z15-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-m.svg;}
node|z14[amenity=charging_station][motorcar?][!capacity],
node|z14[amenity=charging_station][motorcar?][capacity=1],
node|z14[amenity=charging_station][motorcar?][capacity=2],
{icon-image: none;}
node|z15-[amenity=charging_station][motorcar?][!capacity],
node|z15-[amenity=charging_station][motorcar?][capacity=1],
node|z15-[amenity=charging_station][motorcar?][capacity=2],
node|z16-[amenity=charging_station],
{icon-image: charging-point-m.svg;}
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging-station-s.svg;}
node|z15-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging-station-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
node|z14[amenity=charging_station][motorcar?],
{text-offset: 1;font-size: 10;icon-min-distance: 20;}
node|z15[amenity=charging_station][motorcar?],
{icon-min-distance: 20;}

View File

@@ -1217,14 +1217,14 @@ line|z13-[railway=subway][bridge?]::bridgewhite,
line|z13-[railway=light_rail][bridge?]::bridgewhite,
line|z15-[railway=preserved][bridge?]::bridgewhite,
line|z16-[railway=miniature][bridge?]::bridgewhite,
line|z16-[railway=abandoned][bridge?]::bridgewhite,
line|z16-[railway=disused][bridge?]::bridgewhite,
{casing-linecap: butt;casing-color:@bridge_background;casing-opacity: 0.8;}
line|z16-[railway=rail][bridge?]::bridgeblack,
line|z16-[railway=subway][bridge?]::bridgeblack,
line|z16-[railway=light_rail][bridge?]::bridgeblack,
line|z16-[railway=preserved][bridge?]::bridgeblack,
line|z16-[railway=miniature][bridge?]::bridgeblack,
line|z16-[railway=abandoned][bridge?]::bridgeblack,
line|z16-[railway=disused][bridge?]::bridgeblack,
{casing-linecap: butt;casing-color:@bridge_casing;casing-opacity: 0.7;}
/* 9.1 RAIL 11-22 ZOOM */
@@ -1375,11 +1375,11 @@ line|z18-[railway=light_rail][!tunnel]::dash,
line|z15-[railway=preserved],
line|z16-[railway=miniature],
line|z16-[railway=abandoned],
line|z16-[railway=disused],
{width: 1.6;dashes: 6.3,6.3;}
line|z15-[railway=construction],
line|z16-[railway=disused],
line|z16-[railway=abandoned],
{width: 1;dashes: 1.8,5.4;}
line|z17-[railway=turntable],
@@ -1434,21 +1434,21 @@ line|z16[railway=subway][bridge?]::bridgewhite,
line|z16[railway=light_rail][bridge?]::bridgewhite,
line|z16[railway=preserved][bridge?]::bridgewhite,
line|z16[railway=miniature][bridge?]::bridgewhite,
line|z16[railway=abandoned][bridge?]::bridgewhite,
line|z16[railway=disused][bridge?]::bridgewhite,
{casing-width-add: 1.6;}
line|z17[railway=rail][bridge?]::bridgewhite,
line|z17[railway=subway][bridge?]::bridgewhite,
line|z17[railway=light_rail][bridge?]::bridgewhite,
line|z17[railway=preserved][bridge?]::bridgewhite,
line|z17[railway=miniature][bridge?]::bridgewhite,
line|z17[railway=abandoned][bridge?]::bridgewhite,
line|z17[railway=disused][bridge?]::bridgewhite,
{casing-width-add: 2.3;}
line|z18-[railway=rail][bridge?]::bridgewhite,
line|z18-[railway=subway][bridge?]::bridgewhite,
line|z18-[railway=light_rail][bridge?]::bridgewhite,
line|z18-[railway=preserved][bridge?]::bridgewhite,
line|z18-[railway=miniature][bridge?]::bridgewhite,
line|z18-[railway=abandoned][bridge?]::bridgewhite,
line|z18-[railway=disused][bridge?]::bridgewhite,
{casing-width-add: 3.5;}
line|z16[railway=rail][bridge?]::bridgeblack,
@@ -1456,21 +1456,21 @@ line|z16[railway=subway][bridge?]::bridgeblack,
line|z16[railway=light_rail][bridge?]::bridgeblack,
line|z16[railway=preserved][bridge?]::bridgeblack,
line|z16[railway=miniature][bridge?]::bridgeblack,
line|z16[railway=abandoned][bridge?]::bridgeblack,
line|z16[railway=disused][bridge?]::bridgeblack,
{casing-width-add: 2.2;}
line|z17[railway=rail][bridge?]::bridgeblack,
line|z17[railway=subway][bridge?]::bridgeblack,
line|z17[railway=light_rail][bridge?]::bridgeblack,
line|z17[railway=preserved][bridge?]::bridgeblack,
line|z17[railway=miniature][bridge?]::bridgeblack,
line|z17[railway=abandoned][bridge?]::bridgeblack,
line|z17[railway=disused][bridge?]::bridgeblack,
{casing-width-add: 3;}
line|z18-[railway=rail][bridge?]::bridgeblack,
line|z18-[railway=subway][bridge?]::bridgeblack,
line|z18-[railway=light_rail][bridge?]::bridgeblack,
line|z18-[railway=preserved][bridge?]::bridgeblack,
line|z18-[railway=miniature][bridge?]::bridgeblack,
line|z18-[railway=abandoned][bridge?]::bridgeblack,
line|z18-[railway=disused][bridge?]::bridgeblack,
{casing-width-add: 4.4;}
/* 9.4 Monorail 14-22 ZOOM */

View File

@@ -85,8 +85,12 @@ landuse-cemetery-christian # area z10- (also has icon z
=== 180
amenity-car_wash # area z15- (also has icon z17-, caption(optional) z17-)
amenity-charging_station # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-bicycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-carless # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcar # area z15- (also has icon z14-, caption(optional) z14-)
amenity-charging_station-motorcar-small # area z15- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-small # area z15- (also has icon z15-, caption(optional) z16-)
amenity-courthouse # area z15- (also has icon z17-, caption(optional) z17-)
amenity-fire_station # area z15- (also has icon z16-, caption(optional) z17-)
amenity-fuel # area z15- (also has icon z14-, caption(optional) z14-)

View File

@@ -295,10 +295,10 @@ highway-track-tunnel # line z15- (also has line::
highway-construction # line z13- (also has pathtext z15-)
leisure-track # line z15- (also has caption z16-)
railway-abandoned # line z16-
railway-abandoned-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-abandoned-tunnel # line z16-
railway-construction # line z15-
railway-disused # line z16-
railway-disused-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-disused-tunnel # line z16-
railway-miniature # line z16-
railway-miniature-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-miniature-tunnel # line z16-
@@ -354,7 +354,7 @@ highway-track-bridge::bridgewhite # line::bridgewhite z15- (al
highway-trunk-bridge::bridgewhite # line::bridgewhite z13- (also has line z6-, line::bridgeblack z13-, pathtext z10-, shield::shield z10-)
highway-trunk_link-bridge::bridgewhite # line::bridgewhite z14- (also has line z10-, line::bridgeblack z14-, pathtext z10-, shield::shield z10-)
highway-unclassified-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z14-, pathtext z13-)
railway-abandoned-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
railway-disused-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
railway-light_rail-bridge::bridgewhite # line::bridgewhite z13- (also has line z13-, line::bridgeblack z16-, line::dash z16-)
railway-miniature-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
railway-preserved-bridge::bridgewhite # line::bridgewhite z15- (also has line z15-, line::bridgeblack z16-)
@@ -391,7 +391,7 @@ highway-track-bridge::bridgeblack # line::bridgeblack z17- (al
highway-trunk-bridge::bridgeblack # line::bridgeblack z13- (also has line z6-, line::bridgewhite z13-, pathtext z10-, shield::shield z10-)
highway-trunk_link-bridge::bridgeblack # line::bridgeblack z14- (also has line z10-, line::bridgewhite z14-, pathtext z10-, shield::shield z10-)
highway-unclassified-bridge::bridgeblack # line::bridgeblack z14- (also has line z11-, line::bridgewhite z14-, pathtext z13-)
railway-abandoned-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)
railway-disused-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)
railway-light_rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z13-, line::dash z16-)
railway-miniature-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)
railway-preserved-bridge::bridgeblack # line::bridgeblack z16- (also has line z15-, line::bridgewhite z15-)

View File

@@ -374,13 +374,13 @@ tourism-attraction # icon z14- (also has captio
tourism-gallery # icon z15- (also has caption(optional) z15-)
=== 4300
amenity-charging_station-small # icon z15- (also has caption(optional) z16-, area z15-)
=== 4280
amenity-charging_station-motorcar # icon z14- (also has caption(optional) z14-, area z15-)
amenity-fuel # icon z14- (also has caption(optional) z14-, area z15-)
=== 4270
amenity-charging_station-motorcar-small # icon z16- (also has caption(optional) z16-, area z15-)
=== 4260
highway-services # icon z14- (also has caption(optional) z14-, area z13-)
=== 4250
@@ -424,13 +424,23 @@ highway-rest_area # icon z15- (also has captio
tourism-camp_site # icon z16- (also has caption(optional) z16-, area z13-)
tourism-caravan_site # icon z16- (also has caption(optional) z16-)
tourism-chalet # icon z16- (also has caption(optional) z16-)
=== 3850
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
=== 3800
amenity-charging_station # icon z16- (also has caption(optional) z16-)
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-)
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
amenity-charging_station-motorcycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3752
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3751
amenity-charging_station # icon z16- (also has caption(optional) z16-, area z16-)
=== 3750
amenity-charging_station-carless # icon z16- (also has caption(optional) z16-, area z16-)
=== 3749
railway-subway_entrance # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-adana # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-algiers # icon z16- (also has caption(optional) z17-)
@@ -1641,13 +1651,13 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-gallery # caption(optional) z15- (also has icon z15-)
# === -5700
# amenity-charging_station-small # caption(optional) z16- (also has icon z15-, area z15-)
# === -5720
# amenity-charging_station-motorcar # caption(optional) z14- (also has icon z14-, area z15-)
# amenity-fuel # caption(optional) z14- (also has icon z14-, area z15-)
# === -5730
# amenity-charging_station-motorcar-small # caption(optional) z16- (also has icon z16-, area z15-)
# === -5740
# highway-services # caption(optional) z14- (also has icon z14-, area z13-)
# === -5750
@@ -1691,13 +1701,23 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-camp_site # caption(optional) z16- (also has icon z16-, area z13-)
# tourism-caravan_site # caption(optional) z16- (also has icon z16-)
# tourism-chalet # caption(optional) z16- (also has icon z16-)
# === -6150
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# === -6200
# amenity-charging_station # caption(optional) z16- (also has icon z16-)
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-)
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# amenity-charging_station-motorcycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6248
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6249
# amenity-charging_station # caption(optional) z16- (also has icon z16-, area z16-)
# === -6250
# amenity-charging_station-carless # caption(optional) z16- (also has icon z16-, area z16-)
# === -6251
# railway-subway_entrance # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-adana # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-algiers # caption(optional) z17- (also has icon z16-)

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -559,18 +559,18 @@ line|z13-[railway=abandoned],
line|z13-[railway=preserved],
line|z13-[railway=miniature],
line|z13-[railway=abandoned]
line|z13-[railway=disused]
{width: 1.6; dashes: 6.3,6.3;}
line|z16-[railway=preserved],
line|z16-[railway=miniature],
line|z16-[railway=abandoned]
line|z16-[railway=disused]
{width: 2.2; dashes: 8,8;}
line|z13-[railway=construction],
line|z13-[railway=disused]
line|z13-[railway=abandoned]
{width: 1; dashes: 1.8,5.5;}
line|z16-[railway=construction],
line|z16-[railway=disused]
line|z16-[railway=abandoned]
{width: 1.7; dashes: 2.5,7;}
line|z12[railway=rail][tunnel?],

View File

@@ -78,6 +78,7 @@ leisure-sports_centre-sport-volleyball # area z13- (also has icon z
leisure-sports_centre-sport-yoga # area z13- (also has icon z16-, caption(optional) z16-)
=== 190
amenity-courthouse # area z15- (also has icon z17-, caption(optional) z17-)
amenity-grave_yard # area z10- (also has icon z17-, caption(optional) z17-)
amenity-grave_yard-christian # area z10- (also has icon z17-, caption(optional) z17-)
landuse-cemetery # area z10- (also has icon z14-, caption(optional) z15-)
@@ -85,9 +86,12 @@ landuse-cemetery-christian # area z10- (also has icon z
=== 180
amenity-car_wash # area z15- (also has icon z17-, caption(optional) z17-)
amenity-charging_station # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-bicycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-carless # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcar # area z15- (also has icon z14-, caption(optional) z14-)
amenity-charging_station-motorcar-small # area z15- (also has icon z16-, caption(optional) z16-)
amenity-courthouse # area z15- (also has icon z17-, caption(optional) z17-)
amenity-charging_station-motorcycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-small # area z15- (also has icon z15-, caption(optional) z16-)
amenity-fire_station # area z15- (also has icon z16-, caption(optional) z17-)
amenity-fuel # area z15- (also has icon z14-, caption(optional) z14-)
amenity-marketplace # area z15- (also has icon z16-, caption(optional) z16-)

View File

@@ -297,10 +297,10 @@ highway-track-tunnel # line z11- (also has line::
highway-construction # line z11- (also has pathtext z15-)
leisure-track # line z15- (also has caption z16-)
railway-abandoned # line z13-
railway-abandoned-bridge # line z13- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-abandoned-tunnel # line z13-
railway-construction # line z13-
railway-disused # line z13-
railway-disused-bridge # line z13- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-disused-tunnel # line z13-
railway-miniature # line z13-
railway-miniature-bridge # line z13- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-miniature-tunnel # line z13-
@@ -356,7 +356,7 @@ highway-track-bridge::bridgewhite # line::bridgewhite z15- (al
highway-trunk-bridge::bridgewhite # line::bridgewhite z13- (also has line z6-, line::bridgeblack z13-, pathtext z10-, shield::shield z10-)
highway-trunk_link-bridge::bridgewhite # line::bridgewhite z14- (also has line z10-, line::bridgeblack z14-, pathtext z10-, shield::shield z10-)
highway-unclassified-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z14-, pathtext z13-)
railway-abandoned-bridge::bridgewhite # line::bridgewhite z16- (also has line z13-, line::bridgeblack z16-)
railway-disused-bridge::bridgewhite # line::bridgewhite z16- (also has line z13-, line::bridgeblack z16-)
railway-light_rail-bridge::bridgewhite # line::bridgewhite z13- (also has line z13-, line::bridgeblack z16-, line::dash z16-)
railway-miniature-bridge::bridgewhite # line::bridgewhite z16- (also has line z13-, line::bridgeblack z16-)
railway-preserved-bridge::bridgewhite # line::bridgewhite z15- (also has line z13-, line::bridgeblack z16-)
@@ -393,7 +393,7 @@ highway-track-bridge::bridgeblack # line::bridgeblack z17- (al
highway-trunk-bridge::bridgeblack # line::bridgeblack z13- (also has line z6-, line::bridgewhite z13-, pathtext z10-, shield::shield z10-)
highway-trunk_link-bridge::bridgeblack # line::bridgeblack z14- (also has line z10-, line::bridgewhite z14-, pathtext z10-, shield::shield z10-)
highway-unclassified-bridge::bridgeblack # line::bridgeblack z14- (also has line z11-, line::bridgewhite z14-, pathtext z13-)
railway-abandoned-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z16-)
railway-disused-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z16-)
railway-light_rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z13-, line::dash z16-)
railway-miniature-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z16-)
railway-preserved-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z15-)

View File

@@ -374,13 +374,13 @@ tourism-attraction # icon z14- (also has captio
tourism-gallery # icon z15- (also has caption(optional) z15-)
=== 4300
amenity-charging_station-small # icon z15- (also has caption(optional) z16-, area z15-)
=== 4280
amenity-charging_station-motorcar # icon z14- (also has caption(optional) z14-, area z15-)
amenity-fuel # icon z14- (also has caption(optional) z14-, area z15-)
=== 4270
amenity-charging_station-motorcar-small # icon z16- (also has caption(optional) z16-, area z15-)
=== 4260
highway-services # icon z14- (also has caption(optional) z14-, area z13-)
=== 4250
@@ -424,13 +424,23 @@ highway-rest_area # icon z14- (also has captio
tourism-camp_site # icon z13- (also has caption(optional) z13-, area z13-)
tourism-caravan_site # icon z13- (also has caption(optional) z13-)
tourism-chalet # icon z14- (also has caption(optional) z14-)
=== 3850
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
=== 3800
amenity-charging_station # icon z16- (also has caption(optional) z16-)
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-)
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
amenity-charging_station-motorcycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3752
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3751
amenity-charging_station # icon z16- (also has caption(optional) z16-, area z16-)
=== 3750
amenity-charging_station-carless # icon z16- (also has caption(optional) z16-, area z16-)
=== 3749
railway-subway_entrance # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-adana # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-algiers # icon z16- (also has caption(optional) z17-)
@@ -1644,13 +1654,13 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-gallery # caption(optional) z15- (also has icon z15-)
# === -5700
# amenity-charging_station-small # caption(optional) z16- (also has icon z15-, area z15-)
# === -5720
# amenity-charging_station-motorcar # caption(optional) z14- (also has icon z14-, area z15-)
# amenity-fuel # caption(optional) z14- (also has icon z14-, area z15-)
# === -5730
# amenity-charging_station-motorcar-small # caption(optional) z16- (also has icon z16-, area z15-)
# === -5740
# highway-services # caption(optional) z14- (also has icon z14-, area z13-)
# === -5750
@@ -1694,13 +1704,23 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-camp_site # caption(optional) z13- (also has icon z13-, area z13-)
# tourism-caravan_site # caption(optional) z13- (also has icon z13-)
# tourism-chalet # caption(optional) z14- (also has icon z14-)
# === -6150
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# === -6200
# amenity-charging_station # caption(optional) z16- (also has icon z16-)
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-)
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# amenity-charging_station-motorcycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6248
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6249
# amenity-charging_station # caption(optional) z16- (also has icon z16-, area z16-)
# === -6250
# amenity-charging_station-carless # caption(optional) z16- (also has icon z16-, area z16-)
# === -6251
# railway-subway_entrance # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-adana # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-algiers # caption(optional) z17- (also has icon z16-)

View File

@@ -350,9 +350,10 @@ area|z13-[highway=services],
area|z13-[highway=rest_area],
area|z13-[landuse=garages],
area|z15-[amenity=charging_station][motorcar?],
area|z15-[amenity=fuel],
area|z15-[amenity=recycling][recycling_type=centre],
area|z15-[amenity=fuel],
area|z15-[amenity=charging_station][motorcar?],
area|z16-[amenity=charging_station],
area|z17-[amenity=vehicle_inspection],
area|z17-[amenity=car_wash],
area|z17-[amenity=motorcycle_parking],

View File

@@ -630,16 +630,28 @@ node|z17[amenity=fuel],
node|z18-[amenity=fuel],
{icon-image: fuel-m.svg;font-size: 14.5;}
node|z14-[amenity=charging_station][motorcar?][!capacity],
node|z14-[amenity=charging_station][motorcar?][capacity=1],
node|z14-[amenity=charging_station][motorcar?][capacity=2],
node|z15-[amenity=charging_station][motorcar?],
node|z16-[amenity=charging_station][motorcycle?],
node|z16-[amenity=charging_station][bicycle?],
node|z16-[amenity=charging_station][motorcar=not],
node|z16-[amenity=charging_station],
{icon-image: charging-point-m.svg;}
node|z14-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging-station-m.svg;}
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-s.svg;}
node|z15-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-m.svg;}
node|z14[amenity=charging_station][motorcar?][!capacity],
node|z14[amenity=charging_station][motorcar?][capacity=1],
node|z14[amenity=charging_station][motorcar?][capacity=2],
{icon-image: none;}
node|z15-[amenity=charging_station][motorcar?][!capacity],
node|z15-[amenity=charging_station][motorcar?][capacity=1],
node|z15-[amenity=charging_station][motorcar?][capacity=2],
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?],
{text-offset: 1;font-size: 12.25;icon-min-distance: 20;}
node|z15[amenity=charging_station][motorcar?],
{icon-min-distance: 20;font-size: 12.5;}

View File

@@ -743,7 +743,7 @@ line|z14-[railway=subway][bridge?]::bridgewhite,
line|z14-[railway=light_rail][bridge?]::bridgewhite,
line|z16-[railway=preserved][bridge?]::bridgewhite,
line|z16-[railway=miniature][bridge?]::bridgewhite,
line|z16-[railway=abandoned][bridge?]::bridgewhite,
line|z16-[railway=disused][bridge?]::bridgewhite,
line|z16-[railway=tram][bridge?]::bridgewhite,
{casing-linecap: butt;casing-color:@bridge_background; opacity: 0.8;}
line|z16-[railway=rail][bridge?]::bridgeblack,
@@ -751,7 +751,7 @@ line|z16-[railway=subway][bridge?]::bridgeblack,
line|z16-[railway=light_rail][bridge?]::bridgeblack,
line|z16-[railway=preserved][bridge?]::bridgeblack,
line|z16-[railway=miniature][bridge?]::bridgeblack,
line|z16-[railway=abandoned][bridge?]::bridgeblack,
line|z16-[railway=disused][bridge?]::bridgeblack,
line|z16-[railway=tram][bridge?]::bridgeblack,
{casing-linecap: butt;casing-color:@bridge_casing; opacity: 0.6;}
@@ -915,11 +915,11 @@ line|z19-[railway=light_rail][!tunnel]::dash,
line|z16-[railway=preserved],
line|z16-[railway=miniature],
line|z16-[railway=abandoned]
line|z16-[railway=disused]
{width: 1.6;dashes: 6.3,6.3;}
line|z16-[railway=construction],
line|z16-[railway=disused]
line|z16-[railway=abandoned]
{width: 1;dashes: 1.8,5.4;}
line|z17-[railway=turntable],
@@ -954,21 +954,21 @@ line|z16[railway=subway][bridge?]::bridgewhite,
line|z16[railway=light_rail][bridge?]::bridgewhite,
line|z16[railway=preserved][bridge?]::bridgewhite,
line|z16[railway=miniature][bridge?]::bridgewhite,
line|z16[railway=abandoned][bridge?]::bridgewhite,
line|z16[railway=disused][bridge?]::bridgewhite,
{casing-width-add: 1.6;}
line|z17[railway=rail][bridge?]::bridgewhite,
line|z17[railway=subway][bridge?]::bridgewhite,
line|z17[railway=light_rail][bridge?]::bridgewhite,
line|z17[railway=preserved][bridge?]::bridgewhite,
line|z17[railway=miniature][bridge?]::bridgewhite,
line|z17[railway=abandoned][bridge?]::bridgewhite,
line|z17[railway=disused][bridge?]::bridgewhite,
{casing-width-add: 2.3;}
line|z18-[railway=rail][bridge?]::bridgewhite,
line|z18-[railway=subway][bridge?]::bridgewhite,
line|z18-[railway=light_rail][bridge?]::bridgewhite,
line|z18-[railway=preserved][bridge?]::bridgewhite,
line|z18-[railway=miniature][bridge?]::bridgewhite,
line|z18-[railway=abandoned][bridge?]::bridgewhite,
line|z18-[railway=disused][bridge?]::bridgewhite,
{casing-width-add: 3.5;}
line|z16[railway=rail][bridge?]::bridgeblack,
@@ -976,21 +976,21 @@ line|z16[railway=subway][bridge?]::bridgeblack,
line|z16[railway=light_rail][bridge?]::bridgeblack,
line|z16[railway=preserved][bridge?]::bridgeblack,
line|z16[railway=miniature][bridge?]::bridgeblack,
line|z16[railway=abandoned][bridge?]::bridgeblack,
line|z16[railway=disused][bridge?]::bridgeblack,
{casing-width-add: 2.2;}
line|z17[railway=rail][bridge?]::bridgeblack,
line|z17[railway=subway][bridge?]::bridgeblack,
line|z17[railway=light_rail][bridge?]::bridgeblack,
line|z17[railway=preserved][bridge?]::bridgeblack,
line|z17[railway=miniature][bridge?]::bridgeblack,
line|z17[railway=abandoned][bridge?]::bridgeblack,
line|z17[railway=disused][bridge?]::bridgeblack,
{casing-width-add: 3;}
line|z18-[railway=rail][bridge?]::bridgeblack,
line|z18-[railway=subway][bridge?]::bridgeblack,
line|z18-[railway=light_rail][bridge?]::bridgeblack,
line|z18-[railway=preserved][bridge?]::bridgeblack,
line|z18-[railway=miniature][bridge?]::bridgeblack,
line|z18-[railway=abandoned][bridge?]::bridgeblack,
line|z18-[railway=disused][bridge?]::bridgeblack,
{casing-width-add: 4.4;}
/* 9.4 Monorail 14-22 ZOOM */

View File

@@ -33,8 +33,12 @@ amenity-parking-street_side-private # area z15- (also has icon z
=== 160
amenity-car_wash # area z17- (also has icon z17-, caption(optional) z17-)
amenity-charging_station # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-bicycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-carless # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcar # area z15- (also has icon z14-, caption(optional) z14-)
amenity-charging_station-motorcar-small # area z15- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-small # area z15- (also has icon z15-, caption(optional) z16-)
amenity-fuel # area z15- (also has icon z12-, caption(optional) z12-)
amenity-recycling-centre # area z15- (also has icon z16-, caption(optional) z16-)
amenity-vehicle_inspection # area z17- (also has icon z17-)

View File

@@ -272,10 +272,10 @@ highway-track-no-access # line z16-
highway-construction # line z13-
railway-abandoned # line z16-
railway-abandoned-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-abandoned-tunnel # line z16-
railway-construction # line z16-
railway-disused # line z16-
railway-disused-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-disused-tunnel # line z16-
railway-miniature # line z16-
railway-miniature-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-)
railway-miniature-tunnel # line z16-
@@ -297,7 +297,7 @@ highway-tertiary_link-bridge::bridgewhite # line::bridgewhite z14- (al
highway-trunk-bridge::bridgewhite # line::bridgewhite z13- (also has line z6-, line::bridgeblack z13-, line(casing) z14-, pathtext z10-, shield::shield z10-)
highway-trunk_link-bridge::bridgewhite # line::bridgewhite z14- (also has line z10-, line::bridgeblack z14-, line(casing) z14-, pathtext z10-, shield::shield z10-)
highway-unclassified-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z14-, pathtext z14-)
railway-abandoned-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
railway-disused-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
railway-light_rail-bridge::bridgewhite # line::bridgewhite z14- (also has line z13-, line::bridgeblack z16-, line::dash z16-)
railway-miniature-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
railway-preserved-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-)
@@ -324,7 +324,7 @@ highway-tertiary_link-bridge::bridgeblack # line::bridgeblack z14- (al
highway-trunk-bridge::bridgeblack # line::bridgeblack z13- (also has line z6-, line::bridgewhite z13-, line(casing) z14-, pathtext z10-, shield::shield z10-)
highway-trunk_link-bridge::bridgeblack # line::bridgeblack z14- (also has line z10-, line::bridgewhite z14-, line(casing) z14-, pathtext z10-, shield::shield z10-)
highway-unclassified-bridge::bridgeblack # line::bridgeblack z14- (also has line z11-, line::bridgewhite z14-, pathtext z14-)
railway-abandoned-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)
railway-disused-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)
railway-light_rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z14-, line::dash z16-)
railway-miniature-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)
railway-preserved-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-)

View File

@@ -170,17 +170,28 @@ aeroway-aerodrome-international # icon z7- (also has caption
place-town # caption z8-
=== 3250
amenity-charging_station-small # icon z15- (also has caption(optional) z16-, area z15-)
=== 3210
amenity-charging_station-motorcar # icon z14- (also has caption(optional) z14-, area z15-)
amenity-fuel # icon z12- (also has caption(optional) z12-, area z15-)
=== 3200
amenity-charging_station-motorcar-small # icon z16- (also has caption(optional) z16-, area z15-)
=== 3190
amenity-charging_station # icon z16- (also has caption(optional) z16-)
amenity-vending_machine-fuel # icon z17- (also has caption(optional) z17-)
=== 3153
amenity-charging_station-motorcycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3152
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3151
amenity-charging_station # icon z16- (also has caption(optional) z16-, area z16-)
=== 3150
amenity-charging_station-carless # icon z16- (also has caption(optional) z16-, area z16-)
=== 3149
railway-station-subway-moscow # icon z11-15 (also has caption(optional) z15)
railway-station-subway-spb # icon z11-16 (also has caption(optional) z15-16)
=== 3100
@@ -529,9 +540,6 @@ natural-beach-gravel # caption z15- (also has are
natural-beach-sand # caption z15- (also has area z10-)
=== 900
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-)
=== 850
historic-boundary_stone # icon z16- (also has caption(optional) z16-)
historic-gallows # icon z16- (also has caption(optional) z16-)
historic-pillory # icon z16- (also has caption(optional) z16-)
@@ -785,17 +793,28 @@ entrance-emergency # icon z19- (also has captio
# aeroway-aerodrome-international # caption(optional) z10- (also has icon z7-, area z10-)
# === -6700
# amenity-charging_station-small # caption(optional) z16- (also has icon z15-, area z15-)
# === -6790
# amenity-charging_station-motorcar # caption(optional) z14- (also has icon z14-, area z15-)
# amenity-fuel # caption(optional) z12- (also has icon z12-, area z15-)
# === -6800
# amenity-charging_station-motorcar-small # caption(optional) z16- (also has icon z16-, area z15-)
# === -6810
# amenity-charging_station # caption(optional) z16- (also has icon z16-)
# amenity-vending_machine-fuel # caption(optional) z17- (also has icon z17-)
# === -6847
# amenity-charging_station-motorcycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6848
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6849
# amenity-charging_station # caption(optional) z16- (also has icon z16-, area z16-)
# === -6850
# amenity-charging_station-carless # caption(optional) z16- (also has icon z16-, area z16-)
# === -6851
# railway-station-subway-moscow # caption(optional) z15 (also has icon z11-15)
# railway-station-subway-spb # caption(optional) z15-16 (also has icon z11-16)
# === -6900
@@ -1058,9 +1077,6 @@ entrance-emergency # icon z19- (also has captio
# amenity-hospital # caption(optional) z15- (also has icon z15-)
# === -9000
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-)
# === -9150
# historic-boundary_stone # caption(optional) z16- (also has icon z16-)
# historic-gallows # caption(optional) z16- (also has icon z16-)
# historic-pillory # caption(optional) z16- (also has icon z16-)

View File

@@ -2896,8 +2896,8 @@ UNIT_CLASS_TEST(TestWithClassificator, OsmType_ComplexTypesSmoke)
{{"place", "state", "USA"}, {{"place", "state"}, {"is_in", "USA"}}},
{{"place", "state", "USA"}, {{"place", "state"}, {"is_in:country", "USA"}}},
{{"place", "state", "USA"}, {{"place", "state"}, {"is_in:country_code", "us"}}},
{{"railway", "abandoned", "bridge"}, {{"railway", "abandoned"}, {"bridge", "any_value"}}},
{{"railway", "abandoned", "tunnel"}, {{"railway", "abandoned"}, {"tunnel", "any_value"}}},
{{"railway", "disused", "bridge"}, {{"railway", "disused"}, {"bridge", "any_value"}}},
{{"railway", "disused", "tunnel"}, {{"railway", "disused"}, {"tunnel", "any_value"}}},
{{"railway", "funicular", "bridge"}, {{"railway", "funicular"}, {"bridge", "any_value"}}},
{{"railway", "funicular", "tunnel"}, {{"railway", "funicular"}, {"tunnel", "any_value"}}},
{{"railway", "light_rail", "bridge"}, {{"railway", "light_rail"}, {"bridge", "any_value"}}},

View File

@@ -351,6 +351,11 @@ private:
// - both amenity-charging_station-motorcar and amenity-charging_station-bicycle are left;
void LeaveLongestTypes(std::vector<generator::TypeStrings> & matchedTypes)
{
auto const isChargingStation = [](auto const & lhs, auto const & rhs)
{
return lhs.size() > 1 && rhs.size() > 1 && lhs.at(1) == "charging_station" && rhs.at(1) == "charging_station" && lhs.at(0) == "amenity" && rhs.at(0) == "amenity";
};
auto const equalPrefix = [](auto const & lhs, auto const & rhs)
{
size_t const prefixSz = std::min(lhs.size(), rhs.size());
@@ -369,8 +374,11 @@ void LeaveLongestTypes(std::vector<generator::TypeStrings> & matchedTypes)
return lhs < rhs;
};
auto const isEqual = [&equalPrefix](auto const & lhs, auto const & rhs)
auto const isEqual = [&equalPrefix, &isChargingStation](auto const & lhs, auto const & rhs)
{
if (isChargingStation(lhs, rhs))
return false;
if (equalPrefix(lhs, rhs))
{
// Keep longest type only, so return equal is true.

View File

@@ -57,6 +57,8 @@ TagMapping const kMotorCarTagMapping = {
{OsmElement::Tag("motorcar", "private"), RoadAccess::Type::Private},
{OsmElement::Tag("motorcar", "destination"), RoadAccess::Type::Destination},
{OsmElement::Tag("motorcar", "permit"), RoadAccess::Type::Permit},
{OsmElement::Tag("service", "parking_aisle"), RoadAccess::Type::Destination},
{OsmElement::Tag("amenity", "parking_entrance"), RoadAccess::Type::Destination},
};
TagMapping const kMotorVehicleTagMapping = {
@@ -77,8 +79,6 @@ TagMapping const kVehicleTagMapping = {
{OsmElement::Tag("vehicle", "private"), RoadAccess::Type::Private},
{OsmElement::Tag("vehicle", "destination"), RoadAccess::Type::Destination},
{OsmElement::Tag("vehicle", "permit"), RoadAccess::Type::Permit},
{OsmElement::Tag("service", "parking_aisle"), RoadAccess::Type::Private},
{OsmElement::Tag("amenity", "parking_entrance"), RoadAccess::Type::Private},
};
TagMapping const kCarBarriersTagMapping = {
@@ -136,8 +136,6 @@ TagMapping const kDefaultTagMapping = {
{OsmElement::Tag("access", "agricultural"), RoadAccess::Type::Private},
{OsmElement::Tag("access", "forestry"), RoadAccess::Type::Private},
{OsmElement::Tag("locked", "yes"), RoadAccess::Type::Locked},
{OsmElement::Tag("service", "parking_aisle"), RoadAccess::Type::Private},
{OsmElement::Tag("amenity", "parking_entrance"), RoadAccess::Type::Private},
};
// Removed secondary, tertiary from car list. Example https://www.openstreetmap.org/node/8169922700

View File

@@ -32,7 +32,7 @@ NSDate * _Nullable ParseDateString(NSString * _Nullable dateString) {
dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyy-MM-dd";
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
dateFormatter.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"UTC"];
dateFormatter.timeZone = [NSTimeZone localTimeZone];
});
return [dateFormatter dateFromString:dateString];

View File

@@ -43,9 +43,10 @@
"type.leisure.adult_gaming_centre" = "Spielhalle für Erwachsene";
"type.leisure.amusement_arcade" = "Spielhalle für Unterhaltungsspiele";
"type.amenity.charging_station" = "Ladestation";
"type.amenity.charging_station.bicycle" = "Fahrrad-Ladestation";
"type.amenity.charging_station.motorcar" = "Kfz-Ladestation";
"type.amenity.charging_station.motorcar.small" = "Kfz-Ladestation";
"type.amenity.charging_station.motorcar" = "Autos";
"type.amenity.charging_station.motorcycle" = "Motorräder";
"type.amenity.charging_station.bicycle" = "Fahrräder";
"type.amenity.charging_station.small" = "Begrenzte Kapazität";
"type.amenity.childcare" = "Kindertagesstätte";
"type.amenity.cinema" = "Kino";
"type.leisure.bowling_alley" = "Bowlingbahn";

View File

@@ -48,9 +48,10 @@
"type.leisure.adult_gaming_centre" = "Adult Gaming Centre";
"type.leisure.amusement_arcade" = "Arcade";
"type.amenity.charging_station" = "Charging Station";
"type.amenity.charging_station.bicycle" = "Bicycle Charging Station";
"type.amenity.charging_station.motorcar" = "Car Charging Station";
"type.amenity.charging_station.motorcar.small" = "Car Charging Point";
"type.amenity.charging_station.motorcar" = "Cars";
"type.amenity.charging_station.motorcycle" = "Motorcycles";
"type.amenity.charging_station.bicycle" = "Bicycles";
"type.amenity.charging_station.small" = "Limited Capacity";
"type.amenity.childcare" = "Nursery";
"type.amenity.cinema" = "Cinema";
"type.leisure.bowling_alley" = "Bowling Alley";

View File

@@ -55,9 +55,10 @@
"type.leisure.adult_gaming_centre" = "Adult Gaming Centre";
"type.leisure.amusement_arcade" = "Arcade";
"type.amenity.charging_station" = "Charging Station";
"type.amenity.charging_station.bicycle" = "Bicycle Charging Station";
"type.amenity.charging_station.motorcar" = "Car Charging Station";
"type.amenity.charging_station.motorcar.small" = "Car Charging Point";
"type.amenity.charging_station.motorcar" = "Cars";
"type.amenity.charging_station.motorcycle" = "Motorcycles";
"type.amenity.charging_station.bicycle" = "Bicycles";
"type.amenity.charging_station.small" = "Limited Capacity";
"type.amenity.childcare" = "Nursery";
"type.amenity.cinema" = "Cinema";
"type.leisure.bowling_alley" = "Bowling Alley";
@@ -1024,11 +1025,11 @@
"type.public_transport.platform" = "Platform";
"type.railway" = "Railway";
"type.railway.abandoned" = "Abandoned Railway";
"type.railway.abandoned.bridge" = "Abandoned Railway Bridge";
"type.railway.abandoned.tunnel" = "Abandoned Railway Tunnel";
"type.railway.construction" = "Railway Construction";
"type.railway.crossing" = "Railway Crossing";
"type.railway.disused" = "Disused Railway";
"type.railway.disused.bridge" = "Disused Railway Bridge";
"type.railway.disused.tunnel" = "Disused Railway Tunnel";
"type.railway.funicular" = "Funicular";
"type.railway.funicular.bridge" = "Funicular Bridge";
"type.railway.funicular.tunnel" = "Funicular Tunnel";

View File

@@ -85,10 +85,28 @@ class OpeningHoursViewController: UIViewController {
}
if let checkDate = self.openingHoursCheckDate, self.expanded {
let checkDateFormatter = RelativeDateTimeFormatter()
checkDateFormatter.unitsStyle = .spellOut
checkDateFormatter.localizedString(for: checkDate, relativeTo: Date.now)
self.checkDateLabel.text = String(format: L("hours_confirmed_time_ago"), checkDateFormatter.localizedString(for: checkDate, relativeTo: Date.now))
let dateString: String
// Check if the date is strictly "Today" or "Yesterday"
if Calendar.current.isDateInToday(checkDate) || Calendar.current.isDateInYesterday(checkDate) {
// Case 1: Today/Yesterday -> Use "today" / "yesterday"
// Can be replaced by Date.RelativeFormatStyle with iOS 18+
let checkDateFormatter = DateFormatter()
checkDateFormatter.dateStyle = .medium
checkDateFormatter.timeStyle = .none
checkDateFormatter.doesRelativeDateFormatting = true
let rawString = checkDateFormatter.string(from: checkDate)
// Lowercase first letter: "Today" -> "today"
dateString = rawString.prefix(1).lowercased() + rawString.dropFirst()
} else {
// Case 2: Older -> Use "2 years ago"
let relativeCheckDateFormatter = RelativeDateTimeFormatter()
relativeCheckDateFormatter.unitsStyle = .spellOut
dateString = relativeCheckDateFormatter.localizedString(for: checkDate, relativeTo: Date())
}
self.checkDateLabel.text = String(format: L("hours_confirmed_time_ago"), dateString)
NSLayoutConstraint.activate([self.checkDateLabelTopLayoutConstraint])
NSLayoutConstraint.activate([self.checkDateLabelBottomLayoutConstraint])

View File

@@ -458,11 +458,29 @@ class PlacePageInfoViewController: UIViewController {
setupOpenWithAppView()
if let checkDate = placePageInfoData.checkDate {
let checkDateFormatter = RelativeDateTimeFormatter()
checkDateFormatter.unitsStyle = .spellOut
checkDateFormatter.localizedString(for: checkDate, relativeTo: Date.now)
self.checkDateLabel.text = String(format: L("existence_confirmed_time_ago"), checkDateFormatter.localizedString(for: checkDate, relativeTo: Date.now))
checkDateLabel.isHidden = false
let dateString: String
// Check if the date is strictly "Today" or "Yesterday"
if Calendar.current.isDateInToday(checkDate) || Calendar.current.isDateInYesterday(checkDate) {
// Case 1: Today/Yesterday -> Use "today" / "yesterday"
// Can be replaced by Date.RelativeFormatStyle with iOS 18+
let checkDateFormatter = DateFormatter()
checkDateFormatter.dateStyle = .medium
checkDateFormatter.timeStyle = .none
checkDateFormatter.doesRelativeDateFormatting = true
let rawString = checkDateFormatter.string(from: checkDate)
// Lowercase first letter: "Today" -> "today"
dateString = rawString.prefix(1).lowercased() + rawString.dropFirst()
} else {
// Case 2: Older -> Use "2 years ago"
let relativeCheckDateFormatter = RelativeDateTimeFormatter()
relativeCheckDateFormatter.unitsStyle = .spellOut
dateString = relativeCheckDateFormatter.localizedString(for: checkDate, relativeTo: Date())
}
self.checkDateLabel.text = String(format: L("existence_confirmed_time_ago"), dateString)
checkDateLabel.isHidden = false
NSLayoutConstraint.activate([checkDateLabelLayoutConstraint])
} else {
checkDateLabel.text = String()

View File

@@ -191,9 +191,26 @@ void TypesHolder::SortBySpec()
auto const getPriority = [&cl](uint32_t type) { return cl.GetObject(type)->GetMaxOverlaysPriority(); };
auto const & checker = UselessTypesChecker::Instance();
auto const & isChargingStationChecker = ftypes::IsCharingStationChecker::Instance();
auto const & isChargingStationSmallChecker = ftypes::IsCharingStationSmallChecker::Instance();
std::stable_sort(begin(), end(), [&checker, &getPriority](uint32_t t1, uint32_t t2)
std::stable_sort(begin(), end(), [&checker, &getPriority, &isChargingStationChecker, &isChargingStationSmallChecker](uint32_t t1, uint32_t t2)
{
if (isChargingStationChecker(t1) && isChargingStationChecker(t2))
{
if (isChargingStationSmallChecker(t1) && !isChargingStationSmallChecker(t2))
return false;
else if (!isChargingStationSmallChecker(t1) && isChargingStationSmallChecker(t2))
return true;
uint8_t const t1Level = ftype::GetLevel(t1);
uint8_t const t2Level = ftype::GetLevel(t2);
if (t1Level == 2 && t2Level != 2)
return true;
else if (t1Level != 2 && t2Level == 2)
return false;
}
int const p1 = getPriority(t1);
int const p2 = getPriority(t2);
if (p1 != p2)
@@ -403,6 +420,13 @@ void FeatureParams::SetRwSubwayType(char const * cityName)
FeatureParams::TypesResult FeatureParams::FinishAddingTypesEx()
{
auto const & cl = classif();
auto charingStation = cl.GetTypeByPath({"amenity", "charging_station"});
auto motorcarCharingStation = cl.GetTypeByPath({"amenity", "charging_station", "motorcar"});
auto carelessCharingStation = cl.GetTypeByPath({"amenity", "charging_station", "carless"});
if (IsTypeExist(charingStation) && !IsTypeExist(motorcarCharingStation) && !IsTypeExist(carelessCharingStation))
AddType(motorcarCharingStation);
base::SortUnique(m_types);
TypesResult res = TYPES_GOOD;

View File

@@ -753,6 +753,30 @@ IsDirectionalChecker::IsDirectionalChecker() : ftypes::BaseChecker(1 /* level */
m_types.push_back(c.GetTypeByPath({"lateral"}));
}
IsCharingStationChecker::IsCharingStationChecker() : ftypes::BaseChecker(2 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station"}));
}
IsCharingStationCarChecker::IsCharingStationCarChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "motorcar"}));
}
IsCharingStationCarlessChecker::IsCharingStationCarlessChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "carless"}));
}
IsCharingStationSmallChecker::IsCharingStationSmallChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "small"}));
}
IsTaxiChecker::IsTaxiChecker()
{
Classificator const & c = classif();

View File

@@ -519,6 +519,38 @@ public:
DECLARE_CHECKER_INSTANCE(IsDirectionalChecker);
};
class IsCharingStationChecker : public ftypes::BaseChecker
{
IsCharingStationChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationChecker);
};
class IsCharingStationCarChecker : public ftypes::BaseChecker
{
IsCharingStationCarChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationCarChecker);
};
class IsCharingStationCarlessChecker : public ftypes::BaseChecker
{
IsCharingStationCarlessChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationCarlessChecker);
};
class IsCharingStationSmallChecker : public ftypes::BaseChecker
{
IsCharingStationSmallChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationSmallChecker);
};
class IsTaxiChecker : public BaseChecker
{
IsTaxiChecker();

View File

@@ -121,12 +121,19 @@ std::string MapObject::GetLocalizedAllTypes(bool withMainType) const
auto const & isPoi = ftypes::IsPoiChecker::Instance();
auto const & isDirectional = ftypes::IsDirectionalChecker::Instance();
auto const & amenityChecker = ftypes::IsAmenityChecker::Instance();
auto const & charingStationCarChecker = ftypes::IsCharingStationCarChecker::Instance();
auto const & charingStationCarlessChecker = ftypes::IsCharingStationCarlessChecker::Instance();
auto const & charingStationSmallChecker = ftypes::IsCharingStationSmallChecker::Instance();
std::ostringstream oss;
bool isMainType = true;
bool isFirst = true;
for (auto const type : copy)
{
// Ignore some charing stations
if (charingStationCarlessChecker(type) || ((charingStationCarChecker(type) || charingStationSmallChecker(type)) && charingStationCarlessChecker(copy)))
continue;
if (isMainType && !withMainType)
{
isMainType = false;

View File

@@ -120,13 +120,11 @@ static std::pair<UniString, UniString> const kPreprocessReplacements[] = {
{MakeUniString("ι"), MakeUniString("ιερά μονή")},
{MakeUniString("ι.ν"), MakeUniString("ιερός ναός")},
{MakeUniString("κων/νου"), MakeUniString("κωνσταντίνου")},
{MakeUniString("б-р"), MakeUniString("бульвар")},
{MakeUniString("д-р"), MakeUniString("доктор")},
{MakeUniString("м-н"), MakeUniString("микрорайон")},
{MakeUniString("наб-я"), MakeUniString("набережная")},
{MakeUniString("пр-д"), MakeUniString("проезд")},
{MakeUniString("пр-т"), MakeUniString("проспект")},
{MakeUniString("р"), MakeUniString("район")},
{MakeUniString("আ/এ"), MakeUniString("আবাসিক এলাকা")},
};

View File

@@ -87,6 +87,7 @@ std::map<std::string, BookmarkMatchInfo> const kFeatureTypeToBookmarkMatchInfo =
{"amenity-charging_station", {kml::BookmarkIcon::ChargingStation, BookmarkBaseType::Gas}},
{"amenity-charging_station-bicycle", {kml::BookmarkIcon::ChargingStation, BookmarkBaseType::Gas}},
{"amenity-charging_station-motorcycle", {kml::BookmarkIcon::ChargingStation, BookmarkBaseType::Gas}},
{"amenity-charging_station-motorcar", {kml::BookmarkIcon::ChargingStation, BookmarkBaseType::Gas}},
{"amenity-fuel", {kml::BookmarkIcon::Gas, BookmarkBaseType::Gas}},

View File

@@ -229,6 +229,7 @@ private:
{{"amenity", "fuel"}, SearchMarkType::Fuel},
{{"amenity", "charging_station"}, SearchMarkType::ChargingStation},
{{"amenity", "charging_station", "bicycle"}, SearchMarkType::ChargingStation},
{{"amenity", "charging_station", "motorcycle"}, SearchMarkType::ChargingStation},
{{"amenity", "charging_station", "motorcar"}, SearchMarkType::ChargingStation},
{{"shop", "alcohol"}, SearchMarkType::ShopAlcohol},
{{"shop", "beverages"}, SearchMarkType::ShopAlcohol},

View File

@@ -458,7 +458,7 @@ private:
positionsAccessConditional.clear();
auto openingHoursDeserializer = GetOpeningHoursSerDesForRouting();
auto const size = ReadPrimitiveFromSource<size_t>(src);
auto const size = ReadPrimitiveFromSource<uint64_t>(src);
positionsAccessConditional.reserve(size);
uint32_t prevFeatureId = 0;