rails-bootstrap-tabs 0.2.2 → 0.2.7

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
- SHA1:
3
- metadata.gz: 3433d4539468ccaf3998434f6532f6f4a57ec5fa
4
- data.tar.gz: 7fbc7225aacfd7f7fab1b9eda403cd3095fc4460
2
+ SHA256:
3
+ metadata.gz: b598a028f45366a0ab7b2c30ba003abcf84b9156e9475e867c149e82d4e3ea48
4
+ data.tar.gz: 0eb77931a4463e998872b88a5c9570e75394c9df81d665bc9579a917ac29a2dd
5
5
  SHA512:
6
- metadata.gz: 9314c3be5b9967e3dbf83635f4b54f240b1613ecae60ece6c76d966c450d6112f0fbf34dfa782411d916b1d6e3e6f1ad259f692a3bdbb64a6a84c4d38d81cc5a
7
- data.tar.gz: d9413ccd665db40b8958ed2f1cddb63caca83362450ab1709ead4cf15f1d5697c5e51a365ae5b09275356f7cc704d89bbd953a0b1cc6e5e3ea511082c152dcc3
6
+ metadata.gz: 21cddc5dc15ee602bc2b263e1f8d39a37d2b5e5994fc1ea2de289336dab6236d35dc998f45ec3b4b54c8b9d33a8124079cce3082a99887effc1ffca81776603b
7
+ data.tar.gz: 92e73915c5a4a2a90373aba98b8d8e41049d0f2ada9b87761996d3597adaa9ddc93c05243770e9c65decdbdad6948f68af98806cae2e4672ee9be5aaea39e95a
@@ -3,6 +3,7 @@ require 'rails-bootstrap-tabs/helpers/tabs_helper'
3
3
  module RailsBootstrapTabs
4
4
  mattr_accessor :bootstrap_version do; 3; end
5
5
  mattr_accessor :fade_effect do; false; end
6
+ mattr_accessor :nav_markup do; false; end
6
7
 
7
8
  module Rails
8
9
  class Engine < ::Rails::Engine
@@ -1,8 +1,14 @@
1
1
  module RailsBootstrapTabs::Renderers
2
2
  class TabsBootstrap4Renderer < TabsRenderer
3
3
  def render_tabs_wrapper
4
- content_tag :ul, class: 'nav nav-tabs' do
5
- yield
4
+ if @options[:nav_markup]
5
+ content_tag :nav, class: 'nav nav-tabs' do
6
+ yield
7
+ end
8
+ else
9
+ content_tag :ul, class: 'nav nav-tabs' do
10
+ yield
11
+ end
6
12
  end
7
13
  end
8
14
 
@@ -11,10 +17,16 @@ module RailsBootstrapTabs::Renderers
11
17
  link_class = 'nav-link'
12
18
  link_class << ' active' if options[:active]
13
19
  link_class << " #{options[:link_class]}" if options[:link_class]
14
- content_tag :li, class: 'nav-item' do
20
+ if options[:nav_markup]
15
21
  link_to "##{options[:anchor]}", data: { toggle: 'tab' }, class: link_class do
16
22
  yield
17
23
  end
24
+ else
25
+ content_tag :li, class: 'nav-item' do
26
+ link_to "##{options[:anchor]}", data: { toggle: 'tab' }, class: link_class do
27
+ yield
28
+ end
29
+ end
18
30
  end
19
31
  end
20
32
 
@@ -8,8 +8,9 @@ module RailsBootstrapTabs::Renderers
8
8
  @tabs = []
9
9
  end
10
10
 
11
- def rstr
12
- (0...8).map { ('a'.ord + rand(26)).chr }.join
11
+ def rstr(seed)
12
+ rnd = Random.new(seed)
13
+ (0...8).map { ('a'.ord + rnd.rand(26)).chr }.join
13
14
  end
14
15
 
15
16
  def render
@@ -20,8 +21,21 @@ module RailsBootstrapTabs::Renderers
20
21
 
21
22
  def prepare_tabs
22
23
  @tabs.each.with_index do |tab, index|
23
- tab.options[:anchor] ||= "tab-#{index}-#{rstr}"
24
- tab.options[:fade_effect] ||= RailsBootstrapTabs.fade_effect || @options[:fade_effect]
24
+ tab.options[:anchor] ||= "tab-#{index}-#{rstr(index)}"
25
+ if tab.options[:fade_effect].nil?
26
+ if @options.key?(:fade_effect)
27
+ tab.options[:fade_effect] = @options[:fade_effect]
28
+ else
29
+ tab.options[:fade_effect] = RailsBootstrapTabs.fade_effect
30
+ end
31
+ end
32
+ if tab.options[:nav_markup].nil?
33
+ if @options.key?(:nav_markup)
34
+ tab.options[:nav_markup] = @options[:nav_markup]
35
+ else
36
+ tab.options[:nav_markup] = RailsBootstrapTabs.nav_markup
37
+ end
38
+ end
25
39
  end
26
40
  active_tab = @tabs.find { |t| t.options[:active] }
27
41
  active_tab ||= @tabs.first
@@ -1,3 +1,3 @@
1
1
  module RailsBootstrapTabs
2
- VERSION = '0.2.2'.freeze
2
+ VERSION = '0.2.7'.freeze
3
3
  end
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.2
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ivan Reshetnikov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-08 00:00:00.000000000 Z
11
+ date: 2021-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -24,6 +24,26 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 3.2.11
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 3.6.0
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 3.6.0
37
+ type: :development
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: 3.6.0
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 3.6.0
27
47
  description: A Rails plugin to build bootstrap tabs
28
48
  email:
29
49
  - resivalex@gmail.com
@@ -58,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
58
78
  version: '0'
59
79
  requirements: []
60
80
  rubyforge_project:
61
- rubygems_version: 2.6.11
81
+ rubygems_version: 2.7.7
62
82
  signing_key:
63
83
  specification_version: 4
64
84
  summary: A Rails plugin to build bootstrap tabs