Help us shape the future of Go! Take the 2026 Go Developer Survey

details

package
v1.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 25, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

Package details provides a Goldmark extension for stateful collapsible details elements. It adds unique IDs to <details> elements and includes JavaScript to save/restore their state using browser session storage.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewHTMLRenderer

func NewHTMLRenderer(opts ...html.Option) renderer.NodeRenderer

NewHTMLRenderer creates a new HTMLRenderer

Types

type Extender

type Extender struct {
	// IDPrefix is the prefix used for generated IDs. Defaults to "details-"
	IDPrefix string
}

Extender implements goldmark.Extender to add stateful details support

func New

func New() *Extender

New creates a new details Extender with default settings

func NewWithPrefix

func NewWithPrefix(prefix string) *Extender

NewWithPrefix creates a new details Extender with a custom ID prefix

func (*Extender) Extend

func (e *Extender) Extend(m goldmark.Markdown)

Extend extends the Goldmark parser and renderer with stateful details functionality

type HTMLRenderer

type HTMLRenderer struct {
	html.Config
	// contains filtered or unexported fields
}

HTMLRenderer renders the state management script for details elements

func (*HTMLRenderer) RegisterFuncs

func (r *HTMLRenderer) RegisterFuncs(reg renderer.NodeRendererFuncRegisterer)

RegisterFuncs registers rendering functions

type Transformer

type Transformer struct {
	// contains filtered or unexported fields
}

Transformer is a transformer that adds IDs to HTML <details> elements

func NewTransformer

func NewTransformer(idPrefix string) *Transformer

NewTransformer creates a new Transformer

func (*Transformer) Transform

func (t *Transformer) Transform(node *ast.Document, reader text.Reader, pc parser.Context)

Transform walks the AST and modifies HTML blocks containing <details> tags

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL