lex-slack 0.1.0 → 0.3.1
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/.github/workflows/ci.yml +16 -0
- data/.gitignore +11 -0
- data/.rspec +3 -0
- data/.rubocop.yml +56 -0
- data/CHANGELOG.md +47 -0
- data/CLAUDE.md +89 -0
- data/Gemfile +10 -0
- data/Gemfile.lock +158 -0
- data/LICENSE.txt +21 -0
- data/README.md +223 -0
- data/Rakefile +8 -0
- data/lex-slack.gemspec +36 -0
- data/lib/legion/extensions/slack/actors/message_poller.rb +80 -0
- data/lib/legion/extensions/slack/client.rb +51 -0
- data/lib/legion/extensions/slack/helpers/client.rb +30 -0
- data/lib/legion/extensions/slack/runners/blocks.rb +97 -0
- data/lib/legion/extensions/slack/runners/bookmarks.rb +46 -0
- data/lib/legion/extensions/slack/runners/chat.rb +63 -0
- data/lib/legion/extensions/slack/runners/conversations.rb +104 -0
- data/lib/legion/extensions/slack/runners/files.rb +57 -0
- data/lib/legion/extensions/slack/runners/pins.rb +33 -0
- data/lib/legion/extensions/slack/runners/reactions.rb +43 -0
- data/lib/legion/extensions/slack/runners/reminders.rb +47 -0
- data/lib/legion/extensions/slack/runners/search.rb +35 -0
- data/lib/legion/extensions/slack/runners/usergroups.rb +67 -0
- data/lib/legion/extensions/slack/runners/users.rb +48 -0
- data/lib/legion/extensions/slack/runners/views.rb +41 -0
- data/lib/legion/extensions/slack/version.rb +9 -0
- data/lib/legion/extensions/slack.rb +26 -0
- metadata +81 -40
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Legion
|
|
4
|
+
module Extensions
|
|
5
|
+
module Slack
|
|
6
|
+
module Runners
|
|
7
|
+
module Reminders
|
|
8
|
+
include Helpers::Client
|
|
9
|
+
|
|
10
|
+
def add_reminder(text:, time:, token: nil, user: nil, **)
|
|
11
|
+
payload = { text: text, time: time }
|
|
12
|
+
payload[:user] = user if user
|
|
13
|
+
conn = api_connection(token: token, **)
|
|
14
|
+
resp = conn.post('reminders.add', payload)
|
|
15
|
+
{ ok: resp.body['ok'], reminder: resp.body['reminder'] }
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def complete_reminder(reminder:, token: nil, **)
|
|
19
|
+
conn = api_connection(token: token, **)
|
|
20
|
+
resp = conn.post('reminders.complete', { reminder: reminder })
|
|
21
|
+
{ ok: resp.body['ok'] }
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def delete_reminder(reminder:, token: nil, **)
|
|
25
|
+
conn = api_connection(token: token, **)
|
|
26
|
+
resp = conn.post('reminders.delete', { reminder: reminder })
|
|
27
|
+
{ ok: resp.body['ok'] }
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def reminder_info(reminder:, token: nil, **)
|
|
31
|
+
conn = api_connection(token: token, **)
|
|
32
|
+
resp = conn.get('reminders.info', { reminder: reminder })
|
|
33
|
+
{ ok: resp.body['ok'], reminder: resp.body['reminder'] }
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def list_reminders(token: nil, **)
|
|
37
|
+
conn = api_connection(token: token, **)
|
|
38
|
+
resp = conn.get('reminders.list', {})
|
|
39
|
+
{ ok: resp.body['ok'], reminders: resp.body['reminders'] }
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Legion
|
|
4
|
+
module Extensions
|
|
5
|
+
module Slack
|
|
6
|
+
module Runners
|
|
7
|
+
module Search
|
|
8
|
+
include Helpers::Client
|
|
9
|
+
|
|
10
|
+
def search_messages(query:, token: nil, sort: nil, sort_dir: nil, cursor: nil, count: 20, **)
|
|
11
|
+
params = { query: query, count: count }
|
|
12
|
+
params[:sort] = sort if sort
|
|
13
|
+
params[:sort_dir] = sort_dir if sort_dir
|
|
14
|
+
params[:cursor] = cursor if cursor
|
|
15
|
+
conn = api_connection(token: token, **)
|
|
16
|
+
resp = conn.get('search.messages', params)
|
|
17
|
+
{ ok: resp.body['ok'], messages: resp.body['messages'] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def search_files(query:, token: nil, sort: nil, sort_dir: nil, cursor: nil, count: 20, **)
|
|
21
|
+
params = { query: query, count: count }
|
|
22
|
+
params[:sort] = sort if sort
|
|
23
|
+
params[:sort_dir] = sort_dir if sort_dir
|
|
24
|
+
params[:cursor] = cursor if cursor
|
|
25
|
+
conn = api_connection(token: token, **)
|
|
26
|
+
resp = conn.get('search.files', params)
|
|
27
|
+
{ ok: resp.body['ok'], files: resp.body['files'] }
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Legion
|
|
4
|
+
module Extensions
|
|
5
|
+
module Slack
|
|
6
|
+
module Runners
|
|
7
|
+
module Usergroups
|
|
8
|
+
include Helpers::Client
|
|
9
|
+
|
|
10
|
+
def list_usergroups(token: nil, include_users: false, include_disabled: false, **)
|
|
11
|
+
conn = api_connection(token: token, **)
|
|
12
|
+
resp = conn.get('usergroups.list',
|
|
13
|
+
{ include_users: include_users, include_disabled: include_disabled })
|
|
14
|
+
{ ok: resp.body['ok'], usergroups: resp.body['usergroups'] }
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def create_usergroup(name:, token: nil, handle: nil, description: nil, channels: nil, **)
|
|
18
|
+
payload = { name: name }
|
|
19
|
+
payload[:handle] = handle if handle
|
|
20
|
+
payload[:description] = description if description
|
|
21
|
+
payload[:channels] = channels if channels
|
|
22
|
+
conn = api_connection(token: token, **)
|
|
23
|
+
resp = conn.post('usergroups.create', payload)
|
|
24
|
+
{ ok: resp.body['ok'], usergroup: resp.body['usergroup'] }
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def update_usergroup(usergroup:, token: nil, name: nil, handle: nil, description: nil, channels: nil, **)
|
|
28
|
+
payload = { usergroup: usergroup }
|
|
29
|
+
payload[:name] = name if name
|
|
30
|
+
payload[:handle] = handle if handle
|
|
31
|
+
payload[:description] = description if description
|
|
32
|
+
payload[:channels] = channels if channels
|
|
33
|
+
conn = api_connection(token: token, **)
|
|
34
|
+
resp = conn.post('usergroups.update', payload)
|
|
35
|
+
{ ok: resp.body['ok'], usergroup: resp.body['usergroup'] }
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def disable_usergroup(usergroup:, token: nil, **)
|
|
39
|
+
conn = api_connection(token: token, **)
|
|
40
|
+
resp = conn.post('usergroups.disable', { usergroup: usergroup })
|
|
41
|
+
{ ok: resp.body['ok'], usergroup: resp.body['usergroup'] }
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def enable_usergroup(usergroup:, token: nil, **)
|
|
45
|
+
conn = api_connection(token: token, **)
|
|
46
|
+
resp = conn.post('usergroups.enable', { usergroup: usergroup })
|
|
47
|
+
{ ok: resp.body['ok'], usergroup: resp.body['usergroup'] }
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def list_usergroup_users(usergroup:, token: nil, **)
|
|
51
|
+
conn = api_connection(token: token, **)
|
|
52
|
+
resp = conn.get('usergroups.users.list', { usergroup: usergroup })
|
|
53
|
+
{ ok: resp.body['ok'], users: resp.body['users'] }
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def update_usergroup_users(usergroup:, users:, token: nil, **)
|
|
57
|
+
conn = api_connection(token: token, **)
|
|
58
|
+
resp = conn.post('usergroups.users.update', { usergroup: usergroup, users: users })
|
|
59
|
+
{ ok: resp.body['ok'], usergroup: resp.body['usergroup'] }
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Legion
|
|
4
|
+
module Extensions
|
|
5
|
+
module Slack
|
|
6
|
+
module Runners
|
|
7
|
+
module Users
|
|
8
|
+
include Helpers::Client
|
|
9
|
+
|
|
10
|
+
def list_users(token: nil, cursor: nil, limit: 200, **)
|
|
11
|
+
params = { limit: limit }
|
|
12
|
+
params[:cursor] = cursor if cursor
|
|
13
|
+
conn = api_connection(token: token, **)
|
|
14
|
+
resp = conn.get('users.list', params)
|
|
15
|
+
{ ok: resp.body['ok'], members: resp.body['members'],
|
|
16
|
+
response_metadata: resp.body['response_metadata'] }
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def user_info(user:, token: nil, **)
|
|
20
|
+
conn = api_connection(token: token, **)
|
|
21
|
+
resp = conn.get('users.info', { user: user })
|
|
22
|
+
{ ok: resp.body['ok'], user: resp.body['user'] }
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def lookup_by_email(email:, token: nil, **)
|
|
26
|
+
conn = api_connection(token: token, **)
|
|
27
|
+
resp = conn.get('users.lookupByEmail', { email: email })
|
|
28
|
+
{ ok: resp.body['ok'], user: resp.body['user'] }
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def get_presence(user:, token: nil, **)
|
|
32
|
+
conn = api_connection(token: token, **)
|
|
33
|
+
resp = conn.get('users.getPresence', { user: user })
|
|
34
|
+
{ ok: resp.body['ok'], presence: resp.body['presence'] }
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def set_presence(presence:, token: nil, **)
|
|
38
|
+
conn = api_connection(token: token, **)
|
|
39
|
+
resp = conn.post('users.setPresence', { presence: presence })
|
|
40
|
+
{ ok: resp.body['ok'] }
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Legion
|
|
4
|
+
module Extensions
|
|
5
|
+
module Slack
|
|
6
|
+
module Runners
|
|
7
|
+
module Views
|
|
8
|
+
include Helpers::Client
|
|
9
|
+
|
|
10
|
+
def open_view(trigger_id:, view:, token: nil, **)
|
|
11
|
+
conn = api_connection(token: token, **)
|
|
12
|
+
resp = conn.post('views.open', { trigger_id: trigger_id, view: view })
|
|
13
|
+
{ ok: resp.body['ok'], view: resp.body['view'] }
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def push_view(trigger_id:, view:, token: nil, **)
|
|
17
|
+
conn = api_connection(token: token, **)
|
|
18
|
+
resp = conn.post('views.push', { trigger_id: trigger_id, view: view })
|
|
19
|
+
{ ok: resp.body['ok'], view: resp.body['view'] }
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def update_view(view_id:, view:, token: nil, hash: nil, **)
|
|
23
|
+
payload = { view_id: view_id, view: view }
|
|
24
|
+
payload[:hash] = hash if hash
|
|
25
|
+
conn = api_connection(token: token, **)
|
|
26
|
+
resp = conn.post('views.update', payload)
|
|
27
|
+
{ ok: resp.body['ok'], view: resp.body['view'] }
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def publish_view(user_id:, view:, token: nil, **)
|
|
31
|
+
conn = api_connection(token: token, **)
|
|
32
|
+
resp = conn.post('views.publish', { user_id: user_id, view: view })
|
|
33
|
+
{ ok: resp.body['ok'], view: resp.body['view'] }
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'legion/extensions/slack/version'
|
|
4
|
+
require 'legion/extensions/slack/helpers/client'
|
|
5
|
+
require 'legion/extensions/slack/runners/blocks'
|
|
6
|
+
require 'legion/extensions/slack/runners/chat'
|
|
7
|
+
require 'legion/extensions/slack/runners/conversations'
|
|
8
|
+
require 'legion/extensions/slack/runners/users'
|
|
9
|
+
require 'legion/extensions/slack/runners/reactions'
|
|
10
|
+
require 'legion/extensions/slack/runners/files'
|
|
11
|
+
require 'legion/extensions/slack/runners/pins'
|
|
12
|
+
require 'legion/extensions/slack/runners/bookmarks'
|
|
13
|
+
require 'legion/extensions/slack/runners/reminders'
|
|
14
|
+
require 'legion/extensions/slack/runners/usergroups'
|
|
15
|
+
require 'legion/extensions/slack/runners/views'
|
|
16
|
+
require 'legion/extensions/slack/runners/search'
|
|
17
|
+
require 'legion/extensions/slack/actors/message_poller'
|
|
18
|
+
require 'legion/extensions/slack/client'
|
|
19
|
+
|
|
20
|
+
module Legion
|
|
21
|
+
module Extensions
|
|
22
|
+
module Slack
|
|
23
|
+
extend Legion::Extensions::Core if Legion::Extensions.const_defined? :Core
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
metadata
CHANGED
|
@@ -1,130 +1,172 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lex-slack
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1
|
|
4
|
+
version: 0.3.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Esity
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
|
-
name:
|
|
13
|
+
name: faraday
|
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
|
16
15
|
requirements:
|
|
17
16
|
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '0'
|
|
20
|
-
type: :
|
|
18
|
+
version: '2.0'
|
|
19
|
+
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - ">="
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '0'
|
|
25
|
+
version: '2.0'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
27
|
+
name: legion-cache
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
30
29
|
requirements:
|
|
31
30
|
- - ">="
|
|
32
31
|
- !ruby/object:Gem::Version
|
|
33
|
-
version:
|
|
34
|
-
type: :
|
|
32
|
+
version: 1.3.11
|
|
33
|
+
type: :runtime
|
|
35
34
|
prerelease: false
|
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
36
|
requirements:
|
|
38
37
|
- - ">="
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
|
-
version:
|
|
39
|
+
version: 1.3.11
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
41
|
+
name: legion-crypt
|
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
|
44
43
|
requirements:
|
|
45
44
|
- - ">="
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
|
-
version:
|
|
48
|
-
type: :
|
|
46
|
+
version: 1.4.9
|
|
47
|
+
type: :runtime
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
51
|
- - ">="
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version:
|
|
53
|
+
version: 1.4.9
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
55
|
+
name: legion-data
|
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
|
58
57
|
requirements:
|
|
59
58
|
- - ">="
|
|
60
59
|
- !ruby/object:Gem::Version
|
|
61
|
-
version:
|
|
62
|
-
type: :
|
|
60
|
+
version: 1.4.17
|
|
61
|
+
type: :runtime
|
|
63
62
|
prerelease: false
|
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
64
|
requirements:
|
|
66
65
|
- - ">="
|
|
67
66
|
- !ruby/object:Gem::Version
|
|
68
|
-
version:
|
|
67
|
+
version: 1.4.17
|
|
69
68
|
- !ruby/object:Gem::Dependency
|
|
70
|
-
name:
|
|
69
|
+
name: legion-json
|
|
70
|
+
requirement: !ruby/object:Gem::Requirement
|
|
71
|
+
requirements:
|
|
72
|
+
- - ">="
|
|
73
|
+
- !ruby/object:Gem::Version
|
|
74
|
+
version: 1.2.1
|
|
75
|
+
type: :runtime
|
|
76
|
+
prerelease: false
|
|
77
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
78
|
+
requirements:
|
|
79
|
+
- - ">="
|
|
80
|
+
- !ruby/object:Gem::Version
|
|
81
|
+
version: 1.2.1
|
|
82
|
+
- !ruby/object:Gem::Dependency
|
|
83
|
+
name: legion-logging
|
|
71
84
|
requirement: !ruby/object:Gem::Requirement
|
|
72
85
|
requirements:
|
|
73
86
|
- - ">="
|
|
74
87
|
- !ruby/object:Gem::Version
|
|
75
|
-
version:
|
|
88
|
+
version: 1.3.2
|
|
76
89
|
type: :runtime
|
|
77
90
|
prerelease: false
|
|
78
91
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
92
|
requirements:
|
|
80
93
|
- - ">="
|
|
81
94
|
- !ruby/object:Gem::Version
|
|
82
|
-
version:
|
|
95
|
+
version: 1.3.2
|
|
83
96
|
- !ruby/object:Gem::Dependency
|
|
84
|
-
name:
|
|
97
|
+
name: legion-settings
|
|
85
98
|
requirement: !ruby/object:Gem::Requirement
|
|
86
99
|
requirements:
|
|
87
100
|
- - ">="
|
|
88
101
|
- !ruby/object:Gem::Version
|
|
89
|
-
version:
|
|
102
|
+
version: 1.3.14
|
|
90
103
|
type: :runtime
|
|
91
104
|
prerelease: false
|
|
92
105
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
106
|
requirements:
|
|
94
107
|
- - ">="
|
|
95
108
|
- !ruby/object:Gem::Version
|
|
96
|
-
version:
|
|
109
|
+
version: 1.3.14
|
|
97
110
|
- !ruby/object:Gem::Dependency
|
|
98
|
-
name:
|
|
111
|
+
name: legion-transport
|
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
|
100
113
|
requirements:
|
|
101
114
|
- - ">="
|
|
102
115
|
- !ruby/object:Gem::Version
|
|
103
|
-
version:
|
|
116
|
+
version: 1.3.9
|
|
104
117
|
type: :runtime
|
|
105
118
|
prerelease: false
|
|
106
119
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
120
|
requirements:
|
|
108
121
|
- - ">="
|
|
109
122
|
- !ruby/object:Gem::Version
|
|
110
|
-
version:
|
|
111
|
-
description: Connects Legion to Slack
|
|
123
|
+
version: 1.3.9
|
|
124
|
+
description: Connects Legion to Slack via Web API and incoming webhooks
|
|
112
125
|
email:
|
|
113
126
|
- matthewdiverson@gmail.com
|
|
114
127
|
executables: []
|
|
115
128
|
extensions: []
|
|
116
129
|
extra_rdoc_files: []
|
|
117
|
-
files:
|
|
118
|
-
|
|
130
|
+
files:
|
|
131
|
+
- ".github/workflows/ci.yml"
|
|
132
|
+
- ".gitignore"
|
|
133
|
+
- ".rspec"
|
|
134
|
+
- ".rubocop.yml"
|
|
135
|
+
- CHANGELOG.md
|
|
136
|
+
- CLAUDE.md
|
|
137
|
+
- Gemfile
|
|
138
|
+
- Gemfile.lock
|
|
139
|
+
- LICENSE.txt
|
|
140
|
+
- README.md
|
|
141
|
+
- Rakefile
|
|
142
|
+
- lex-slack.gemspec
|
|
143
|
+
- lib/legion/extensions/slack.rb
|
|
144
|
+
- lib/legion/extensions/slack/actors/message_poller.rb
|
|
145
|
+
- lib/legion/extensions/slack/client.rb
|
|
146
|
+
- lib/legion/extensions/slack/helpers/client.rb
|
|
147
|
+
- lib/legion/extensions/slack/runners/blocks.rb
|
|
148
|
+
- lib/legion/extensions/slack/runners/bookmarks.rb
|
|
149
|
+
- lib/legion/extensions/slack/runners/chat.rb
|
|
150
|
+
- lib/legion/extensions/slack/runners/conversations.rb
|
|
151
|
+
- lib/legion/extensions/slack/runners/files.rb
|
|
152
|
+
- lib/legion/extensions/slack/runners/pins.rb
|
|
153
|
+
- lib/legion/extensions/slack/runners/reactions.rb
|
|
154
|
+
- lib/legion/extensions/slack/runners/reminders.rb
|
|
155
|
+
- lib/legion/extensions/slack/runners/search.rb
|
|
156
|
+
- lib/legion/extensions/slack/runners/usergroups.rb
|
|
157
|
+
- lib/legion/extensions/slack/runners/users.rb
|
|
158
|
+
- lib/legion/extensions/slack/runners/views.rb
|
|
159
|
+
- lib/legion/extensions/slack/version.rb
|
|
160
|
+
homepage: https://github.com/LegionIO/lex-slack
|
|
119
161
|
licenses:
|
|
120
162
|
- MIT
|
|
121
163
|
metadata:
|
|
122
|
-
homepage_uri: https://
|
|
123
|
-
source_code_uri: https://
|
|
124
|
-
documentation_uri: https://
|
|
125
|
-
changelog_uri: https://
|
|
126
|
-
bug_tracker_uri: https://
|
|
127
|
-
|
|
164
|
+
homepage_uri: https://github.com/LegionIO/lex-slack
|
|
165
|
+
source_code_uri: https://github.com/LegionIO/lex-slack
|
|
166
|
+
documentation_uri: https://github.com/LegionIO/lex-slack
|
|
167
|
+
changelog_uri: https://github.com/LegionIO/lex-slack
|
|
168
|
+
bug_tracker_uri: https://github.com/LegionIO/lex-slack/issues
|
|
169
|
+
rubygems_mfa_required: 'true'
|
|
128
170
|
rdoc_options: []
|
|
129
171
|
require_paths:
|
|
130
172
|
- lib
|
|
@@ -132,15 +174,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
132
174
|
requirements:
|
|
133
175
|
- - ">="
|
|
134
176
|
- !ruby/object:Gem::Version
|
|
135
|
-
version:
|
|
177
|
+
version: '3.4'
|
|
136
178
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
137
179
|
requirements:
|
|
138
180
|
- - ">="
|
|
139
181
|
- !ruby/object:Gem::Version
|
|
140
182
|
version: '0'
|
|
141
183
|
requirements: []
|
|
142
|
-
rubygems_version: 3.
|
|
143
|
-
signing_key:
|
|
184
|
+
rubygems_version: 3.6.9
|
|
144
185
|
specification_version: 4
|
|
145
186
|
summary: LEX::Slack
|
|
146
187
|
test_files: []
|