hellosign-ruby-sdk 3.2.15 → 3.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
  SHA1:
3
- metadata.gz: bc286c2e7deb343afb8db65133aeb5d89999bb6c
4
- data.tar.gz: 3256f9e3bc52d1de408767151018fd3429f18661
3
+ metadata.gz: 27defe774dc5edc27189e7e7035ea4eba0ae8378
4
+ data.tar.gz: 7c3e32790e3d0c1b402aa4f7cb66d4d96ed8afcd
5
5
  SHA512:
6
- metadata.gz: 4dad57320385d7ea26252bb56aafbdf22fe38184f9a89ad7c9767af50831ef77d8a29b2ae209381c09f7b7a5b5b16ffc76c8f83e3e0fe8af2daaeeb2e3977535
7
- data.tar.gz: d0fdcae57723f28d8269aaf2fd589c65ad29ddb3be0b040e5052f3a2b5b13215ecf1d4beca9caf3424f7acb941c7154795921f6cb90337cbc15e2d27c319b9fc
6
+ metadata.gz: fe008cbea3e86b187794b687d5d67875e6c7463a0ea9fb0e1c427d23db3ed831c5b962f1d40815841ff24e3c079649654b420033b4aa292a3d17942ac0bdb3ef
7
+ data.tar.gz: 337c05db297b5955dfa85162e4eabd6f18b639cc42f9665bd8e2de957ac2c94e5ce99111aff767123e538b2d8354154936755c9d252f4112b765d103cfaa3143
@@ -51,6 +51,7 @@ module HelloSign
51
51
  # @option opts [String] template_id The id of the template to get a edit url for
52
52
  # @option opts [Integer] skip_signer_roles Whether editing signer roles should be skipped
53
53
  # @option opts [Integer] skip_subject_message Whether editing subject/message should be skipped
54
+ # @option opts [Array<Hash>] merge_fields Merge fields that can be placed in the template
54
55
  #
55
56
  # @return [HelloSign::Resource::Embedded] Returns an Embedded object
56
57
  # @example
@@ -60,7 +61,9 @@ module HelloSign
60
61
  defaults = { :skip_signer_roles => 0, :skip_subject_message => 0, :test_mode => 0 }
61
62
  opts = defaults.merge(opts)
62
63
 
63
- HelloSign::Resource::Embedded.new get("/embedded/edit_url/#{opts[:template_id]}?skip_signer_roles=#{opts[:skip_signer_roles]}&skip_subject_message=#{opts[:skip_subject_message]}&test_mode=#{opts[:test_mode]}")
64
+ prepare_merge_fields opts
65
+
66
+ HelloSign::Resource::Embedded.new post("/embedded/edit_url/#{opts[:template_id]}", :body => opts)
64
67
  end
65
68
  end
66
69
  end
@@ -67,7 +67,8 @@ module HelloSign
67
67
  opts[:query] = create_search_string(opts[:query]) if opts[:query]
68
68
  query = create_query_string(opts, [:page, :page_size, :ux_version, :query])
69
69
  path += query
70
- HelloSign::Resource::ResourceArray.new get(path, opts), 'signature_requests', HelloSign::Resource::SignatureRequest
70
+ HelloSign::Resource::ResourceArray.new get(path, opts), 'signature_requests', HelloSign::Resource::SignatureRequest
71
+
71
72
  end
72
73
 
73
74
  #
@@ -235,6 +236,16 @@ module HelloSign
235
236
  post("/signature_request/cancel/#{opts[:signature_request_id]}", :body => opts)
236
237
  end
237
238
 
239
+ #
240
+ # Removes your access to a completed a SignatureRequest.
241
+ # @option opts [String] signature_request_id The id of the SignatureRequest to remove.
242
+ #
243
+ # @example
244
+ # @client.remove_signature_request :signature_request_id => '75cdf7dc8b323d43b347e4a3614d1f822bd09491'
245
+ def remove_signature_request(opts)
246
+ post("/signature_request/remove/#{opts[:signature_request_id]}", :body => opts)
247
+ end
248
+
238
249
  #
239
250
  # Download the PDF copy of the current documents specified by the signature_request_id parameter.
240
251
  # @option opts [String] file_type Either 'pdf' or 'zip' depending on the file type desired. Defaults to pdf.
@@ -287,10 +287,6 @@ module HelloSign
287
287
  prepare opts, :template_ids
288
288
  end
289
289
 
290
- def prepare_cc_roles(opts)
291
- prepare opts, :merge_fields
292
- end
293
-
294
290
  def prepare_signer_roles(opts)
295
291
  prepare opts, :signer_roles
296
292
  end
@@ -302,6 +298,13 @@ module HelloSign
302
298
  #ignore if it's already a string, or not present
303
299
  end
304
300
 
301
+ def prepare_merge_fields(opts)
302
+ if (opts[:merge_fields] and opts[:merge_fields].is_a? Array)
303
+ opts[:merge_fields] = MultiJson.dump(opts[:merge_fields])
304
+ end
305
+ #ignore if it's already a string, or not present
306
+ end
307
+
305
308
  def prepare(opts, key)
306
309
  return unless opts[key]
307
310
  opts[key].each_with_index do |value, index|
@@ -47,9 +47,13 @@ module HelloSign
47
47
  @num_results = hash['list_info']['num_results']
48
48
  @page_size = hash['list_info']['page_size']
49
49
  @warnings = hash['warnings'] ? hash['warnings'] : nil
50
- hash[key] && hash[key].each do |resouce|
51
- self << resource_class.new(resouce, nil)
50
+
51
+ self << resource_class.new(hash, nil)
52
+
53
+ hash[key] && hash[key].each do |resource|
54
+ self << resource_class.new(resource, nil)
52
55
  end
56
+
53
57
  end
54
58
  end
55
59
  end
@@ -23,5 +23,5 @@
23
23
  #
24
24
 
25
25
  module HelloSign
26
- VERSION = '3.2.15'
26
+ VERSION = '3.3.0'
27
27
  end
@@ -33,6 +33,14 @@ describe HelloSign::Api::SignatureRequest do
33
33
  it 'each of Array is an SignatureRequest' do
34
34
  expect(@signature_requests[0]).to be_an HelloSign::Resource::SignatureRequest
35
35
  end
36
+
37
+ it 'should return list_info as a BaseResource in results' do
38
+ expect(@signature_requests[0].list_info).to be_an HelloSign::Resource::BaseResource
39
+ end
40
+
41
+ it 'should return page numbers as an integer' do
42
+ expect(@signature_requests[0].list_info.page).to be_an Integer
43
+ end
36
44
  end
37
45
 
38
46
  describe '#send_signature_request' do
@@ -79,6 +87,17 @@ describe HelloSign::Api::SignatureRequest do
79
87
  end
80
88
  end
81
89
 
90
+ describe '#remove_signature_request' do
91
+ before do
92
+ stub_post('/signature_request/remove/1', 'signature_request')
93
+ @signature_request = HelloSign.remove_signature_request(:signature_request_id => 1)
94
+ end
95
+
96
+ it 'should get the correct resource' do
97
+ expect(a_post('/signature_request/remove/1')).to have_been_made
98
+ end
99
+ end
100
+
82
101
  describe '#signature_request_files' do
83
102
  before do
84
103
  stub_get('/signature_request/files/1', 'file')
@@ -33,6 +33,14 @@ describe HelloSign::Api::Template do
33
33
  it 'each of Array is an Template' do
34
34
  expect(@template[0]).to be_an HelloSign::Resource::Template
35
35
  end
36
+
37
+ it 'should return list_info as a BaseResource in results' do
38
+ expect(@template[0].list_info).to be_an HelloSign::Resource::BaseResource
39
+ end
40
+
41
+ it 'should return page numbers as an integer' do
42
+ expect(@template[0].list_info.page).to be_an Integer
43
+ end
36
44
  end
37
45
 
38
46
  describe '#add_user_to_template' do
metadata CHANGED
@@ -1,111 +1,111 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hellosign-ruby-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.15
4
+ version: 3.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - HelloSign
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-26 00:00:00.000000000 Z
11
+ date: 2017-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.5'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.5'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: webmock
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - '>='
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: faraday
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - '>='
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: multi_json
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - '>='
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - '>='
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: mime-types
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - '>='
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - '>='
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  description: ''
@@ -114,9 +114,9 @@ executables: []
114
114
  extensions: []
115
115
  extra_rdoc_files: []
116
116
  files:
117
- - ".gitignore"
118
- - ".rspec"
119
- - ".travis.yml"
117
+ - .gitignore
118
+ - .rspec
119
+ - .travis.yml
120
120
  - CONTRIBUTING.md
121
121
  - Gemfile
122
122
  - Guardfile
@@ -188,17 +188,17 @@ require_paths:
188
188
  - lib
189
189
  required_ruby_version: !ruby/object:Gem::Requirement
190
190
  requirements:
191
- - - ">="
191
+ - - '>='
192
192
  - !ruby/object:Gem::Version
193
193
  version: '0'
194
194
  required_rubygems_version: !ruby/object:Gem::Requirement
195
195
  requirements:
196
- - - ">="
196
+ - - '>='
197
197
  - !ruby/object:Gem::Version
198
198
  version: '0'
199
199
  requirements: []
200
200
  rubyforge_project:
201
- rubygems_version: 2.6.11
201
+ rubygems_version: 2.0.14.1
202
202
  signing_key:
203
203
  specification_version: 4
204
204
  summary: A Ruby SDK for the HelloSign API.