Skip to content

fix(l10n): New translations#708

Closed
wfcd-bot-boi wants to merge 56 commits into
masterfrom
l10n_master
Closed

fix(l10n): New translations#708
wfcd-bot-boi wants to merge 56 commits into
masterfrom
l10n_master

Conversation

@wfcd-bot-boi
Copy link
Copy Markdown
Collaborator

@wfcd-bot-boi wfcd-bot-boi commented Oct 15, 2025

Summary by CodeRabbit

  • New Features

    • Expanded translations across multiple languages.
    • Added texts for item load errors, worldstate failure/outdated notices.
    • Introduced Flash Sales titles/subtitles (with platinum/discount), default progress tag, event reward required score, and Prime Resurgence reset text.
    • Replaced Baro inventory label with character-specific inventory titles.
  • Bug Fixes

    • Corrected a typo in the bug report title.
  • Refactor

    • Standardized placeholder handling across translations for better consistency and pluralization.
    • Added/updated locale markers where missing.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Oct 15, 2025

Walkthrough

Localization ARB files across multiple locales were updated: inventory key renamed, placeholder schema migrated, new translation keys added, locale headers added in some files, and a descriptor typo fixed.

Changes

Cohort / File(s) Summary
Placeholder schema migration + new keys
lib/l10n/arb/intl_cs.arb, .../intl_de.arb, .../intl_es.arb, .../intl_fr.arb, .../intl_it.arb, .../intl_ko.arb, .../intl_pl.arb, .../intl_pt.arb, .../intl_ru.arb, .../intl_sr.arb, .../intl_tr.arb, .../intl_zh.arb
Converted "placeholder" → "placeholders" across multiple entries; added new keys: itemFailureErrorText, worldstateFailureText, worldstateOutdatedText, flashSaleAppbarTitle, flashSaleSubtitleText (placeholders: plat, discount), defaultScoreLocTagText, eventRewardRequireScoreText, primeVaultResetText.
Inventory key rename
lib/l10n/arb/intl_cs.arb, .../intl_de.arb, .../intl_es.arb, .../intl_fr.arb, .../intl_it.arb, .../intl_ko.arb, .../intl_pl.arb, .../intl_pt.arb, .../intl_ru.arb, .../intl_sr.arb, .../intl_tr.arb, .../intl_zh.arb
Removed baroInventory; added characterInventory with placeholders.character (type: String) and corresponding @characterInventory.
Locale metadata additions
lib/l10n/arb/intl_cs.arb, .../intl_pl.arb, .../intl_sr.arb, .../intl_tr.arb, .../intl_zh.arb, .../intl_pt.arb
Added or updated top-level @@locale (e.g., cs, pl, sr-CS, tr, zh-CN, pt/pt-BR as applicable).
Descriptor typo fix
lib/l10n/arb/intl_cs.arb, .../intl_de.arb, .../intl_es.arb, .../intl_fr.arb, .../intl_it.arb, .../intl_ko.arb, .../intl_pl.arb, .../intl_pt.arb, .../intl_ru.arb, .../intl_sr.arb, .../intl_tr.arb, .../intl_zh.arb
In @reportBugsTitle, corrected field desciptiondescription; minor description wording updates (e.g., referencing placeholders).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • SlayerOrnstein

Poem

I thump my paws on fields of keys,
New tags bloom softly in the breeze.
Baro bows; a character leads—
Placeholders multiply like seeds.
Worldstate whispers, “Try again,”
Flash sales sparkle—tenno grin.
Hop, commit—my work is in! 🐇✨

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title Check ❓ Inconclusive The provided title uses a conventional commit prefix but is overly generic and does not clearly convey the main changes, namely adding the characterInventory key and migrating placeholder structures across ARB files. It also labels the change as a fix rather than a feature or chore, which may be misleading given the scope. Because it is vague, it does not fully satisfy the guideline for specificity. Consider updating the title to clearly describe the primary localization changes, for example: “chore(l10n): add characterInventory key and standardize placeholders across locales,” so that the purpose of the PR is immediately clear.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch l10n_master

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@SlayerOrnstein SlayerOrnstein enabled auto-merge (squash) October 15, 2025 17:10
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🧹 Nitpick comments (19)
lib/l10n/arb/intl_pt.arb (3)

102-111: Untranslated string in pt-BR file.

"characterInventory" value is English. Provide a PT translation or confirm intended fallback.


788-791: Add numeric types to placeholders (improves tooling and formatting).

Provide "type": "int" for numeric placeholders.

Apply diffs:

@@
   "@discountTitle": {
     "description": "Displays the discount applied for a given darvo sale",
     "type": "text",
-    "placeholders": {
-      "discount": {}
-    }
+    "placeholders": {
+      "discount": { "type": "int" }
+    }
   },
@@
   "@inStockInformation": {
     "description": "Displays the stock information for a darvo deal",
     "type": "text",
-    "placeholders": {
-      "stock": {}
-    }
+    "placeholders": {
+      "stock": { "type": "int" }
+    }
   },
@@
   "@dropChance": {
     "description": "Drop chance percentage",
     "type": "text",
-    "placeholders": {
-      "chance": {}
-    }
+    "placeholders": {
+      "chance": { "type": "int" }
+    }
   },
@@
   "@itemRankSubtitle": {
     "description": "Subtitle showing the item's rank",
     "type": "text",
-    "placeholders": {
-      "rank": {}
-    }
+    "placeholders": {
+      "rank": { "type": "int" }
+    }
   },

Also applies to: 796-799, 929-932, 1137-1140


1145-1164: Remove empty placeholders blocks.

These entries have no placeholders; drop the empty blocks to reduce noise.

   "@syncingInfoText": {
     "description": "Text displayed when xp info is being synced",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
-  "@enterUsernameHintText": {
-    "description": "Hint Text use as a placeholders in username input",
-    "type": "text",
-    "placeholders": {}
-  },
+  "@enterUsernameHintText": {
+    "description": "Hint text used as a placeholder in username input",
+    "type": "text"
+  },
@@
   "@clearUsernameButtonLabel": {
     "description": "Label text for clear username button",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
   "@cancelText": {
     "description": "Text to display for cancel buttons",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
lib/l10n/arb/intl_ko.arb (3)

102-111: Untranslated string in ko file.

"characterInventory" value is English. Provide a Korean translation or confirm fallback.


786-791: Add numeric types to placeholders.

Set type to int for discount, stock, chance, rank.

@@
-    "placeholders": {
-      "discount": {}
-    }
+    "placeholders": {
+      "discount": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "stock": {}
-    }
+    "placeholders": {
+      "stock": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "chance": {}
-    }
+    "placeholders": {
+      "chance": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "rank": {}
-    }
+    "placeholders": {
+      "rank": { "type": "int" }
+    }

Also applies to: 796-799, 929-932, 1137-1140


1145-1164: Remove empty placeholders blocks and fix description grammar.

These entries have no placeholders; drop the empty objects. Also fix description grammar.

   "@syncingInfoText": {
     "description": "Text displayed when xp info is being synced",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
-  "@enterUsernameHintText": {
-    "description": "Hint Text use as a placeholders in username input",
-    "type": "text",
-    "placeholders": {}
-  },
+  "@enterUsernameHintText": {
+    "description": "Hint text used as a placeholder in username input",
+    "type": "text"
+  },
@@
   "@clearUsernameButtonLabel": {
     "description": "Label text for clear username button",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
   "@cancelText": {
     "description": "Text to display for cancel buttons",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
lib/l10n/arb/intl_zh.arb (3)

102-111: Untranslated string in zh-CN file.

"characterInventory" value is English. Provide a Chinese translation or confirm fallback.


788-791: Add numeric types to placeholders.

Set "type": "int" for discount, stock, chance, rank.

@@
-    "placeholders": {
-      "discount": {}
-    }
+    "placeholders": {
+      "discount": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "stock": {}
-    }
+    "placeholders": {
+      "stock": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "chance": {}
-    }
+    "placeholders": {
+      "chance": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "rank": {}
-    }
+    "placeholders": {
+      "rank": { "type": "int" }
+    }

Also applies to: 796-799, 929-932, 1137-1140


1145-1164: Remove empty placeholders blocks and fix description grammar.

   "@syncingInfoText": {
     "description": "Text displayed when xp info is being synced",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
-  "@enterUsernameHintText": {
-    "description": "Hint Text use as a placeholders in username input",
-    "type": "text",
-    "placeholders": {}
-  },
+  "@enterUsernameHintText": {
+    "description": "Hint text used as a placeholder in username input",
+    "type": "text"
+  },
@@
   "@clearUsernameButtonLabel": {
     "description": "Label text for clear username button",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
   "@cancelText": {
     "description": "Text to display for cancel buttons",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
lib/l10n/arb/intl_de.arb (3)

102-111: Untranslated string in de file.

"characterInventory" value is English. Provide a German translation or confirm fallback.


786-791: Add numeric types to placeholders.

Set "type": "int" for discount, stock, chance, rank.

@@
-    "placeholders": {
-      "discount": {}
-    }
+    "placeholders": {
+      "discount": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "stock": {}
-    }
+    "placeholders": {
+      "stock": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "chance": {}
-    }
+    "placeholders": {
+      "chance": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "rank": {}
-    }
+    "placeholders": {
+      "rank": { "type": "int" }
+    }

Also applies to: 796-799, 929-932, 1137-1140


1145-1164: Remove empty placeholders blocks and fix description grammar.

   "@syncingInfoText": {
     "description": "Text displayed when xp info is being synced",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
-  "@enterUsernameHintText": {
-    "description": "Hint Text use as a placeholders in username input",
-    "type": "text",
-    "placeholders": {}
-  },
+  "@enterUsernameHintText": {
+    "description": "Hint text used as a placeholder in username input",
+    "type": "text"
+  },
@@
   "@clearUsernameButtonLabel": {
     "description": "Label text for clear username button",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
   "@cancelText": {
     "description": "Text to display for cancel buttons",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
lib/l10n/arb/intl_ru.arb (3)

1137-1140: Add numeric types to placeholders.

Set "type": "int" for rank and chance.

@@
-    "placeholders": {
-      "rank": {}
-    }
+    "placeholders": {
+      "rank": { "type": "int" }
+    }
@@
-    "placeholders": {
-      "chance": {}
-    }
+    "placeholders": {
+      "chance": { "type": "int" }
+    }

Also applies to: 929-932


1145-1164: Remove empty placeholders blocks and fix description grammar.

   "@syncingInfoText": {
     "description": "Text displayed when xp info is being synced",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
-  "@enterUsernameHintText": {
-    "description": "Hint Text use as a placeholders in username input",
-    "type": "text",
-    "placeholders": {}
-  },
+  "@enterUsernameHintText": {
+    "description": "Hint text used as a placeholder in username input",
+    "type": "text"
+  },
@@
   "@clearUsernameButtonLabel": {
     "description": "Label text for clear username button",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },
@@
   "@cancelText": {
     "description": "Text to display for cancel buttons",
-    "type": "text",
-    "placeholders": {}
+    "type": "text"
   },

1226-1231: New keys remain English; translate when possible.

worldstateFailureText, worldstateOutdatedText, flashSaleAppbarTitle, defaultScoreLocTagText, eventRewardRequireScoreText, primeVaultResetText are English. Provide RU translations or confirm fallback plan. Also fix "more then" → "more than".

-  "worldstateOutdatedText": "Worldstate is out of date by more then 30 mins",
+  "worldstateOutdatedText": "Worldstate is out of date by more than 30 minutes",

Also applies to: 1232-1237, 1238-1243, 1257-1273

lib/l10n/arb/intl_es.arb (2)

1220-1273: New translation keys added with proper structure.

The new localization keys have been added with complete metadata blocks following the established pattern. The ICU MessageFormat syntax in flashSaleSubtitleText correctly handles plural cases.

However, note that:

  1. The translation values are currently in English rather than Spanish, which is typical for automated localization PRs and will be addressed in follow-up translations.
  2. Minor grammatical error at line 1232: "more then 30 mins" should be "more than 30 mins".

Apply this diff to fix the grammatical error:

-  "worldstateOutdatedText": "Worldstate is out of date by more then 30 mins",
+  "worldstateOutdatedText": "Worldstate is out of date by more than 30 mins",

1149-1149: Optional: Fix grammatical error in description.

The description has a minor grammatical error: "Hint Text use as a placeholders" should be either "Hint Text used as a placeholder" (singular) or "Hint Text used as placeholders" (if referring to multiple), with the verb corrected to past tense.

Apply this diff:

-    "description": "Hint Text use as a placeholders in username input",
+    "description": "Hint Text used as a placeholder in username input",
lib/l10n/arb/intl_fr.arb (2)

1220-1273: New translation keys added with proper structure.

The new localization keys follow the established pattern with complete metadata. However, the translation values remain in English rather than French, which is expected for automated localization PRs and will be addressed in subsequent translation updates.

Minor grammatical error at line 1232: "more then 30 mins" should be "more than 30 mins".

Apply this diff to fix the grammatical error:

-  "worldstateOutdatedText": "Worldstate is out of date by more then 30 mins",
+  "worldstateOutdatedText": "Worldstate is out of date by more than 30 mins",

1149-1149: Optional: Fix grammatical error in description.

The description contains a grammatical error: "Hint Text use as a placeholders" should be "Hint Text used as a placeholder" with proper verb tense and singular/plural agreement.

Apply this diff:

-    "description": "Hint Text use as a placeholders in username input",
+    "description": "Hint Text used as a placeholder in username input",
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4b4866d and 4ba42f9.

📒 Files selected for processing (12)
  • lib/l10n/arb/intl_cs.arb (8 hunks)
  • lib/l10n/arb/intl_de.arb (8 hunks)
  • lib/l10n/arb/intl_es.arb (8 hunks)
  • lib/l10n/arb/intl_fr.arb (8 hunks)
  • lib/l10n/arb/intl_it.arb (8 hunks)
  • lib/l10n/arb/intl_ko.arb (8 hunks)
  • lib/l10n/arb/intl_pl.arb (8 hunks)
  • lib/l10n/arb/intl_pt.arb (8 hunks)
  • lib/l10n/arb/intl_ru.arb (8 hunks)
  • lib/l10n/arb/intl_sr.arb (8 hunks)
  • lib/l10n/arb/intl_tr.arb (8 hunks)
  • lib/l10n/arb/intl_zh.arb (8 hunks)
🔇 Additional comments (15)
lib/l10n/arb/intl_pt.arb (1)

1244-1256: ICU syntax change; verify codegen.

The plural block toggles the discount segment. Ensure gen-l10n compiles this pattern (including the literal "|").

lib/l10n/arb/intl_ko.arb (1)

1244-1256: ICU plural pattern; confirm gen-l10n compatibility.

Verify that the literal "|" and nested placeholder compile in your pipeline.

lib/l10n/arb/intl_zh.arb (2)

1244-1256: ICU plural pattern; confirm gen-l10n compatibility.

Ensure this compiles in your pipeline.


2-2: Ignore locale/file mismatch warning. The pattern in this codebase is to use language-only filenames (e.g. intl_es.arb → “es-ES”) with region variants in the "@@locale" field—intl_zh.arb → “zh-CN” is consistent.

Likely an incorrect or invalid review comment.

lib/l10n/arb/intl_de.arb (1)

1244-1256: ICU plural pattern; confirm gen-l10n compatibility.

Verify compilation with your l10n generator.

lib/l10n/arb/intl_ru.arb (2)

102-111: LGTM: localized characterInventory.


1244-1256: LGTM: localized ICU pattern.

Confirm it compiles via gen-l10n.

lib/l10n/arb/intl_es.arb (4)

2-2: LGTM: Locale identifier refined.

The locale has been updated to the more specific "es-ES" identifier, which properly identifies Spanish as spoken in Spain.


102-111: LGTM: Inventory key generalized with proper placeholder structure.

The replacement of baroInventory with characterInventory makes this translation key more flexible and reusable. The placeholder structure is correctly defined with the character parameter typed as String.


381-381: Nice catch: Typo corrected.

The metadata typo "desciption" has been properly corrected to "description".


788-790: LGTM: Schema standardized to use "placeholders" (plural).

The migration from "placeholder" to "placeholders" in metadata blocks provides consistency across the localization files. The empty placeholders: {} objects maintain schema uniformity even when no placeholders are present.

Also applies to: 796-798, 929-931, 1107-1111, 1137-1139, 1145-1146, 1151-1152, 1157-1158, 1163-1164

lib/l10n/arb/intl_fr.arb (4)

2-2: LGTM: French locale identifier.

The locale is properly set to "fr" for French localization.


102-111: LGTM: Inventory key generalized with proper placeholder structure.

Consistent with the Spanish locale, the inventory key has been generalized from baroInventory to characterInventory with appropriate placeholder structure.


381-381: Nice catch: Typo corrected.

The metadata typo "desciption" has been properly corrected to "description".


788-790: LGTM: Schema standardized to use "placeholders" (plural).

The schema migration is consistent with other locale files, ensuring uniform structure across all localization files.

Also applies to: 796-798, 929-931, 1107-1111, 1137-1139, 1145-1146, 1151-1152, 1157-1158, 1163-1164

Comment thread lib/l10n/arb/intl_de.arb
Comment thread lib/l10n/arb/intl_it.arb
Comment thread lib/l10n/arb/intl_ko.arb
Comment thread lib/l10n/arb/intl_pt.arb
Comment thread lib/l10n/arb/intl_pt.arb
Comment thread lib/l10n/arb/intl_zh.arb
@SlayerOrnstein
Copy link
Copy Markdown
Member

@coderabbitai resolve

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Oct 15, 2025

✅ Actions performed

Comments resolved.

auto-merge was automatically disabled October 17, 2025 21:12

Pull request was closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants