Deduplicate common strings in translation (#5085)

* deduplicate common strings, part 1

* deduplicate common strings, part 2

* typo and general import mess fixes

* detail common string

* fix lint

* fix lint TWO

* adress review concerns + lint

* app lint too

* actually leave privateLabel untouched

* lint fix THREE

* fix: broken msg

* fix: lint

---------

Co-authored-by: Calum H. <contact@cal.engineer>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
This commit is contained in:
lumiscosity
2026-01-28 19:10:50 +01:00
committed by GitHub
parent 400c571fe6
commit 6d68d50699
31 changed files with 279 additions and 624 deletions

View File

@@ -93,7 +93,7 @@
<div class="search-controls">
<div class="iconified-input">
<label class="hidden" for="search">{{
formatMessage(messages.searchLabel)
formatMessage(commonMessages.searchLabel)
}}</label>
<SearchIcon aria-hidden="true" />
<input
@@ -101,13 +101,13 @@
v-model="searchQuery"
type="search"
name="search"
:placeholder="formatMessage(messages.searchPlaceholder)"
:placeholder="formatMessage(commonMessages.searchPlaceholder)"
autocomplete="off"
@input="updateSearchProjects"
/>
</div>
<div class="sort-by">
<span class="label">{{ formatMessage(messages.sortByLabel) }}</span>
<span class="label">{{ formatMessage(commonMessages.sortByLabel) }}</span>
<Multiselect
v-model="sortType"
placeholder="Select one"
@@ -155,7 +155,7 @@
</div>
<div class="blob-demonstration gradient-border">
<div class="notifs-demo">
<h3>{{ formatMessage(messages.notificationsHeading) }}</h3>
<h3>{{ formatMessage(commonMessages.notificationsLabel) }}</h3>
<div class="notifications">
<div
v-for="(notification, index) in notifications"
@@ -567,18 +567,6 @@ const messages = defineMessages({
defaultMessage:
"Modrinth's open-source API lets launchers add deep integration with Modrinth. You can use Modrinth through <link>our own app</link> and some of the most popular launchers like ATLauncher, MultiMC, and Prism Launcher.",
},
searchPlaceholder: {
id: 'landing.search.placeholder',
defaultMessage: 'Search...',
},
searchLabel: {
id: 'landing.search.label',
defaultMessage: 'Search',
},
sortByLabel: {
id: 'landing.search.sort-by.label',
defaultMessage: 'Sort by',
},
notificationsHeading: {
id: 'landing.notifications.heading',
defaultMessage: 'Notifications',