forked from MapComplete/MapComplete
Chore: Fix build
This commit is contained in:
parent
bf38d09032
commit
114f484faf
4 changed files with 93 additions and 42 deletions
|
@ -1,13 +1,18 @@
|
|||
{
|
||||
"id": "mapcomplete-changes",
|
||||
"title": {
|
||||
"en": "Changes made with MapComplete"
|
||||
"en": "Changes made with MapComplete",
|
||||
"de": "Änderungen mit MapComplete"
|
||||
},
|
||||
"shortDescription": {
|
||||
"en": "Shows changes made by MapComplete"
|
||||
"en": "Shows changes made by MapComplete",
|
||||
"de": "Zeigt die von MapComplete vorgenommenen Änderungen an"
|
||||
},
|
||||
"description": {
|
||||
"en": "This maps shows all the changes made with MapComplete"
|
||||
"en": "This maps shows all the changes made with MapComplete",
|
||||
"de": "Diese Karte zeigt alle mit MapComplete vorgenommenen Änderungen",
|
||||
"es": "Este mapa muestra todos los cambios realizados con MapComplete",
|
||||
"pl": "Ta mapa pokazuje wszystkie zmiany wprowadzone za pomocą MapComplete"
|
||||
},
|
||||
"icon": "./assets/svg/logo.svg",
|
||||
"hideFromOverview": true,
|
||||
|
@ -18,7 +23,8 @@
|
|||
{
|
||||
"id": "mapcomplete-changes",
|
||||
"name": {
|
||||
"en": "Changeset centers"
|
||||
"en": "Changeset centers",
|
||||
"de": "Changeset-Zentren"
|
||||
},
|
||||
"minzoom": 0,
|
||||
"source": {
|
||||
|
@ -28,41 +34,49 @@
|
|||
},
|
||||
"title": {
|
||||
"render": {
|
||||
"en": "Changeset for {theme}"
|
||||
"en": "Changeset for {theme}",
|
||||
"de": "Änderungssatz für {theme}"
|
||||
}
|
||||
},
|
||||
"description": {
|
||||
"en": "Shows all MapComplete changes"
|
||||
"en": "Shows all MapComplete changes",
|
||||
"de": "Zeigt alle MapComplete-Änderungen",
|
||||
"es": "Muestra todos los cambios de MapComplete"
|
||||
},
|
||||
"tagRenderings": [
|
||||
{
|
||||
"id": "show_changeset_id",
|
||||
"render": {
|
||||
"en": "Changeset <a href='https://openstreetmap.org/changeset/{id}' target='_blank'>{id}</a>"
|
||||
"en": "Changeset <a href='https://openstreetmap.org/changeset/{id}' target='_blank'>{id}</a>",
|
||||
"de": "Änderungssatz <a href='https://openstreetmap.org/changeset/{id}' target='_blank'>{id}</a>"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "contributor",
|
||||
"question": {
|
||||
"en": "What contributor did make this change?"
|
||||
"en": "What contributor did make this change?",
|
||||
"de": "Wer hat zu dieser Änderung beigetragen?"
|
||||
},
|
||||
"freeform": {
|
||||
"key": "user"
|
||||
},
|
||||
"render": {
|
||||
"en": "Change made by <a href='https://openstreetmap.org/user/{user}' target='_blank'>{user}</a>"
|
||||
"en": "Change made by <a href='https://openstreetmap.org/user/{user}' target='_blank'>{user}</a>",
|
||||
"de": "Änderung vorgenommen von <a href='https://openstreetmap.org/user/{user}' target='_blank'>{user}</a>"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "theme-id",
|
||||
"question": {
|
||||
"en": "What theme was used to make this change?"
|
||||
"en": "What theme was used to make this change?",
|
||||
"de": "Welches Thema wurde für diese Änderung verwendet?"
|
||||
},
|
||||
"freeform": {
|
||||
"key": "theme"
|
||||
},
|
||||
"render": {
|
||||
"en": "Change with theme <a href='https://mapcomplete.org/{theme}'>{theme}</a>"
|
||||
"en": "Change with theme <a href='https://mapcomplete.org/{theme}'>{theme}</a>",
|
||||
"de": "Änderung mit Thema <a href='https://mapcomplete.org/{theme}'>{theme}</a>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
@ -71,19 +85,23 @@
|
|||
"key": "locale"
|
||||
},
|
||||
"question": {
|
||||
"en": "What locale (language) was this change made in?"
|
||||
"en": "What locale (language) was this change made in?",
|
||||
"de": "In welcher Sprache (Locale) wurde diese Änderung vorgenommen?"
|
||||
},
|
||||
"render": {
|
||||
"en": "User locale is {locale}"
|
||||
"en": "User locale is {locale}",
|
||||
"de": "Die Benutzersprache ist {locale}"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "host",
|
||||
"render": {
|
||||
"en": "Change with with <a href='{host}'>{host}</a>"
|
||||
"en": "Change with with <a href='{host}'>{host}</a>",
|
||||
"de": "Änderung mit <a href='{host}'>{host}</a>"
|
||||
},
|
||||
"question": {
|
||||
"en": "What host (website) was this change made with?"
|
||||
"en": "What host (website) was this change made with?",
|
||||
"de": "Bei welchem Host (Website) wurde diese Änderung vorgenommen?"
|
||||
},
|
||||
"freeform": {
|
||||
"key": "host"
|
||||
|
@ -104,10 +122,12 @@
|
|||
{
|
||||
"id": "version",
|
||||
"question": {
|
||||
"en": "What version of MapComplete was used to make this change?"
|
||||
"en": "What version of MapComplete was used to make this change?",
|
||||
"de": "Welche Version von MapComplete wurde verwendet, um diese Änderung vorzunehmen?"
|
||||
},
|
||||
"render": {
|
||||
"en": "Made with {editor}"
|
||||
"en": "Made with {editor}",
|
||||
"de": "Erstellt mit {editor}"
|
||||
},
|
||||
"freeform": {
|
||||
"key": "editor"
|
||||
|
@ -505,7 +525,10 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "Themename contains {search}"
|
||||
"en": "Themename contains {search}",
|
||||
"de": "Themenname enthält {search}",
|
||||
"es": "El nombre contiene {search}",
|
||||
"pl": "Nazwa tematu zawiera {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -521,7 +544,9 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "Themename does <b>not</b> contain {search}"
|
||||
"en": "Themename does <b>not</b> contain {search}",
|
||||
"de": "Themename enthält <b>nicht</b> {search}",
|
||||
"es": "El nombre del tema <b>no</b> contiene {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -537,7 +562,9 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "Made by contributor {search}"
|
||||
"en": "Made by contributor {search}",
|
||||
"de": "Erstellt von Mitwirkendem {search}",
|
||||
"es": "Hecho por el colaborador {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -553,7 +580,9 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "<b>Not</b> made by contributor {search}"
|
||||
"en": "<b>Not</b> made by contributor {search}",
|
||||
"de": "<b>Nicht</b> erstellt von Mitwirkendem {search}",
|
||||
"es": "<b>No</b> realizado por el colaborador {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -570,7 +599,9 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "Made before {search}"
|
||||
"en": "Made before {search}",
|
||||
"de": "Erstellt vor {search}",
|
||||
"es": "Realizado antes de {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -587,7 +618,9 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "Made after {search}"
|
||||
"en": "Made after {search}",
|
||||
"de": "Erstellt nach {search}",
|
||||
"es": "Realizado después de {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -603,7 +636,9 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "User language (iso-code) {search}"
|
||||
"en": "User language (iso-code) {search}",
|
||||
"de": "Benutzersprache (ISO-Code) {search}",
|
||||
"es": "Idioma del usuario (código iso) {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -619,7 +654,8 @@
|
|||
}
|
||||
],
|
||||
"question": {
|
||||
"en": "Made with host {search}"
|
||||
"en": "Made with host {search}",
|
||||
"de": "Erstellt mit Host {search}"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -630,7 +666,8 @@
|
|||
{
|
||||
"osmTags": "add-image>0",
|
||||
"question": {
|
||||
"en": "Changeset added at least one image"
|
||||
"en": "Changeset added at least one image",
|
||||
"de": "Changeset hat mindestens ein Bild hinzugefügt"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -641,7 +678,8 @@
|
|||
{
|
||||
"osmTags": "theme!=grb",
|
||||
"question": {
|
||||
"en": "Exclude GRB theme"
|
||||
"en": "Exclude GRB theme",
|
||||
"de": "GRB-Thema ausschließen"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -652,7 +690,9 @@
|
|||
{
|
||||
"osmTags": "theme!=etymology",
|
||||
"question": {
|
||||
"en": "Exclude etymology theme"
|
||||
"en": "Exclude etymology theme",
|
||||
"de": "Etymologie-Thema ausschließen",
|
||||
"es": "Excluir el tema de la etimología"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -667,7 +707,8 @@
|
|||
{
|
||||
"id": "link_to_more",
|
||||
"render": {
|
||||
"en": "More statistics can be found <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>here</a>"
|
||||
"en": "More statistics can be found <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>here</a>",
|
||||
"de": "Weitere Statistiken findest du <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>hier</a>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
"de": "Diese Karte zeigt alle mit MapComplete vorgenommenen Änderungen",
|
||||
"es": "Este mapa muestra todos los cambios realizados con MapComplete",
|
||||
"pl": "Ta mapa pokazuje wszystkie zmiany wprowadzone za pomocą MapComplete"
|
||||
|
||||
},
|
||||
"icon": "./assets/svg/logo.svg",
|
||||
"hideFromOverview": true,
|
||||
|
|
|
@ -94,19 +94,28 @@ export default class ScriptUtils {
|
|||
})
|
||||
}
|
||||
|
||||
public static getThemePaths(): string[] {
|
||||
const blacklist = ["assets/themes/mapcomplete-changes/mapcomplete-changes.json"]
|
||||
public static getThemePaths(useTranslationPaths = false): string[] {
|
||||
const normalFiles = ScriptUtils.readDirRecSync("./assets/themes")
|
||||
.filter((path) => path.endsWith(".json") && !path.endsWith(".proto.json"))
|
||||
.filter((path) => path.indexOf("license_info.json") < 0)
|
||||
.filter(path => !blacklist.some(black => path.endsWith(black)))
|
||||
|
||||
if (!useTranslationPaths) {
|
||||
return normalFiles
|
||||
}
|
||||
const specialfiles = ["./assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json"]
|
||||
return normalFiles.concat(specialfiles)
|
||||
const blacklist = ["assets/themes/mapcomplete-changes/mapcomplete-changes.json"]
|
||||
|
||||
const filtered = normalFiles.filter(path => !blacklist.some(black => path.endsWith(black)))
|
||||
return filtered.concat(specialfiles)
|
||||
|
||||
}
|
||||
|
||||
public static getThemeFiles(): { parsed: LayoutConfigJson; path: string; raw: string }[] {
|
||||
return this.getThemePaths().map((path) => {
|
||||
public static getThemeFiles(useTranslationPaths = false): {
|
||||
parsed: LayoutConfigJson;
|
||||
path: string;
|
||||
raw: string
|
||||
}[] {
|
||||
return this.getThemePaths(useTranslationPaths).map((path) => {
|
||||
try {
|
||||
const contents = readFileSync(path, { encoding: "utf8" })
|
||||
if (contents === "") {
|
||||
|
@ -153,6 +162,7 @@ export default class ScriptUtils {
|
|||
const data = await ScriptUtils.Download(url, headers)
|
||||
return JSON.parse(data["content"])
|
||||
}
|
||||
|
||||
public static async DownloadFetch(
|
||||
url: string,
|
||||
headers?: any
|
||||
|
@ -163,6 +173,7 @@ export default class ScriptUtils {
|
|||
console.log("Fetched", url, data)
|
||||
return { content: data }
|
||||
}
|
||||
|
||||
public static Download(
|
||||
url: string,
|
||||
headers?: any
|
||||
|
@ -198,17 +209,17 @@ export default class ScriptUtils {
|
|||
path: urlObj.pathname + urlObj.search,
|
||||
|
||||
port: urlObj.port,
|
||||
headers: headers,
|
||||
headers: headers
|
||||
},
|
||||
(res) => {
|
||||
const parts: string[] = []
|
||||
res.setEncoding("utf8")
|
||||
res.on("data", function (chunk) {
|
||||
res.on("data", function(chunk) {
|
||||
// @ts-ignore
|
||||
parts.push(chunk)
|
||||
})
|
||||
|
||||
res.addListener("end", function () {
|
||||
res.addListener("end", function() {
|
||||
if (res.statusCode === 301 || res.statusCode === 302) {
|
||||
console.log("Got a redirect:", res.headers.location)
|
||||
resolve({ redirect: res.headers.location })
|
||||
|
@ -226,7 +237,7 @@ export default class ScriptUtils {
|
|||
})
|
||||
}
|
||||
)
|
||||
request.on("error", function (e) {
|
||||
request.on("error", function(e) {
|
||||
reject(e)
|
||||
})
|
||||
} catch (e) {
|
||||
|
|
|
@ -670,7 +670,7 @@ function removeNonEnglishTranslations(object: any) {
|
|||
* Load the translations into the theme files
|
||||
*/
|
||||
function mergeThemeTranslations(englishOnly: boolean = false) {
|
||||
const themeFiles = ScriptUtils.getThemeFiles()
|
||||
const themeFiles = ScriptUtils.getThemeFiles(true)
|
||||
for (const themeFile of themeFiles) {
|
||||
let config = themeFile.parsed
|
||||
mergeLayerTranslation(config, themeFile.path, loadTranslationFilesFrom("themes"))
|
||||
|
@ -723,7 +723,7 @@ class GenerateTranslations extends Script {
|
|||
{
|
||||
const l1 = generateTranslationsObjectFrom(ScriptUtils.getLayerFiles(), "layers")
|
||||
const l2 = generateTranslationsObjectFrom(
|
||||
ScriptUtils.getThemeFiles().filter(
|
||||
ScriptUtils.getThemeFiles(true).filter(
|
||||
(th) => th.parsed.mustHaveLanguage === undefined
|
||||
),
|
||||
"themes"
|
||||
|
|
Loading…
Reference in a new issue