Sha256: e90fc5d0f5b4b6266c862e8782bc9f6e860e6ac7f069d77302c7421cdf1126c0
Contents?: true
Size: 1.79 KB
Versions: 2
Compression:
Stored size: 1.79 KB
Contents
# frozen_string_literal: true module Yattho module Beta class BorderBox # `BorderBox::Header` is used inside `BorderBox` to render its header slot. # # @accessibility When using `header.with_title`, set `tag` to one of `h1`, `h2`, `h3`, etc. based on what is appropriate for the page context. <%= link_to_heading_practices %> class Header < Yattho::Component status :beta TITLE_TAG_FALLBACK = :h2 TITLE_TAG_OPTIONS = [:h1, TITLE_TAG_FALLBACK, :h3, :h4, :h5, :h6].freeze # Optional Title. # # @param tag [Symbol] <%= one_of(Yattho::Beta::BorderBox::Header::TITLE_TAG_OPTIONS) %> # @param system_arguments [Hash] <%= link_to_system_arguments_docs %> renders_one :title, lambda { |tag:, **system_arguments| system_arguments[:tag] = fetch_or_fallback(TITLE_TAG_OPTIONS, tag, TITLE_TAG_FALLBACK) system_arguments[:classes] = class_names( "Box-title", system_arguments[:classes] ) Yattho::BaseComponent.new(**system_arguments) } # @example Default # # <%= render(Yattho::Beta::BorderBox::Header.new) do %> # Header # <% end %> # # @example with title # <%= render(Yattho::Beta::BorderBox::Header.new) do |h| %> # <% h.with_title(tag: :h3) do %>I am a title<% end %> # <% end %> # # @param system_arguments [Hash] <%= link_to_system_arguments_docs %> def initialize(**system_arguments) @system_arguments = system_arguments @system_arguments[:tag] = :div @system_arguments[:classes] = class_names( "Box-header", system_arguments[:classes] ) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
yattho_view_components-0.1.1 | app/components/yattho/beta/border_box/header.rb |
yattho_view_components-0.0.1 | app/components/yattho/beta/border_box/header.rb |