summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaxer592023-08-12 21:36:07 +0200
committerGitHub2023-08-12 21:36:07 +0200
commit4df2028153405493db630a10daee80d143ab748c (patch)
treeb57e7a8a0c8715c76744a34043a314009e578fd5
parentd7f2ab405b90a0c47b4b1899f91da0420b990fac (diff)
downloadIT.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.ts4
-rw-r--r--docs-i18n-tracker/lib/translation-status/builder.ts7
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,