hellosign-ruby-sdk 3.2.15 → 3.3.0

Sign up to get free protection for your applications and to get access to all the features.
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.