1package ansi
2
3import (
4 "io"
5 "strconv"
6)
7
8// An ItemElement is used to render items inside a list.
9type ItemElement struct {
10 IsOrdered bool
11 Enumeration uint
12}
13
14// Render renders an ItemElement.
15func (e *ItemElement) Render(w io.Writer, ctx RenderContext) error {
16 var el *BaseElement
17 if e.IsOrdered {
18 el = &BaseElement{
19 Style: ctx.options.Styles.Enumeration,
20 Prefix: strconv.FormatInt(int64(e.Enumeration), 10), //nolint: gosec
21 }
22 } else {
23 el = &BaseElement{
24 Style: ctx.options.Styles.Item,
25 }
26 }
27
28 return el.Render(w, ctx)
29}