komonjo 0.1.5 → 0.1.6
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 +4 -4
- data/lib/komonjo.rb +3 -0
- data/lib/komonjo/client.rb +6 -0
- data/lib/komonjo/connections/slack_connection.rb +9 -0
- data/lib/komonjo/gateways/emojis_gateway.rb +22 -0
- data/lib/komonjo/mocks/slack_mock.rb +8 -0
- data/lib/komonjo/models/emoji.rb +24 -0
- data/lib/komonjo/services/emojis_service.rb +17 -0
- data/lib/komonjo/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fd80c77b4ddf2ba6e0032a4206b93e05b3436ad0
|
4
|
+
data.tar.gz: 5b22fd3436ed123140bb106f54b7de4e8eb01856
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 398a4fc94d40e006789df1223865436ef59b4cf2c80ee34bd7ca03793326c673994eb8d1987d2ff312929c718997adcbc8e25f0523aa2af3c1b9f4c43b29401e
|
7
|
+
data.tar.gz: bdf90fa95ea05a33b28c04acfc09e17b7ea4a0dd6ef8ad5a171a95d213e09aae58c0595615349c0714684ac2064e4895bc9e150be1b31bb84780dc6c28d7116b
|
data/lib/komonjo.rb
CHANGED
@@ -6,13 +6,16 @@ require 'komonjo/connections/slack_connection'
|
|
6
6
|
require 'komonjo/extensions/to_json'
|
7
7
|
require 'komonjo/gateways/channels_gateway'
|
8
8
|
require 'komonjo/gateways/messages_gateway'
|
9
|
+
require 'komonjo/gateways/emojis_gateway'
|
9
10
|
require 'komonjo/models/api/response_base'
|
10
11
|
require 'komonjo/models/channel'
|
11
12
|
require 'komonjo/models/message'
|
12
13
|
require 'komonjo/models/profile'
|
13
14
|
require 'komonjo/models/user'
|
15
|
+
require 'komonjo/models/emoji'
|
14
16
|
require 'komonjo/mocks/slack_mock'
|
15
17
|
require 'komonjo/services/slack_service'
|
16
18
|
require 'komonjo/services/channels_service'
|
17
19
|
require 'komonjo/services/login_service'
|
18
20
|
require 'komonjo/services/messages_service'
|
21
|
+
require 'komonjo/services/emojis_service'
|
data/lib/komonjo/client.rb
CHANGED
@@ -32,5 +32,11 @@ module Komonjo
|
|
32
32
|
s.instance_variable_set('@connection', Komonjo::Mock::SlackMock) if @debug
|
33
33
|
s.messages(opts)
|
34
34
|
end
|
35
|
+
|
36
|
+
def emoji(opts = {})
|
37
|
+
s = Komonjo::Service::EmojisService.new(@api_token)
|
38
|
+
s.instance_variable_set('@connection', Komonjo::Mock::SlackMock) if @debug
|
39
|
+
s.emoji(opts)
|
40
|
+
end
|
35
41
|
end
|
36
42
|
end
|
@@ -44,6 +44,15 @@ module Komonjo
|
|
44
44
|
ret['ok']
|
45
45
|
end
|
46
46
|
|
47
|
+
#
|
48
|
+
# returns an object, whose key is emoji-name and whose value is url.
|
49
|
+
#
|
50
|
+
def emoji_list(opts = {})
|
51
|
+
ret = client.emoji_list
|
52
|
+
raise 'error' unless ret['ok']
|
53
|
+
ret['emoji']
|
54
|
+
end
|
55
|
+
|
47
56
|
private
|
48
57
|
|
49
58
|
def channel_id(channel_name)
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'cgi'
|
2
|
+
|
3
|
+
module Komonjo
|
4
|
+
module Gateway
|
5
|
+
# Returns an object { name, url }
|
6
|
+
class EmojisGateway
|
7
|
+
using HashExtensions
|
8
|
+
def initialize(emoji)
|
9
|
+
@emoji = emoji
|
10
|
+
end
|
11
|
+
|
12
|
+
def emoji
|
13
|
+
list = @emoji.map { |k, v| Komonjo::Model::Emoji.create(k, v) }
|
14
|
+
list.select(&:alias?).each do |e|
|
15
|
+
target = list.find { |i| i.name == e.alias_name }
|
16
|
+
e.url = target.url
|
17
|
+
end
|
18
|
+
list
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -79,6 +79,14 @@ module Komonjo
|
|
79
79
|
'unread_count_display': 0
|
80
80
|
}]
|
81
81
|
end
|
82
|
+
|
83
|
+
def emoji_list(opts = {})
|
84
|
+
{
|
85
|
+
"bowtie": "https:\/\/my.slack.com\/emoji\/bowtie\/46ec6f2bb0.png",
|
86
|
+
"squirrel": "https:\/\/my.slack.com\/emoji\/squirrel\/f35f40c0e0.png",
|
87
|
+
"shipit": "alias:squirrel",
|
88
|
+
}
|
89
|
+
end
|
82
90
|
end
|
83
91
|
end
|
84
92
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Komonjo
|
2
|
+
module Model
|
3
|
+
# slack emoji
|
4
|
+
class Emoji
|
5
|
+
attr_accessor :name, :url, :alias_name
|
6
|
+
attr_writer :alias
|
7
|
+
|
8
|
+
def self.create(name, url)
|
9
|
+
new.tap do |e|
|
10
|
+
e.name = name.to_s
|
11
|
+
e.url = url.to_s
|
12
|
+
url.match(/^alias:(?<alias_name>\S+)$/) do |m|
|
13
|
+
e.alias = true
|
14
|
+
e.alias_name = m[:alias_name]
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def alias?
|
20
|
+
@alias
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Komonjo
|
2
|
+
module Service
|
3
|
+
# A service for emoji
|
4
|
+
class EmojisService < Komonjo::Service::SlackService
|
5
|
+
def initialize(api_token)
|
6
|
+
@api_token = api_token
|
7
|
+
end
|
8
|
+
|
9
|
+
def emoji(opts = {})
|
10
|
+
connection = connection(@api_token)
|
11
|
+
emoji = connection.emoji_list(opts)
|
12
|
+
gateway = Komonjo::Gateway::EmojisGateway.new(emoji)
|
13
|
+
gateway.emoji
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/komonjo/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: komonjo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- hkdnet
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: slack-api
|
@@ -103,14 +103,17 @@ files:
|
|
103
103
|
- lib/komonjo/extensions/hash_extensions.rb
|
104
104
|
- lib/komonjo/extensions/to_json.rb
|
105
105
|
- lib/komonjo/gateways/channels_gateway.rb
|
106
|
+
- lib/komonjo/gateways/emojis_gateway.rb
|
106
107
|
- lib/komonjo/gateways/messages_gateway.rb
|
107
108
|
- lib/komonjo/mocks/slack_mock.rb
|
108
109
|
- lib/komonjo/models/api/response_base.rb
|
109
110
|
- lib/komonjo/models/channel.rb
|
111
|
+
- lib/komonjo/models/emoji.rb
|
110
112
|
- lib/komonjo/models/message.rb
|
111
113
|
- lib/komonjo/models/profile.rb
|
112
114
|
- lib/komonjo/models/user.rb
|
113
115
|
- lib/komonjo/services/channels_service.rb
|
116
|
+
- lib/komonjo/services/emojis_service.rb
|
114
117
|
- lib/komonjo/services/login_service.rb
|
115
118
|
- lib/komonjo/services/messages_service.rb
|
116
119
|
- lib/komonjo/services/slack_service.rb
|