summaryrefslogtreecommitdiffstats
path: root/models/renderhelper/simple_document.go
blob: 91d888aa878d49c609da9486ee7c0862a52a8851 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Copyright 2024 The Gitea Authors. All rights reserved.
// SPDX-License-Identifier: MIT

package renderhelper

import (
	"context"

	"code.gitea.io/gitea/modules/markup"
)

type SimpleDocument struct {
	*markup.SimpleRenderHelper
	ctx      *markup.RenderContext
	baseLink string
}

func (r *SimpleDocument) ResolveLink(link string, likeType markup.LinkType) string {
	return r.ctx.ResolveLinkRelative(r.baseLink, "", link)
}

var _ markup.RenderHelper = (*SimpleDocument)(nil)

func NewRenderContextSimpleDocument(ctx context.Context, baseLink string) *markup.RenderContext {
	helper := &SimpleDocument{baseLink: baseLink}
	rctx := markup.NewRenderContext(ctx).WithHelper(helper).WithMetas(markup.ComposeSimpleDocumentMetas())
	helper.ctx = rctx
	return rctx
}