mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-17 07:00:12 +01:00
🎨 Brand new marketplace UI https://github.com/siyuan-note/siyuan/issues/8181
This commit is contained in:
parent
a219cf52f5
commit
2d559a943d
4 changed files with 49 additions and 6 deletions
|
|
@ -376,6 +376,7 @@ export const bazaar = {
|
||||||
fetchPost("/api/bazaar/getBazaarPackageREAME", {
|
fetchPost("/api/bazaar/getBazaarPackageREAME", {
|
||||||
repoURL: data.repoURL,
|
repoURL: data.repoURL,
|
||||||
repoHash: data.repoHash,
|
repoHash: data.repoHash,
|
||||||
|
packageType: bazaarType
|
||||||
}, response => {
|
}, response => {
|
||||||
const mdElement = readmeElement.querySelector(".item__readme");
|
const mdElement = readmeElement.querySelector(".item__readme");
|
||||||
mdElement.innerHTML = response.data.html;
|
mdElement.innerHTML = response.data.html;
|
||||||
|
|
|
||||||
|
|
@ -36,8 +36,9 @@ func getBazaarPackageREAME(c *gin.Context) {
|
||||||
|
|
||||||
repoURL := arg["repoURL"].(string)
|
repoURL := arg["repoURL"].(string)
|
||||||
repoHash := arg["repoHash"].(string)
|
repoHash := arg["repoHash"].(string)
|
||||||
|
packageType := arg["packageType"].(string)
|
||||||
ret.Data = map[string]interface{}{
|
ret.Data = map[string]interface{}{
|
||||||
"html": model.GetPackageREADME(repoURL, repoHash),
|
"html": model.GetPackageREADME(repoURL, repoHash, packageType),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -117,6 +117,29 @@ type StageIndex struct {
|
||||||
Repos []*StageRepo `json:"repos"`
|
Repos []*StageRepo `json:"repos"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getPreferredReadme(readme *Readme) string {
|
||||||
|
if nil == readme {
|
||||||
|
return "README.md"
|
||||||
|
}
|
||||||
|
|
||||||
|
ret := readme.Default
|
||||||
|
switch util.Lang {
|
||||||
|
case "zh_CN":
|
||||||
|
if "" != readme.ZhCN {
|
||||||
|
ret = readme.ZhCN
|
||||||
|
}
|
||||||
|
case "en_US":
|
||||||
|
if "" != readme.EnUS {
|
||||||
|
ret = readme.EnUS
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
if "" != readme.EnUS {
|
||||||
|
ret = readme.EnUS
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret
|
||||||
|
}
|
||||||
|
|
||||||
func getPreferredDesc(desc *Description) string {
|
func getPreferredDesc(desc *Description) string {
|
||||||
if nil == desc {
|
if nil == desc {
|
||||||
return ""
|
return ""
|
||||||
|
|
@ -400,10 +423,28 @@ func isOutdatedTemplate(template *Template, bazaarTemplates []*Template) bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetPackageREADME(repoURL, repoHash string, systemID string) (ret string) {
|
func GetPackageREADME(repoURL, repoHash, packageType string) (ret string) {
|
||||||
repoURLHash := repoURL + "@" + repoHash
|
repoURLHash := repoURL + "@" + repoHash
|
||||||
|
|
||||||
data, err := downloadPackage(repoURLHash+"/README.md", false, systemID)
|
stageIndex := cachedStageIndex[packageType]
|
||||||
|
if nil == stageIndex {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var repo *StageRepo
|
||||||
|
for _, r := range stageIndex.Repos {
|
||||||
|
if r.URL == repoURLHash {
|
||||||
|
repo = r
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if nil == repo {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
readme := getPreferredReadme(repo.Package.Readme)
|
||||||
|
|
||||||
|
data, err := downloadPackage(repoURLHash+"/"+readme, false, "")
|
||||||
if nil != err {
|
if nil != err {
|
||||||
ret = "Load bazaar package's README.md failed: " + err.Error()
|
ret = "Load bazaar package's README.md failed: " + err.Error()
|
||||||
return
|
return
|
||||||
|
|
@ -472,7 +513,7 @@ func downloadPackage(repoURLHash string, pushProgress bool, systemID string) (da
|
||||||
}
|
}
|
||||||
|
|
||||||
func incPackageDownloads(repoURLHash, systemID string) {
|
func incPackageDownloads(repoURLHash, systemID string) {
|
||||||
if strings.Contains(repoURLHash, ".md") {
|
if strings.Contains(repoURLHash, ".md") || "" == systemID {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,8 @@ import (
|
||||||
"github.com/siyuan-note/siyuan/kernel/bazaar"
|
"github.com/siyuan-note/siyuan/kernel/bazaar"
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetPackageREADME(repoURL, repoHash string) (ret string) {
|
func GetPackageREADME(repoURL, repoHash, packageType string) (ret string) {
|
||||||
ret = bazaar.GetPackageREADME(repoURL, repoHash, Conf.System.ID)
|
ret = bazaar.GetPackageREADME(repoURL, repoHash, packageType)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue