feat: add warning news type and Firefox performance notice (#3680)

## Description:
Adds a new `warning` news type to the news banner system and uses it to
display a Firefox performance notice.

Changes:
- Added `warning` type with red styling to `NewsBox.ts`
- Added `news_box.warning` key (`"WARNING"`) to `en.json`
- Added Firefox performance notice to `resources/news.json` using the
new `warning` type
- Added `news_box.*` dynamic key pattern to `TranslationSystem.test.ts`
to fix unused key detection

## Please complete the following:
- [x] I have added screenshots for all UI updates
- [x] I process any text displayed to the user through translateText()
and I've added it to the en.json file
- [x] I have added relevant tests to the test directory
- [x] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced

## UI change:
<img width="2101" height="1770" alt="CleanShot 2026-04-16 at 15 04
35@2x"
src="https://github.com/user-attachments/assets/7a8b9290-4216-4799-b271-606afd9b8723"
/>



## Please put your Discord username so you can be contacted if a bug or
regression is found:
fghjk_60845
This commit is contained in:
Ivan Batsulin
2026-04-17 02:53:38 +03:00
committed by GitHub
parent 1ebac8e854
commit 76f8441b45
6 changed files with 36 additions and 11 deletions
+7 -3
View File
@@ -67,10 +67,14 @@ describe("NewsBox", () => {
expect(typeof item.id).toBe("string");
expect(item.title).toBeDefined();
expect(typeof item.title).toBe("string");
expect(item.description).toBeDefined();
expect(typeof item.description).toBe("string");
const hasDescription =
item.description !== undefined ||
item.descriptionTranslationKey !== undefined;
expect(hasDescription).toBe(true);
expect(item.type).toBeDefined();
expect(["tournament", "tutorial", "announcement"]).toContain(item.type);
expect(["tournament", "tutorial", "announcement", "warning"]).toContain(
item.type,
);
}
});