grape-slack-bot 1.6.5 → 1.6.7

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
  SHA256:
3
- metadata.gz: 6dd62b47329ef32dcdcca944a6e92d61010e99c3521bdc10993a8d7495a5f664
4
- data.tar.gz: 2c8a5746152b33a557567405079a14a9646e4ba7fcb1819a042128c9e2830f7d
3
+ metadata.gz: 6a31fa79061f0f8f494f3c088331f9ca5d176a93f3909bd8719b2f43c4a80b8e
4
+ data.tar.gz: 70f14bbc48bddd7eb690a864603e17683abc9713fabbc59239cfe6e095abef81
5
5
  SHA512:
6
- metadata.gz: 5b2faa38f309c0851235d6528eda0b110f219eed374c7791999f8b3ded2063ca050360d5a312fa1f9cafd56d3e44041c0b1c08e40f9200637007f8350f84c77c
7
- data.tar.gz: 681ebb8c167698b46c8f300491d3097a85809da8584796688f305a783ea64f3d6e5be56cee798338474f081aa25e51241e4a98f4b9de41a3ab7082205c84eaf1
6
+ metadata.gz: 4d85b0261724457c4f1181950ef12a545d093a692f9ac874ff625273b3d45e0425a10047137950886e910b59e48d02791730ea83f062320fd46dbe6438a23685
7
+ data.tar.gz: 790a31890e3d3c79974cbc5809f815932d24954d35174c96ea0b27cce55dc9016b2467b8dc36a4a9253c63bb36e0e9be01476b021b264c617a924382adcb32ac
@@ -43,17 +43,16 @@ module SlackBot
43
43
  view.send(view_name)
44
44
  end
45
45
 
46
- def publish_view(view_method_name, context: nil)
46
+ def publish_view(view_method_name, context: nil, metadata: nil)
47
47
  user_id = params["event"]["user"]
48
48
  view = render_view(view_method_name, context: context)
49
- view = view.merge(callback_id: callback.id) if callback.present?
50
- view = view.merge(private_metadata: metadata) if metadata.present?
51
- response =
52
- SlackBot::ApiClient.new.views_publish(user_id: user_id, view: view)
53
-
54
- if !response.ok?
55
- raise SlackBot::Errors::PublishViewError.new(response.error, data: response.data, payload: view)
56
- end
49
+
50
+ SlackBot::Interaction.publish_view(
51
+ callback: callback,
52
+ metadata: metadata,
53
+ user_id: user_id,
54
+ view: view
55
+ )
57
56
 
58
57
  nil
59
58
  end
@@ -8,8 +8,8 @@ module SlackBot
8
8
 
9
9
  include SlackBot::Concerns::ViewKlass
10
10
 
11
- def self.open_modal(callback:, trigger_id:, payload:)
12
- view = payload.merge({ type: "modal", callback_id: callback.id })
11
+ def self.open_modal(callback:, trigger_id:, view:)
12
+ view = view.merge({ type: "modal", callback_id: callback.id })
13
13
  response =
14
14
  SlackBot::ApiClient.new.views_open(trigger_id: trigger_id, view: view)
15
15
 
@@ -18,13 +18,13 @@ module SlackBot
18
18
  end
19
19
 
20
20
  view_id = response.data.dig("view", "id")
21
- callback.update(view_id: view_id) if view_id.present?
21
+ callback.view_id = view_id if view_id.present?
22
22
 
23
23
  SlackViewsReply.new(callback.id, view_id)
24
24
  end
25
25
 
26
- def self.update_modal(callback:, view_id:, payload:)
27
- view = payload.merge({ type: "modal", callback_id: callback.id })
26
+ def self.update_modal(callback:, view_id:, view:)
27
+ view = view.merge({ type: "modal", callback_id: callback.id })
28
28
  response =
29
29
  SlackBot::ApiClient.new.views_update(view_id: view_id, view: view)
30
30
 
@@ -33,7 +33,23 @@ module SlackBot
33
33
  end
34
34
 
35
35
  view_id = response.data.dig("view", "id")
36
- callback.update(view_id: view_id) if view_id.present?
36
+ callback.view_id = view_id if view_id.present?
37
+
38
+ SlackViewsReply.new(callback.id, view_id)
39
+ end
40
+
41
+ def self.publish_view(callback: nil, metadata: nil, user_id:, view:)
42
+ view = view.merge(callback_id: callback.id) if callback.present?
43
+ view = view.merge(private_metadata: metadata) if metadata.present?
44
+ response =
45
+ SlackBot::ApiClient.new.views_publish(user_id: user_id, view: view)
46
+
47
+ if !response.ok?
48
+ raise SlackBot::Errors::PublishViewError.new(response.error, data: response.data, payload: view)
49
+ end
50
+
51
+ view_id = response.data.dig("view", "id")
52
+ callback.view_id = view_id if view_id.present? && callback.present?
37
53
 
38
54
  SlackViewsReply.new(callback.id, view_id)
39
55
  end
@@ -98,6 +114,20 @@ module SlackBot
98
114
  )
99
115
  end
100
116
 
117
+ def publish_view(view_method_name, context: nil, metadata: nil)
118
+ user_id = payload["user"]["id"]
119
+ view = render_view(view_method_name, context: context)
120
+
121
+ SlackBot::Interaction.publish_view(
122
+ callback: callback,
123
+ metadata: metadata,
124
+ user_id: user_id,
125
+ view: view
126
+ )
127
+
128
+ nil
129
+ end
130
+
101
131
  def update_callback_args(&block)
102
132
  return if callback.blank?
103
133
  return if actions.blank?
@@ -16,7 +16,7 @@ module SlackBot
16
16
  end
17
17
 
18
18
  def method_missing(method_name, *args, &block)
19
- return @context[method_name.to_sym] if @context.key?(method_name.to_sym)
19
+ return @context[method_name.to_sym] if @context.is_a?(Hash) && @context.key?(method_name.to_sym)
20
20
 
21
21
  super
22
22
  end
data/lib/slack_bot.rb CHANGED
@@ -22,5 +22,5 @@ require 'slack_bot/pager'
22
22
  require 'slack_bot/grape_extension'
23
23
 
24
24
  module SlackBot
25
- VERSION = '1.6.5'.freeze
25
+ VERSION = '1.6.7'.freeze
26
26
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-slack-bot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.5
4
+ version: 1.6.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrei Makarov