Launcher: Update helm contents renderer to open anchors in new tab
Change-Id: If6698f5d6dedc4753e38f1cf96dceb3685f42eaf
diff --git a/core/installer/server/launcher/server.go b/core/installer/server/launcher/server.go
index f75a86c..e4483e1 100644
--- a/core/installer/server/launcher/server.go
+++ b/core/installer/server/launcher/server.go
@@ -14,6 +14,7 @@
"github.com/Masterminds/sprig/v3"
"github.com/gomarkdown/markdown"
+ "github.com/gomarkdown/markdown/html"
)
//go:embed templates/launcher.html
@@ -51,6 +52,9 @@
return nil, err
}
ret := []AppLauncherInfo{}
+ mdRenderer := html.NewRenderer(html.RendererOptions{
+ Flags: html.CommonFlags | html.HrefTargetBlank,
+ })
for _, a := range all {
if a.URL == "" && len(a.Help) == 0 {
continue
@@ -59,7 +63,7 @@
Id: a.Id,
Name: a.AppId,
Icon: template.HTML(a.Icon),
- Help: toMarkdown(a.Help),
+ Help: toMarkdown(a.Help, mdRenderer),
URL: a.URL,
DisplayURL: shortenURL(a.URL, a.Env.Domain),
})
@@ -173,7 +177,7 @@
}
}
-func toMarkdown(help []installer.HelpDocument) []HelpDocumentRendered {
+func toMarkdown(help []installer.HelpDocument, renderer markdown.Renderer) []HelpDocumentRendered {
if help == nil {
return nil
}
@@ -181,8 +185,8 @@
for _, h := range help {
ret = append(ret, HelpDocumentRendered{
Title: h.Title,
- Contents: template.HTML(markdown.ToHTML([]byte(h.Contents), nil, nil)),
- Children: toMarkdown(h.Children),
+ Contents: template.HTML(markdown.ToHTML([]byte(h.Contents), nil, renderer)),
+ Children: toMarkdown(h.Children, renderer),
})
}
return ret