diff --git a/app/src/config/bazaar.ts b/app/src/config/bazaar.ts index 1f55dad39..a2dadc9db 100644 --- a/app/src/config/bazaar.ts +++ b/app/src/config/bazaar.ts @@ -179,7 +179,7 @@ export const bazaar = {
- ${item.name} + ${item.preferredName} ${item.name}
${item.preferredDesc || ""} @@ -240,7 +240,7 @@ export const bazaar = {
- ${item.name} + ${item.preferredName} ${item.name}
${item.preferredDesc || ""}
diff --git a/app/src/types/index.d.ts b/app/src/types/index.d.ts index 0427cf0eb..4bbf6a8ba 100644 --- a/app/src/types/index.d.ts +++ b/app/src/types/index.d.ts @@ -705,6 +705,7 @@ declare interface IMenu { declare interface IBazaarItem { enabled: boolean + preferredName: string preferredDesc: string iconURL: string readme: string diff --git a/kernel/bazaar/icon.go b/kernel/bazaar/icon.go index 07c60bdd0..4e0797dd4 100644 --- a/kernel/bazaar/icon.go +++ b/kernel/bazaar/icon.go @@ -72,6 +72,7 @@ func Icons() (icons []*Icon) { icon.IconURL = util.BazaarOSSServer + "/package/" + repoURL + "/icon.png" icon.Funding = repo.Package.Funding icon.PreferredFunding = getPreferredFunding(icon.Funding) + icon.PreferredName = getPreferredName(icon.Package) icon.PreferredDesc = getPreferredDesc(icon.Description) icon.Updated = repo.Updated icon.Stars = repo.Stars @@ -130,6 +131,7 @@ func InstalledIcons() (ret []*Icon) { icon.PreviewURLThumb = "/appearance/icons/" + dirName + "/preview.png" icon.IconURL = "/appearance/icons/" + dirName + "/icon.png" icon.PreferredFunding = getPreferredFunding(icon.Funding) + icon.PreferredName = getPreferredName(icon.Package) icon.PreferredDesc = getPreferredDesc(icon.Description) info, statErr := os.Stat(filepath.Join(installPath, "README.md")) if nil != statErr { diff --git a/kernel/bazaar/package.go b/kernel/bazaar/package.go index 1e8aca130..35191380b 100644 --- a/kernel/bazaar/package.go +++ b/kernel/bazaar/package.go @@ -74,6 +74,7 @@ type Package struct { I18N []string `json:"i18n"` PreferredFunding string `json:"preferredFunding"` + PreferredName string `json:"preferredName"` PreferredDesc string `json:"preferredDesc"` Name string `json:"name"` @@ -147,6 +148,29 @@ func getPreferredReadme(readme *Readme) string { return ret } +func getPreferredName(pkg *Package) string { + if nil == pkg.DisplayName { + return pkg.Name + } + + ret := pkg.DisplayName.Default + switch util.Lang { + case "zh_CN": + if "" != pkg.DisplayName.ZhCN { + ret = pkg.DisplayName.ZhCN + } + case "en_US": + if "" != pkg.DisplayName.EnUS { + ret = pkg.DisplayName.EnUS + } + default: + if "" != pkg.DisplayName.EnUS { + ret = pkg.DisplayName.EnUS + } + } + return ret +} + func getPreferredDesc(desc *Description) string { if nil == desc { return "" diff --git a/kernel/bazaar/plugin.go b/kernel/bazaar/plugin.go index 31e0fa76a..ac9fba740 100644 --- a/kernel/bazaar/plugin.go +++ b/kernel/bazaar/plugin.go @@ -75,6 +75,7 @@ func Plugins() (plugins []*Plugin) { plugin.IconURL = util.BazaarOSSServer + "/package/" + repoURL + "/icon.png" plugin.Funding = repo.Package.Funding plugin.PreferredFunding = getPreferredFunding(plugin.Funding) + plugin.PreferredName = getPreferredName(plugin.Package) plugin.PreferredDesc = getPreferredDesc(plugin.Description) plugin.Updated = repo.Updated plugin.Stars = repo.Stars @@ -136,6 +137,7 @@ func InstalledPlugins() (ret []*Plugin) { plugin.PreviewURLThumb = "/plugins/" + dirName + "/preview.png" plugin.IconURL = "/plugins/" + dirName + "/icon.png" plugin.PreferredFunding = getPreferredFunding(plugin.Funding) + plugin.PreferredName = getPreferredName(plugin.Package) plugin.PreferredDesc = getPreferredDesc(plugin.Description) info, statErr := os.Stat(filepath.Join(installPath, "README.md")) if nil != statErr { diff --git a/kernel/bazaar/template.go b/kernel/bazaar/template.go index 0e8e49705..4b7595a46 100644 --- a/kernel/bazaar/template.go +++ b/kernel/bazaar/template.go @@ -74,6 +74,7 @@ func Templates() (templates []*Template) { template.IconURL = util.BazaarOSSServer + "/package/" + repoURL + "/icon.png" template.Funding = repo.Package.Funding template.PreferredFunding = getPreferredFunding(template.Funding) + template.PreferredName = getPreferredName(template.Package) template.PreferredDesc = getPreferredDesc(template.Description) template.Updated = repo.Updated template.Stars = repo.Stars @@ -137,6 +138,7 @@ func InstalledTemplates() (ret []*Template) { template.PreviewURLThumb = "/templates/" + dirName + "/preview.png" template.IconURL = "/templates/" + dirName + "/icon.png" template.PreferredFunding = getPreferredFunding(template.Funding) + template.PreferredName = getPreferredName(template.Package) template.PreferredDesc = getPreferredDesc(template.Description) info, statErr := os.Stat(filepath.Join(installPath, "README.md")) if nil != statErr { diff --git a/kernel/bazaar/theme.go b/kernel/bazaar/theme.go index e5d26542f..b30a024c9 100644 --- a/kernel/bazaar/theme.go +++ b/kernel/bazaar/theme.go @@ -75,6 +75,7 @@ func Themes() (ret []*Theme) { theme.IconURL = util.BazaarOSSServer + "/package/" + repoURL + "/icon.png" theme.Funding = repo.Package.Funding theme.PreferredFunding = getPreferredFunding(theme.Funding) + theme.PreferredName = getPreferredName(theme.Package) theme.PreferredDesc = getPreferredDesc(theme.Description) theme.Updated = repo.Updated theme.Stars = repo.Stars @@ -138,6 +139,7 @@ func InstalledThemes() (ret []*Theme) { theme.PreviewURLThumb = "/appearance/themes/" + dirName + "/preview.png" theme.IconURL = "/appearance/themes/" + dirName + "/icon.png" theme.PreferredFunding = getPreferredFunding(theme.Funding) + theme.PreferredName = getPreferredName(theme.Package) theme.PreferredDesc = getPreferredDesc(theme.Description) info, statErr := os.Stat(filepath.Join(installPath, "README.md")) if nil != statErr { diff --git a/kernel/bazaar/widget.go b/kernel/bazaar/widget.go index 5db5a6273..fdd713f1d 100644 --- a/kernel/bazaar/widget.go +++ b/kernel/bazaar/widget.go @@ -74,6 +74,7 @@ func Widgets() (widgets []*Widget) { widget.IconURL = util.BazaarOSSServer + "/package/" + repoURL + "/icon.png" widget.Funding = repo.Package.Funding widget.PreferredFunding = getPreferredFunding(widget.Funding) + widget.PreferredName = getPreferredName(widget.Package) widget.PreferredDesc = getPreferredDesc(widget.Description) widget.Updated = repo.Updated widget.Stars = repo.Stars @@ -135,6 +136,7 @@ func InstalledWidgets() (ret []*Widget) { widget.PreviewURLThumb = "/widgets/" + dirName + "/preview.png" widget.IconURL = "/widgets/" + dirName + "/icon.png" widget.PreferredFunding = getPreferredFunding(widget.Funding) + widget.PreferredName = getPreferredName(widget.Package) widget.PreferredDesc = getPreferredDesc(widget.Description) info, statErr := os.Stat(filepath.Join(installPath, "README.md")) if nil != statErr {