twemoji 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +4 -9
- data/CHANGELOG.md +7 -0
- data/README.md +7 -0
- data/lib/twemoji.rb +10 -3
- data/lib/twemoji/version.rb +1 -1
- data/test/twemoji_test.rb +6 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7564a6a19474323c5069351204db498569c2be3a
|
4
|
+
data.tar.gz: ef601f04711fe56dba589eb779a7f57c005e6ec5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 679c25687c003181ab06809a2a09c747f936741f42659bb3bd329f0ad8cf6fcfe078b159ad46a5c3e2f49f58105111ed409d0d6bbca422f503d74b005d92bc03
|
7
|
+
data.tar.gz: 5aa6af458cc886a644627f0efee22338fd31908c10699e651a8f06ad692268832429cc991eeb039f0e6a2fc3306fadb4a02453947c29493eebc494b34ed36558
|
data/.travis.yml
CHANGED
@@ -1,20 +1,15 @@
|
|
1
1
|
language: ruby
|
2
2
|
sudo: false
|
3
|
-
bundler_args: --retry=3 --jobs=3
|
4
|
-
|
3
|
+
bundler_args: "--retry=3 --jobs=3"
|
5
4
|
rvm:
|
6
5
|
- 2.0
|
7
6
|
- 2.1
|
8
7
|
- 2.2
|
9
|
-
- jruby
|
10
|
-
- jruby-19mode
|
11
|
-
- jruby-head
|
12
8
|
- ruby-head
|
13
|
-
|
14
9
|
matrix:
|
15
10
|
allow_failures:
|
16
|
-
- rvm: jruby
|
17
|
-
- rvm: jruby-19mode
|
18
|
-
- rvm: juby-head
|
19
11
|
- rvm: ruby-head
|
20
12
|
fast_finish: true
|
13
|
+
notifications:
|
14
|
+
slack:
|
15
|
+
secure: wZ1UPEcH/Zf/wSPvpR1q76vpUQvAEGuwR5500ML8C+shW7PedvuSZaiZYAOZxhyD17RXzXYroON0ArEk3NUcKD8supPzYjUWzCeWDIFaYxEb7dOm7tpRBf4GuQ/oy8HGsBi947ZTX3WytGWZU0q0aRu2EirPcoY05vzley/hYTI=
|
data/CHANGELOG.md
ADDED
data/README.md
CHANGED
@@ -95,6 +95,13 @@ Default img css class name, by default `"emoji"`.
|
|
95
95
|
=> 'I like chololate <img class="superemoji" draggable="false" alt=":heart_eyes:" src="https://twemoji.maxcdn.com/16x16/1f60d.png">'
|
96
96
|
```
|
97
97
|
|
98
|
+
##### img_attr
|
99
|
+
|
100
|
+
```ruby
|
101
|
+
Twemoji.parse("I like chocolate :heart_eyes:!", class_name: 'twemoji', img_attr: "style='height: 1.3em;'")
|
102
|
+
=> "I like chocolate <img class='twemoji' draggable='false' title=':heart_eyes:' alt=':heart_eyes:' style='height: 1.3em;' src='https://twemoji.maxcdn.com/16x16/1f60d.png'>!"
|
103
|
+
```
|
104
|
+
|
98
105
|
## Contributing
|
99
106
|
|
100
107
|
1. Fork it ( https://github.com/jollygoodcode/twemoji/fork )
|
data/lib/twemoji.rb
CHANGED
@@ -64,18 +64,21 @@ module Twemoji
|
|
64
64
|
# @option options [String] (optional) file_ext File extension.
|
65
65
|
# @option options [String] (optional) image_size Emoji image's size 16, 36, 72 applicable if specify .png.
|
66
66
|
# @option options [String] (optional) class_name Emoji image's css class name.
|
67
|
+
# @option options [String] (optional) img_attr Emoji image's img tag attribute.
|
67
68
|
#
|
68
69
|
# @return [String] Original text with all occurrences of emoji text
|
69
70
|
# replaced by emoji image according to given options.
|
70
71
|
def self.parse(text, asset_root: "https://twemoji.maxcdn.com/",
|
71
72
|
file_ext: ".png",
|
72
73
|
image_size: "16x16",
|
73
|
-
class_name: "emoji"
|
74
|
+
class_name: "emoji",
|
75
|
+
img_attr: nil)
|
74
76
|
|
75
77
|
options[:asset_root] = asset_root
|
76
78
|
options[:file_ext] = file_ext
|
77
79
|
options[:image_size] = image_size
|
78
80
|
options[:class_name] = class_name
|
81
|
+
options[:img_attr] = img_attr
|
79
82
|
|
80
83
|
if text.kind_of?(Nokogiri::HTML::DocumentFragment)
|
81
84
|
parse_document(text)
|
@@ -163,13 +166,17 @@ module Twemoji
|
|
163
166
|
content.gsub(emoji_pattern) { |match| img_tag(match) }
|
164
167
|
end
|
165
168
|
|
166
|
-
# Returns emoji image by given name and options from `Twemoji.parse`.
|
169
|
+
# Returns emoji image tag by given name and options from `Twemoji.parse`.
|
167
170
|
#
|
168
171
|
# @param name [String] Emoji name to generate image tag.
|
169
172
|
# @return [String] Emoji image tag generated by name and options.
|
170
173
|
# @private
|
171
174
|
def self.img_tag(name)
|
172
|
-
|
175
|
+
if options[:img_attr]
|
176
|
+
"<img class='#{options[:class_name]}' draggable='false' title='#{name}' alt='#{name}' #{options[:img_attr]} src='#{emoji_url(name)}'>"
|
177
|
+
else
|
178
|
+
"<img class='#{options[:class_name]}' draggable='false' title='#{name}' alt='#{name}' src='#{emoji_url(name)}'>"
|
179
|
+
end
|
173
180
|
end
|
174
181
|
|
175
182
|
# Returns emoji url by given name and options from `Twemoji.parse`.
|
data/lib/twemoji/version.rb
CHANGED
data/test/twemoji_test.rb
CHANGED
@@ -74,6 +74,12 @@ class TwemojiTest < Minitest::Test
|
|
74
74
|
assert_equal expected, Twemoji.parse("I like chocolate :heart_eyes:!", class_name: 'twemoji')
|
75
75
|
end
|
76
76
|
|
77
|
+
def test_parse_option_img_attr
|
78
|
+
expected = "I like chocolate <img class='twemoji' draggable='false' title=':heart_eyes:' alt=':heart_eyes:' style='height: 1.3em;' src='https://twemoji.maxcdn.com/16x16/1f60d.png'>!"
|
79
|
+
|
80
|
+
assert_equal expected, Twemoji.parse("I like chocolate :heart_eyes:!", class_name: 'twemoji', img_attr: "style='height: 1.3em;'")
|
81
|
+
end
|
82
|
+
|
77
83
|
def test_emoji_pattern
|
78
84
|
assert_kind_of Regexp, Twemoji.emoji_pattern
|
79
85
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twemoji
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juanito
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-01-
|
12
|
+
date: 2015-01-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
@@ -34,6 +34,7 @@ extra_rdoc_files: []
|
|
34
34
|
files:
|
35
35
|
- ".gitignore"
|
36
36
|
- ".travis.yml"
|
37
|
+
- CHANGELOG.md
|
37
38
|
- Gemfile
|
38
39
|
- LICENSE
|
39
40
|
- README.md
|