mural-ruby 0.2.0 → 0.3.0

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: c96aa829320e65007b67de1032c65f7e29ca09fc81065db1aceef1329f599d85
4
- data.tar.gz: 9fdfb66565796a17c330b95c687c71b1d96d2c9c15d0221860d57bcd683524f8
3
+ metadata.gz: f540a98335efdfc065158e8b7ebd6aac3644516f954ed4609c2f00ad2e2be246
4
+ data.tar.gz: cb8f4c1b30e43f3095ea087ea5ab32c82d4fd06a755e1c9c1463ed4224b5f995
5
5
  SHA512:
6
- metadata.gz: e4525e0df9345817de48a1d114defb147743b94ec6dcebfb026257aef7464b2d465172edbcd19b645c48e254cc47fdc2eaa312b547d5ad3eb16bbeea5db99ee6
7
- data.tar.gz: b40ef34256eda180e34dcebfc2d88c02737a892dc467cb02f545118fc291d8fcbcc702cd0d0f5320187f1285750cf3f4c0ac931f069aa11d9f192ecbfc5bfbdd
6
+ metadata.gz: d4fee2a84d4edeaeca9ee626ef776fb19355dd3d54ef805d7a315010eb3920a7dbea8f4ae0745c724f742a54110c8b40296d4187b971ae1ca3e9c95f2645020f
7
+ data.tar.gz: 731b007f44680abb410a4358e507b7b53e9cc9cbbcb062393fa6e28ed8cd58aae93d4763014164707f9f212dcc6caa57251bbaf8ebb8189ae7a0c8c49b322049
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Mural
4
+ class Client
5
+ class MuralContent
6
+ module Arrows
7
+ # https://developers.mural.co/public/reference/createarrow
8
+ def create_arrow(mural_id, create_arrow_params)
9
+ json = post(
10
+ "/api/public/v1/murals/#{mural_id}/widgets/arrow",
11
+ create_arrow_params.encode
12
+ )
13
+
14
+ Mural::Widget::Arrow.decode(json['value'])
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -5,6 +5,7 @@ module Mural
5
5
  class MuralContent
6
6
  extend Forwardable
7
7
 
8
+ include Arrows
8
9
  include Chats
9
10
  include FacilitationFeatures
10
11
  include Files
data/lib/mural/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Mural
4
- VERSION = '0.2.0'
4
+ VERSION = '0.3.0'
5
5
  end
@@ -88,6 +88,13 @@ module Mural
88
88
  end
89
89
  end
90
90
 
91
+ def encode
92
+ super.tap do |json|
93
+ json['format'] = json['format']&.encode
94
+ json['labels']&.map!(&:encode)
95
+ end.compact
96
+ end
97
+
91
98
  class Format
92
99
  include Mural::Codec
93
100
 
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Mural
4
+ class Widget
5
+ class CreateArrowParams
6
+ include Mural::Codec
7
+
8
+ # https://developers.mural.co/public/reference/createarrow
9
+ define_attributes(
10
+ **Mural::Widget::Arrow.attrs.reject do |attr|
11
+ %i[
12
+ content_edited_by
13
+ content_edited_on
14
+ created_by
15
+ created_on
16
+ hidden
17
+ hide_editor
18
+ hide_owner
19
+ id
20
+ invisible
21
+ locked
22
+ locked_by_facilitator
23
+ type
24
+ updated_by
25
+ updated_on
26
+ ].include? attr
27
+ end
28
+ )
29
+
30
+ def encode
31
+ super.tap do |json|
32
+ json['points']&.map!(&:encode)
33
+ json['label'] = json['label']&.encode
34
+ json['style'] = json['style']&.encode
35
+ end
36
+ end
37
+
38
+ Style = Mural::Widget::Arrow::Style
39
+ Label = Mural::Widget::Arrow::Label
40
+ Point = Mural::Widget::Arrow::Point
41
+ end
42
+ end
43
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mural-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mickaël Pham
@@ -46,6 +46,7 @@ files:
46
46
  - lib/mural/client.rb
47
47
  - lib/mural/client/authentication.rb
48
48
  - lib/mural/client/mural_content.rb
49
+ - lib/mural/client/mural_content/arrows.rb
49
50
  - lib/mural/client/mural_content/chats.rb
50
51
  - lib/mural/client/mural_content/facilitation_features.rb
51
52
  - lib/mural/client/mural_content/files.rb
@@ -100,6 +101,7 @@ files:
100
101
  - lib/mural/widget/area.rb
101
102
  - lib/mural/widget/arrow.rb
102
103
  - lib/mural/widget/comment.rb
104
+ - lib/mural/widget/create_arrow_params.rb
103
105
  - lib/mural/widget/create_file_params.rb
104
106
  - lib/mural/widget/file.rb
105
107
  - lib/mural/widget/icon.rb