Skip to content

Commit d551caa

Browse files
committed
fix(i18n): fix hardcoded strings
1 parent 42e9683 commit d551caa

7 files changed

Lines changed: 43 additions & 18 deletions

File tree

app/components/PackageDependencies.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ const sortedOptionalDependencies = computed(() => {
103103
v-if="outdatedDeps[dep]"
104104
class="shrink-0"
105105
:class="getVersionClass(outdatedDeps[dep])"
106-
:title="getOutdatedTooltip(outdatedDeps[dep])"
106+
:title="getOutdatedTooltip(outdatedDeps[dep], $t)"
107107
aria-hidden="true"
108108
>
109109
<span class="i-carbon:warning-alt w-3 h-3 block" />
@@ -138,12 +138,12 @@ const sortedOptionalDependencies = computed(() => {
138138
:to="{ name: 'package', params: { package: [...dep.split('/'), 'v', version] } }"
139139
class="font-mono text-xs text-end truncate"
140140
:class="getVersionClass(outdatedDeps[dep])"
141-
:title="outdatedDeps[dep] ? getOutdatedTooltip(outdatedDeps[dep]) : version"
141+
:title="outdatedDeps[dep] ? getOutdatedTooltip(outdatedDeps[dep], $t) : version"
142142
>
143143
{{ version }}
144144
</NuxtLink>
145145
<span v-if="outdatedDeps[dep]" class="sr-only">
146-
({{ getOutdatedTooltip(outdatedDeps[dep]) }})
146+
({{ getOutdatedTooltip(outdatedDeps[dep], $t) }})
147147
</span>
148148
<span v-if="getVulnerableDepInfo(dep)" class="sr-only">
149149
({{ getVulnerableDepInfo(dep)!.counts.total }} vulnerabilities)

app/components/PackageInstallScripts.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ const isExpanded = shallowRef(false)
8888
"
8989
class="shrink-0"
9090
:class="getVersionClass(outdatedNpxDeps[dep])"
91-
:title="getOutdatedTooltip(outdatedNpxDeps[dep])"
91+
:title="getOutdatedTooltip(outdatedNpxDeps[dep], $t)"
9292
aria-hidden="true"
9393
>
9494
<span class="i-carbon:warning-alt w-3 h-3 block" />
@@ -102,7 +102,7 @@ const isExpanded = shallowRef(false)
102102
? $t('package.install_scripts.currently', {
103103
version: outdatedNpxDeps[dep].latest,
104104
})
105-
: getOutdatedTooltip(outdatedNpxDeps[dep])
105+
: getOutdatedTooltip(outdatedNpxDeps[dep], $t)
106106
: version
107107
"
108108
>

app/components/PackageMetricsBadges.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ const typesHref = computed(() => {
5252

5353
<template>
5454
<ul v-if="analysis" class="flex items-center gap-1.5 list-none m-0 p-0">
55-
<!-- TypeScript types -->
55+
<!-- TypeScript types badge -->
5656
<li>
5757
<component
5858
:is="typesHref ? NuxtLink : 'span'"
@@ -73,7 +73,7 @@ const typesHref = computed(() => {
7373
:class="hasTypes ? 'i-carbon-checkmark' : 'i-carbon-close'"
7474
aria-hidden="true"
7575
/>
76-
Types
76+
{{ $t('package.metrics.types_label') }}
7777
</component>
7878
</li>
7979

app/components/VersionSelector.vue

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -625,7 +625,13 @@ watch(
625625
class="text-xs text-fg-subtle hover:text-fg transition-[color] focus-visible:outline-none focus-visible:text-fg"
626626
@click="isOpen = false"
627627
>
628-
View all {{ Object.keys(versions).length }} versions
628+
{{
629+
$t(
630+
'package.versions.view_all',
631+
{ count: Object.keys(versions).length },
632+
Object.keys(versions).length,
633+
)
634+
}}
629635
</NuxtLink>
630636
</div>
631637
</div>

app/composables/useNpmRegistry.ts

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -805,16 +805,25 @@ export function useOutdatedDependencies(
805805
* Get tooltip text for an outdated dependency
806806
* @public
807807
*/
808-
export function getOutdatedTooltip(info: OutdatedDependencyInfo): string {
808+
export function getOutdatedTooltip(
809+
info: OutdatedDependencyInfo,
810+
t: (key: string, params?: Record<string, unknown>, plural?: number) => string,
811+
): string {
809812
if (info.majorsBehind > 0) {
810-
const s = info.majorsBehind === 1 ? '' : 's'
811-
return `${info.majorsBehind} major version${s} behind (latest: ${info.latest})`
813+
return t(
814+
'package.dependencies.outdated_major',
815+
{ count: info.majorsBehind, latest: info.latest },
816+
info.majorsBehind,
817+
)
812818
}
813819
if (info.minorsBehind > 0) {
814-
const s = info.minorsBehind === 1 ? '' : 's'
815-
return `${info.minorsBehind} minor version${s} behind (latest: ${info.latest})`
820+
return t(
821+
'package.dependencies.outdated_minor',
822+
{ count: info.minorsBehind, latest: info.latest },
823+
info.minorsBehind,
824+
)
816825
}
817-
return `Patch update available (latest: ${info.latest})`
826+
return t('package.dependencies.outdated_patch', { latest: info.latest })
818827
}
819828

820829
/**

i18n/locales/en.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,14 +191,18 @@
191191
"other_versions": "Other versions",
192192
"more_tagged": "{count} more tagged",
193193
"all_covered": "All versions are covered by tags above",
194-
"deprecated_title": "{version} (deprecated)"
194+
"deprecated_title": "{version} (deprecated)",
195+
"view_all": "View all {count} version | View all {count} versions"
195196
},
196197
"dependencies": {
197198
"title": "Dependencies ({count})",
198199
"list_label": "Package dependencies",
199200
"show_all": "show all {count} deps",
200201
"optional": "optional",
201-
"view_vulnerabilities": "View vulnerabilities"
202+
"view_vulnerabilities": "View vulnerabilities",
203+
"outdated_major": "{count} major version behind (latest: {latest}) | {count} major versions behind (latest: {latest})",
204+
"outdated_minor": "{count} minor version behind (latest: {latest}) | {count} minor versions behind (latest: {latest})",
205+
"outdated_patch": "Patch update available (latest: {latest})"
202206
},
203207
"peer_dependencies": {
204208
"title": "Peer Dependencies ({count})",
@@ -257,6 +261,7 @@
257261
"esm": "ES Modules supported",
258262
"cjs": "CommonJS supported",
259263
"no_esm": "No ES Modules support",
264+
"types_label": "Types",
260265
"types_included": "Types included",
261266
"types_available": "Types available via {package}",
262267
"no_types": "No TypeScript types"

i18n/locales/pl-PL.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,14 +191,18 @@
191191
"other_versions": "Inne wersje",
192192
"more_tagged": "jeszcze {count}",
193193
"all_covered": "Wszystkie wersje są objęte powyższymi tagami",
194-
"deprecated_title": "{version} (przestarzała)"
194+
"deprecated_title": "{version} (przestarzała)",
195+
"view_all": "Zobacz wszystkie {count} wersje | Zobacz {count} wersję | Zobacz {count} wersje | Zobacz {count} wersji | Zobacz {count} wersji"
195196
},
196197
"dependencies": {
197198
"title": "Zależności ({count})",
198199
"list_label": "Zależności pakietu",
199200
"show_all": "pokaż wszystkie ({count})",
200201
"optional": "opcjonalne",
201-
"view_vulnerabilities": "Zobacz luki"
202+
"view_vulnerabilities": "Zobacz luki",
203+
"outdated_major": "{count} wersji głównych w tyle (najnowsza: {latest}) | {count} wersja główna w tyle (najnowsza: {latest}) | {count} wersje główne w tyle (najnowsza: {latest}) | {count} wersji głównych w tyle (najnowsza: {latest}) | {count} wersji głównych w tyle (najnowsza: {latest})",
204+
"outdated_minor": "{count} wersji minor w tyle (najnowsza: {latest}) | {count} wersja minor w tyle (najnowsza: {latest}) | {count} wersje minor w tyle (najnowsza: {latest}) | {count} wersji minor w tyle (najnowsza: {latest}) | {count} wersji minor w tyle (najnowsza: {latest})",
205+
"outdated_patch": "Dostępna poprawka (najnowsza: {latest})"
202206
},
203207
"peer_dependencies": {
204208
"title": "Zależności peer ({count})",
@@ -257,6 +261,7 @@
257261
"esm": "Obsługuje ES Modules",
258262
"cjs": "Obsługuje CommonJS",
259263
"no_esm": "Brak obsługi ES Modules",
264+
"types_label": "Typy",
260265
"types_included": "Typy w pakiecie",
261266
"types_available": "Typy dostępne przez {package}",
262267
"no_types": "Brak typów TypeScript"

0 commit comments

Comments
 (0)