icon_tag 0.0.1 → 0.0.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b238570b5915a1b1f4b02917797774d689424171
4
- data.tar.gz: 8600b5f440068eb73da2bc049342491f7ceb394d
3
+ metadata.gz: 562f16b2a3b8d54867c5a9baeb2a50b7a75869bb
4
+ data.tar.gz: 626a77892b56ce2d36d7ca7fd76c45744f2aa0e3
5
5
  SHA512:
6
- metadata.gz: d1ea6dbbcd6a7550920b16e788e4c0b3f77cd2f67a3ac712c3497f12c9db35d8cbc32bfbdd665ac7001f47568209a6f88ecbed1f992eb7db761f3ec5bbc7b8dc
7
- data.tar.gz: 3568cebe1981077c3de2f07a5b588d17459801355f9eebe6b4ded1ea9dbf7fb730a75f851c8864dd654e34168217f38d96fb9509881848fa82a504e60d5ca678
6
+ metadata.gz: bf22cec970534d3972cc2508877665cd090e18187493c121eae1c3cd37b768f6e6c5508f2871cfed688a6b2f946502dee0ffdbfeec9add4ce1e8d88951191cf5
7
+ data.tar.gz: 2314326e0d450d75997f2e484433829e2a0386e0d8361b6eae34d39272fa168ca4968f67b98dd91b38c23478c518af7c3cd04d84dc8381abf3e30d6529c7acb9
data/README.md CHANGED
@@ -1,6 +1,24 @@
1
1
  # IconTag
2
2
 
3
3
  Simple helper for Font Awesome icons. Adds icon_tag helper method to your views.
4
+ Follow examples at: [http://fortawesome.github.io/Font-Awesome/examples/](http://fortawesome.github.io/Font-Awesome/examples/)
5
+
6
+
7
+ ## Usage
8
+
9
+ ### Options:
10
+
11
+ * `size`: "lg, 2x, 3x, 4x"
12
+ * `spin`: `true` or `false`
13
+ * `fixed-width` (alias `fw`): `true` or `false`
14
+ * `border`: `true` or `false`
15
+ * `rotate`: '90', '180', '270'
16
+ * `flip`: 'horizontal' or 'vertical'
17
+
18
+ #### Example:
19
+
20
+ <%= icon_tag('user', size: '2x') %>
21
+ # => <i class='fa fa-user fa-2x'></i>
4
22
 
5
23
  ## Installation
6
24
 
@@ -16,10 +34,6 @@ Or install it yourself as:
16
34
 
17
35
  $ gem install icon_tag
18
36
 
19
- ## Usage
20
-
21
- `<%= icon_tag('user') %>`
22
-
23
37
  ## Contributing
24
38
 
25
39
  1. Fork it
@@ -1,4 +1,5 @@
1
1
  require "icon_tag/version"
2
+ require "icon_tag/presenter"
2
3
  require 'icon_tag/railtie' if defined?(Rails)
3
4
 
4
5
  module IconTag
@@ -0,0 +1,38 @@
1
+ module IconTag
2
+ class Presenter
3
+
4
+ include ActionView::Helpers::TagHelper
5
+
6
+ def initialize icon, options={}
7
+ @icon = icon
8
+ @options = options
9
+ extract_options
10
+ compile_html_class
11
+ end
12
+
13
+ def html_tag
14
+ content_tag(:i, nil, @options.reverse_merge(class: @html_class))
15
+ end
16
+
17
+ private
18
+
19
+ def extract_options
20
+ @size = @options.delete(:size)
21
+ @fixed_with = @options.delete(:fw) || @options.delete(:fixed_with)
22
+ @border = @options.delete(:border)
23
+ @spin = @options.delete(:spin)
24
+ @rotate = @options.delete(:rotate)
25
+ @flip = @options.delete(:flip)
26
+ end
27
+
28
+ def compile_html_class
29
+ @html_class = "fa fa-#{@icon}"
30
+ @html_class << " fa-#{@size}" if @size
31
+ @html_class << " fa-fw" if @fixed_with
32
+ @html_class << " fa-border" if @border
33
+ @html_class << " fa-spin" if @spin
34
+ @html_class << " fa-rotate-#{@rotate}" if @rotate
35
+ @html_class << " fa-flip-#{@flip}" if @flip
36
+ end
37
+ end
38
+ end
@@ -1,3 +1,3 @@
1
1
  module IconTag
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -1,8 +1,17 @@
1
1
  module IconTag
2
2
  module ViewHelpers
3
3
 
4
- def icon_tag(icon)
5
- content_tag :i, nil, class: "fa fa-#{icon}"
4
+ # icon: icon name from Font Awesome (without 'fa')
5
+ # Follow examples at: http://fortawesome.github.io/Font-Awesome/examples/
6
+ # Options:
7
+ # Size: lg, 2x, 3x, 4x
8
+ # Spin: true or false
9
+ # Fixed Width: "Use fa-fw to set icons at a fixed width. Great to use when different icon widths throw off alignment. Especially useful in things like nav lists & list groups."
10
+ # Border: true or false
11
+ # Rotate: 90, 180, 270
12
+ # Flip: horizontal / vertical
13
+ def icon_tag(icon, options={})
14
+ IconTag::Presenter.new(icon, options).html_tag
6
15
  end
7
16
 
8
17
  end
metadata CHANGED
@@ -1,41 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: icon_tag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mathieu Gagné
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-17 00:00:00.000000000 Z
11
+ date: 2014-07-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  description: Simple helper for Font Awesome icons
@@ -45,13 +45,14 @@ executables: []
45
45
  extensions: []
46
46
  extra_rdoc_files: []
47
47
  files:
48
- - .gitignore
48
+ - ".gitignore"
49
49
  - Gemfile
50
50
  - LICENSE.txt
51
51
  - README.md
52
52
  - Rakefile
53
53
  - icon_tag.gemspec
54
54
  - lib/icon_tag.rb
55
+ - lib/icon_tag/presenter.rb
55
56
  - lib/icon_tag/railtie.rb
56
57
  - lib/icon_tag/version.rb
57
58
  - lib/icon_tag/view_helpers.rb
@@ -65,17 +66,17 @@ require_paths:
65
66
  - lib
66
67
  required_ruby_version: !ruby/object:Gem::Requirement
67
68
  requirements:
68
- - - '>='
69
+ - - ">="
69
70
  - !ruby/object:Gem::Version
70
71
  version: '0'
71
72
  required_rubygems_version: !ruby/object:Gem::Requirement
72
73
  requirements:
73
- - - '>='
74
+ - - ">="
74
75
  - !ruby/object:Gem::Version
75
76
  version: '0'
76
77
  requirements: []
77
78
  rubyforge_project:
78
- rubygems_version: 2.1.11
79
+ rubygems_version: 2.2.2
79
80
  signing_key:
80
81
  specification_version: 4
81
82
  summary: Simple helper for Font Awesome icons. Adds icon_tag helper method to your