Sha256: d319de09093cd6ef3ad53b95c65b4b1c7c1f886ee8f3f22e6766a3a8ca1ffe46
Contents?: true
Size: 1.31 KB
Versions: 8
Compression:
Stored size: 1.31 KB
Contents
module ExamplesHelper def render_component_header(title:, description:) render "layouts/documentation/component_header", title:, description: end def render_example render "layouts/documentation/examples" end def render_preview render "layouts/documentation/preview" end def render_usage(name) render "examples/components/#{name}/usage" end def render_code_preview(name) render "examples/components/#{name}/code/preview" end def code_partial(name, language) component, partial = name.split("/") content_tag :pre, class: "code-sample py-4 px-4", data: {controller: "highlight"} do content_tag :code, class: "language-#{language}" do html_escape(File.read(Rails.root.join("app", "views", "examples", "components", "#{component}/code/_#{partial}.erb"))) end end end def code_sample(content = "", language:, &block) content_tag :pre, class: "code-sample px-4 my-2 pb-5 min-h-fit", data: {controller: "highlight"} do content_tag :code, class: "language-#{language}" do yield if block end end end def inline_code(content = nil, &block) content_tag :code, class: "relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono font-semibold" do content || yield(block) end end alias_method :code, :inline_code end
Version data entries
8 entries across 8 versions & 1 rubygems