rails-bootstrap-tabs 0.2.6 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a6f78efb3cdc927ca42ae910a5210f8899da6ab8e4061ce34adb916b4d35f561
4
- data.tar.gz: de1b46a7967da3780826e6c2e5d0b57cf364ed73beee6cfd1d15fac97467e65e
3
+ metadata.gz: 87cba9cb7834745be79c06ddf900e4197aa13a1c6b75098cbc2c6b7f7135c07d
4
+ data.tar.gz: 1682a3a4250c87be71f80d138ffd932687e87d9d1158599d2139574589e4183d
5
5
  SHA512:
6
- metadata.gz: 16fb29aec485fba4df89f9531323a054c9d772e4171b3c2559deab8d261eb8e24da503377c5068da359710dbc7918da8de74d28306ba2b79c8e68569b2aa771b
7
- data.tar.gz: b1532b2c22b7e3a1e32e0d5f7fa2ff752c01a4dc49f0c065bdbcecc57d8e1a02f28a350c4abb60a1a825d5df08a77ce42b43bf041576eb6ef2d70a8e4c07b73e
6
+ metadata.gz: 421b843fcfe07cdb8d14f50f7f7a182f6023a8400432f04a11e2ac978b2a4055cf5e4cced8c0020db2a2c4f37dcb6ea65bb818891f468c963c388dd6226c7b09
7
+ data.tar.gz: 27ad3a8a81ce7711d3b9971454b26d3b30b28e2a430b0b41ac31891d5a52e00d2a7566a2da85f42b121b051f8e8f7a387d38deb0475b492b9f3d151d9ad7a16e
@@ -5,6 +5,8 @@ module RailsBootstrapTabs::Helpers
5
5
  RailsBootstrapTabs::Renderers::TabsBootstrap3Renderer
6
6
  elsif RailsBootstrapTabs.bootstrap_version == 4
7
7
  RailsBootstrapTabs::Renderers::TabsBootstrap4Renderer
8
+ elsif RailsBootstrapTabs.bootstrap_version == 5
9
+ RailsBootstrapTabs::Renderers::TabsBootstrap5Renderer
8
10
  else
9
11
  raise "Unknown bootstrap version: #{RailsBootstrapTabs.bootstrap_version}!"
10
12
  end
@@ -17,14 +17,12 @@ module RailsBootstrapTabs::Renderers
17
17
  link_class = 'nav-link'
18
18
  link_class << ' active' if options[:active]
19
19
  link_class << " #{options[:link_class]}" if options[:link_class]
20
- li_class = 'nav-item'
21
- li_class << ' active' if options[:active]
22
20
  if options[:nav_markup]
23
21
  link_to "##{options[:anchor]}", data: { toggle: 'tab' }, class: link_class do
24
22
  yield
25
23
  end
26
24
  else
27
- content_tag :li, class: li_class do
25
+ content_tag :li, class: 'nav-item' do
28
26
  link_to "##{options[:anchor]}", data: { toggle: 'tab' }, class: link_class do
29
27
  yield
30
28
  end
@@ -0,0 +1,58 @@
1
+ module RailsBootstrapTabs::Renderers
2
+ class TabsBootstrap5Renderer < TabsRenderer
3
+ def render_tabs_wrapper
4
+ if @options[:nav_markup]
5
+ content_tag :nav do
6
+ content_tag :div, class: 'nav nav-tabs', role: 'tablist' do
7
+ yield
8
+ end
9
+ end
10
+ else
11
+ content_tag :ul, class: 'nav nav-tabs', role: 'tablist' do
12
+ yield
13
+ end
14
+ end
15
+ end
16
+
17
+ def render_tab(tab)
18
+ options = tab.options
19
+ link_class = 'nav-link'
20
+ link_class << ' active' if options[:active]
21
+ link_class << " #{options[:link_class]}" if options[:link_class]
22
+ if options[:nav_markup]
23
+ button_tag data: { 'bs-toggle': 'tab', 'bs-target': "##{options[:anchor]}" }, class: link_class, role: 'tab' do
24
+ yield
25
+ end
26
+ else
27
+ content_tag :li, class: 'nav-item', role: 'presentation' do
28
+ button_tag data: { 'bs-toggle': 'tab', 'bs-target': "##{options[:anchor]}" }, class: link_class, role: 'tab' do
29
+ yield
30
+ end
31
+ end
32
+ end
33
+ end
34
+
35
+ def render_panes_wrapper(options)
36
+ content_class = 'tab-content'
37
+ content_class << " #{options[:content_class]}" if options[:content_class]
38
+
39
+ content_tag :div, class: content_class do
40
+ yield
41
+ end
42
+ end
43
+
44
+ def render_pane(tab)
45
+ options = tab.options
46
+ pane_class = 'tab-pane'
47
+ pane_class << ' active' if options[:active]
48
+ if options[:fade_effect]
49
+ pane_class << ' fade'
50
+ pane_class << ' show' if options[:active]
51
+ pane_class << ' in' unless options[:active]
52
+ end
53
+ content_tag :div, id: options[:anchor].to_s, class: pane_class, role: 'tabpanel' do
54
+ yield
55
+ end
56
+ end
57
+ end
58
+ end
@@ -1,3 +1,3 @@
1
1
  module RailsBootstrapTabs
2
- VERSION = '0.2.6'.freeze
2
+ VERSION = '0.3.2'.freeze
3
3
  end
@@ -3,6 +3,7 @@ module RailsBootstrapTabs
3
3
  autoload :TabsRenderer, 'rails-bootstrap-tabs/renderers/tabs_renderer'
4
4
  autoload :TabsBootstrap3Renderer, 'rails-bootstrap-tabs/renderers/tabs_bootstrap3_renderer'
5
5
  autoload :TabsBootstrap4Renderer, 'rails-bootstrap-tabs/renderers/tabs_bootstrap4_renderer'
6
+ autoload :TabsBootstrap5Renderer, 'rails-bootstrap-tabs/renderers/tabs_bootstrap5_renderer'
6
7
  end
7
8
  end
8
9
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-bootstrap-tabs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ivan Reshetnikov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-07 00:00:00.000000000 Z
11
+ date: 2022-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -44,7 +44,7 @@ dependencies:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
46
  version: 3.6.0
47
- description: A Rails plugin to build bootstrap tabs
47
+ description: It reduces starting efforts to make Bootstrap tabs work
48
48
  email:
49
49
  - resivalex@gmail.com
50
50
  executables: []
@@ -56,6 +56,7 @@ files:
56
56
  - lib/rails-bootstrap-tabs/rails/engine.rb
57
57
  - lib/rails-bootstrap-tabs/renderers/tabs_bootstrap3_renderer.rb
58
58
  - lib/rails-bootstrap-tabs/renderers/tabs_bootstrap4_renderer.rb
59
+ - lib/rails-bootstrap-tabs/renderers/tabs_bootstrap5_renderer.rb
59
60
  - lib/rails-bootstrap-tabs/renderers/tabs_renderer.rb
60
61
  - lib/rails-bootstrap-tabs/version.rb
61
62
  homepage: https://github.com/resivalex/rails-bootstrap-tabs
@@ -77,8 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
77
78
  - !ruby/object:Gem::Version
78
79
  version: '0'
79
80
  requirements: []
80
- rubyforge_project:
81
- rubygems_version: 2.7.7
81
+ rubygems_version: 3.1.4
82
82
  signing_key:
83
83
  specification_version: 4
84
84
  summary: A Rails plugin to build bootstrap tabs