Skip to content

Commit 1cfedb2

Browse files
committed
refactor: code
1 parent e5040cc commit 1cfedb2

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

app/pages/package/[[org]]/[name]/versions.vue

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,17 @@ function getGroupDownloads(versions: string[]): number | undefined {
108108
return hasValue ? total : undefined
109109
}
110110
111+
const groupDownloadsMap = computed(() => {
112+
const map = new Map<string, number>()
113+
for (const group of versionGroups.value) {
114+
const downloads = getGroupDownloads(group.versions)
115+
if (downloads !== undefined) {
116+
map.set(group.groupKey, downloads)
117+
}
118+
}
119+
return map
120+
})
121+
111122
function getDownloadsAriaLabel(downloads: number): string {
112123
return `${numberFormatter.value.format(downloads)} ${t('package.downloads.title')}`
113124
}
@@ -523,13 +534,13 @@ const flatItems = computed<FlatItem[]>(() => {
523534
>v{{ item.versions[0] }}</span
524535
>
525536
<span
526-
v-if="getGroupDownloads(item.versions)"
537+
v-if="groupDownloadsMap.has(item.groupKey)"
527538
class="ms-auto w-28 grid grid-flow-col auto-cols-max items-center justify-end gap-1 text-xs text-fg-muted tabular-nums shrink-0"
528-
:aria-label="getDownloadsAriaLabel(getGroupDownloads(item.versions)!)"
539+
:aria-label="getDownloadsAriaLabel(groupDownloadsMap.get(item.groupKey)!)"
529540
dir="ltr"
530-
:title="getDownloadsAriaLabel(getGroupDownloads(item.versions)!)"
541+
:title="getDownloadsAriaLabel(groupDownloadsMap.get(item.groupKey)!)"
531542
>
532-
<span>{{ numberFormatter.format(getGroupDownloads(item.versions)!) }}</span>
543+
<span>{{ numberFormatter.format(groupDownloadsMap.get(item.groupKey)!) }}</span>
533544
<span class="i-lucide:chart-line" aria-hidden="true"></span>
534545
</span>
535546
<span v-else class="ms-auto w-28 shrink-0" />
@@ -661,13 +672,13 @@ const flatItems = computed<FlatItem[]>(() => {
661672
>v{{ item.versions[0] }}</span
662673
>
663674
<span
664-
v-if="getGroupDownloads(item.versions)"
675+
v-if="groupDownloadsMap.has(item.groupKey)"
665676
class="ms-auto w-28 grid grid-flow-col auto-cols-max items-center justify-end gap-1 text-xs text-fg-muted tabular-nums shrink-0"
666-
:aria-label="getDownloadsAriaLabel(getGroupDownloads(item.versions)!)"
677+
:aria-label="getDownloadsAriaLabel(groupDownloadsMap.get(item.groupKey)!)"
667678
dir="ltr"
668-
:title="getDownloadsAriaLabel(getGroupDownloads(item.versions)!)"
679+
:title="getDownloadsAriaLabel(groupDownloadsMap.get(item.groupKey)!)"
669680
>
670-
<span>{{ numberFormatter.format(getGroupDownloads(item.versions)!) }}</span>
681+
<span>{{ numberFormatter.format(groupDownloadsMap.get(item.groupKey)!) }}</span>
671682
<span class="i-lucide:chart-line" aria-hidden="true"></span>
672683
</span>
673684
<span v-else class="ms-auto w-28 shrink-0" />

0 commit comments

Comments
 (0)