bootstrap4_rails_components 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +362 -0
  4. data/Rakefile +23 -0
  5. data/app/assets/config/bootstrap4_rails_components_manifest.js +3 -0
  6. data/app/assets/javascripts/bootstrap4_rails_components/application.js +8 -0
  7. data/app/assets/javascripts/bootstrap4_rails_components/vendor/tooltips.js +42 -0
  8. data/app/assets/stylesheets/bootstrap4_rails_components/bootstrap/application.scss +2 -0
  9. data/app/controllers/bootstrap4_rails_components/application_controller.rb +5 -0
  10. data/app/helpers/bootstrap4_rails_components/application_helper.rb +38 -0
  11. data/app/models/bootstrap4_rails_components/application_record.rb +5 -0
  12. data/config/initializers/web_app_manifest.rb +3 -0
  13. data/config/locales/en.yml +63 -0
  14. data/config/routes.rb +2 -0
  15. data/config/spring.rb +1 -0
  16. data/lib/bootstrap4_rails_components.rb +75 -0
  17. data/lib/bootstrap4_rails_components/bootstrap/components/alert.rb +52 -0
  18. data/lib/bootstrap4_rails_components/bootstrap/components/badge.rb +39 -0
  19. data/lib/bootstrap4_rails_components/bootstrap/components/base.rb +151 -0
  20. data/lib/bootstrap4_rails_components/bootstrap/components/breadcrumb.rb +23 -0
  21. data/lib/bootstrap4_rails_components/bootstrap/components/breadcrumb_item.rb +28 -0
  22. data/lib/bootstrap4_rails_components/bootstrap/components/button.rb +74 -0
  23. data/lib/bootstrap4_rails_components/bootstrap/components/button_group.rb +36 -0
  24. data/lib/bootstrap4_rails_components/bootstrap/components/button_toolbar.rb +21 -0
  25. data/lib/bootstrap4_rails_components/bootstrap/components/card.rb +81 -0
  26. data/lib/bootstrap4_rails_components/bootstrap/components/card_body.rb +15 -0
  27. data/lib/bootstrap4_rails_components/bootstrap/components/card_footer.rb +15 -0
  28. data/lib/bootstrap4_rails_components/bootstrap/components/card_header.rb +35 -0
  29. data/lib/bootstrap4_rails_components/bootstrap/components/card_image.rb +33 -0
  30. data/lib/bootstrap4_rails_components/bootstrap/components/card_image_overlay.rb +46 -0
  31. data/lib/bootstrap4_rails_components/bootstrap/components/carousel.rb +57 -0
  32. data/lib/bootstrap4_rails_components/bootstrap/components/carousel_caption.rb +34 -0
  33. data/lib/bootstrap4_rails_components/bootstrap/components/carousel_control.rb +73 -0
  34. data/lib/bootstrap4_rails_components/bootstrap/components/carousel_indicators.rb +54 -0
  35. data/lib/bootstrap4_rails_components/bootstrap/components/carousel_item.rb +49 -0
  36. data/lib/bootstrap4_rails_components/bootstrap/components/collapse.rb +32 -0
  37. data/lib/bootstrap4_rails_components/bootstrap/components/dropdown.rb +51 -0
  38. data/lib/bootstrap4_rails_components/bootstrap/components/dropdown_divider.rb +19 -0
  39. data/lib/bootstrap4_rails_components/bootstrap/components/dropdown_header.rb +23 -0
  40. data/lib/bootstrap4_rails_components/bootstrap/components/dropdown_item.rb +41 -0
  41. data/lib/bootstrap4_rails_components/bootstrap/components/dropdown_menu.rb +32 -0
  42. data/lib/bootstrap4_rails_components/bootstrap/components/dropdown_toggle.rb +82 -0
  43. data/lib/bootstrap4_rails_components/bootstrap/components/embed.rb +80 -0
  44. data/lib/bootstrap4_rails_components/bootstrap/components/form.rb +13 -0
  45. data/lib/bootstrap4_rails_components/bootstrap/components/input_group.rb +13 -0
  46. data/lib/bootstrap4_rails_components/bootstrap/components/jumbotron.rb +13 -0
  47. data/lib/bootstrap4_rails_components/bootstrap/components/list_group.rb +39 -0
  48. data/lib/bootstrap4_rails_components/bootstrap/components/list_group_item.rb +69 -0
  49. data/lib/bootstrap4_rails_components/bootstrap/components/media.rb +15 -0
  50. data/lib/bootstrap4_rails_components/bootstrap/components/media_body.rb +15 -0
  51. data/lib/bootstrap4_rails_components/bootstrap/components/media_object.rb +23 -0
  52. data/lib/bootstrap4_rails_components/bootstrap/components/modal.rb +66 -0
  53. data/lib/bootstrap4_rails_components/bootstrap/components/modal_body.rb +16 -0
  54. data/lib/bootstrap4_rails_components/bootstrap/components/modal_footer.rb +16 -0
  55. data/lib/bootstrap4_rails_components/bootstrap/components/modal_header.rb +37 -0
  56. data/lib/bootstrap4_rails_components/bootstrap/components/nav.rb +71 -0
  57. data/lib/bootstrap4_rails_components/bootstrap/components/nav_item.rb +103 -0
  58. data/lib/bootstrap4_rails_components/bootstrap/components/nav_link.rb +62 -0
  59. data/lib/bootstrap4_rails_components/bootstrap/components/navbar.rb +97 -0
  60. data/lib/bootstrap4_rails_components/bootstrap/components/navbar_brand.rb +25 -0
  61. data/lib/bootstrap4_rails_components/bootstrap/components/navbar_nav.rb +48 -0
  62. data/lib/bootstrap4_rails_components/bootstrap/components/navbar_text.rb +21 -0
  63. data/lib/bootstrap4_rails_components/bootstrap/components/navbar_toggler.rb +38 -0
  64. data/lib/bootstrap4_rails_components/bootstrap/components/page_item.rb +66 -0
  65. data/lib/bootstrap4_rails_components/bootstrap/components/pagination.rb +30 -0
  66. data/lib/bootstrap4_rails_components/bootstrap/components/popover.rb +12 -0
  67. data/lib/bootstrap4_rails_components/bootstrap/components/progress.rb +44 -0
  68. data/lib/bootstrap4_rails_components/bootstrap/components/progress_bar.rb +51 -0
  69. data/lib/bootstrap4_rails_components/bootstrap/components/tab_content.rb +15 -0
  70. data/lib/bootstrap4_rails_components/bootstrap/components/tab_pane.rb +49 -0
  71. data/lib/bootstrap4_rails_components/bootstrap/components/table.rb +17 -0
  72. data/lib/bootstrap4_rails_components/bootstrap/readme.md +1 -0
  73. data/lib/bootstrap4_rails_components/bootstrap/utilities/activatable.rb +32 -0
  74. data/lib/bootstrap4_rails_components/bootstrap/utilities/alignable.rb +33 -0
  75. data/lib/bootstrap4_rails_components/bootstrap/utilities/collapse_toggleable.rb +35 -0
  76. data/lib/bootstrap4_rails_components/bootstrap/utilities/collapsible.rb +42 -0
  77. data/lib/bootstrap4_rails_components/bootstrap/utilities/disableable.rb +49 -0
  78. data/lib/bootstrap4_rails_components/bootstrap/utilities/dismissible.rb +24 -0
  79. data/lib/bootstrap4_rails_components/bootstrap/utilities/dropdown_directionable.rb +40 -0
  80. data/lib/bootstrap4_rails_components/bootstrap/utilities/headable.rb +20 -0
  81. data/lib/bootstrap4_rails_components/bootstrap/utilities/modalable.rb +104 -0
  82. data/lib/bootstrap4_rails_components/bootstrap/utilities/progressable.rb +42 -0
  83. data/lib/bootstrap4_rails_components/bootstrap/utilities/remotable.rb +24 -0
  84. data/lib/bootstrap4_rails_components/bootstrap/utilities/sizable.rb +40 -0
  85. data/lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb +51 -0
  86. data/lib/bootstrap4_rails_components/bootstrap/utilities/titleable.rb +20 -0
  87. data/lib/bootstrap4_rails_components/bootstrap/utilities/tooltipable.rb +95 -0
  88. data/lib/bootstrap4_rails_components/bootstrap/utilities/wrappable.rb +48 -0
  89. data/lib/bootstrap4_rails_components/engine.rb +38 -0
  90. data/lib/bootstrap4_rails_components/ui/base.rb +42 -0
  91. data/lib/bootstrap4_rails_components/ui/bootstrap.rb +44 -0
  92. data/lib/bootstrap4_rails_components/ui/utilities.rb +10 -0
  93. data/lib/bootstrap4_rails_components/ui/utilities/initializer.rb +88 -0
  94. data/lib/bootstrap4_rails_components/version.rb +5 -0
  95. metadata +372 -0
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ module Bootstrap
5
+ module Utilities
6
+ # Allows component to swap out the main component wrapping element (ex. :div vs. :span)
7
+ # Pass in :as -- only unique logic at the moment
8
+ # is converting :link to :a for tag generation
9
+ module Wrappable
10
+ attr_accessor :as
11
+
12
+ def utility_initialize
13
+ self.as = options.fetch(:as, automatic_as)
14
+ super
15
+ end
16
+
17
+ private
18
+
19
+ def assistive_html_attributes
20
+ if as == :button
21
+ super.merge(type: options.fetch(:type, 'button')) # prefer type submit
22
+ else
23
+ super
24
+ end
25
+ end
26
+
27
+ def automatic_as
28
+ if href
29
+ :a
30
+ elsif options[:type] == 'submit'
31
+ :button
32
+ else
33
+ default_html_wrapper_element
34
+ end
35
+ end
36
+
37
+ # Set default_html_wrapper_element on individual components as needed
38
+ def default_html_wrapper_element
39
+ @default_html_wrapper_element ||= :span
40
+ end
41
+
42
+ def non_html_attribute_options
43
+ super.push(:as)
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ class Engine < ::Rails::Engine
5
+ isolate_namespace Bootstrap4RailsComponents
6
+
7
+ config.autoload_paths << Engine.root.join("lib")
8
+
9
+ # Ensures that the config/bootstrap4_rails_components_manifest.js file is compiled
10
+ # which, in turn, ensures that all of the non-autoloaded assets
11
+ # are pre-compiled for the host-app's consumption.
12
+ #
13
+ # If you need to add unique assets to be precompiled
14
+ # (new folders -- e.g.: 'font' -- within the assets directory)
15
+ # update / add to the "links" found on the manifest file.
16
+ #
17
+ # Font assets example:
18
+ # on app/assets/config/bootstrap4_rails_components_manifest.js
19
+ #
20
+ # //= link_tree '../font/bootstrap4_rails_components'
21
+ #
22
+ # See manifest here: app/assets/config/bootstrap4_rails_components_manifest.js
23
+ #
24
+ # Learn more about using the sprockets `link`ing mechanisms:
25
+ # https://github.com/rails/sprockets#link
26
+ #
27
+ # Utilize engine initializer method:
28
+ initializer 'bootstrap4_rails_components.assets.precompile' do |app|
29
+ app.config.assets.precompile << "#{Engine.root.join('app', 'assets', 'config')}/bootstrap4_rails_components_manifest.js"
30
+ end
31
+
32
+ config.to_prepare do
33
+ ActiveSupport.on_load :action_controller do
34
+ helper Bootstrap4RailsComponents::ApplicationHelper
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ module UI
5
+ # The base component building class for namespaced
6
+ # components (bootstrap vs network_for_good / nfg)
7
+ class Base
8
+ attr_accessor :view_context
9
+
10
+ def initialize(view_context)
11
+ self.view_context = view_context
12
+ end
13
+
14
+ def bootstrap(component_name = nil, *traits, **options, &block)
15
+ return unless render_component?(options)
16
+ Bootstrap4RailsComponents::UI::Bootstrap.new(view_context, component_name, *traits, **options, &block).render_component
17
+ end
18
+
19
+ private
20
+
21
+ # Opens up the component :options -
22
+ # :render_if
23
+ # :render_unless
24
+ #
25
+ # Pass in `render_if: your_condition?` or `render_unless: your_unless_condition?`
26
+ # to the component to embed the `if/unless` condition right into the component
27
+ # and not on yet another line of HTML.
28
+ #
29
+ # Example usage:
30
+ # ui.bootstrap(:button, :submit, body: 'Delete', render_if: user.admin?)
31
+ # ui.bootstrap(:button, :submit, body: 'Save', render_unless: user.admin?)
32
+ def render_component?(options)
33
+ return true unless options.key?(:render_if) || options.key?(:render_unless)
34
+ if options.key?(:render_if)
35
+ options[:render_if]
36
+ else
37
+ !options[:render_unless]
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ module UI
5
+ # The class that yields the component for the view
6
+ class Bootstrap
7
+ include Bootstrap4RailsComponents::UI::Utilities::Initializer
8
+
9
+ attr_accessor :view_context
10
+ # attr_reader :component_name_folder
11
+
12
+ def initialize(view_context, component_name = nil, *traits, **options, &block)
13
+ self.view_context = view_context
14
+ initializer(component_name, *traits, **options, &block)
15
+ # @component_name_folder = component.component_family.to_s.pluralize if component.component_family.present?
16
+ # raise component.send(:component_family).inspect
17
+ end
18
+
19
+ private
20
+
21
+ def component_name_folder
22
+ # component.component_family.to_s.pluralize if component.component_family.present?
23
+ component.component_family.to_s.pluralize
24
+ # ''
25
+ end
26
+
27
+ def group
28
+ 'bootstrap'
29
+ end
30
+
31
+ def grouping_folder
32
+ 'bootstrap'
33
+ end
34
+
35
+ def ancestry_string
36
+ "Bootstrap4RailsComponents::Bootstrap::Components::#{class_name}"
37
+ end
38
+
39
+ def components_within_group(*)
40
+ Bootstrap4RailsComponents::BOOTSTRAP_COMPONENT_NAMES
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ module UI
5
+ module Utilities
6
+ extend ActiveSupport::Autoload
7
+ autoload :Initializer
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,88 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ module UI
5
+ module Utilities
6
+ # Centralizes initialization for the UI namespaces
7
+ module Initializer
8
+ attr_accessor :component,
9
+ :options,
10
+ :traits,
11
+ :component_name,
12
+ :class_name
13
+
14
+ # Protect the component from outside manipulation
15
+ # after initialization
16
+ private :component=
17
+
18
+ include ActionView::Helpers::CaptureHelper # add capture support, required for Haml
19
+ include Haml::Helpers # add capture_haml support
20
+
21
+ def render_component
22
+ component.render
23
+ rescue NotImplementedError
24
+ view_context.render partial: partial_path, locals: { component_name => component }
25
+ end
26
+
27
+ private
28
+
29
+ def render_if
30
+ options.fetch(:render_if, true)
31
+ end
32
+
33
+ def render_unless
34
+ options.fetch(:render_unless, true)
35
+ end
36
+
37
+ # Provides a central initialization method for Bootstrap4RailsComponents::UI::Base child classes
38
+ def initializer(component_name = nil, *traits, **options, &block)
39
+ # #init_haml_helpers is required when utilizing #capture with HAML
40
+ # (when outside of Rails)
41
+ # https://www.rubydoc.info/github/haml/haml/Haml%2FHelpers:init_haml_helpers
42
+ init_haml_helpers
43
+ @component_name = component_name
44
+ @class_name = component_name.to_s.camelize
45
+ @traits = traits
46
+ @options = options
47
+
48
+ options[:body] = capture(&block) if block_given?
49
+ options[:traits] = traits.present? ? traits : []
50
+
51
+ # self.view_context = view_context
52
+ self.component = ancestry_string.constantize.new(options, view_context)
53
+ end
54
+
55
+ def ancestry_string
56
+ ''
57
+ end
58
+
59
+ # def component_name_folder
60
+ # @component_name_folder ||= ''
61
+ # end
62
+
63
+ def component_family
64
+ component.component_family.presence
65
+ end
66
+
67
+ def components_within_group(*)
68
+ []
69
+ end
70
+
71
+ def grouping_folder
72
+ ''
73
+ end
74
+
75
+ def group; end
76
+
77
+ def partial_path
78
+ [
79
+ 'bootstrap4_rails_components',
80
+ grouping_folder,
81
+ (component_name_folder if component_name_folder.present?),
82
+ component_name
83
+ ].reject(&:nil?).join('/').chomp
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Bootstrap4RailsComponents
4
+ VERSION = '0.1.0'
5
+ end
metadata ADDED
@@ -0,0 +1,372 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bootstrap4_rails_components
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Jonathan Roehm
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-06-12 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bootstrap
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 4.3.1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 4.3.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: jquery-rails
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '4.3'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '4.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: 4.2.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 4.2.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: sass-rails
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '5.0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '5.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: autoprefixer-rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '='
74
+ - !ruby/object:Gem::Version
75
+ version: 9.4.9
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '='
81
+ - !ruby/object:Gem::Version
82
+ version: 9.4.9
83
+ - !ruby/object:Gem::Dependency
84
+ name: capybara
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '3.9'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '3.9'
97
+ - !ruby/object:Gem::Dependency
98
+ name: chromedriver-helper
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '2.1'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '2.1'
111
+ - !ruby/object:Gem::Dependency
112
+ name: factory_bot_rails
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '4.11'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '4.11'
125
+ - !ruby/object:Gem::Dependency
126
+ name: puma
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '3.12'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '3.12'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rails-controller-testing
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '1.0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '1.0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rspec_junit_formatter
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.4'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.4'
167
+ - !ruby/object:Gem::Dependency
168
+ name: rspec-rails
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '3.8'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '3.8'
181
+ - !ruby/object:Gem::Dependency
182
+ name: selenium-webdriver
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '3.14'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '3.14'
195
+ - !ruby/object:Gem::Dependency
196
+ name: simplecov
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '0.16'
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '0.16'
209
+ - !ruby/object:Gem::Dependency
210
+ name: sprockets
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ - - "~>"
217
+ - !ruby/object:Gem::Version
218
+ version: '3.7'
219
+ type: :development
220
+ prerelease: false
221
+ version_requirements: !ruby/object:Gem::Requirement
222
+ requirements:
223
+ - - ">="
224
+ - !ruby/object:Gem::Version
225
+ version: '0'
226
+ - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: '3.7'
229
+ - !ruby/object:Gem::Dependency
230
+ name: sqlite3
231
+ requirement: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - "~>"
234
+ - !ruby/object:Gem::Version
235
+ version: '1.3'
236
+ type: :development
237
+ prerelease: false
238
+ version_requirements: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - "~>"
241
+ - !ruby/object:Gem::Version
242
+ version: '1.3'
243
+ description: 'Implementation of view helper methods that utilize robust options and
244
+ traits to generate semantic Bootstrap4 HTML for Ruby on Rails. Supply themes, rails
245
+ helper options (such as :method and :confirm for a `link_to`). Example usage: `<%=
246
+ ui.bootstrap :button, :primary, :block, href: user_path(@user), method: :delete,
247
+ confirm: ''Are you sure?'', tooltip: ''Adds a new user'' %>` Which outputs a primary
248
+ button with `btn-block` that uses rails method & confirm, and automatically supplies
249
+ a tooltip (and there''s much more!)'
250
+ email:
251
+ - jonroehm@gmail.com
252
+ executables: []
253
+ extensions: []
254
+ extra_rdoc_files: []
255
+ files:
256
+ - MIT-LICENSE
257
+ - README.md
258
+ - Rakefile
259
+ - app/assets/config/bootstrap4_rails_components_manifest.js
260
+ - app/assets/javascripts/bootstrap4_rails_components/application.js
261
+ - app/assets/javascripts/bootstrap4_rails_components/vendor/tooltips.js
262
+ - app/assets/stylesheets/bootstrap4_rails_components/bootstrap/application.scss
263
+ - app/controllers/bootstrap4_rails_components/application_controller.rb
264
+ - app/helpers/bootstrap4_rails_components/application_helper.rb
265
+ - app/models/bootstrap4_rails_components/application_record.rb
266
+ - config/initializers/web_app_manifest.rb
267
+ - config/locales/en.yml
268
+ - config/routes.rb
269
+ - config/spring.rb
270
+ - lib/bootstrap4_rails_components.rb
271
+ - lib/bootstrap4_rails_components/bootstrap/components/alert.rb
272
+ - lib/bootstrap4_rails_components/bootstrap/components/badge.rb
273
+ - lib/bootstrap4_rails_components/bootstrap/components/base.rb
274
+ - lib/bootstrap4_rails_components/bootstrap/components/breadcrumb.rb
275
+ - lib/bootstrap4_rails_components/bootstrap/components/breadcrumb_item.rb
276
+ - lib/bootstrap4_rails_components/bootstrap/components/button.rb
277
+ - lib/bootstrap4_rails_components/bootstrap/components/button_group.rb
278
+ - lib/bootstrap4_rails_components/bootstrap/components/button_toolbar.rb
279
+ - lib/bootstrap4_rails_components/bootstrap/components/card.rb
280
+ - lib/bootstrap4_rails_components/bootstrap/components/card_body.rb
281
+ - lib/bootstrap4_rails_components/bootstrap/components/card_footer.rb
282
+ - lib/bootstrap4_rails_components/bootstrap/components/card_header.rb
283
+ - lib/bootstrap4_rails_components/bootstrap/components/card_image.rb
284
+ - lib/bootstrap4_rails_components/bootstrap/components/card_image_overlay.rb
285
+ - lib/bootstrap4_rails_components/bootstrap/components/carousel.rb
286
+ - lib/bootstrap4_rails_components/bootstrap/components/carousel_caption.rb
287
+ - lib/bootstrap4_rails_components/bootstrap/components/carousel_control.rb
288
+ - lib/bootstrap4_rails_components/bootstrap/components/carousel_indicators.rb
289
+ - lib/bootstrap4_rails_components/bootstrap/components/carousel_item.rb
290
+ - lib/bootstrap4_rails_components/bootstrap/components/collapse.rb
291
+ - lib/bootstrap4_rails_components/bootstrap/components/dropdown.rb
292
+ - lib/bootstrap4_rails_components/bootstrap/components/dropdown_divider.rb
293
+ - lib/bootstrap4_rails_components/bootstrap/components/dropdown_header.rb
294
+ - lib/bootstrap4_rails_components/bootstrap/components/dropdown_item.rb
295
+ - lib/bootstrap4_rails_components/bootstrap/components/dropdown_menu.rb
296
+ - lib/bootstrap4_rails_components/bootstrap/components/dropdown_toggle.rb
297
+ - lib/bootstrap4_rails_components/bootstrap/components/embed.rb
298
+ - lib/bootstrap4_rails_components/bootstrap/components/form.rb
299
+ - lib/bootstrap4_rails_components/bootstrap/components/input_group.rb
300
+ - lib/bootstrap4_rails_components/bootstrap/components/jumbotron.rb
301
+ - lib/bootstrap4_rails_components/bootstrap/components/list_group.rb
302
+ - lib/bootstrap4_rails_components/bootstrap/components/list_group_item.rb
303
+ - lib/bootstrap4_rails_components/bootstrap/components/media.rb
304
+ - lib/bootstrap4_rails_components/bootstrap/components/media_body.rb
305
+ - lib/bootstrap4_rails_components/bootstrap/components/media_object.rb
306
+ - lib/bootstrap4_rails_components/bootstrap/components/modal.rb
307
+ - lib/bootstrap4_rails_components/bootstrap/components/modal_body.rb
308
+ - lib/bootstrap4_rails_components/bootstrap/components/modal_footer.rb
309
+ - lib/bootstrap4_rails_components/bootstrap/components/modal_header.rb
310
+ - lib/bootstrap4_rails_components/bootstrap/components/nav.rb
311
+ - lib/bootstrap4_rails_components/bootstrap/components/nav_item.rb
312
+ - lib/bootstrap4_rails_components/bootstrap/components/nav_link.rb
313
+ - lib/bootstrap4_rails_components/bootstrap/components/navbar.rb
314
+ - lib/bootstrap4_rails_components/bootstrap/components/navbar_brand.rb
315
+ - lib/bootstrap4_rails_components/bootstrap/components/navbar_nav.rb
316
+ - lib/bootstrap4_rails_components/bootstrap/components/navbar_text.rb
317
+ - lib/bootstrap4_rails_components/bootstrap/components/navbar_toggler.rb
318
+ - lib/bootstrap4_rails_components/bootstrap/components/page_item.rb
319
+ - lib/bootstrap4_rails_components/bootstrap/components/pagination.rb
320
+ - lib/bootstrap4_rails_components/bootstrap/components/popover.rb
321
+ - lib/bootstrap4_rails_components/bootstrap/components/progress.rb
322
+ - lib/bootstrap4_rails_components/bootstrap/components/progress_bar.rb
323
+ - lib/bootstrap4_rails_components/bootstrap/components/tab_content.rb
324
+ - lib/bootstrap4_rails_components/bootstrap/components/tab_pane.rb
325
+ - lib/bootstrap4_rails_components/bootstrap/components/table.rb
326
+ - lib/bootstrap4_rails_components/bootstrap/readme.md
327
+ - lib/bootstrap4_rails_components/bootstrap/utilities/activatable.rb
328
+ - lib/bootstrap4_rails_components/bootstrap/utilities/alignable.rb
329
+ - lib/bootstrap4_rails_components/bootstrap/utilities/collapse_toggleable.rb
330
+ - lib/bootstrap4_rails_components/bootstrap/utilities/collapsible.rb
331
+ - lib/bootstrap4_rails_components/bootstrap/utilities/disableable.rb
332
+ - lib/bootstrap4_rails_components/bootstrap/utilities/dismissible.rb
333
+ - lib/bootstrap4_rails_components/bootstrap/utilities/dropdown_directionable.rb
334
+ - lib/bootstrap4_rails_components/bootstrap/utilities/headable.rb
335
+ - lib/bootstrap4_rails_components/bootstrap/utilities/modalable.rb
336
+ - lib/bootstrap4_rails_components/bootstrap/utilities/progressable.rb
337
+ - lib/bootstrap4_rails_components/bootstrap/utilities/remotable.rb
338
+ - lib/bootstrap4_rails_components/bootstrap/utilities/sizable.rb
339
+ - lib/bootstrap4_rails_components/bootstrap/utilities/themeable.rb
340
+ - lib/bootstrap4_rails_components/bootstrap/utilities/titleable.rb
341
+ - lib/bootstrap4_rails_components/bootstrap/utilities/tooltipable.rb
342
+ - lib/bootstrap4_rails_components/bootstrap/utilities/wrappable.rb
343
+ - lib/bootstrap4_rails_components/engine.rb
344
+ - lib/bootstrap4_rails_components/ui/base.rb
345
+ - lib/bootstrap4_rails_components/ui/bootstrap.rb
346
+ - lib/bootstrap4_rails_components/ui/utilities.rb
347
+ - lib/bootstrap4_rails_components/ui/utilities/initializer.rb
348
+ - lib/bootstrap4_rails_components/version.rb
349
+ homepage: https://github.com/jonathanroehm/bootstrap4_rails_components
350
+ licenses:
351
+ - MIT
352
+ metadata: {}
353
+ post_install_message:
354
+ rdoc_options: []
355
+ require_paths:
356
+ - lib
357
+ required_ruby_version: !ruby/object:Gem::Requirement
358
+ requirements:
359
+ - - ">="
360
+ - !ruby/object:Gem::Version
361
+ version: '0'
362
+ required_rubygems_version: !ruby/object:Gem::Requirement
363
+ requirements:
364
+ - - ">="
365
+ - !ruby/object:Gem::Version
366
+ version: '0'
367
+ requirements: []
368
+ rubygems_version: 3.0.3
369
+ signing_key:
370
+ specification_version: 4
371
+ summary: Bootstrap4 view helper methods that generate semantic Bootstrap4 html components
372
+ test_files: []