Class: UiBibz::Ui::Core::Notifications::Toast
- Defined in:
- lib/ui_bibz/ui/core/notifications/toast.rb
Overview
Create an alert
This element is an extend of UiBibz::Ui::Core::Component.
Attributes
-
content- Content of element -
options- Options of element -
html_options- Html Options of element
Options
You can add HTML attributes using the html_options. You can pass arguments in options attribute:
-
status- status of element with symbol value: (:default,:primary,:info,:warning,:danger) -
glyph- [String | Hash] Add glyph with name or hash options-
name- [String]
*
timeout- [Integer] -
Signatures
UiBibz::Ui::Core::Notifications::Toast.new(content, = nil, = nil)
UiBibz::Ui::Core::Notifications::Toast.new( = nil, = nil) do
content
end
Examples
UiBibz::Ui::Core::Notifications::Toast.new(class: 'my-toast').tap |t|
t.header "My header toast", glyph: 'eye', time: 'now'
t.body "My body toast"
end
UiBibz::Ui::Core::Notifications::Toast.new(class: 'my-toast').tap |t|
t.header glyph: 'eye', time: 'now' do
My header toast
end
t.body class: 'my-body-toast' do
My body toast
end
end.render
Helper
ui_toast( = {}, = {}) do |t|
t.header "My header toast", glyph: 'eye', time: 'now'
t.body "My body toast"
end
Constant Summary
Constants inherited from Component
Component::BREAKPOINTS, Component::SIZES, Component::STATUSES
Instance Attribute Summary
Attributes inherited from Component
#content, #html_options, #options
Attributes inherited from Base
Instance Method Summary collapse
-
#body(content = nil, options = nil, html_options = nil, &block) ⇒ Object
Add Body which is a component.
-
#header(content = nil, options = nil, html_options = nil, &block) ⇒ Object
Add Header which is a component.
-
#initialize(content = nil, options = nil, html_options = nil, &block) ⇒ Toast
constructor
See UiBibz::Ui::Core::Component.initialize.
-
#pre_render ⇒ Object
Render html tag.
Methods inherited from Component
Methods included from PopoverExtension
#popover_data_html, #tooltip_data_html
Methods included from GlyphExtension
#generate_glyph, #glyph_and_content_html
Methods included from KlassExtension
#exclude_classes, #exclude_classes_in_html_options, #join_classes
Methods inherited from Base
#generate_id, #i18n_set?, #inject_url
Constructor Details
#initialize(content = nil, options = nil, html_options = nil, &block) ⇒ Toast
See UiBibz::Ui::Core::Component.initialize
59 60 61 62 |
# File 'lib/ui_bibz/ui/core/notifications/toast.rb', line 59 def initialize(content = nil, = nil, = nil, &block) super body(@content) unless @tapped end |
Instance Method Details
#body(content = nil, options = nil, html_options = nil, &block) ⇒ Object
Add Body which is a component
78 79 80 81 82 83 84 85 86 87 |
# File 'lib/ui_bibz/ui/core/notifications/toast.rb', line 78 def body(content = nil, = nil, = nil, &block) @body = if @header.nil? content_tag :div, class: 'd-flex' do concat UiBibz::Ui::Core::Notifications::Components::ToastBody.new(content, , , &block).render concat close_html if ( || {})[:closable] end else UiBibz::Ui::Core::Notifications::Components::ToastBody.new(content, , , &block).render end end |
#header(content = nil, options = nil, html_options = nil, &block) ⇒ Object
Add Header which is a component
73 74 75 |
# File 'lib/ui_bibz/ui/core/notifications/toast.rb', line 73 def header(content = nil, = nil, = nil, &block) @header = UiBibz::Ui::Core::Notifications::Components::ToastHeader.new(content, , , &block).render end |
#pre_render ⇒ Object
Render html tag
65 66 67 68 69 70 |
# File 'lib/ui_bibz/ui/core/notifications/toast.rb', line 65 def pre_render content_tag :div, do concat @header concat @body end end |