dropbox-sign 1.1.1 → 1.2.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 +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
|