diff options
author | Waxer59 | 2023-08-12 21:36:07 +0200 |
---|---|---|
committer | GitHub | 2023-08-12 21:36:07 +0200 |
commit | 4df2028153405493db630a10daee80d143ab748c (patch) | |
tree | b57e7a8a0c8715c76744a34043a314009e578fd5 | |
parent | d7f2ab405b90a0c47b4b1899f91da0420b990fac (diff) | |
download | IT.starlight-4df2028153405493db630a10daee80d143ab748c.tar.gz IT.starlight-4df2028153405493db630a10daee80d143ab748c.tar.bz2 IT.starlight-4df2028153405493db630a10daee80d143ab748c.zip |
Fix translation status page (#495)
-rw-r--r-- | docs-i18n-tracker/build.ts | 4 | ||||
-rw-r--r-- | docs-i18n-tracker/lib/translation-status/builder.ts | 7 |
2 files changed, 5 insertions, 6 deletions
diff --git a/docs-i18n-tracker/build.ts b/docs-i18n-tracker/build.ts index 3f17e311..1caca659 100644 --- a/docs-i18n-tracker/build.ts +++ b/docs-i18n-tracker/build.ts @@ -5,8 +5,8 @@ const translationStatusBuilder = new TranslationStatusBuilder({ pageSourceDir: '../docs/src/content/docs', htmlOutputFilePath: './dist/index.html', sourceLanguage: 'en', - targetLanguages: Object.keys(locales) - .filter((lang) => lang !== 'en') + targetLanguages: Object.values(locales) + .reduce((acc, { lang }) => lang !== "en" ? [lang, ...acc] : acc, []) .sort(), languageLabels: Object.values(locales) .filter((loc) => loc.lang !== 'en') diff --git a/docs-i18n-tracker/lib/translation-status/builder.ts b/docs-i18n-tracker/lib/translation-status/builder.ts index e4ce1846..dafc0f1d 100644 --- a/docs-i18n-tracker/lib/translation-status/builder.ts +++ b/docs-i18n-tracker/lib/translation-status/builder.ts @@ -122,8 +122,7 @@ export class TranslationStatusBuilder { const pages: PageIndex = { [this.sourceLanguage]: {}, }; - this.targetLanguages.forEach((lang) => (pages[lang] = {})); - + this.targetLanguages.forEach((lang) => (pages[lang.toLowerCase()] = {})); // Enumerate all markdown pages with supported languages in pageSourceDir, // retrieve their page data and update them const pagePaths = await glob(`**/*.{md,mdx}`, { @@ -132,7 +131,7 @@ export class TranslationStatusBuilder { const updatedPages = await Promise.all( pagePaths.sort().map(async (pagePath) => { const pathParts = pagePath.split('/'); - const isLanguageSubpathIncluded = this.targetLanguages.includes(pathParts[0]!); + const isLanguageSubpathIncluded = this.targetLanguages.map(el=>el.toLowerCase()).includes(pathParts[0]!); // If the first path of a file does not belong to a language, it will be by default a page of the original language set. const lang = isLanguageSubpathIncluded ? pathParts[0] : this.sourceLanguage; @@ -218,7 +217,7 @@ export class TranslationStatusBuilder { }; this.targetLanguages.forEach((lang) => { - const i18nPage = pages[lang]![subpath]!; + const i18nPage = pages[lang.toLowerCase()]![subpath]!; content.translations[lang] = { page: i18nPage, isMissing: !i18nPage, |