emoji_differ 0.1.0.alpha2 → 0.1.0.alpha3

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: dc01d5275791265cc28cb52cab96f8dbcb60da8a
4
- data.tar.gz: 052b9909bfd39b56182d8e8a1b41dfd1d2b37495
3
+ metadata.gz: b645b57f4051dec99c198715af8f7b72f434d387
4
+ data.tar.gz: 7e17307a7dca363e16419ca5bac8ab522f205a7b
5
5
  SHA512:
6
- metadata.gz: 8fa7faa181530ade13f6ed9cc87ea7645168c5a318836a9b5f65c9cad1abeb39f8b50a0cd29fc0d6cf3aa44c8607bfd5aa66fdcd26fafdc00f37cfe3e3f3c112
7
- data.tar.gz: 804c03690e1a02b419bf2d648c06ef805ce14cd5522a0ee6b445303992b0480dac06134cb1d9995626ec574449c64aef6f2ee4e01b8add4be9f37678b4e98f22
6
+ metadata.gz: f8bb1c7df3e177c1b5c3f5f5e5b17ee7074cbeb663145ae73181e709170364a016b0cd8471ce286c41f6158c4f7b3cdcf01e42457ee9365473415162783a89c8
7
+ data.tar.gz: 68d7e5198fbf21a57918a1c6fd2476e7cbc387e80abb06c02e32b2d8c45f6590a571b87601ff5e478f80fa4645e751c3a72716c5163029e9717782b9b4100f90
data/.gitignore CHANGED
@@ -9,3 +9,5 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
+
13
+ *.gem
data/Gemfile.lock CHANGED
@@ -1,12 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- emoji_differ (0.1.0)
4
+ emoji_differ (0.1.0.alpha2)
5
+ json (> 0)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
8
9
  specs:
9
10
  diff-lcs (1.3)
11
+ json (2.1.0)
10
12
  rake (10.5.0)
11
13
  rspec (3.8.0)
12
14
  rspec-core (~> 3.8.0)
data/emoji_differ.gemspec CHANGED
@@ -39,4 +39,5 @@ Gem::Specification.new do |spec|
39
39
  spec.add_development_dependency "bundler", "~> 2.0"
40
40
  spec.add_development_dependency "rake", "~> 10.0"
41
41
  spec.add_development_dependency "rspec", "~> 3.0"
42
+ spec.add_development_dependency "dotenv", "~> 2.6"
42
43
  end
@@ -0,0 +1,8 @@
1
+ module EmojiDiffer
2
+ class Emoji < Struct.new(:name, :picture_link)
3
+
4
+ def to_s
5
+ name
6
+ end
7
+ end
8
+ end
@@ -1,7 +1,23 @@
1
+ require "json"
2
+ require "emoji_differ/emoji"
3
+
1
4
  module EmojiDiffer
2
5
  class List
6
+ def initialize(jsonb)
7
+ @emojis = transform(jsonb).map { |name, picture_link| EmojiDiffer::Emoji.new(name, picture_link) }
8
+ end
9
+
3
10
  def to_s
4
- raise "We need to get this from slack"
11
+ @emojis.to_s
12
+ end
13
+
14
+ def to_json
15
+ raise "Unimplemented"
5
16
  end
17
+
18
+ private
19
+ def transform(jsonb)
20
+ JSON.parse(jsonb)["emoji"]
21
+ end
6
22
  end
7
- end
23
+ end
@@ -0,0 +1,23 @@
1
+ require "net/https"
2
+ require "emoji_differ/list"
3
+
4
+ module EmojiDiffer
5
+ class SlackApi < Struct.new(:token)
6
+ API_ENDPOINT = 'https://slack.com/api/emoji.list'
7
+
8
+ def emoji
9
+ uri = URI(API_ENDPOINT)
10
+ uri.query = URI.encode_www_form({
11
+ token: token,
12
+ })
13
+
14
+ handle = Net::HTTP.get_response(uri)
15
+
16
+ if !handle.is_a?(Net::HTTPSuccess)
17
+ raise "Slack API is out of business today, #{handle.inspect}"
18
+ end
19
+
20
+ EmojiDiffer::List.new(handle.body)
21
+ end
22
+ end
23
+ end
@@ -1,3 +1,3 @@
1
1
  module EmojiDiffer
2
- VERSION = "0.1.0.alpha2"
2
+ VERSION = "0.1.0.alpha3"
3
3
  end
data/lib/emoji_differ.rb CHANGED
@@ -1,9 +1,10 @@
1
1
  require "emoji_differ/version"
2
- require "emoji_differ/list"
2
+ require "emoji_differ/slack_api"
3
3
 
4
4
  module EmojiDiffer
5
5
  class Error < StandardError; end
6
- def self.list
7
- EmojiDiffer::List.new
6
+
7
+ def self.current_emoji(slack_token)
8
+ EmojiDiffer::SlackApi.new(slack_token).emoji
8
9
  end
9
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: emoji_differ
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.alpha2
4
+ version: 0.1.0.alpha3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin George
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2019-02-15 00:00:00.000000000 Z
12
+ date: 2019-02-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -53,6 +53,20 @@ dependencies:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '3.0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: dotenv
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '2.6'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '2.6'
56
70
  description: This gem uses the Slack API to provide you a diff of the emojis available
57
71
  and the (locally cached) history
58
72
  email:
@@ -75,7 +89,9 @@ files:
75
89
  - bin/setup
76
90
  - emoji_differ.gemspec
77
91
  - lib/emoji_differ.rb
92
+ - lib/emoji_differ/emoji.rb
78
93
  - lib/emoji_differ/list.rb
94
+ - lib/emoji_differ/slack_api.rb
79
95
  - lib/emoji_differ/version.rb
80
96
  homepage: https://github.com/jaggederest/emoji_differ
81
97
  licenses: