summaryrefslogtreecommitdiff
path: root/internal/glightbox/extension.go
blob: 7fd17b11f93ac94da9154b253d1e234e97fbbb21 (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
package glightbox

import (
	"github.com/yuin/goldmark"
	"github.com/yuin/goldmark/parser"
	"github.com/yuin/goldmark/renderer"
	"github.com/yuin/goldmark/util"
)

// Extension that combines parser and renderer
type GLightboxExtension struct{}

func NewGLightboxExtension() goldmark.Extender {
	return &GLightboxExtension{}
}

func (e *GLightboxExtension) Extend(m goldmark.Markdown) {
	m.Parser().AddOptions(
		parser.WithBlockParsers(
			util.Prioritized(NewGLightboxParser(), 500),
		),
	)
	m.Renderer().AddOptions(
		renderer.WithNodeRenderers(
			util.Prioritized(NewGLightboxHTMLRenderer(), 500),
		),
	)
}