simple_active_link_to 1.0.3 → 1.0.4
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/README.md +1 -1
- data/lib/simple_active_link_to/simple_active_link_to.rb +12 -15
- data/lib/simple_active_link_to/version.rb +1 -1
- data/simple_active_link_to.gemspec +4 -0
- data/test/gemfiles/5.0.gemfile +0 -7
- data/test/gemfiles/5.1.gemfile +0 -7
- data/test/gemfiles/5.2.gemfile +0 -7
- data/test/gemfiles/6.0.gemfile +0 -7
- metadata +58 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5196cc1a406bf131cfb61681ae45e7864728268c133c2119ae40c4a216cb72b3
|
4
|
+
data.tar.gz: 55f77caa6c4affa3eb4c27b64d85310e81e8f99b950bd2e06a820b89e35ae7fa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b286eceb0d2524868adc437ed090fa796f6698cd1da59d112336bfd4ebbe6fbc989642264ea6f8802e6100f90321a944a8e3b1d9193413cbf0702b0477113cc3
|
7
|
+
data.tar.gz: ac412b3ee3c47d1554aec4bb55015eae311b7a2824a2f14eed01d4821038462dcdde9dc023899b8b17be4a2ac621358fd5c6775a01f9b0579a42e9d05451752f
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# simple_active_link_to
|
2
2
|
|
3
|
-
`simple_active_link_to` is a wrapper for [link_to](http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to),
|
3
|
+
`simple_active_link_to` is a wrapper for [link_to](http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to), with active state by adding an extra css class `active` by default.
|
4
4
|
|
5
5
|
This project is fork of [active_link_to](https://github.com/comfy/active_link_to), but without wrap tag, and some code improvement.
|
6
6
|
|
@@ -20,9 +20,6 @@ module SimpleActiveLinkTo
|
|
20
20
|
html_options = options
|
21
21
|
options = name
|
22
22
|
name = capture(&block)
|
23
|
-
else
|
24
|
-
html_options = html_options
|
25
|
-
options ||= {}
|
26
23
|
end
|
27
24
|
|
28
25
|
html_options ||= {}
|
@@ -42,14 +39,12 @@ module SimpleActiveLinkTo
|
|
42
39
|
active_class = active_link_to_class(url, active_options)
|
43
40
|
link_options[:class] = "#{css_class} #{active_class}".strip
|
44
41
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
if active_options[:active_disable] == true && is_active
|
49
|
-
content_tag(:span, name, link_options)
|
50
|
-
else
|
51
|
-
link_to(name, url, link_options)
|
42
|
+
if is_active_link?(url, active_options[:active])
|
43
|
+
link_options[:'aria-current'] = 'page'
|
44
|
+
return content_tag(:span, name, link_options) if active_options[:active_disable] == true
|
52
45
|
end
|
46
|
+
|
47
|
+
link_to(name, url, link_options)
|
53
48
|
end
|
54
49
|
|
55
50
|
# Returns css class name. Takes the link's URL and its params
|
@@ -86,12 +81,14 @@ module SimpleActiveLinkTo
|
|
86
81
|
url_path = url.split('#').first.split('?').first
|
87
82
|
url_string = URI.parser.unescape(url_path).force_encoding(Encoding::BINARY)
|
88
83
|
request_uri = URI.parser.unescape(request.path).force_encoding(Encoding::BINARY)
|
89
|
-
|
90
|
-
if
|
91
|
-
|
92
|
-
|
84
|
+
|
85
|
+
if url_string == request_uri
|
86
|
+
true
|
87
|
+
elsif condition != :exclusive
|
93
88
|
closing = url_string.end_with?('/') ? '' : '/'
|
94
|
-
|
89
|
+
request_uri.start_with?(url_string + closing)
|
90
|
+
else
|
91
|
+
false
|
95
92
|
end
|
96
93
|
when :exact
|
97
94
|
request.original_fullpath == url
|
@@ -16,6 +16,10 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.files = `git ls-files`.split("\n")
|
17
17
|
|
18
18
|
s.required_ruby_version = '>= 2.4.0'
|
19
|
+
s.add_development_dependency 'minitest'
|
20
|
+
s.add_development_dependency 'nokogiri'
|
21
|
+
s.add_development_dependency 'rack-test'
|
22
|
+
s.add_development_dependency 'rake'
|
19
23
|
|
20
24
|
s.add_dependency 'actionpack', '>= 5.0'
|
21
25
|
s.add_dependency 'activesupport', '>= 5.0'
|
data/test/gemfiles/5.0.gemfile
CHANGED
data/test/gemfiles/5.1.gemfile
CHANGED
data/test/gemfiles/5.2.gemfile
CHANGED
data/test/gemfiles/6.0.gemfile
CHANGED
metadata
CHANGED
@@ -1,15 +1,71 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simple_active_link_to
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fajarullah
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-09-
|
11
|
+
date: 2020-09-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: minitest
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: nokogiri
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rack-test
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
13
69
|
- !ruby/object:Gem::Dependency
|
14
70
|
name: actionpack
|
15
71
|
requirement: !ruby/object:Gem::Requirement
|