Class: Primer::FlashComponent
- Includes:
- ViewComponent::Slotable
- Defined in:
- app/components/primer/flash_component.rb
Defined Under Namespace
Classes: Actions
Constant Summary collapse
- DEFAULT_VARIANT =
:default- VARIANT_MAPPINGS =
{ DEFAULT_VARIANT => "", :warning => "flash-warn", :danger => "flash-error", :success => "flash-success" }.freeze
Constants included from FetchOrFallbackHelper
Primer::FetchOrFallbackHelper::InvalidValueError
Instance Method Summary collapse
-
#initialize(full: false, spacious: false, dismissible: false, icon: nil, variant: DEFAULT_VARIANT, **kwargs) ⇒ FlashComponent
constructor
A new instance of FlashComponent.
Methods included from FetchOrFallbackHelper
Methods included from ClassNameHelper
Constructor Details
#initialize(full: false, spacious: false, dismissible: false, icon: nil, variant: DEFAULT_VARIANT, **kwargs) ⇒ FlashComponent
Returns a new instance of FlashComponent.
17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'app/components/primer/flash_component.rb', line 17 def initialize(full: false, spacious: false, dismissible: false, icon: nil, variant: DEFAULT_VARIANT, **kwargs) @icon = icon @dismissible = dismissible @kwargs = kwargs @kwargs[:tag] = :div @kwargs[:classes] = class_names( @kwargs[:classes], "flash", VARIANT_MAPPINGS[fetch_or_fallback(VARIANT_MAPPINGS.keys, variant.to_sym, DEFAULT_VARIANT)], "flash-full": full ) @kwargs[:mb] ||= spacious ? 4 : nil end |