Class: Playbook::PbTitle::Title

Inherits:
Playbook::PbKit::Base show all
Defined in:
app/pb_kits/playbook/pb_title/title.rb

Constant Summary collapse

PROPS =
%i[configured_aria
configured_classname
configured_dark
configured_data
configured_id
configured_size
configured_tag
configured_text].freeze

Instance Method Summary collapse

Methods inherited from Playbook::PbKit::Base

#adjusted_value, #aria, #classname, #concat_value, #data, #default_value, #false_value, #id, #is_boolean?, #is_integer?, #is_set?, #is_string?, #is_true?, #merge_value, #one_of?, #one_of_value, #true_value

Constructor Details

#initialize(aria: default_configuration, classname: default_configuration, dark: default_configuration, data: default_configuration, id: default_configuration, size: default_configuration, tag: default_configuration, text: default_configuration) ⇒ Title

Returns a new instance of Title.



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'app/pb_kits/playbook/pb_title/title.rb', line 15

def initialize(aria: default_configuration,
               classname: default_configuration,
               dark: default_configuration,
               data: default_configuration,
               id: default_configuration,
               size: default_configuration,
               tag: default_configuration,
               text: default_configuration)
  self.configured_aria = aria
  self.configured_classname = classname
  self.configured_dark = dark
  self.configured_data = data
  self.configured_id = id
  self.configured_size = size
  self.configured_tag = tag
  self.configured_text = text
end

Instance Method Details

#dark_classObject



51
52
53
# File 'app/pb_kits/playbook/pb_title/title.rb', line 51

def dark_class
  true_value(configured_dark, "dark", nil)
end

#kit_classObject



55
56
57
58
59
60
61
62
# File 'app/pb_kits/playbook/pb_title/title.rb', line 55

def kit_class
  title_options = [
    "pb_title_kit",
    size_class,
    dark_class,
  ]
  title_options.reject(&:nil?).join("_")
end

#sizeObject



42
43
44
45
# File 'app/pb_kits/playbook/pb_title/title.rb', line 42

def size
  size_options = [1, 2, 3, 4]
  one_of_value(configured_size, size_options, 3)
end

#size_classObject



47
48
49
# File 'app/pb_kits/playbook/pb_title/title.rb', line 47

def size_class
  adjusted_value(size, size, nil)
end

#tagObject



33
34
35
36
# File 'app/pb_kits/playbook/pb_title/title.rb', line 33

def tag
  tag_options = %w[h1 h2 h3 h4 h5 h6 p div span]
  one_of_value(configured_tag, tag_options, "h3")
end

#textObject



38
39
40
# File 'app/pb_kits/playbook/pb_title/title.rb', line 38

def text
  default_value(configured_text, "Title text")
end

#to_partial_pathObject



64
65
66
# File 'app/pb_kits/playbook/pb_title/title.rb', line 64

def to_partial_path
  "pb_title/title"
end