dropbox-sign 1.1.1 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -2
- data/README.md +9 -4
- data/VERSION +1 -1
- data/docs/OAuthApi.md +0 -16
- data/docs/SignatureRequestApi.md +1 -1
- data/docs/SignatureRequestCreateEmbeddedRequest.md +1 -1
- data/docs/SignatureRequestSendRequest.md +2 -1
- data/docs/SignatureRequestSendWithTemplateRequest.md +1 -0
- data/docs/SignatureRequestUpdateRequest.md +1 -1
- data/docs/SubFormFieldsPerDocumentBase.md +2 -2
- data/docs/SubFormFieldsPerDocumentDateSigned.md +2 -0
- data/docs/SubFormFieldsPerDocumentDropdown.md +2 -0
- data/docs/SubFormFieldsPerDocumentFontEnum.md +9 -0
- data/docs/SubFormFieldsPerDocumentHyperlink.md +2 -0
- data/docs/SubFormFieldsPerDocumentText.md +3 -0
- data/docs/SubFormFieldsPerDocumentTextMerge.md +2 -0
- data/docs/SubWhiteLabelingOptions.md +1 -1
- data/docs/TemplateApi.md +102 -0
- data/docs/TemplateCreateEmbeddedDraftRequest.md +1 -1
- data/docs/TemplateCreateRequest.md +27 -0
- data/docs/TemplateCreateResponse.md +11 -0
- data/docs/TemplateCreateResponseTemplate.md +10 -0
- data/docs/UnclaimedDraftCreateEmbeddedRequest.md +1 -1
- data/docs/UnclaimedDraftCreateRequest.md +1 -1
- data/examples/OauthTokenGenerate.rb +0 -8
- data/examples/OauthTokenRefresh.rb +0 -8
- data/examples/TemplateCreate.rb +49 -0
- data/lib/dropbox-sign/api/signature_request_api.rb +2 -2
- data/lib/dropbox-sign/api/template_api.rb +109 -0
- data/lib/dropbox-sign/configuration.rb +1 -1
- data/lib/dropbox-sign/models/signature_request_create_embedded_request.rb +1 -1
- data/lib/dropbox-sign/models/signature_request_send_request.rb +15 -2
- data/lib/dropbox-sign/models/signature_request_send_with_template_request.rb +14 -1
- data/lib/dropbox-sign/models/signature_request_update_request.rb +1 -1
- data/lib/dropbox-sign/models/sub_form_fields_per_document_base.rb +2 -2
- data/lib/dropbox-sign/models/sub_form_fields_per_document_date_signed.rb +60 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_dropdown.rb +60 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_font_enum.rb +54 -0
- data/lib/dropbox-sign/models/sub_form_fields_per_document_hyperlink.rb +60 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_text.rb +49 -4
- data/lib/dropbox-sign/models/sub_form_fields_per_document_text_merge.rb +60 -4
- data/lib/dropbox-sign/models/sub_white_labeling_options.rb +1 -1
- data/lib/dropbox-sign/models/template_create_embedded_draft_request.rb +1 -1
- data/lib/dropbox-sign/models/template_create_request.rb +509 -0
- data/lib/dropbox-sign/models/template_create_response.rb +263 -0
- data/lib/dropbox-sign/models/template_create_response_template.rb +252 -0
- data/lib/dropbox-sign/models/unclaimed_draft_create_embedded_request.rb +1 -1
- data/lib/dropbox-sign/models/unclaimed_draft_create_request.rb +1 -1
- data/lib/dropbox-sign/version.rb +1 -1
- data/lib/dropbox-sign.rb +4 -0
- data/openapi-config.yaml +1 -1
- data/openapi-sdk.yaml +1673 -1261
- data/spec/configuration_spec.rb +5 -7
- data/templates/configuration.mustache +1 -1
- data/templates/configuration_spec.mustache +5 -7
- data/test_fixtures/SignatureRequestCreateEmbeddedRequest.json +6 -2
- data/test_fixtures/SignatureRequestSendRequest.json +8 -2
- data/test_fixtures/SignatureRequestSendWithTemplateRequest.json +1 -0
- data/test_fixtures/TemplateCreateEmbeddedDraftRequest.json +3 -1
- data/test_fixtures/TemplateCreateRequest.json +120 -0
- data/test_fixtures/TemplateCreateResponse.json +7 -0
- data/test_fixtures/UnclaimedDraftCreateEmbeddedRequest.json +3 -1
- data/test_fixtures/UnclaimedDraftCreateRequest.json +3 -1
- metadata +23 -12
@@ -137,6 +137,115 @@ module Dropbox::Sign
|
|
137
137
|
return data, status_code, headers
|
138
138
|
end
|
139
139
|
|
140
|
+
# Create Template
|
141
|
+
# Creates a template that can then be used.
|
142
|
+
# @param template_create_request [TemplateCreateRequest]
|
143
|
+
# @param [Hash] opts the optional parameters
|
144
|
+
# @return [TemplateCreateResponse]
|
145
|
+
def template_create(template_create_request, opts = {})
|
146
|
+
data, _status_code, _headers = template_create_with_http_info(template_create_request, opts)
|
147
|
+
data
|
148
|
+
end
|
149
|
+
|
150
|
+
# Create Template
|
151
|
+
# Creates a template that can then be used.
|
152
|
+
# @param template_create_request [TemplateCreateRequest]
|
153
|
+
# @param [Hash] opts the optional parameters
|
154
|
+
# @return [Array<(TemplateCreateResponse, Integer, Hash)>] TemplateCreateResponse data, response status code and response headers
|
155
|
+
def template_create_with_http_info(template_create_request, opts = {})
|
156
|
+
if @api_client.config.debugging
|
157
|
+
@api_client.config.logger.debug 'Calling API: TemplateApi.template_create ...'
|
158
|
+
end
|
159
|
+
# verify the required parameter 'template_create_request' is set
|
160
|
+
if @api_client.config.client_side_validation && template_create_request.nil?
|
161
|
+
fail ArgumentError, "Missing the required parameter 'template_create_request' when calling TemplateApi.template_create"
|
162
|
+
end
|
163
|
+
# resource path
|
164
|
+
local_var_path = '/template/create'
|
165
|
+
|
166
|
+
# query parameters
|
167
|
+
query_params = opts[:query_params] || {}
|
168
|
+
|
169
|
+
# header parameters
|
170
|
+
header_params = opts[:header_params] || {}
|
171
|
+
# HTTP header 'Accept' (if needed)
|
172
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
173
|
+
# HTTP header 'Content-Type'
|
174
|
+
content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data'])
|
175
|
+
if !content_type.nil?
|
176
|
+
header_params['Content-Type'] = content_type
|
177
|
+
end
|
178
|
+
|
179
|
+
post_body = {}
|
180
|
+
form_params = opts[:form_params] || {}
|
181
|
+
result = @api_client.generate_form_data(
|
182
|
+
template_create_request,
|
183
|
+
Dropbox::Sign::TemplateCreateRequest.openapi_types
|
184
|
+
)
|
185
|
+
|
186
|
+
# form parameters
|
187
|
+
if result[:has_file]
|
188
|
+
form_params = opts[:form_params] || result[:params]
|
189
|
+
header_params['Content-Type'] = 'multipart/form-data'
|
190
|
+
else
|
191
|
+
# http body (model)
|
192
|
+
post_body = opts[:debug_body] || result[:params]
|
193
|
+
end
|
194
|
+
|
195
|
+
# return_type
|
196
|
+
return_type = opts[:debug_return_type] || 'TemplateCreateResponse'
|
197
|
+
|
198
|
+
# auth_names
|
199
|
+
auth_names = opts[:debug_auth_names] || ['api_key', 'oauth2']
|
200
|
+
|
201
|
+
new_options = opts.merge(
|
202
|
+
:operation => :"TemplateApi.template_create",
|
203
|
+
:header_params => header_params,
|
204
|
+
:query_params => query_params,
|
205
|
+
:form_params => form_params,
|
206
|
+
:body => post_body,
|
207
|
+
:auth_names => auth_names,
|
208
|
+
:return_type => return_type
|
209
|
+
)
|
210
|
+
|
211
|
+
begin
|
212
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
213
|
+
rescue Dropbox::Sign::ApiError => e
|
214
|
+
if e.code === 200
|
215
|
+
body = @api_client.convert_to_type(
|
216
|
+
JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0],
|
217
|
+
"Dropbox::Sign::TemplateCreateResponse"
|
218
|
+
)
|
219
|
+
|
220
|
+
fail ApiError.new(:code => e.code,
|
221
|
+
:response_headers => e.response_headers,
|
222
|
+
:response_body => body),
|
223
|
+
e.message
|
224
|
+
end
|
225
|
+
|
226
|
+
range_code = "4XX".split('').first
|
227
|
+
range_code_left = "#{range_code}00".to_i
|
228
|
+
range_code_right = "#{range_code}99".to_i
|
229
|
+
if e.code >= range_code_left && e.code <= range_code_right
|
230
|
+
body = @api_client.convert_to_type(
|
231
|
+
JSON.parse("[#{e.response_body}]", :symbolize_names => true)[0],
|
232
|
+
"Dropbox::Sign::ErrorResponse"
|
233
|
+
)
|
234
|
+
|
235
|
+
fail ApiError.new(:code => e.code,
|
236
|
+
:response_headers => e.response_headers,
|
237
|
+
:response_body => body),
|
238
|
+
e.message
|
239
|
+
end
|
240
|
+
|
241
|
+
end
|
242
|
+
|
243
|
+
if @api_client.config.debugging
|
244
|
+
@api_client.config.logger.debug "API called: TemplateApi#template_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
245
|
+
end
|
246
|
+
return data, status_code, headers
|
247
|
+
end
|
248
|
+
|
140
249
|
# Create Embedded Template Draft
|
141
250
|
# The first step in an embedded template workflow. Creates a draft template that can then be further set up in the template 'edit' stage.
|
142
251
|
# @param template_create_embedded_draft_request [TemplateCreateEmbeddedDraftRequest]
|
@@ -69,7 +69,7 @@ module Dropbox::Sign
|
|
69
69
|
# @return [Array<SubFormFieldRule>]
|
70
70
|
attr_accessor :form_field_rules
|
71
71
|
|
72
|
-
# The fields that should appear on the document, expressed as an array of objects. (
|
72
|
+
# The fields that should appear on the document, expressed as an array of objects. (For more details you can read about it here: [Using Form Fields per Document](/docs/openapi/form-fields-per-document).) **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types. * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge`
|
73
73
|
# @return [Array<SubFormFieldsPerDocumentBase>]
|
74
74
|
attr_accessor :form_fields_per_document
|
75
75
|
|
@@ -69,7 +69,7 @@ module Dropbox::Sign
|
|
69
69
|
# @return [Array<SubFormFieldRule>]
|
70
70
|
attr_accessor :form_field_rules
|
71
71
|
|
72
|
-
# The fields that should appear on the document, expressed as an array of objects. (
|
72
|
+
# The fields that should appear on the document, expressed as an array of objects. (For more details you can read about it here: [Using Form Fields per Document](/docs/openapi/form-fields-per-document).) **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types. * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge`
|
73
73
|
# @return [Array<SubFormFieldsPerDocumentBase>]
|
74
74
|
attr_accessor :form_fields_per_document
|
75
75
|
|
@@ -81,6 +81,10 @@ module Dropbox::Sign
|
|
81
81
|
# @return [Boolean]
|
82
82
|
attr_accessor :is_qualified_signature
|
83
83
|
|
84
|
+
# Send with a value of `true` if you wish to enable [electronic identification (eID)](https://www.hellosign.com/features/electronic-id), which requires the signer to verify their identity with an eID provider to sign a document.<br> **Note**: eID is only available on the Premium API plan. Cannot be used in `test_mode`. Only works on requests with one signer.
|
85
|
+
# @return [Boolean]
|
86
|
+
attr_accessor :is_eid
|
87
|
+
|
84
88
|
# The custom message in the email that will be sent to the signers.
|
85
89
|
# @return [String]
|
86
90
|
attr_accessor :message
|
@@ -135,6 +139,7 @@ module Dropbox::Sign
|
|
135
139
|
:'form_fields_per_document' => :'form_fields_per_document',
|
136
140
|
:'hide_text_tags' => :'hide_text_tags',
|
137
141
|
:'is_qualified_signature' => :'is_qualified_signature',
|
142
|
+
:'is_eid' => :'is_eid',
|
138
143
|
:'message' => :'message',
|
139
144
|
:'metadata' => :'metadata',
|
140
145
|
:'signing_options' => :'signing_options',
|
@@ -176,6 +181,7 @@ module Dropbox::Sign
|
|
176
181
|
:'form_fields_per_document' => :'Array<SubFormFieldsPerDocumentBase>',
|
177
182
|
:'hide_text_tags' => :'Boolean',
|
178
183
|
:'is_qualified_signature' => :'Boolean',
|
184
|
+
:'is_eid' => :'Boolean',
|
179
185
|
:'message' => :'String',
|
180
186
|
:'metadata' => :'Hash<String, Object>',
|
181
187
|
:'signing_options' => :'SubSigningOptions',
|
@@ -322,6 +328,12 @@ module Dropbox::Sign
|
|
322
328
|
self.is_qualified_signature = false
|
323
329
|
end
|
324
330
|
|
331
|
+
if attributes.key?(:'is_eid')
|
332
|
+
self.is_eid = attributes[:'is_eid']
|
333
|
+
else
|
334
|
+
self.is_eid = false
|
335
|
+
end
|
336
|
+
|
325
337
|
if attributes.key?(:'message')
|
326
338
|
self.message = attributes[:'message']
|
327
339
|
end
|
@@ -450,6 +462,7 @@ module Dropbox::Sign
|
|
450
462
|
form_fields_per_document == o.form_fields_per_document &&
|
451
463
|
hide_text_tags == o.hide_text_tags &&
|
452
464
|
is_qualified_signature == o.is_qualified_signature &&
|
465
|
+
is_eid == o.is_eid &&
|
453
466
|
message == o.message &&
|
454
467
|
metadata == o.metadata &&
|
455
468
|
signing_options == o.signing_options &&
|
@@ -470,7 +483,7 @@ module Dropbox::Sign
|
|
470
483
|
# Calculates hash code according to all attributes.
|
471
484
|
# @return [Integer] Hash code
|
472
485
|
def hash
|
473
|
-
[files, file_urls, signers, grouped_signers, allow_decline, allow_reassign, attachments, cc_email_addresses, client_id, custom_fields, field_options, form_field_groups, form_field_rules, form_fields_per_document, hide_text_tags, is_qualified_signature, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title, use_text_tags, expires_at].hash
|
486
|
+
[files, file_urls, signers, grouped_signers, allow_decline, allow_reassign, attachments, cc_email_addresses, client_id, custom_fields, field_options, form_field_groups, form_field_rules, form_fields_per_document, hide_text_tags, is_qualified_signature, is_eid, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title, use_text_tags, expires_at].hash
|
474
487
|
end
|
475
488
|
|
476
489
|
# Builds the object from hash
|
@@ -54,6 +54,10 @@ module Dropbox::Sign
|
|
54
54
|
# @return [Boolean]
|
55
55
|
attr_accessor :is_qualified_signature
|
56
56
|
|
57
|
+
# Send with a value of `true` if you wish to enable [electronic identification (eID)](https://www.hellosign.com/features/electronic-id), which requires the signer to verify their identity with an eID provider to sign a document.<br> **Note**: eID is only available on the Premium API plan. Cannot be used in `test_mode`. Only works on requests with one signer.
|
58
|
+
# @return [Boolean]
|
59
|
+
attr_accessor :is_eid
|
60
|
+
|
57
61
|
# The custom message in the email that will be sent to the signers.
|
58
62
|
# @return [String]
|
59
63
|
attr_accessor :message
|
@@ -93,6 +97,7 @@ module Dropbox::Sign
|
|
93
97
|
:'files' => :'files',
|
94
98
|
:'file_urls' => :'file_urls',
|
95
99
|
:'is_qualified_signature' => :'is_qualified_signature',
|
100
|
+
:'is_eid' => :'is_eid',
|
96
101
|
:'message' => :'message',
|
97
102
|
:'metadata' => :'metadata',
|
98
103
|
:'signing_options' => :'signing_options',
|
@@ -125,6 +130,7 @@ module Dropbox::Sign
|
|
125
130
|
:'files' => :'Array<File>',
|
126
131
|
:'file_urls' => :'Array<String>',
|
127
132
|
:'is_qualified_signature' => :'Boolean',
|
133
|
+
:'is_eid' => :'Boolean',
|
128
134
|
:'message' => :'String',
|
129
135
|
:'metadata' => :'Hash<String, Object>',
|
130
136
|
:'signing_options' => :'SubSigningOptions',
|
@@ -228,6 +234,12 @@ module Dropbox::Sign
|
|
228
234
|
self.is_qualified_signature = false
|
229
235
|
end
|
230
236
|
|
237
|
+
if attributes.key?(:'is_eid')
|
238
|
+
self.is_eid = attributes[:'is_eid']
|
239
|
+
else
|
240
|
+
self.is_eid = false
|
241
|
+
end
|
242
|
+
|
231
243
|
if attributes.key?(:'message')
|
232
244
|
self.message = attributes[:'message']
|
233
245
|
end
|
@@ -349,6 +361,7 @@ module Dropbox::Sign
|
|
349
361
|
files == o.files &&
|
350
362
|
file_urls == o.file_urls &&
|
351
363
|
is_qualified_signature == o.is_qualified_signature &&
|
364
|
+
is_eid == o.is_eid &&
|
352
365
|
message == o.message &&
|
353
366
|
metadata == o.metadata &&
|
354
367
|
signing_options == o.signing_options &&
|
@@ -367,7 +380,7 @@ module Dropbox::Sign
|
|
367
380
|
# Calculates hash code according to all attributes.
|
368
381
|
# @return [Integer] Hash code
|
369
382
|
def hash
|
370
|
-
[template_ids, signers, allow_decline, ccs, client_id, custom_fields, files, file_urls, is_qualified_signature, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title].hash
|
383
|
+
[template_ids, signers, allow_decline, ccs, client_id, custom_fields, files, file_urls, is_qualified_signature, is_eid, message, metadata, signing_options, signing_redirect_url, subject, test_mode, title].hash
|
371
384
|
end
|
372
385
|
|
373
386
|
# Builds the object from hash
|
@@ -22,7 +22,7 @@ module Dropbox::Sign
|
|
22
22
|
# @return [String]
|
23
23
|
attr_accessor :signature_id
|
24
24
|
|
25
|
-
# The new email address for the recipient. **NOTE**: Optional if `name` is provided.
|
25
|
+
# The new email address for the recipient. This will generate a new `signature_id` value. **NOTE**: Optional if `name` is provided.
|
26
26
|
# @return [String]
|
27
27
|
attr_accessor :email_address
|
28
28
|
|
@@ -17,7 +17,7 @@ module Dropbox
|
|
17
17
|
end
|
18
18
|
|
19
19
|
module Dropbox::Sign
|
20
|
-
# The fields that should appear on the document, expressed as an array of objects. (
|
20
|
+
# The fields that should appear on the document, expressed as an array of objects. (For more details you can read about it here: [Using Form Fields per Document](/docs/openapi/form-fields-per-document).) **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types. * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge`
|
21
21
|
class SubFormFieldsPerDocumentBase
|
22
22
|
# Represents the integer index of the `file` or `file_url` document the field should be attached to.
|
23
23
|
# @return [Integer]
|
@@ -35,7 +35,7 @@ module Dropbox::Sign
|
|
35
35
|
# @return [Boolean]
|
36
36
|
attr_accessor :required
|
37
37
|
|
38
|
-
# Signer index identified by the offset in the signers parameter (0-based indexing), indicating which signer should fill out the field. **NOTE**: If type is `text-merge` or `checkbox-merge`, you must set this to sender in order to use pre-filled data.
|
38
|
+
# Signer index identified by the offset in the signers parameter (0-based indexing), indicating which signer should fill out the field. **NOTE**: To set the value of the field as the preparer you must set this to `me_now` **NOTE**: If type is `text-merge` or `checkbox-merge`, you must set this to sender in order to use pre-filled data.
|
39
39
|
# @return [Integer, String]
|
40
40
|
attr_accessor :signer
|
41
41
|
|
@@ -23,10 +23,42 @@ module Dropbox::Sign
|
|
23
23
|
# @return [String]
|
24
24
|
attr_accessor :type
|
25
25
|
|
26
|
+
# Font family for the field.
|
27
|
+
# @return [String]
|
28
|
+
attr_accessor :font_family
|
29
|
+
|
30
|
+
# The initial px font size for the field contents. Can be any integer value between `7` and `49`. **NOTE**: Font size may be reduced during processing in order to fit the contents within the dimensions of the field.
|
31
|
+
# @return [Integer]
|
32
|
+
attr_accessor :font_size
|
33
|
+
|
34
|
+
class EnumAttributeValidator
|
35
|
+
attr_reader :datatype
|
36
|
+
attr_reader :allowable_values
|
37
|
+
|
38
|
+
def initialize(datatype, allowable_values)
|
39
|
+
@allowable_values = allowable_values.map do |value|
|
40
|
+
case datatype.to_s
|
41
|
+
when /Integer/i
|
42
|
+
value.to_i
|
43
|
+
when /Float/i
|
44
|
+
value.to_f
|
45
|
+
else
|
46
|
+
value
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
def valid?(value)
|
52
|
+
!value || allowable_values.include?(value)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
26
56
|
# Attribute mapping from ruby-style variable name to JSON key.
|
27
57
|
def self.attribute_map
|
28
58
|
{
|
29
|
-
:'type' => :'type'
|
59
|
+
:'type' => :'type',
|
60
|
+
:'font_family' => :'font_family',
|
61
|
+
:'font_size' => :'font_size'
|
30
62
|
}
|
31
63
|
end
|
32
64
|
|
@@ -43,7 +75,9 @@ module Dropbox::Sign
|
|
43
75
|
# Attribute type mapping.
|
44
76
|
def self.openapi_types
|
45
77
|
{
|
46
|
-
:'type' => :'String'
|
78
|
+
:'type' => :'String',
|
79
|
+
:'font_family' => :'String',
|
80
|
+
:'font_size' => :'Integer'
|
47
81
|
}
|
48
82
|
end
|
49
83
|
|
@@ -96,6 +130,14 @@ module Dropbox::Sign
|
|
96
130
|
else
|
97
131
|
self.type = 'date_signed'
|
98
132
|
end
|
133
|
+
|
134
|
+
if attributes.key?(:'font_family')
|
135
|
+
self.font_family = attributes[:'font_family']
|
136
|
+
end
|
137
|
+
|
138
|
+
if attributes.key?(:'font_size')
|
139
|
+
self.font_size = attributes[:'font_size']
|
140
|
+
end
|
99
141
|
end
|
100
142
|
|
101
143
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -113,15 +155,29 @@ module Dropbox::Sign
|
|
113
155
|
# @return true if the model is valid
|
114
156
|
def valid?
|
115
157
|
return false if @type.nil?
|
158
|
+
font_family_validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
|
159
|
+
return false unless font_family_validator.valid?(@font_family)
|
116
160
|
true && super
|
117
161
|
end
|
118
162
|
|
163
|
+
# Custom attribute writer method checking allowed values (enum).
|
164
|
+
# @param [Object] font_family Object to be assigned
|
165
|
+
def font_family=(font_family)
|
166
|
+
validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
|
167
|
+
unless validator.valid?(font_family)
|
168
|
+
fail ArgumentError, "invalid value for \"font_family\", must be one of #{validator.allowable_values}."
|
169
|
+
end
|
170
|
+
@font_family = font_family
|
171
|
+
end
|
172
|
+
|
119
173
|
# Checks equality by comparing each attribute.
|
120
174
|
# @param [Object] Object to be compared
|
121
175
|
def ==(o)
|
122
176
|
return true if self.equal?(o)
|
123
177
|
self.class == o.class &&
|
124
|
-
type == o.type &&
|
178
|
+
type == o.type &&
|
179
|
+
font_family == o.font_family &&
|
180
|
+
font_size == o.font_size && super(o)
|
125
181
|
end
|
126
182
|
|
127
183
|
# @see the `==` method
|
@@ -133,7 +189,7 @@ module Dropbox::Sign
|
|
133
189
|
# Calculates hash code according to all attributes.
|
134
190
|
# @return [Integer] Hash code
|
135
191
|
def hash
|
136
|
-
[type].hash
|
192
|
+
[type, font_family, font_size].hash
|
137
193
|
end
|
138
194
|
|
139
195
|
# Builds the object from hash
|
@@ -31,12 +31,44 @@ module Dropbox::Sign
|
|
31
31
|
# @return [String]
|
32
32
|
attr_accessor :content
|
33
33
|
|
34
|
+
# Font family for the field.
|
35
|
+
# @return [String]
|
36
|
+
attr_accessor :font_family
|
37
|
+
|
38
|
+
# The initial px font size for the field contents. Can be any integer value between `7` and `49`. **NOTE**: Font size may be reduced during processing in order to fit the contents within the dimensions of the field.
|
39
|
+
# @return [Integer]
|
40
|
+
attr_accessor :font_size
|
41
|
+
|
42
|
+
class EnumAttributeValidator
|
43
|
+
attr_reader :datatype
|
44
|
+
attr_reader :allowable_values
|
45
|
+
|
46
|
+
def initialize(datatype, allowable_values)
|
47
|
+
@allowable_values = allowable_values.map do |value|
|
48
|
+
case datatype.to_s
|
49
|
+
when /Integer/i
|
50
|
+
value.to_i
|
51
|
+
when /Float/i
|
52
|
+
value.to_f
|
53
|
+
else
|
54
|
+
value
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
def valid?(value)
|
60
|
+
!value || allowable_values.include?(value)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
34
64
|
# Attribute mapping from ruby-style variable name to JSON key.
|
35
65
|
def self.attribute_map
|
36
66
|
{
|
37
67
|
:'type' => :'type',
|
38
68
|
:'options' => :'options',
|
39
|
-
:'content' => :'content'
|
69
|
+
:'content' => :'content',
|
70
|
+
:'font_family' => :'font_family',
|
71
|
+
:'font_size' => :'font_size'
|
40
72
|
}
|
41
73
|
end
|
42
74
|
|
@@ -55,7 +87,9 @@ module Dropbox::Sign
|
|
55
87
|
{
|
56
88
|
:'type' => :'String',
|
57
89
|
:'options' => :'Array<String>',
|
58
|
-
:'content' => :'String'
|
90
|
+
:'content' => :'String',
|
91
|
+
:'font_family' => :'String',
|
92
|
+
:'font_size' => :'Integer'
|
59
93
|
}
|
60
94
|
end
|
61
95
|
|
@@ -118,6 +152,14 @@ module Dropbox::Sign
|
|
118
152
|
if attributes.key?(:'content')
|
119
153
|
self.content = attributes[:'content']
|
120
154
|
end
|
155
|
+
|
156
|
+
if attributes.key?(:'font_family')
|
157
|
+
self.font_family = attributes[:'font_family']
|
158
|
+
end
|
159
|
+
|
160
|
+
if attributes.key?(:'font_size')
|
161
|
+
self.font_size = attributes[:'font_size']
|
162
|
+
end
|
121
163
|
end
|
122
164
|
|
123
165
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -145,6 +187,8 @@ module Dropbox::Sign
|
|
145
187
|
return false if @type.nil?
|
146
188
|
return false if @options.nil?
|
147
189
|
return false if @options.length < 1
|
190
|
+
font_family_validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
|
191
|
+
return false unless font_family_validator.valid?(@font_family)
|
148
192
|
true && super
|
149
193
|
end
|
150
194
|
|
@@ -162,6 +206,16 @@ module Dropbox::Sign
|
|
162
206
|
@options = options
|
163
207
|
end
|
164
208
|
|
209
|
+
# Custom attribute writer method checking allowed values (enum).
|
210
|
+
# @param [Object] font_family Object to be assigned
|
211
|
+
def font_family=(font_family)
|
212
|
+
validator = EnumAttributeValidator.new('String', ["helvetica", "arial", "courier", "calibri", "cambria", "georgia", "times", "trebuchet", "verdana", "roboto", "robotoMono", "notoSans", "notoSerif", "notoCJK-JP-Regular", "notoHebrew-Regular", "notoSanThaiMerged"])
|
213
|
+
unless validator.valid?(font_family)
|
214
|
+
fail ArgumentError, "invalid value for \"font_family\", must be one of #{validator.allowable_values}."
|
215
|
+
end
|
216
|
+
@font_family = font_family
|
217
|
+
end
|
218
|
+
|
165
219
|
# Checks equality by comparing each attribute.
|
166
220
|
# @param [Object] Object to be compared
|
167
221
|
def ==(o)
|
@@ -169,7 +223,9 @@ module Dropbox::Sign
|
|
169
223
|
self.class == o.class &&
|
170
224
|
type == o.type &&
|
171
225
|
options == o.options &&
|
172
|
-
content == o.content &&
|
226
|
+
content == o.content &&
|
227
|
+
font_family == o.font_family &&
|
228
|
+
font_size == o.font_size && super(o)
|
173
229
|
end
|
174
230
|
|
175
231
|
# @see the `==` method
|
@@ -181,7 +237,7 @@ module Dropbox::Sign
|
|
181
237
|
# Calculates hash code according to all attributes.
|
182
238
|
# @return [Integer] Hash code
|
183
239
|
def hash
|
184
|
-
[type, options, content].hash
|
240
|
+
[type, options, content, font_family, font_size].hash
|
185
241
|
end
|
186
242
|
|
187
243
|
# Builds the object from hash
|
@@ -0,0 +1,54 @@
|
|
1
|
+
=begin
|
2
|
+
#Dropbox Sign API
|
3
|
+
|
4
|
+
#Dropbox Sign v3 API
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 3.0.0
|
7
|
+
Contact: apisupport@hellosign.com
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 5.3.0
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
require 'time'
|
15
|
+
|
16
|
+
module Dropbox
|
17
|
+
end
|
18
|
+
|
19
|
+
module Dropbox::Sign
|
20
|
+
class SubFormFieldsPerDocumentFontEnum
|
21
|
+
HELVETICA = "helvetica".freeze
|
22
|
+
ARIAL = "arial".freeze
|
23
|
+
COURIER = "courier".freeze
|
24
|
+
CALIBRI = "calibri".freeze
|
25
|
+
CAMBRIA = "cambria".freeze
|
26
|
+
GEORGIA = "georgia".freeze
|
27
|
+
TIMES = "times".freeze
|
28
|
+
TREBUCHET = "trebuchet".freeze
|
29
|
+
VERDANA = "verdana".freeze
|
30
|
+
ROBOTO = "roboto".freeze
|
31
|
+
ROBOTO_MONO = "robotoMono".freeze
|
32
|
+
NOTO_SANS = "notoSans".freeze
|
33
|
+
NOTO_SERIF = "notoSerif".freeze
|
34
|
+
NOTO_CJK_JP_REGULAR = "notoCJK-JP-Regular".freeze
|
35
|
+
NOTO_HEBREW_REGULAR = "notoHebrew-Regular".freeze
|
36
|
+
NOTO_SAN_THAI_MERGED = "notoSanThaiMerged".freeze
|
37
|
+
|
38
|
+
# Builds the enum from string
|
39
|
+
# @param [String] The enum value in the form of the string
|
40
|
+
# @return [String] The enum value
|
41
|
+
def self.build_from_hash(value)
|
42
|
+
new.build_from_hash(value)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Builds the enum from string
|
46
|
+
# @param [String] The enum value in the form of the string
|
47
|
+
# @return [String] The enum value
|
48
|
+
def build_from_hash(value)
|
49
|
+
constantValues = SubFormFieldsPerDocumentFontEnum.constants.select { |c| SubFormFieldsPerDocumentFontEnum::const_get(c) == value }
|
50
|
+
raise "Invalid ENUM value #{value} for class #SubFormFieldsPerDocumentFontEnum" if constantValues.empty?
|
51
|
+
value
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|