class

Sunstone::LayoutRenderer

Inherits Reference < Object

Class methods

clean_text(html : String) : String
Source
escape(text : String) : String

Shared text and icon helpers

Source
extract_item_text(node : YAML::Any) : String
Source
render_icon(name : String, extra_class : String = "") : String
Source
tint_emojis(text : String) : String
Source

Instance methods

render_card(title : String, color : String, items : Array(String), badge : String | Nil = nil, compact : Bool = false) : String

Semantic Card with ZERO Inline Styles

Source
render_code_container(title : String, lang : String, code : String, tag : String | Nil = nil, density : String | Nil = nil) : String

Semantic Code Container with Window Header (dots rendered via CSS ::before)

Source
render_html(slide : Slide, deck : Deck, palette : Palette, slide_num : Int32, total_slides : Int32) : String
Source
render_html_all(slide : Slide, deck : Deck, palette : Palette, slide_num : Int32, total_slides : Int32) : String
Source
render_markdown(slide : Slide, deck : Deck, palette : Palette, slide_num : Int32, total_slides : Int32) : String
Source
render_markdown_all(slide : Slide, deck : Deck, palette : Palette, slide_num : Int32, total_slides : Int32) : String
Source
render_section_wrapper(slide : Slide, deck : Deck, palette : Palette, slide_num : Int32, total_slides : Int32, inner_body : String, custom_notes : String | Nil = nil) : String

Strictly Semantic Section Wrapper with ZERO Inline Styles

Source
render_slide_header(slide : Slide, right_element : String | Nil = nil) : String

Semantic Slide Header with ZERO Inline Styles

Source
slide_count(slide : Slide) : Int32

Default slide count is 1; 2-step layouts can override to 2

Source