Merge branch 'master' into develop

This commit is contained in:
Pieter Vander Vennet 2021-09-22 16:28:01 +02:00
commit 1f8eca6b8b
27 changed files with 166 additions and 10 deletions

View file

@ -24,6 +24,9 @@ jobs:
- name: create stub themes
run: "echo '{\"layers\": [], \"themes\": []}' > ./assets/generated/known_layers_and_themes.json"
- name: generate assets
run: npm run generate:images
- name: generate translations
run: npm run generate:translations

View file

@ -5,7 +5,19 @@
"nl": "Witte Fietsen",
"de": "Geisterrad",
"it": "Bici fantasma",
"fr": "Vélos fantômes"
"fr": "Vélos fantômes",
"eo": "Fantombiciklo",
"es": "Bicicleta blanca",
"fi": "Haamupyörä",
"gl": "Bicicleta pantasma",
"hu": "Emlékkerékpár",
"ja": "ゴーストバイク",
"nb_NO": "Spøkelsessykler",
"pl": "Duch roweru",
"pt_BR": "Bicicleta fantasma",
"ru": "Велосипед Ghost",
"sv": "Spökcykel",
"zh_Hant": "幽靈單車"
},
"source": {
"osmTags": "memorial=ghost_bike"
@ -17,7 +29,19 @@
"nl": "Witte Fiets",
"de": "Geisterrad",
"it": "Bici fantasma",
"fr": "Vélo fantôme"
"fr": "Vélo fantôme",
"eo": "Fantombiciklo",
"es": "Bicicleta blanca",
"fi": "Haamupyörä",
"gl": "Bicicleta pantasma",
"hu": "Emlékkerékpár",
"ja": "ゴーストバイク",
"nb_NO": "Spøkelsessykler",
"pl": "Duch roweru",
"pt_BR": "Bicicleta fantasma",
"ru": "Велосипед Ghost",
"sv": "Spökcykel",
"zh_Hant": "幽靈單車"
},
"mappings": [
{

View file

@ -9,7 +9,17 @@
"ja",
"nb_NO",
"zh_Hant",
"fr"
"fr",
"eo",
"es",
"fi",
"gl",
"hu",
"it",
"pl",
"pt_BR",
"ru",
"sv"
],
"title": {
"en": "Ghost bikes",
@ -18,7 +28,17 @@
"ja": "ゴーストバイク",
"nb_NO": "Spøkelsessykler",
"zh_Hant": "幽靈單車",
"fr": "Vélo fantôme"
"fr": "Vélo fantôme",
"eo": "Fantombiciklo",
"es": "Bicicleta blanca",
"fi": "Haamupyörä",
"gl": "Bicicleta pantasma",
"hu": "Emlékkerékpár",
"it": "Bici fantasma",
"pl": "Duch roweru",
"pt_BR": "Bicicleta fantasma",
"ru": "Велосипед Ghost",
"sv": "Spökcykel"
},
"description": {
"en": "A <b>ghost bike</b> is a memorial for a cyclist who died in a traffic accident, in the form of a white bicycle placed permanently near the accident location.<br/><br/>On this map, one can see all the ghost bikes which are known by OpenStreetMap. Is a ghost bike missing? Everyone can add or update information here - you only need to have a (free) OpenStreetMap account.",

View file

@ -1 +1,8 @@
{}
{
"ghost_bike": {
"name": "Fantombiciklo",
"title": {
"render": "Fantombiciklo"
}
}
}

View file

@ -112,5 +112,11 @@
"title": {
"render": "Desfibrilador"
}
},
"ghost_bike": {
"name": "Bicicleta blanca",
"title": {
"render": "Bicicleta blanca"
}
}
}

View file

@ -99,5 +99,11 @@
"title": "Pyöräpumppu"
}
}
},
"ghost_bike": {
"name": "Haamupyörä",
"title": {
"render": "Haamupyörä"
}
}
}

View file

@ -378,5 +378,11 @@
"title": {
"render": "Auga potábel"
}
},
"ghost_bike": {
"name": "Bicicleta pantasma",
"title": {
"render": "Bicicleta pantasma"
}
}
}

View file

@ -198,5 +198,11 @@
"title": {
"render": "Kerékpáros parkoló"
}
},
"ghost_bike": {
"name": "Emlékkerékpár",
"title": {
"render": "Emlékkerékpár"
}
}
}

View file

@ -32,5 +32,11 @@
"question": "お客様が持参容器(調理用の鍋や小さな鍋など)をもってきた場合は、注文の梱包に使用されますか?<br/>"
}
}
},
"ghost_bike": {
"name": "ゴーストバイク",
"title": {
"render": "ゴーストバイク"
}
}
}

View file

@ -118,5 +118,11 @@
"title": {
"render": "Ladestasjon"
}
},
"ghost_bike": {
"name": "Spøkelsessykler",
"title": {
"render": "Spøkelsessykler"
}
}
}

View file

@ -194,5 +194,11 @@
"question": "Czy pompka posiada wskaźnik ciśnienia lub manometr?"
}
}
},
"ghost_bike": {
"name": "Duch roweru",
"title": {
"render": "Duch roweru"
}
}
}

View file

@ -537,5 +537,11 @@
},
"render": "Reparo/loja de bicicletas"
}
},
"ghost_bike": {
"name": "Bicicleta fantasma",
"title": {
"render": "Bicicleta fantasma"
}
}
}

View file

@ -616,6 +616,7 @@
}
},
"ghost_bike": {
"name": "Велосипед Ghost",
"tagRenderings": {
"2": {
"render": "В знак памяти о {name}"
@ -629,6 +630,9 @@
"5": {
"render": "Установлен {start_date}"
}
},
"title": {
"render": "Велосипед Ghost"
}
},
"information_board": {

View file

@ -1 +1,8 @@
{}
{
"ghost_bike": {
"name": "Spökcykel",
"title": {
"render": "Spökcykel"
}
}
}

View file

@ -402,5 +402,11 @@
"title": {
"render": "充電站"
}
},
"ghost_bike": {
"name": "幽靈單車",
"title": {
"render": "幽靈單車"
}
}
}

View file

@ -1 +1,5 @@
{}
{
"ghostbikes": {
"title": "Fantombiciklo"
}
}

View file

@ -31,6 +31,9 @@
}
}
},
"ghostbikes": {
"title": "Bicicleta blanca"
},
"personal": {
"description": "Crea una interficie basada en todas las capas disponibles de todas las interficies",
"title": "Interficie personal"

View file

@ -1 +1,5 @@
{}
{
"ghostbikes": {
"title": "Haamupyörä"
}
}

View file

@ -3,6 +3,9 @@
"description": "O obxectivo deste mapa é amosar ós ciclistas unha solución doada de empregar para atopar a infraestrutura axeitada para as súas necesidades.<br><br>Podes obter a túa localización precisa (só para dispositivos móbiles) e escoller as capas que sexan relevantes para ti na esquina inferior esquerda. Tamén podes empregar esta ferramenta para engadir ou editar puntos de interese ó mapa e fornecer máis datos respondendo as cuestións.<br><br>Todas as modificacións que fagas serán gardadas de xeito automático na base de datos global do OpenStreetMap e outros poderán reutilizalos libremente.<br><br>Para máis información sobre o proxecto cyclofix, vai a <a href='https://cyclofix.osm.be/'>cyclofix.osm.be</a>.",
"title": "Cyclofix - Un mapa aberto para os ciclistas"
},
"ghostbikes": {
"title": "Bicicleta pantasma"
},
"personal": {
"description": "Crea un tema baseado en todas as capas dispoñíbeis de todos os temas",
"title": "Tema personalizado"

View file

@ -4,5 +4,8 @@
},
"artwork": {
"title": "Nyít Műalkotás Térkép"
},
"ghostbikes": {
"title": "Emlékkerékpár"
}
}

View file

@ -488,6 +488,9 @@
"shortDescription": "Questa mappa mostra i giardini verticali, con foto e informazioni utili sulla loro orientazione, sull'illuminazione solare e sui tipi di piante.",
"title": "Giardini verticali"
},
"ghostbikes": {
"title": "Bici fantasma"
},
"hailhydrant": {
"layers": {
"0": {

View file

@ -6,6 +6,9 @@
"artwork": {
"title": "Otwórz mapę dzieł sztuki"
},
"ghostbikes": {
"title": "Duch roweru"
},
"surveillance": {
"description": "Na tej otwartej mapie można znaleźć kamery monitoringu.",
"shortDescription": "Kamery monitorujące i inne środki nadzoru"

View file

@ -170,5 +170,8 @@
},
"shortDescription": "Encontre locais para passar a noite com o seu campista",
"title": "Locais de acampamento"
},
"ghostbikes": {
"title": "Bicicleta fantasma"
}
}

View file

@ -421,6 +421,9 @@
}
}
},
"ghostbikes": {
"title": "Велосипед Ghost"
},
"hailhydrant": {
"layers": {
"0": {

View file

@ -5,5 +5,8 @@
},
"artwork": {
"title": "Öppen konstverkskarta"
},
"ghostbikes": {
"title": "Spökcykel"
}
}

View file

@ -8,7 +8,7 @@
"main": "index.js",
"scripts": {
"increase-memory": "export NODE_OPTIONS=--max_old_space_size=4096",
"start": "ts-node scripts/generateLayerOverview.ts --no-fail && npm run increase-memory && parcel *.html UI/** Logic/** assets/*.json assets/svg/* assets/generated/* assets/layers/*/*.svg assets/tagRendering/*.json assets/themes/*/*.svg assets/themes/*/*.png vendor/* vendor/*/*",
"start": "ts-node scripts/generateLayerOverview.ts --no-fail && npm run increase-memory && parcel *.html UI/** Logic/** assets/*.json assets/svg/* assets/generated/* assets/layers/*/*.svg assets/tagRenderings/*.json assets/themes/*/*.svg assets/themes/*/*.png vendor/* vendor/*/*",
"test": "ts-node test/TestAll.ts",
"init": "npm ci && npm run generate && npm run generate:editor-layer-index && npm run generate:layouts && npm run clean",
"add-weblate-upstream": "git remote add weblate-layers https://hosted.weblate.org/git/mapcomplete/layer-translations/ ; git remote update weblate-layers",

View file

@ -277,7 +277,12 @@ function loadTranslationFilesFrom(target: string): Map<string, any> {
for (const translationFilePath of translationFilePaths) {
let language = translationFilePath.substr(translationFilePath.lastIndexOf("/") + 1)
language = language.substr(0, language.length - 5)
try{
translationFiles.set(language, JSON.parse(readFileSync(translationFilePath, "utf8")))
}catch(e){
console.error("Invalid JSON file or file does not exist", translationFilePath)
throw e;
}
}
return translationFiles;
}