Class: Pajamas::AlertComponent

Inherits:
Component
  • Object
show all
Defined in:
app/components/pajamas/alert_component.rb

Instance Method Summary collapse

Constructor Details

#initialize(title: nil, variant: :info, dismissible: true, show_icon: true, alert_options: {}, close_button_options: {}) ⇒ AlertComponent

Returns a new instance of AlertComponent.

Parameters:

  • title (String) (defaults to: nil)
  • variant (Symbol) (defaults to: :info)
  • dismissible (Boolean) (defaults to: true)
  • show_icon (Boolean) (defaults to: true)
  • alert_options (Hash) (defaults to: {})
  • close_button_options (Hash) (defaults to: {})


12
13
14
15
16
17
18
19
20
21
# File 'app/components/pajamas/alert_component.rb', line 12

def initialize(
  title: nil, variant: :info, dismissible: true, show_icon: true,
  alert_options: {}, close_button_options: {})
  @title = title.presence
  @variant = filter_attribute(variant&.to_sym, VARIANT_ICONS.keys, default: :info)
  @dismissible = dismissible
  @show_icon = show_icon
  @alert_options = alert_options
  @close_button_options = close_button_options
end

Instance Method Details

#base_classObject



23
24
25
26
27
28
29
# File 'app/components/pajamas/alert_component.rb', line 23

def base_class
  classes = ["gl-alert-#{@variant}"]
  classes.push('gl-alert-not-dismissible') unless @dismissible
  classes.push('gl-alert-no-icon') unless @show_icon

  classes.join(' ')
end