Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MarkdownToHTMLProcessor ¶
type MarkdownToHTMLProcessor struct{}
MarkdownToHTMLProcessor converts a Markdown string to an HTML string.
func NewMarkdownToHTMLProcessor ¶
func NewMarkdownToHTMLProcessor() *MarkdownToHTMLProcessor
NewMarkdownToHTMLProcessor creates a new MarkdownToHTMLProcessor.
func (*MarkdownToHTMLProcessor) Process ¶
func (p *MarkdownToHTMLProcessor) Process(content interface{}, _ map[string]interface{}) (interface{}, error)
Process converts a Markdown string to an HTML string.
type MarkdownToSlackProcessor ¶
type MarkdownToSlackProcessor struct{}
MarkdownToSlackProcessor converts content to Slack blocks. It assumes the input text is already valid Slack mrkdwn.
func NewMarkdownToSlackProcessor ¶
func NewMarkdownToSlackProcessor() *MarkdownToSlackProcessor
NewMarkdownToSlackProcessor creates a new MarkdownToSlackProcessor.
func (*MarkdownToSlackProcessor) Process ¶
func (p *MarkdownToSlackProcessor) Process(content interface{}, data map[string]interface{}) (interface{}, error)
Process converts content to Slack blocks.
type Processor ¶
type Processor interface {
Process(content interface{}, data map[string]interface{}) (interface{}, error)
}
Processor is the interface that all processors must implement.
type ProcessorStack ¶
type ProcessorStack []Processor
ProcessorStack is a slice of processors that are applied in sequence.
func (ProcessorStack) Process ¶
func (s ProcessorStack) Process(content interface{}, data map[string]interface{}) (interface{}, error)
Process applies all the processors in the stack to the content.
type SlackRenderer ¶
type SlackRenderer struct{}
SlackRenderer implements markdown.Renderer to output Slack mrkdwn format.
func NewSlackRenderer ¶
func NewSlackRenderer() *SlackRenderer
func (*SlackRenderer) RenderFooter ¶
func (r *SlackRenderer) RenderFooter(w io.Writer, ast ast.Node)
func (*SlackRenderer) RenderHeader ¶
func (r *SlackRenderer) RenderHeader(w io.Writer, ast ast.Node)
func (*SlackRenderer) RenderNode ¶
func (r *SlackRenderer) RenderNode(w io.Writer, node ast.Node, entering bool) ast.WalkStatus
type TemplateProcessor ¶
type TemplateProcessor struct{}
TemplateProcessor renders a Go template string.
func NewTemplateProcessor ¶
func NewTemplateProcessor() *TemplateProcessor
NewTemplateProcessor creates a new TemplateProcessor.
func (*TemplateProcessor) Process ¶
func (p *TemplateProcessor) Process(content interface{}, data map[string]interface{}) (interface{}, error)
Process renders a template string or recurses into structured content.