ui_bibz 2.0.0.beta2.6 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +0 -7
- data/Gemfile.lock +63 -63
- data/app/assets/javascripts/interface.coffee +6 -1
- data/app/assets/javascripts/ui_bibz.coffee +1 -0
- data/app/assets/stylesheets/_custom_variables.sass +20 -0
- data/app/assets/stylesheets/_panel.scss +314 -0
- data/app/assets/stylesheets/boxes.sass +5 -0
- data/app/assets/stylesheets/containers.sass +2 -0
- data/app/assets/stylesheets/fix-bootstrap-4.sass +4 -0
- data/app/assets/stylesheets/fix-dropdown-select.sass +1 -0
- data/app/assets/stylesheets/fix_addon.sass +187 -0
- data/app/assets/stylesheets/forms.sass +60 -0
- data/app/assets/stylesheets/navigations.sass +11 -0
- data/app/assets/stylesheets/notifications.sass +10 -0
- data/app/assets/stylesheets/{table.sass → tables.sass} +0 -0
- data/app/assets/stylesheets/ui_bibz.sass +11 -91
- data/config/initializers/ui_bibz.rb +6 -4
- data/lib/ui_bibz.rb +5 -0
- data/lib/ui_bibz/helpers/ui/ux_helper.rb +4 -0
- data/lib/ui_bibz/inputs/ui_bibz_form/ui_bibz_form_builder.rb +38 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/auto_complete_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/base_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/collection_input.rb +15 -11
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/string_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_auto_complete_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_choice_group_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_date_picker_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_dropdown_select_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_formula_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_markdown_editor_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_multi_column_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_multi_select_field_input.rb +0 -0
- data/lib/ui_bibz/inputs/ui_bibz_inputs/ui_number_field_input.rb +10 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_radio_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_select_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_switch_field_input.rb +0 -0
- data/{app → lib/ui_bibz}/inputs/ui_bibz_inputs/ui_text_field_input.rb +0 -0
- data/lib/ui_bibz/rails/engine.rb +3 -9
- data/lib/ui_bibz/ui/core/boxes/card.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/card_column.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/card_deck.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/card_group.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_link.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_text.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_title.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/card_body.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/card_footer.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/card_header.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/card_image.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/jumbotron.rb +1 -1
- data/lib/ui_bibz/ui/core/component.rb +34 -3
- data/lib/ui_bibz/ui/core/forms/buttons/button.rb +11 -7
- data/lib/ui_bibz/ui/core/forms/buttons/button_group.rb +5 -1
- data/lib/ui_bibz/ui/core/forms/buttons/button_link.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/buttons/button_refresh.rb +2 -2
- data/lib/ui_bibz/ui/core/forms/choices/checkbox_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/choices/components/choice.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/choices/radio_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/choices/switch_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/dates/date_picker_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/dropdowns/components/dropdown_header.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/dropdowns/components/dropdown_link.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/dropdowns/dropdown.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/dropdowns/split_dropdown.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/numbers/formula_field.rb +7 -2
- data/lib/ui_bibz/ui/core/forms/numbers/number_field.rb +63 -0
- data/lib/ui_bibz/ui/core/forms/selects/abstract_select.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/selects/select_field.rb +5 -1
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_addon.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button_link.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button_refresh.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/surrounds/surround_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/textareas/markdown_editor_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/texts/text_field.rb +7 -3
- data/lib/ui_bibz/ui/core/icons/glyph.rb +10 -2
- data/lib/ui_bibz/ui/core/icons/star.rb +1 -1
- data/lib/ui_bibz/ui/core/layouts/col.rb +1 -1
- data/lib/ui_bibz/ui/core/layouts/container.rb +1 -1
- data/lib/ui_bibz/ui/core/layouts/row.rb +1 -1
- data/lib/ui_bibz/ui/core/lists/components/list.rb +1 -1
- data/lib/ui_bibz/ui/core/lists/components/list/list_body.rb +1 -1
- data/lib/ui_bibz/ui/core/lists/components/list/list_header.rb +1 -1
- data/lib/ui_bibz/ui/core/lists/list_group.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/breadcrumb.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/breadcrumb_link.rb +3 -3
- data/lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/nav_link.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/nav_link_link.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/nav_link_list.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/nav_text.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/navbar_brand.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/navbar_form.rb +19 -17
- data/lib/ui_bibz/ui/core/navigations/components/navbar_text.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/pagination_link.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/link.rb +8 -2
- data/lib/ui_bibz/ui/core/navigations/nav.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/navbar.rb +10 -5
- data/lib/ui_bibz/ui/core/navigations/pagination.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/toolbar.rb +5 -8
- data/lib/ui_bibz/ui/core/notifications/alert.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/badge.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/components/alert_body.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/components/alert_header.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/components/bar.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/progress_bar.rb +1 -1
- data/lib/ui_bibz/ui/core/windows/components/modal_body.rb +1 -1
- data/lib/ui_bibz/ui/core/windows/components/modal_footer.rb +1 -1
- data/lib/ui_bibz/ui/core/windows/components/modal_header.rb +1 -1
- data/lib/ui_bibz/ui/core/windows/modal.rb +1 -1
- data/lib/ui_bibz/ui/extensions/core/component/glyph_extension.rb +22 -4
- data/lib/ui_bibz/ui/ux/containers/components/panel_body.rb +51 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_column.rb +48 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_deck.rb +50 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_footer.rb +52 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_group.rb +46 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_header.rb +61 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_toolbar.rb +38 -0
- data/lib/ui_bibz/ui/ux/containers/panel.rb +104 -0
- data/lib/ui_bibz/ui/ux/tables/components/thead.rb +1 -1
- data/lib/ui_bibz/ui/ux/tables/table.rb +1 -1
- data/lib/ui_bibz/ui/ux/tables/table_card.rb +1 -1
- data/lib/ui_bibz/ui/ux/tables/table_search_field.rb +1 -1
- data/lib/ui_bibz/utils/internationalization.rb +3 -0
- data/lib/ui_bibz/version.rb +1 -1
- data/test/factories/user.rb +1 -1
- data/test/simple_form_test.rb +2 -2
- data/test/support/factory_bot.rb +9 -0
- data/test/test_helper.rb +0 -1
- data/test/ui/core/boxes/card_test.rb +1 -1
- data/test/ui/core/component_test.rb +8 -1
- data/test/ui/core/forms/buttons/button_group_test.rb +1 -1
- data/test/ui/core/forms/buttons/button_link_test.rb +1 -1
- data/test/ui/core/forms/buttons/button_refresh_test.rb +1 -1
- data/test/ui/core/forms/buttons/button_test.rb +2 -2
- data/test/ui/core/forms/choices/choice_group_test.rb +1 -1
- data/test/ui/core/forms/dropdowns/dropdown_test.rb +1 -1
- data/test/ui/core/forms/numbers/formula_field_test.rb +1 -1
- data/test/ui/core/forms/selects/dropdown_select_field_test.rb +1 -1
- data/test/ui/core/forms/selects/multi_select_field_test.rb +1 -1
- data/test/ui/core/forms/selects/select_field_test.rb +1 -1
- data/test/ui/core/forms/surrounds/surround_field_test.rb +3 -3
- data/test/ui/core/forms/texts/auto_complete_field_test.rb +2 -2
- data/test/ui/core/forms/texts/text_field_test.rb +1 -1
- data/test/ui/core/icons/glyph_test.rb +6 -4
- data/test/ui/core/icons/star_test.rb +6 -6
- data/test/ui/core/navigations/breadcrumb_test.rb +1 -1
- data/test/ui/core/navigations/navbar_test.rb +1 -1
- data/test/ui/core/notifications/alert_test.rb +1 -1
- data/test/ui/core/notifications/badge_test.rb +2 -2
- data/test/ui/ux/containers/panel_test.rb +143 -0
- data/test/ui/ux/tables/table_test.rb +3 -3
- data/ui_bibz.gemspec +3 -12
- data/vendor/assets/javascripts/bootstrap-markdown.js +12 -12
- data/vendor/assets/javascripts/jquery-ui.min.js +6 -0
- data/vendor/assets/stylesheets/jquery-ui.min.css +6 -0
- metadata +63 -27
- data/app/inputs/ui_bibz_form/ui_bibz_form_builder.rb +0 -36
- data/test/support/factory_girl.rb +0 -6
@@ -41,34 +41,40 @@ module UiBibz::Ui::Core::Navigations
|
|
41
41
|
#
|
42
42
|
class NavbarForm < UiBibz::Ui::Base
|
43
43
|
include Haml::Helpers
|
44
|
-
include SimpleForm::ActionViewExtensions::FormHelper
|
44
|
+
include SimpleForm::ActionViewExtensions::FormHelper if defined?(SimpleForm)
|
45
45
|
include UiBibz::Helpers::UtilsHelper
|
46
46
|
include ActionView::Helpers#::FormHelper
|
47
47
|
|
48
|
+
attr_accessor :html_options
|
49
|
+
|
48
50
|
def initialize model_or_url, options = {}, &block
|
49
51
|
init_haml_helpers
|
50
|
-
@
|
52
|
+
@content = block
|
53
|
+
@model_or_url = model_or_url
|
54
|
+
@options = options
|
55
|
+
@html_options = !%i(form_for ui_form_for).include?(type) ? html_options_for_form(@model_or_url, new_option) : new_option
|
56
|
+
end
|
57
|
+
|
58
|
+
# Render html tag
|
59
|
+
def render
|
51
60
|
case type
|
52
61
|
when :form_for
|
53
|
-
@form = form_for(model_or_url,
|
62
|
+
@form = form_for(@model_or_url, html_options, &@content)
|
54
63
|
when :ui_form_for
|
55
|
-
|
64
|
+
begin
|
65
|
+
@form = ui_form_for(@model_or_url, html_options, &@content)
|
66
|
+
rescue
|
67
|
+
raise 'You must install simple form to use ui_form_for.'
|
68
|
+
end
|
56
69
|
else
|
57
|
-
|
58
|
-
html_options = html_options_for_form(model_or_url, new_option)
|
59
|
-
@form = form_tag_with_body(html_options, capture(&block))
|
70
|
+
@form = form_tag_with_body(html_options, capture(&@content))
|
60
71
|
end
|
61
72
|
end
|
62
73
|
|
63
|
-
# Render html tag
|
64
|
-
def render
|
65
|
-
@form
|
66
|
-
end
|
67
|
-
|
68
74
|
private
|
69
75
|
|
70
76
|
def new_option
|
71
|
-
(@options || {}).merge({ class: "navbar-form form-inline
|
77
|
+
(@options || {}).merge({ class: UiBibz::Utils::Screwdriver.join_classes("navbar-form", "form-inline", "my-lg-0", "my-2", @options[:class]) })
|
72
78
|
end
|
73
79
|
|
74
80
|
def protect_against_forgery?
|
@@ -83,9 +89,5 @@ module UiBibz::Ui::Core::Navigations
|
|
83
89
|
@options[:type] || :form_for
|
84
90
|
end
|
85
91
|
|
86
|
-
def position
|
87
|
-
"pull-#{ @options[:position] }" unless @options[:position].nil?
|
88
|
-
end
|
89
|
-
|
90
92
|
end
|
91
93
|
end
|
@@ -46,8 +46,14 @@ module UiBibz::Ui::Core::Navigations
|
|
46
46
|
end
|
47
47
|
|
48
48
|
# Render html tag
|
49
|
-
def
|
50
|
-
link_to
|
49
|
+
def pre_render
|
50
|
+
link_to glyph_and_content_html, options[:url] || '#', html_options
|
51
|
+
end
|
52
|
+
|
53
|
+
private
|
54
|
+
|
55
|
+
def text
|
56
|
+
@options[:text].nil? ? true : @options[:text]
|
51
57
|
end
|
52
58
|
|
53
59
|
end
|
@@ -77,7 +77,7 @@ module UiBibz::Ui::Core::Navigations
|
|
77
77
|
end
|
78
78
|
|
79
79
|
# Render html tag
|
80
|
-
def
|
80
|
+
def pre_render
|
81
81
|
content_tag :nav, html_options do
|
82
82
|
concat title if brand_position == :left
|
83
83
|
concat navbar_toggle_button_html
|
@@ -90,26 +90,31 @@ module UiBibz::Ui::Core::Navigations
|
|
90
90
|
# See UiBibz::Ui::Core::NavbarNav
|
91
91
|
def nav content = nil, options = nil, html_options = nil, &block
|
92
92
|
options = options || {}
|
93
|
-
@items << UiBibz::Ui::Core::Navigations::NavbarNav.new(content, options, html_options).tap(&block)
|
93
|
+
@items << UiBibz::Ui::Core::Navigations::NavbarNav.new(content, options, html_options).tap(&block)
|
94
94
|
end
|
95
95
|
|
96
96
|
# Add navbar form items
|
97
97
|
# See UiBibz::Ui::Core::NavbarForm
|
98
98
|
def form model_or_url, options = {}, &block
|
99
|
-
@items << UiBibz::Ui::Core::Navigations::NavbarForm.new(model_or_url, options, &block)
|
99
|
+
@items << UiBibz::Ui::Core::Navigations::NavbarForm.new(model_or_url, options, &block)
|
100
100
|
end
|
101
101
|
|
102
102
|
# Not use !!!!!
|
103
103
|
# Add navbar text items
|
104
104
|
# See UiBibz::Ui::Core::NavbarText
|
105
105
|
def text content = nil, options = nil, html_options = nil, &block
|
106
|
-
@items << UiBibz::Ui::Core::Navigations::NavbarText.new(content, options, html_options, &block)
|
106
|
+
@items << UiBibz::Ui::Core::Navigations::NavbarText.new(content, options, html_options, &block)
|
107
107
|
end
|
108
108
|
|
109
109
|
def brand content = nil, options = nil, html_options = nil, &block
|
110
110
|
@brand = UiBibz::Ui::Core::Navigations::NavbarBrand.new(content, options, html_options, &block).render
|
111
111
|
end
|
112
112
|
|
113
|
+
def spacer num = "auto"
|
114
|
+
kls = " mr-#{ num }"
|
115
|
+
@items.last.html_options[:class].nil? ? @items.last.html_options[:class] = kls : @items.last.html_options[:class] << kls
|
116
|
+
end
|
117
|
+
|
113
118
|
def id
|
114
119
|
@id ||= generate_id("navbar-id")
|
115
120
|
end
|
@@ -130,7 +135,7 @@ module UiBibz::Ui::Core::Navigations
|
|
130
135
|
|
131
136
|
def body_html
|
132
137
|
content_tag :div, class: "collapse navbar-collapse", id: id do
|
133
|
-
concat @items.join.html_safe
|
138
|
+
concat @items.map(&:render).join.html_safe
|
134
139
|
end
|
135
140
|
end
|
136
141
|
|
@@ -58,17 +58,14 @@ module UiBibz::Ui::Core::Navigations
|
|
58
58
|
end
|
59
59
|
|
60
60
|
# Render html tag
|
61
|
-
def
|
61
|
+
def pre_render
|
62
62
|
content_tag :div, @items.map(&:render).join.html_safe, html_options
|
63
63
|
end
|
64
64
|
|
65
|
-
def button_group
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
content = @options.merge(content || {})
|
70
|
-
end
|
71
|
-
@items << UiBibz::Ui::Core::Forms::Buttons::ButtonGroup.new(content, options, html_options).tap(&block)
|
65
|
+
def button_group c = nil, o = nil, ho = nil, &block
|
66
|
+
c = @options.merge(c || {})
|
67
|
+
(c || {}).delete(:class)
|
68
|
+
@items << UiBibz::Ui::Core::Forms::Buttons::ButtonGroup.new(c, o, ho).tap(&block)
|
72
69
|
end
|
73
70
|
|
74
71
|
def spacer num = "auto"
|
@@ -2,18 +2,36 @@ module GlyphExtension
|
|
2
2
|
|
3
3
|
# Render glyph and content html
|
4
4
|
def glyph_and_content_html content_html = nil
|
5
|
-
[glyph_with_space, content_html
|
5
|
+
[glyph_with_space, ct_html(content_html)].compact.join(' ').html_safe
|
6
|
+
end
|
7
|
+
|
8
|
+
def ct_html content_html
|
9
|
+
if options[:text].nil? || options[:text] == true
|
10
|
+
content_html || content
|
11
|
+
end
|
6
12
|
end
|
7
13
|
|
8
14
|
# Render glyph with space html
|
9
15
|
def glyph_with_space
|
10
|
-
|
16
|
+
out = [glyph]
|
17
|
+
out << " " if options[:text] != false
|
18
|
+
out.join unless glyph.nil?
|
11
19
|
end
|
12
20
|
|
13
21
|
# Render glyph html
|
14
22
|
def glyph
|
15
|
-
|
16
|
-
|
23
|
+
if options.kind_of?(Hash)
|
24
|
+
if options[:glyph].kind_of?(Hash)
|
25
|
+
glyph_name = options[:glyph].try(:[], :name)
|
26
|
+
glyph_opts = options[:glyph]
|
27
|
+
else
|
28
|
+
glyph_name = options[:glyph]
|
29
|
+
glyph_opts = {}
|
30
|
+
end
|
31
|
+
glyph_html_opts = options[:text].nil? ? {} : (options[:text] ? {} : { title: content })
|
32
|
+
end
|
33
|
+
|
34
|
+
UiBibz::Ui::Core::Icons::Glyph.new(glyph_name, glyph_opts, glyph_html_opts).render unless glyph_name.nil?
|
17
35
|
end
|
18
36
|
|
19
37
|
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module UiBibz::Ui::Ux::Containers::Components
|
2
|
+
|
3
|
+
# Create a card body
|
4
|
+
#
|
5
|
+
# ==== Attributes
|
6
|
+
#
|
7
|
+
# * +content+ - Content of element
|
8
|
+
# * +options+ - Options of element
|
9
|
+
# * +html_options+ - Html Options of element
|
10
|
+
#
|
11
|
+
# ==== Options
|
12
|
+
#
|
13
|
+
# You can add HTML attributes using the +html_options+.
|
14
|
+
# You can pass arguments in options attribute:
|
15
|
+
#
|
16
|
+
# ==== Signatures
|
17
|
+
#
|
18
|
+
# UiBibz::Ui::Core::Boxes::PanelBody.new(content, options = nil, html_options = nil)
|
19
|
+
#
|
20
|
+
# UiBibz::Ui::Core::Boxes::PanelBody.new(options = nil, html_options = nil) do
|
21
|
+
# content
|
22
|
+
# end
|
23
|
+
#
|
24
|
+
# ==== Examples
|
25
|
+
#
|
26
|
+
# UiBibz::Ui::Core::Boxes::PanelBody.new.render
|
27
|
+
#
|
28
|
+
# UiBibz::Ui::Core::Boxes::PanelBody.new do
|
29
|
+
# 'Exemple'
|
30
|
+
# end.render
|
31
|
+
#
|
32
|
+
class PanelBody < UiBibz::Ui::Core::Component
|
33
|
+
|
34
|
+
# See UiBibz::Ui::Core::Component.initialize
|
35
|
+
def initialize content = nil, options = nil, html_options = nil, &block
|
36
|
+
super
|
37
|
+
end
|
38
|
+
|
39
|
+
# Render html tag
|
40
|
+
def pre_render
|
41
|
+
content_tag :div, glyph_and_content_html, html_options
|
42
|
+
end
|
43
|
+
|
44
|
+
private
|
45
|
+
|
46
|
+
def component_html_classes
|
47
|
+
super << ["panel-body"]
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|