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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4427909ec1eefd905a39cd23945f33ae5b999cbc19cb919eecf9e25ef4cf5e37
4
- data.tar.gz: 84a29b27108c169427b4791a4c36ff2c141027604ebc6a62cd3372fa64362bb3
3
+ metadata.gz: 5196cc1a406bf131cfb61681ae45e7864728268c133c2119ae40c4a216cb72b3
4
+ data.tar.gz: 55f77caa6c4affa3eb4c27b64d85310e81e8f99b950bd2e06a820b89e35ae7fa
5
5
  SHA512:
6
- metadata.gz: f96594d2e4acf09083588e821e49636f633710eba41f59fe452e6268600eaa2449fe14c4bee126a19ab4618ae09ef863a7f9d6af9436804bd21ec6d5952c9537
7
- data.tar.gz: af11845584d76188f7061228f0fb91db1b6a89a6c1c9c1837efdee20968fefda8cbd551fe68cdb83bfbe8278ff1d6fd560f7a3534c18d2a17cd7a4f8b6345ec2
6
+ metadata.gz: b286eceb0d2524868adc437ed090fa796f6698cd1da59d112336bfd4ebbe6fbc989642264ea6f8802e6100f90321a944a8e3b1d9193413cbf0702b0477113cc3
7
+ data.tar.gz: ac412b3ee3c47d1554aec4bb55015eae311b7a2824a2f14eed01d4821038462dcdde9dc023899b8b17be4a2ac621358fd5c6775a01f9b0579a42e9d05451752f
data/Gemfile CHANGED
@@ -1,10 +1,3 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
3
  gemspec
4
-
5
- group :test do
6
- gem 'minitest'
7
- gem 'rake'
8
- gem 'rack-test'
9
- gem 'nokogiri'
10
- end
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), but with active state by adding an extra css class `active` by default.
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
- is_active = is_active_link?(url, active_options[:active])
46
- link_options[:'aria-current'] = 'page' if is_active
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 condition == :exclusive
91
- url_string == request_uri
92
- else
84
+
85
+ if url_string == request_uri
86
+ true
87
+ elsif condition != :exclusive
93
88
  closing = url_string.end_with?('/') ? '' : '/'
94
- url_string == request_uri || request_uri.start_with?(url_string + closing)
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SimpleActiveLinkTo
4
- VERSION = "1.0.3"
4
+ VERSION = "1.0.4"
5
5
  end
@@ -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'
@@ -3,10 +3,3 @@ source 'http://rubygems.org'
3
3
  gemspec path: "../../"
4
4
 
5
5
  gem "actionpack", "~> 5.0.0"
6
-
7
- group :test do
8
- gem 'minitest'
9
- gem 'rake'
10
- gem 'rack-test'
11
- gem 'nokogiri'
12
- end
@@ -3,10 +3,3 @@ source 'http://rubygems.org'
3
3
  gemspec path: "../../"
4
4
 
5
5
  gem "actionpack", "~> 5.1.0"
6
-
7
- group :test do
8
- gem 'minitest'
9
- gem 'rake'
10
- gem 'rack-test'
11
- gem 'nokogiri'
12
- end
@@ -3,10 +3,3 @@ source 'http://rubygems.org'
3
3
  gemspec path: "../../"
4
4
 
5
5
  gem "actionpack", "~> 5.2.0"
6
-
7
- group :test do
8
- gem 'minitest'
9
- gem 'rake'
10
- gem 'rack-test'
11
- gem 'nokogiri'
12
- end
@@ -3,10 +3,3 @@ source 'http://rubygems.org'
3
3
  gemspec path: "../../"
4
4
 
5
5
  gem "actionpack", "~> 6.0.0"
6
-
7
- group :test do
8
- gem 'minitest'
9
- gem 'rake'
10
- gem 'rack-test'
11
- gem 'nokogiri'
12
- end
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.3
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-21 00:00:00.000000000 Z
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