mirror of
https://github.com/WowUp/WowUp.git
synced 2026-04-23 15:27:03 -04:00
@@ -8,24 +8,23 @@ import { TranslateService } from "@ngx-translate/core";
|
||||
export class DownloadCountPipe implements PipeTransform {
|
||||
constructor(private translateService: TranslateService) {}
|
||||
|
||||
shortenDownloadCount(value: number, nDigit: number): string {
|
||||
const exponent = Math.log10(value);
|
||||
const nGroups = Math.floor(exponent / nDigit);
|
||||
const shortValue = value / Math.pow(10, nGroups * nDigit);
|
||||
return shortValue.toFixed(0);
|
||||
}
|
||||
|
||||
transform(value: number, ...args: unknown[]): string {
|
||||
const numMatches = /(e\+\d+)/.exec(value.toExponential());
|
||||
const suffix = numMatches[1];
|
||||
|
||||
let downloadCount = value;
|
||||
if (downloadCount >= 1000000000) {
|
||||
downloadCount /= 1000000000.0;
|
||||
} else if (downloadCount >= 1000000) {
|
||||
downloadCount /= 1000000.0;
|
||||
} else if (downloadCount >= 1000) {
|
||||
downloadCount /= 1000.0;
|
||||
}
|
||||
|
||||
return suffix
|
||||
? this.translateService.instant("COMMON.DOWNLOAD_COUNT." + suffix, {
|
||||
count: downloadCount.toFixed(0),
|
||||
simpleCount: value.toString()[0]
|
||||
count: this.shortenDownloadCount(value, 3),
|
||||
simpleCount: this.shortenDownloadCount(value, 1),
|
||||
myriadCount: this.shortenDownloadCount(value, 4),
|
||||
})
|
||||
: downloadCount.toString();
|
||||
: value.toString();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
},
|
||||
"THEME": {
|
||||
"ALLIANCE": "聯盟",
|
||||
"DEFAULT": "預設",
|
||||
"GROUP_DARK": "Dark",
|
||||
"GROUP_LIGHT": "Light",
|
||||
"DEFAULT": "WowUp",
|
||||
"GROUP_DARK": "暗色",
|
||||
"GROUP_LIGHT": "亮色",
|
||||
"HORDE": "部落"
|
||||
},
|
||||
"WOWUP_UPDATE": {
|
||||
@@ -65,16 +65,16 @@
|
||||
"TOOLTIP": "{dependencyCount} 個依賴項"
|
||||
},
|
||||
"DOWNLOAD_COUNT": {
|
||||
"e+0": "{count}",
|
||||
"e+1": "{count}",
|
||||
"e+2": "{count}",
|
||||
"e+3": "{count} thousand",
|
||||
"e+4": "{count} thousand",
|
||||
"e+5": "{count} thousand",
|
||||
"e+6": "{count} million",
|
||||
"e+7": "{count} million",
|
||||
"e+8": "{count} million",
|
||||
"e+9": "{count} billion"
|
||||
"e+0": "{myriadCount}",
|
||||
"e+1": "{myriadCount}",
|
||||
"e+2": "{myriadCount}",
|
||||
"e+3": "{myriadCount}",
|
||||
"e+4": "{myriadCount} 萬",
|
||||
"e+5": "{myriadCount} 萬",
|
||||
"e+6": "{myriadCount} 萬",
|
||||
"e+7": "{myriadCount} 萬",
|
||||
"e+8": "{myriadCount} 億",
|
||||
"e+9": "{myriadCount} 億"
|
||||
},
|
||||
"ENUM": {
|
||||
"ADDON_CHANNEL_TYPE": {
|
||||
@@ -84,7 +84,7 @@
|
||||
}
|
||||
},
|
||||
"ERRORS": {
|
||||
"CHANGE_PROVIDER_ERROR": "Failed to change provider for {addonName} to {providerName}"
|
||||
"CHANGE_PROVIDER_ERROR": "無法將 {addonName} 的提供方修改為 {providerName}"
|
||||
},
|
||||
"PROGRESS_SPINNER": {
|
||||
"LOADING": "正在載入..."
|
||||
@@ -101,7 +101,7 @@
|
||||
"VIEW_ON_PROVIDER_PREFIX": "在該網站上檢視:"
|
||||
},
|
||||
"ALERT": {
|
||||
"ERROR_TITLE": "Error",
|
||||
"ERROR_TITLE": "錯誤",
|
||||
"POSITIVE_BUTTON": "確定"
|
||||
},
|
||||
"CONFIRM": {
|
||||
@@ -175,8 +175,8 @@
|
||||
"STABLE_ADDON_CHANNEL": "穩定版"
|
||||
},
|
||||
"CHANGE_ADDON_PROVIDER_CONFIRMATION": {
|
||||
"MESSAGE": "Do you want to change the addon provider for {addonName} to {providerName}? This operation will uninstall your existing addon and replace it with a copy from the new provider.",
|
||||
"TITLE": "Change Addon Provider?"
|
||||
"MESSAGE": "是否將 {addonName} 的提供方修改為 {providerName}?此操作將會用 {providerName} 的版本替換現有版本。",
|
||||
"TITLE": "修改插件提供方?"
|
||||
},
|
||||
"CHECK_UPDATES_BUTTON": "檢查更新",
|
||||
"CHECK_UPDATES_BUTTON_TOOLTIP": "檢查最新的插件更新",
|
||||
@@ -185,18 +185,18 @@
|
||||
"TITLE": "顯示列表項"
|
||||
},
|
||||
"FILTER_LABEL": "篩選",
|
||||
"MULTIPLE_PROVIDERS_TOOLTIP": "This addon has multiple providers",
|
||||
"MULTIPLE_PROVIDERS_TOOLTIP": "此插件有多個提供方",
|
||||
"PAGE_CONTEXT_FOOTER": {
|
||||
"ADDONS_INSTALLED": "共 {count} 個插件",
|
||||
"JOIN_DISCORD": "在 Discord 上與我們交流(英語)",
|
||||
"PATREON_SUPPORT": "透過 Patreon 向 WowUp 捐助",
|
||||
"PATREON_SUPPORT": "透過 Patreon 向 WowUp 捐助(英語)",
|
||||
"SEARCH_RESULTS": "共 {count} 條結果",
|
||||
"VIEW_GITHUB": "在 GitHub 上檢視原始碼",
|
||||
"VIEW_GUIDE": "訪問指南,探索 WowUp 的功能(英語)"
|
||||
},
|
||||
"RESCAN_FOLDERS_BUTTON": "重新掃描",
|
||||
"RESCAN_FOLDERS_BUTTON_TOOLTIP": "掃描客戶端資料夾中已安裝的插件",
|
||||
"RESCAN_FOLDERS_CONFIRMATION_DESCRIPTION": "重新掃描過程將會猜測已經安裝了哪些插件,可能會重置已知插件資訊。如果特定插件無法識別或顯示不正確,請使用此功能。掃描不會刪除插件本身,只會刪除 WowUp 快取的插件資訊。\n\n掃描需要花費一些時間。",
|
||||
"RESCAN_FOLDERS_CONFIRMATION_DESCRIPTION": "重新掃描過程將會猜測已經安裝了哪些插件,可能會重置已知插件資訊。如果特定插件無法識別或顯示不正確,請使用此功能。掃描不會刪除插件本身,只會刪除 WowUp 記錄的插件資訊。\n\n掃描需要花費一些時間。",
|
||||
"RESCAN_FOLDERS_CONFIRMATION_TITLE": "是否開始掃描?",
|
||||
"SPINNER": {
|
||||
"GATHERING_ADDONS": "正在收集插件資訊...",
|
||||
@@ -278,8 +278,8 @@
|
||||
"AUTO_UPDATE_DESCRIPTION": "新安裝的插件將預設設定為自動更新",
|
||||
"AUTO_UPDATE_LABEL": "自動更新",
|
||||
"CLEAR_INSTALL_LOCATION_DIALOG": {
|
||||
"MESSAGE": "Are you sure you want to clear the install path for {clientName}? This will remove all stored addon information for this client.\n\nYour addon folders will not be removed.",
|
||||
"TITLE": "Clear Install Location?"
|
||||
"MESSAGE": "是否忘記 {clientName} 的安裝路徑?此操作將會刪除 WowUp 記錄的此客戶端所安裝插件資訊。\n\n插件資料夾不會被刪除。",
|
||||
"TITLE": "忘記此路徑?"
|
||||
},
|
||||
"CLIENT_TYPE_INPUT_HINT": "請選擇 {clientTypeName} 客戶端路徑(\"{clientFolderName}\" 的上級路徑)",
|
||||
"CLIENT_TYPE_PATH_LABEL": "{clientTypeName} 路徑",
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
},
|
||||
"THEME": {
|
||||
"ALLIANCE": "联盟",
|
||||
"DEFAULT": "默认",
|
||||
"GROUP_DARK": "Dark",
|
||||
"GROUP_LIGHT": "Light",
|
||||
"DEFAULT": "WowUp",
|
||||
"GROUP_DARK": "暗色",
|
||||
"GROUP_LIGHT": "亮色",
|
||||
"HORDE": "部落"
|
||||
},
|
||||
"WOWUP_UPDATE": {
|
||||
@@ -65,16 +65,16 @@
|
||||
"TOOLTIP": "{dependencyCount} 个依赖项"
|
||||
},
|
||||
"DOWNLOAD_COUNT": {
|
||||
"e+0": "{count}",
|
||||
"e+1": "{count}",
|
||||
"e+2": "{count}",
|
||||
"e+3": "{count} thousand",
|
||||
"e+4": "{count} thousand",
|
||||
"e+5": "{count} thousand",
|
||||
"e+6": "{count} million",
|
||||
"e+7": "{count} million",
|
||||
"e+8": "{count} million",
|
||||
"e+9": "{count} billion"
|
||||
"e+0": "{myriadCount}",
|
||||
"e+1": "{myriadCount}",
|
||||
"e+2": "{myriadCount}",
|
||||
"e+3": "{myriadCount}",
|
||||
"e+4": "{myriadCount} 万",
|
||||
"e+5": "{myriadCount} 万",
|
||||
"e+6": "{myriadCount} 万",
|
||||
"e+7": "{myriadCount} 万",
|
||||
"e+8": "{myriadCount} 亿",
|
||||
"e+9": "{myriadCount} 亿"
|
||||
},
|
||||
"ENUM": {
|
||||
"ADDON_CHANNEL_TYPE": {
|
||||
@@ -84,7 +84,7 @@
|
||||
}
|
||||
},
|
||||
"ERRORS": {
|
||||
"CHANGE_PROVIDER_ERROR": "Failed to change provider for {addonName} to {providerName}"
|
||||
"CHANGE_PROVIDER_ERROR": "无法将 {addonName} 的提供方修改为 {providerName}"
|
||||
},
|
||||
"PROGRESS_SPINNER": {
|
||||
"LOADING": "正在加载..."
|
||||
@@ -101,7 +101,7 @@
|
||||
"VIEW_ON_PROVIDER_PREFIX": "在该网站上查看:"
|
||||
},
|
||||
"ALERT": {
|
||||
"ERROR_TITLE": "Error",
|
||||
"ERROR_TITLE": "错误",
|
||||
"POSITIVE_BUTTON": "确定"
|
||||
},
|
||||
"CONFIRM": {
|
||||
@@ -175,8 +175,8 @@
|
||||
"STABLE_ADDON_CHANNEL": "稳定版"
|
||||
},
|
||||
"CHANGE_ADDON_PROVIDER_CONFIRMATION": {
|
||||
"MESSAGE": "Do you want to change the addon provider for {addonName} to {providerName}? This operation will uninstall your existing addon and replace it with a copy from the new provider.",
|
||||
"TITLE": "Change Addon Provider?"
|
||||
"MESSAGE": "是否将 {addonName} 的提供方修改为 {providerName}?此操作将会用 {providerName} 的版本替换现有版本。",
|
||||
"TITLE": "修改插件提供方?"
|
||||
},
|
||||
"CHECK_UPDATES_BUTTON": "检查更新",
|
||||
"CHECK_UPDATES_BUTTON_TOOLTIP": "检查最新的插件更新",
|
||||
@@ -185,18 +185,18 @@
|
||||
"TITLE": "显示列表项"
|
||||
},
|
||||
"FILTER_LABEL": "筛选",
|
||||
"MULTIPLE_PROVIDERS_TOOLTIP": "This addon has multiple providers",
|
||||
"MULTIPLE_PROVIDERS_TOOLTIP": "此插件有多个提供方",
|
||||
"PAGE_CONTEXT_FOOTER": {
|
||||
"ADDONS_INSTALLED": "共 {count} 个插件",
|
||||
"JOIN_DISCORD": "在 Discord 上与我们交流(英语)",
|
||||
"PATREON_SUPPORT": "通过 Patreon 向 WowUp 捐助",
|
||||
"PATREON_SUPPORT": "通过 Patreon 向 WowUp 捐助(英语)",
|
||||
"SEARCH_RESULTS": "共 {count} 条结果",
|
||||
"VIEW_GITHUB": "在 GitHub 上查看源代码",
|
||||
"VIEW_GUIDE": "访问指南,探索 WowUp 的功能(英语)"
|
||||
},
|
||||
"RESCAN_FOLDERS_BUTTON": "重新扫描",
|
||||
"RESCAN_FOLDERS_BUTTON_TOOLTIP": "扫描客户端文件夹中已安装的附加组件",
|
||||
"RESCAN_FOLDERS_CONFIRMATION_DESCRIPTION": "重新扫描过程将会猜测已经安装了哪些插件,可能会重置已知插件信息。如果特定插件无法识别或显示不正确,请使用此功能。扫描不会删除插件本身,只会删除 WowUp 缓存的插件信息。\n\n扫描需要花费一些时间。",
|
||||
"RESCAN_FOLDERS_CONFIRMATION_DESCRIPTION": "重新扫描过程将会猜测已经安装了哪些插件,可能会重置已知插件信息。如果特定插件无法识别或显示不正确,请使用此功能。扫描不会删除插件本身,只会删除 WowUp 记录的插件信息。\n\n扫描需要花费一些时间。",
|
||||
"RESCAN_FOLDERS_CONFIRMATION_TITLE": "是否开始扫描?",
|
||||
"SPINNER": {
|
||||
"GATHERING_ADDONS": "正在收集插件信息...",
|
||||
@@ -278,8 +278,8 @@
|
||||
"AUTO_UPDATE_DESCRIPTION": "新安装的插件将默认设置为自动更新",
|
||||
"AUTO_UPDATE_LABEL": "自动更新",
|
||||
"CLEAR_INSTALL_LOCATION_DIALOG": {
|
||||
"MESSAGE": "Are you sure you want to clear the install path for {clientName}? This will remove all stored addon information for this client.\n\nYour addon folders will not be removed.",
|
||||
"TITLE": "Clear Install Location?"
|
||||
"MESSAGE": "是否忘记 {clientName} 的安装路径?此操作将会删除 WowUp 记录的此客户端所安装插件信息。\n\n插件文件夹不会被删除。",
|
||||
"TITLE": "忘记此路径?"
|
||||
},
|
||||
"CLIENT_TYPE_INPUT_HINT": "请选择 {clientTypeName} 客户端路径(\"{clientFolderName}\" 的上级路径)",
|
||||
"CLIENT_TYPE_PATH_LABEL": "{clientTypeName} 路径",
|
||||
|
||||
Reference in New Issue
Block a user