docspring 1.4.0 → 2.0.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.
Files changed (239) hide show
  1. checksums.yaml +4 -4
  2. data/.gitlab-ci.yml +26 -0
  3. data/.openapi-generator/FILES +220 -0
  4. data/.openapi-generator/VERSION +1 -1
  5. data/.rubocop.yml +6 -12
  6. data/.travis.yml +11 -0
  7. data/CHANGELOG.md +9 -0
  8. data/Gemfile +5 -1
  9. data/Gemfile.lock +85 -48
  10. data/README.md +47 -16
  11. data/docs/AddFieldsData.md +13 -3
  12. data/docs/AddFieldsTemplateResponse.md +17 -5
  13. data/docs/AuthenticationError.md +15 -4
  14. data/docs/AuthenticationSuccessResponse.md +13 -3
  15. data/docs/CombinePdfsData.md +23 -7
  16. data/docs/CombinedSubmission.md +37 -12
  17. data/docs/CombinedSubmissionAction.md +23 -8
  18. data/docs/CombinedSubmissionData.md +21 -6
  19. data/docs/CopyTemplateData.md +15 -4
  20. data/docs/CreateCombinedSubmissionResponse.md +17 -5
  21. data/docs/CreateCustomFileData.md +13 -3
  22. data/docs/CreateCustomFileResponse.md +17 -5
  23. data/docs/CreateFolderAttributes.md +20 -0
  24. data/docs/CreateFolderData.md +13 -3
  25. data/docs/CreateHtmlTemplateData.md +13 -3
  26. data/docs/CreateSubmissionBatchResponse.md +21 -7
  27. data/docs/CreateSubmissionBatchSubmissionsResponse.md +17 -5
  28. data/docs/CreateSubmissionData.md +36 -0
  29. data/docs/CreateSubmissionDataRequestData.md +37 -15
  30. data/docs/CreateSubmissionDataRequestEventRequest.md +24 -0
  31. data/docs/CreateSubmissionDataRequestEventResponse.md +22 -0
  32. data/docs/CreateSubmissionDataRequestTokenResponse.md +17 -5
  33. data/docs/CreateSubmissionResponse.md +17 -5
  34. data/docs/CreateTemplateFromUploadData.md +13 -3
  35. data/docs/DataRequestToken.md +24 -0
  36. data/docs/DeleteTemplateResponse.md +20 -0
  37. data/docs/ErrorResponse.md +20 -0
  38. data/docs/Folder.md +19 -6
  39. data/docs/FullTemplate.md +94 -0
  40. data/docs/HtmlTemplateData.md +51 -19
  41. data/docs/HtmlTemplateDataWebhookOptions.md +18 -0
  42. data/docs/InvalidRequest.md +15 -4
  43. data/docs/InvalidRequestSingleError.md +20 -0
  44. data/docs/ListSubmissionsResponse.md +22 -0
  45. data/docs/MoveFolderData.md +13 -3
  46. data/docs/MoveTemplateData.md +13 -3
  47. data/docs/PDFApi.md +1746 -495
  48. data/docs/PendingTemplate.md +45 -19
  49. data/docs/PreviewPdfResponse.md +20 -0
  50. data/docs/PublishTemplateVersion404Response.md +20 -0
  51. data/docs/PublishTemplateVersion422Response.md +20 -0
  52. data/docs/PublishTemplateVersionResponse.md +20 -0
  53. data/docs/PublishTemplateVersionResponseResult.md +24 -0
  54. data/docs/PublishVersionData.md +20 -0
  55. data/docs/RenameFolderData.md +13 -3
  56. data/docs/RestoreTemplateVersionResponse.md +18 -0
  57. data/docs/RestoreVersionData.md +18 -0
  58. data/docs/Submission.md +49 -21
  59. data/docs/SubmissionAction.md +23 -8
  60. data/docs/SubmissionBatch.md +29 -11
  61. data/docs/SubmissionBatchData.md +21 -6
  62. data/docs/SubmissionData.md +23 -9
  63. data/docs/SubmissionDataBatchRequest.md +25 -8
  64. data/docs/SubmissionDataRequest.md +53 -22
  65. data/docs/SubmissionDataRequestEvent.md +30 -0
  66. data/docs/Template.md +51 -22
  67. data/docs/TemplateData.md +49 -18
  68. data/docs/TemplateDefaults.md +22 -0
  69. data/docs/TemplateDocument.md +22 -0
  70. data/docs/TemplateDocumentMetadata.md +22 -0
  71. data/docs/TemplateSchema.md +34 -0
  72. data/docs/UpdateDataRequestResponse.md +17 -5
  73. data/docs/UpdateSubmissionDataRequestData.md +37 -15
  74. data/docs/UpdateTemplateData.md +13 -3
  75. data/docs/UpdateTemplateResponse.md +15 -4
  76. data/docs/UploadPresign.md +24 -0
  77. data/docs/UploadTemplateData.md +53 -20
  78. data/docspring.gemspec +14 -11
  79. data/git_push.sh +11 -9
  80. data/lib/docspring/api/pdf_api.rb +1485 -497
  81. data/lib/docspring/api_client.rb +106 -98
  82. data/lib/docspring/api_error.rb +22 -2
  83. data/lib/docspring/configuration.rb +127 -16
  84. data/lib/docspring/models/add_fields_data.rb +59 -26
  85. data/lib/docspring/models/add_fields_template_response.rb +81 -43
  86. data/lib/docspring/models/authentication_error.rb +62 -29
  87. data/lib/docspring/models/authentication_success_response.rb +66 -28
  88. data/lib/docspring/models/combine_pdfs_data.rb +74 -32
  89. data/lib/docspring/models/combined_submission.rb +167 -68
  90. data/lib/docspring/models/combined_submission_action.rb +83 -39
  91. data/lib/docspring/models/combined_submission_data.rb +72 -30
  92. data/lib/docspring/models/copy_template_data.rb +59 -26
  93. data/lib/docspring/models/create_combined_submission_response.rb +86 -41
  94. data/lib/docspring/models/create_custom_file_data.rb +58 -25
  95. data/lib/docspring/models/create_custom_file_response.rb +86 -41
  96. data/lib/docspring/models/create_folder_attributes.rb +230 -0
  97. data/lib/docspring/models/create_folder_data.rb +59 -26
  98. data/lib/docspring/models/create_html_template_data.rb +58 -25
  99. data/lib/docspring/models/create_submission_batch_response.rb +104 -52
  100. data/lib/docspring/models/create_submission_batch_submissions_response.rb +79 -41
  101. data/lib/docspring/models/create_submission_data.rb +304 -0
  102. data/lib/docspring/models/create_submission_data_request_data.rb +139 -90
  103. data/lib/docspring/models/create_submission_data_request_event_request.rb +297 -0
  104. data/lib/docspring/models/create_submission_data_request_event_response.rb +282 -0
  105. data/lib/docspring/models/create_submission_data_request_token_response.rb +85 -40
  106. data/lib/docspring/models/create_submission_response.rb +86 -41
  107. data/lib/docspring/models/create_template_from_upload_data.rb +58 -25
  108. data/lib/docspring/models/{custom_file.rb → data_request_token.rb} +110 -33
  109. data/lib/docspring/models/delete_template_response.rb +266 -0
  110. data/lib/docspring/models/{error.rb → error_response.rb} +65 -30
  111. data/lib/docspring/models/folder.rb +78 -46
  112. data/lib/docspring/models/full_template.rb +801 -0
  113. data/lib/docspring/models/html_template_data.rb +180 -110
  114. data/lib/docspring/models/{folders_folder.rb → html_template_data_webhook_options.rb} +63 -41
  115. data/lib/docspring/models/invalid_request.rb +64 -29
  116. data/lib/docspring/models/invalid_request_single_error.rb +271 -0
  117. data/lib/docspring/models/list_submissions_response.rb +251 -0
  118. data/lib/docspring/models/move_folder_data.rb +56 -25
  119. data/lib/docspring/models/move_template_data.rb +58 -25
  120. data/lib/docspring/models/pending_template.rb +221 -118
  121. data/lib/docspring/models/preview_pdf_response.rb +264 -0
  122. data/lib/docspring/models/publish_template_version404_response.rb +271 -0
  123. data/lib/docspring/models/publish_template_version422_response.rb +273 -0
  124. data/lib/docspring/models/publish_template_version_response.rb +271 -0
  125. data/lib/docspring/models/publish_template_version_response_result.rb +263 -0
  126. data/lib/docspring/models/publish_version_data.rb +230 -0
  127. data/lib/docspring/models/rename_folder_data.rb +58 -25
  128. data/lib/docspring/models/restore_template_version_response.rb +255 -0
  129. data/lib/docspring/models/{create_submission_data_request_token_response_token.rb → restore_version_data.rb} +69 -58
  130. data/lib/docspring/models/submission.rb +98 -49
  131. data/lib/docspring/models/submission_action.rb +83 -39
  132. data/lib/docspring/models/submission_batch.rb +158 -75
  133. data/lib/docspring/models/submission_batch_data.rb +74 -30
  134. data/lib/docspring/models/submission_data.rb +65 -41
  135. data/lib/docspring/models/submission_data_batch_request.rb +100 -49
  136. data/lib/docspring/models/submission_data_request.rb +123 -54
  137. data/lib/docspring/models/submission_data_request_event.rb +309 -0
  138. data/lib/docspring/models/template.rb +267 -132
  139. data/lib/docspring/models/template_data.rb +173 -105
  140. data/lib/docspring/models/template_defaults.rb +249 -0
  141. data/lib/docspring/models/{upload_template_data_document.rb → template_document.rb} +91 -39
  142. data/lib/docspring/models/{upload_template_data_document_metadata.rb → template_document_metadata.rb} +94 -42
  143. data/lib/docspring/models/template_schema.rb +288 -0
  144. data/lib/docspring/models/update_data_request_response.rb +86 -41
  145. data/lib/docspring/models/update_submission_data_request_data.rb +82 -43
  146. data/lib/docspring/models/update_template_data.rb +58 -25
  147. data/lib/docspring/models/update_template_response.rb +79 -41
  148. data/lib/docspring/models/upload_presign.rb +296 -0
  149. data/lib/docspring/models/upload_template_data.rb +186 -116
  150. data/lib/docspring/version.rb +3 -3
  151. data/lib/docspring.rb +30 -10
  152. data/spec/api/client_integration_spec.rb +26 -19
  153. data/spec/api/pdf_api_integration_spec.rb +21 -19
  154. data/spec/api/pdf_api_spec_original.skipped.rb +469 -98
  155. data/spec/models/add_fields_data_spec.rb +8 -13
  156. data/spec/models/add_fields_template_response_spec.rb +16 -21
  157. data/spec/models/authentication_error_spec.rb +10 -15
  158. data/spec/models/authentication_success_response_spec.rb +9 -14
  159. data/spec/models/combine_pdfs_data_spec.rb +18 -17
  160. data/spec/models/combined_submission_action_spec.rb +16 -21
  161. data/spec/models/combined_submission_data_spec.rb +17 -16
  162. data/spec/models/combined_submission_spec.rb +45 -32
  163. data/spec/models/copy_template_data_spec.rb +9 -14
  164. data/spec/models/create_combined_submission_response_spec.rb +16 -21
  165. data/spec/models/create_custom_file_data_spec.rb +8 -13
  166. data/spec/models/create_custom_file_response_spec.rb +16 -21
  167. data/spec/models/create_folder_attributes_spec.rb +42 -0
  168. data/spec/models/create_folder_data_spec.rb +8 -13
  169. data/spec/models/create_html_template_data_spec.rb +8 -13
  170. data/spec/models/create_submission_batch_response_spec.rb +21 -26
  171. data/spec/models/create_submission_batch_submissions_response_spec.rb +16 -21
  172. data/spec/models/create_submission_data_request_data_spec.rb +33 -38
  173. data/spec/models/create_submission_data_request_event_request_spec.rb +62 -0
  174. data/spec/models/create_submission_data_request_event_response_spec.rb +52 -0
  175. data/spec/models/create_submission_data_request_token_response_spec.rb +15 -20
  176. data/spec/models/create_submission_data_spec.rb +90 -0
  177. data/spec/models/create_submission_response_spec.rb +16 -21
  178. data/spec/models/create_template_from_upload_data_spec.rb +8 -13
  179. data/spec/models/data_request_token_spec.rb +54 -0
  180. data/spec/models/delete_template_response_spec.rb +46 -0
  181. data/spec/models/error_response_spec.rb +46 -0
  182. data/spec/models/folder_spec.rb +15 -20
  183. data/spec/models/full_template_spec.rb +268 -0
  184. data/spec/models/html_template_data_spec.rb +62 -49
  185. data/spec/models/html_template_data_webhook_options_spec.rb +36 -0
  186. data/spec/models/invalid_request_single_error_spec.rb +46 -0
  187. data/spec/models/invalid_request_spec.rb +10 -15
  188. data/spec/models/list_submissions_response_spec.rb +48 -0
  189. data/spec/models/move_folder_data_spec.rb +8 -13
  190. data/spec/models/move_template_data_spec.rb +8 -13
  191. data/spec/models/pending_template_spec.rb +45 -50
  192. data/spec/models/preview_pdf_response_spec.rb +46 -0
  193. data/spec/models/publish_template_version404_response_spec.rb +46 -0
  194. data/spec/models/publish_template_version422_response_spec.rb +46 -0
  195. data/spec/models/publish_template_version_response_result_spec.rb +54 -0
  196. data/spec/models/publish_template_version_response_spec.rb +46 -0
  197. data/spec/models/publish_version_data_spec.rb +42 -0
  198. data/spec/models/rename_folder_data_spec.rb +8 -13
  199. data/spec/models/restore_template_version_response_spec.rb +40 -0
  200. data/spec/models/restore_version_data_spec.rb +36 -0
  201. data/spec/models/submission_action_spec.rb +16 -21
  202. data/spec/models/submission_batch_data_spec.rb +17 -16
  203. data/spec/models/submission_batch_spec.rb +29 -34
  204. data/spec/models/submission_data_batch_request_spec.rb +24 -23
  205. data/spec/models/submission_data_request_event_spec.rb +72 -0
  206. data/spec/models/submission_data_request_spec.rb +36 -35
  207. data/spec/models/submission_data_spec.rb +13 -24
  208. data/spec/models/submission_spec.rb +27 -32
  209. data/spec/models/template_data_spec.rb +59 -46
  210. data/spec/models/template_defaults_spec.rb +48 -0
  211. data/spec/models/template_document_metadata_spec.rb +52 -0
  212. data/spec/models/template_document_spec.rb +52 -0
  213. data/spec/models/template_schema_spec.rb +84 -0
  214. data/spec/models/template_spec.rb +50 -55
  215. data/spec/models/update_data_request_response_spec.rb +16 -21
  216. data/spec/models/update_submission_data_request_data_spec.rb +22 -27
  217. data/spec/models/update_template_data_spec.rb +8 -13
  218. data/spec/models/update_template_response_spec.rb +14 -19
  219. data/spec/models/upload_presign_spec.rb +58 -0
  220. data/spec/models/upload_template_data_spec.rb +64 -51
  221. data/spec/spec_helper.rb +5 -5
  222. metadata +112 -124
  223. data/docs/CreateSubmissionDataRequestTokenResponseToken.md +0 -11
  224. data/docs/CustomFile.md +0 -9
  225. data/docs/Error.md +0 -9
  226. data/docs/FoldersFolder.md +0 -9
  227. data/docs/TemplatestemplateIdaddFieldsFields.md +0 -92
  228. data/docs/UploadTemplateDataDocument.md +0 -10
  229. data/docs/UploadTemplateDataDocumentMetadata.md +0 -10
  230. data/lib/docspring/models/templatestemplate_idadd_fields_fields.rb +0 -1306
  231. data/spec/api_client_spec.rb +0 -226
  232. data/spec/configuration_spec.rb +0 -53
  233. data/spec/models/create_submission_data_request_token_response_token_spec.rb +0 -59
  234. data/spec/models/custom_file_spec.rb +0 -47
  235. data/spec/models/error_spec.rb +0 -51
  236. data/spec/models/folders_folder_spec.rb +0 -47
  237. data/spec/models/templatestemplate_idadd_fields_fields_spec.rb +0 -589
  238. data/spec/models/upload_template_data_document_metadata_spec.rb +0 -57
  239. data/spec/models/upload_template_data_document_spec.rb +0 -57
@@ -3,14 +3,15 @@
3
3
 
4
4
  #DocSpring is a service that helps you fill out and sign PDF templates.
5
5
 
6
- OpenAPI spec version: v1
6
+ The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 3.3.0
9
+ Generator version: 7.11.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module DocSpring
16
17
  class CombinedSubmissionData
@@ -18,6 +19,8 @@ module DocSpring
18
19
 
19
20
  attr_accessor :metadata
20
21
 
22
+ attr_accessor :password
23
+
21
24
  attr_accessor :submission_ids
22
25
 
23
26
  attr_accessor :test
@@ -27,44 +30,70 @@ module DocSpring
27
30
  {
28
31
  :'expires_in' => :'expires_in',
29
32
  :'metadata' => :'metadata',
33
+ :'password' => :'password',
30
34
  :'submission_ids' => :'submission_ids',
31
35
  :'test' => :'test'
32
36
  }
33
37
  end
34
38
 
39
+ # Returns all the JSON keys this model knows about
40
+ def self.acceptable_attributes
41
+ attribute_map.values
42
+ end
43
+
35
44
  # Attribute type mapping.
36
45
  def self.openapi_types
37
46
  {
38
47
  :'expires_in' => :'Integer',
39
48
  :'metadata' => :'Object',
49
+ :'password' => :'String',
40
50
  :'submission_ids' => :'Array<String>',
41
- :'test' => :'BOOLEAN'
51
+ :'test' => :'Boolean'
42
52
  }
43
53
  end
44
54
 
55
+ # List of attributes with nullable: true
56
+ def self.openapi_nullable
57
+ Set.new([
58
+ ])
59
+ end
60
+
45
61
  # Initializes the object
46
62
  # @param [Hash] attributes Model attributes in the form of hash
47
63
  def initialize(attributes = {})
48
- return unless attributes.is_a?(Hash)
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DocSpring::CombinedSubmissionData` initialize method"
66
+ end
49
67
 
50
- # convert string to symbol for hash key
51
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
68
+ # check to see if the attribute exists and convert string to symbol for hash key
69
+ attributes = attributes.each_with_object({}) { |(k, v), h|
70
+ if (!self.class.attribute_map.key?(k.to_sym))
71
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DocSpring::CombinedSubmissionData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ end
73
+ h[k.to_sym] = v
74
+ }
52
75
 
53
- if attributes.has_key?(:'expires_in')
76
+ if attributes.key?(:'expires_in')
54
77
  self.expires_in = attributes[:'expires_in']
55
78
  end
56
79
 
57
- if attributes.has_key?(:'metadata')
80
+ if attributes.key?(:'metadata')
58
81
  self.metadata = attributes[:'metadata']
59
82
  end
60
83
 
61
- if attributes.has_key?(:'submission_ids')
84
+ if attributes.key?(:'password')
85
+ self.password = attributes[:'password']
86
+ end
87
+
88
+ if attributes.key?(:'submission_ids')
62
89
  if (value = attributes[:'submission_ids']).is_a?(Array)
63
90
  self.submission_ids = value
64
91
  end
92
+ else
93
+ self.submission_ids = nil
65
94
  end
66
95
 
67
- if attributes.has_key?(:'test')
96
+ if attributes.key?(:'test')
68
97
  self.test = attributes[:'test']
69
98
  end
70
99
  end
@@ -72,6 +101,7 @@ module DocSpring
72
101
  # Show invalid properties with the reasons. Usually used together with valid?
73
102
  # @return Array for valid properties with the reasons
74
103
  def list_invalid_properties
104
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
75
105
  invalid_properties = Array.new
76
106
  if @submission_ids.nil?
77
107
  invalid_properties.push('invalid value for "submission_ids", submission_ids cannot be nil.')
@@ -83,6 +113,7 @@ module DocSpring
83
113
  # Check to see if the all the properties in the model are valid
84
114
  # @return true if the model is valid
85
115
  def valid?
116
+ warn '[DEPRECATED] the `valid?` method is obsolete'
86
117
  return false if @submission_ids.nil?
87
118
  true
88
119
  end
@@ -94,6 +125,7 @@ module DocSpring
94
125
  self.class == o.class &&
95
126
  expires_in == o.expires_in &&
96
127
  metadata == o.metadata &&
128
+ password == o.password &&
97
129
  submission_ids == o.submission_ids &&
98
130
  test == o.test
99
131
  end
@@ -105,39 +137,42 @@ module DocSpring
105
137
  end
106
138
 
107
139
  # Calculates hash code according to all attributes.
108
- # @return [Fixnum] Hash code
140
+ # @return [Integer] Hash code
109
141
  def hash
110
- [expires_in, metadata, submission_ids, test].hash
142
+ [expires_in, metadata, password, submission_ids, test].hash
111
143
  end
112
144
 
113
145
  # Builds the object from hash
114
146
  # @param [Hash] attributes Model attributes in the form of hash
115
147
  # @return [Object] Returns the model itself
116
- def build_from_hash(attributes)
148
+ def self.build_from_hash(attributes)
117
149
  return nil unless attributes.is_a?(Hash)
118
- self.class.openapi_types.each_pair do |key, type|
119
- if type =~ /\AArray<(.*)>/i
120
- # check to ensure the input is an array given that the the attribute
150
+ attributes = attributes.transform_keys(&:to_sym)
151
+ transformed_hash = {}
152
+ openapi_types.each_pair do |key, type|
153
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
154
+ transformed_hash["#{key}"] = nil
155
+ elsif type =~ /\AArray<(.*)>/i
156
+ # check to ensure the input is an array given that the attribute
121
157
  # is documented as an array but the input is not
122
- if attributes[self.class.attribute_map[key]].is_a?(Array)
123
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
158
+ if attributes[attribute_map[key]].is_a?(Array)
159
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
124
160
  end
125
- elsif !attributes[self.class.attribute_map[key]].nil?
126
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
127
- end # or else data not found in attributes(hash), not an issue as the data can be optional
161
+ elsif !attributes[attribute_map[key]].nil?
162
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
163
+ end
128
164
  end
129
-
130
- self
165
+ new(transformed_hash)
131
166
  end
132
167
 
133
168
  # Deserializes the data based on type
134
169
  # @param string type Data type
135
170
  # @param string value Value to be deserialized
136
171
  # @return [Object] Deserialized data
137
- def _deserialize(type, value)
172
+ def self._deserialize(type, value)
138
173
  case type.to_sym
139
- when :DateTime
140
- DateTime.parse(value)
174
+ when :Time
175
+ Time.parse(value)
141
176
  when :Date
142
177
  Date.parse(value)
143
178
  when :String
@@ -146,7 +181,7 @@ module DocSpring
146
181
  value.to_i
147
182
  when :Float
148
183
  value.to_f
149
- when :BOOLEAN
184
+ when :Boolean
150
185
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
151
186
  true
152
187
  else
@@ -167,8 +202,9 @@ module DocSpring
167
202
  end
168
203
  end
169
204
  else # model
170
- temp_model = DocSpring.const_get(type).new
171
- temp_model.build_from_hash(value)
205
+ # models (e.g. Pet) or oneOf
206
+ klass = DocSpring.const_get(type)
207
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
172
208
  end
173
209
  end
174
210
 
@@ -190,7 +226,11 @@ module DocSpring
190
226
  hash = {}
191
227
  self.class.attribute_map.each_pair do |attr, param|
192
228
  value = self.send(attr)
193
- next if value.nil?
229
+ if value.nil?
230
+ is_nullable = self.class.openapi_nullable.include?(attr)
231
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
232
+ end
233
+
194
234
  hash[param] = _to_hash(value)
195
235
  end
196
236
  hash
@@ -213,5 +253,7 @@ module DocSpring
213
253
  value
214
254
  end
215
255
  end
256
+
216
257
  end
258
+
217
259
  end
@@ -3,14 +3,15 @@
3
3
 
4
4
  #DocSpring is a service that helps you fill out and sign PDF templates.
5
5
 
6
- OpenAPI spec version: v1
6
+ The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 3.3.0
9
+ Generator version: 7.11.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module DocSpring
16
17
  class CopyTemplateData
@@ -26,6 +27,11 @@ module DocSpring
26
27
  }
27
28
  end
28
29
 
30
+ # Returns all the JSON keys this model knows about
31
+ def self.acceptable_attributes
32
+ attribute_map.values
33
+ end
34
+
29
35
  # Attribute type mapping.
30
36
  def self.openapi_types
31
37
  {
@@ -34,26 +40,42 @@ module DocSpring
34
40
  }
35
41
  end
36
42
 
43
+ # List of attributes with nullable: true
44
+ def self.openapi_nullable
45
+ Set.new([
46
+ ])
47
+ end
48
+
37
49
  # Initializes the object
38
50
  # @param [Hash] attributes Model attributes in the form of hash
39
51
  def initialize(attributes = {})
40
- return unless attributes.is_a?(Hash)
52
+ if (!attributes.is_a?(Hash))
53
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DocSpring::CopyTemplateData` initialize method"
54
+ end
41
55
 
42
- # convert string to symbol for hash key
43
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
56
+ # check to see if the attribute exists and convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h|
58
+ if (!self.class.attribute_map.key?(k.to_sym))
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DocSpring::CopyTemplateData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ end
61
+ h[k.to_sym] = v
62
+ }
44
63
 
45
- if attributes.has_key?(:'name')
64
+ if attributes.key?(:'name')
46
65
  self.name = attributes[:'name']
47
66
  end
48
67
 
49
- if attributes.has_key?(:'parent_folder_id')
68
+ if attributes.key?(:'parent_folder_id')
50
69
  self.parent_folder_id = attributes[:'parent_folder_id']
70
+ else
71
+ self.parent_folder_id = nil
51
72
  end
52
73
  end
53
74
 
54
75
  # Show invalid properties with the reasons. Usually used together with valid?
55
76
  # @return Array for valid properties with the reasons
56
77
  def list_invalid_properties
78
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
57
79
  invalid_properties = Array.new
58
80
  if @parent_folder_id.nil?
59
81
  invalid_properties.push('invalid value for "parent_folder_id", parent_folder_id cannot be nil.')
@@ -65,6 +87,7 @@ module DocSpring
65
87
  # Check to see if the all the properties in the model are valid
66
88
  # @return true if the model is valid
67
89
  def valid?
90
+ warn '[DEPRECATED] the `valid?` method is obsolete'
68
91
  return false if @parent_folder_id.nil?
69
92
  true
70
93
  end
@@ -85,7 +108,7 @@ module DocSpring
85
108
  end
86
109
 
87
110
  # Calculates hash code according to all attributes.
88
- # @return [Fixnum] Hash code
111
+ # @return [Integer] Hash code
89
112
  def hash
90
113
  [name, parent_folder_id].hash
91
114
  end
@@ -93,31 +116,34 @@ module DocSpring
93
116
  # Builds the object from hash
94
117
  # @param [Hash] attributes Model attributes in the form of hash
95
118
  # @return [Object] Returns the model itself
96
- def build_from_hash(attributes)
119
+ def self.build_from_hash(attributes)
97
120
  return nil unless attributes.is_a?(Hash)
98
- self.class.openapi_types.each_pair do |key, type|
99
- if type =~ /\AArray<(.*)>/i
100
- # check to ensure the input is an array given that the the attribute
121
+ attributes = attributes.transform_keys(&:to_sym)
122
+ transformed_hash = {}
123
+ openapi_types.each_pair do |key, type|
124
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
125
+ transformed_hash["#{key}"] = nil
126
+ elsif type =~ /\AArray<(.*)>/i
127
+ # check to ensure the input is an array given that the attribute
101
128
  # is documented as an array but the input is not
102
- if attributes[self.class.attribute_map[key]].is_a?(Array)
103
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
129
+ if attributes[attribute_map[key]].is_a?(Array)
130
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
104
131
  end
105
- elsif !attributes[self.class.attribute_map[key]].nil?
106
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
107
- end # or else data not found in attributes(hash), not an issue as the data can be optional
132
+ elsif !attributes[attribute_map[key]].nil?
133
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
134
+ end
108
135
  end
109
-
110
- self
136
+ new(transformed_hash)
111
137
  end
112
138
 
113
139
  # Deserializes the data based on type
114
140
  # @param string type Data type
115
141
  # @param string value Value to be deserialized
116
142
  # @return [Object] Deserialized data
117
- def _deserialize(type, value)
143
+ def self._deserialize(type, value)
118
144
  case type.to_sym
119
- when :DateTime
120
- DateTime.parse(value)
145
+ when :Time
146
+ Time.parse(value)
121
147
  when :Date
122
148
  Date.parse(value)
123
149
  when :String
@@ -126,7 +152,7 @@ module DocSpring
126
152
  value.to_i
127
153
  when :Float
128
154
  value.to_f
129
- when :BOOLEAN
155
+ when :Boolean
130
156
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
131
157
  true
132
158
  else
@@ -147,8 +173,9 @@ module DocSpring
147
173
  end
148
174
  end
149
175
  else # model
150
- temp_model = DocSpring.const_get(type).new
151
- temp_model.build_from_hash(value)
176
+ # models (e.g. Pet) or oneOf
177
+ klass = DocSpring.const_get(type)
178
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
152
179
  end
153
180
  end
154
181
 
@@ -170,7 +197,11 @@ module DocSpring
170
197
  hash = {}
171
198
  self.class.attribute_map.each_pair do |attr, param|
172
199
  value = self.send(attr)
173
- next if value.nil?
200
+ if value.nil?
201
+ is_nullable = self.class.openapi_nullable.include?(attr)
202
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
203
+ end
204
+
174
205
  hash[param] = _to_hash(value)
175
206
  end
176
207
  hash
@@ -193,5 +224,7 @@ module DocSpring
193
224
  value
194
225
  end
195
226
  end
227
+
196
228
  end
229
+
197
230
  end
@@ -3,22 +3,23 @@
3
3
 
4
4
  #DocSpring is a service that helps you fill out and sign PDF templates.
5
5
 
6
- OpenAPI spec version: v1
6
+ The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 3.3.0
9
+ Generator version: 7.11.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module DocSpring
16
17
  class CreateCombinedSubmissionResponse
17
- attr_accessor :combined_submission
18
+ attr_accessor :status
18
19
 
19
20
  attr_accessor :errors
20
21
 
21
- attr_accessor :status
22
+ attr_accessor :combined_submission
22
23
 
23
24
  class EnumAttributeValidator
24
25
  attr_reader :datatype
@@ -45,65 +46,99 @@ module DocSpring
45
46
  # Attribute mapping from ruby-style variable name to JSON key.
46
47
  def self.attribute_map
47
48
  {
48
- :'combined_submission' => :'combined_submission',
49
+ :'status' => :'status',
49
50
  :'errors' => :'errors',
50
- :'status' => :'status'
51
+ :'combined_submission' => :'combined_submission'
51
52
  }
52
53
  end
53
54
 
55
+ # Returns all the JSON keys this model knows about
56
+ def self.acceptable_attributes
57
+ attribute_map.values
58
+ end
59
+
54
60
  # Attribute type mapping.
55
61
  def self.openapi_types
56
62
  {
57
- :'combined_submission' => :'CombinedSubmission',
63
+ :'status' => :'String',
58
64
  :'errors' => :'Array<String>',
59
- :'status' => :'String'
65
+ :'combined_submission' => :'CombinedSubmission'
60
66
  }
61
67
  end
62
68
 
69
+ # List of attributes with nullable: true
70
+ def self.openapi_nullable
71
+ Set.new([
72
+ ])
73
+ end
74
+
63
75
  # Initializes the object
64
76
  # @param [Hash] attributes Model attributes in the form of hash
65
77
  def initialize(attributes = {})
66
- return unless attributes.is_a?(Hash)
78
+ if (!attributes.is_a?(Hash))
79
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DocSpring::CreateCombinedSubmissionResponse` initialize method"
80
+ end
67
81
 
68
- # convert string to symbol for hash key
69
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
82
+ # check to see if the attribute exists and convert string to symbol for hash key
83
+ attributes = attributes.each_with_object({}) { |(k, v), h|
84
+ if (!self.class.attribute_map.key?(k.to_sym))
85
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DocSpring::CreateCombinedSubmissionResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
86
+ end
87
+ h[k.to_sym] = v
88
+ }
70
89
 
71
- if attributes.has_key?(:'combined_submission')
72
- self.combined_submission = attributes[:'combined_submission']
90
+ if attributes.key?(:'status')
91
+ self.status = attributes[:'status']
92
+ else
93
+ self.status = nil
73
94
  end
74
95
 
75
- if attributes.has_key?(:'errors')
96
+ if attributes.key?(:'errors')
76
97
  if (value = attributes[:'errors']).is_a?(Array)
77
98
  self.errors = value
78
99
  end
79
100
  end
80
101
 
81
- if attributes.has_key?(:'status')
82
- self.status = attributes[:'status']
102
+ if attributes.key?(:'combined_submission')
103
+ self.combined_submission = attributes[:'combined_submission']
104
+ else
105
+ self.combined_submission = nil
83
106
  end
84
107
  end
85
108
 
86
109
  # Show invalid properties with the reasons. Usually used together with valid?
87
110
  # @return Array for valid properties with the reasons
88
111
  def list_invalid_properties
112
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
89
113
  invalid_properties = Array.new
114
+ if @status.nil?
115
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
116
+ end
117
+
118
+ if @combined_submission.nil?
119
+ invalid_properties.push('invalid value for "combined_submission", combined_submission cannot be nil.')
120
+ end
121
+
90
122
  invalid_properties
91
123
  end
92
124
 
93
125
  # Check to see if the all the properties in the model are valid
94
126
  # @return true if the model is valid
95
127
  def valid?
96
- status_validator = EnumAttributeValidator.new('String', ['success', 'error'])
128
+ warn '[DEPRECATED] the `valid?` method is obsolete'
129
+ return false if @status.nil?
130
+ status_validator = EnumAttributeValidator.new('String', ["success", "error"])
97
131
  return false unless status_validator.valid?(@status)
132
+ return false if @combined_submission.nil?
98
133
  true
99
134
  end
100
135
 
101
136
  # Custom attribute writer method checking allowed values (enum).
102
137
  # @param [Object] status Object to be assigned
103
138
  def status=(status)
104
- validator = EnumAttributeValidator.new('String', ['success', 'error'])
139
+ validator = EnumAttributeValidator.new('String', ["success", "error"])
105
140
  unless validator.valid?(status)
106
- fail ArgumentError, 'invalid value for "status", must be one of #{validator.allowable_values}.'
141
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
107
142
  end
108
143
  @status = status
109
144
  end
@@ -113,9 +148,9 @@ module DocSpring
113
148
  def ==(o)
114
149
  return true if self.equal?(o)
115
150
  self.class == o.class &&
116
- combined_submission == o.combined_submission &&
151
+ status == o.status &&
117
152
  errors == o.errors &&
118
- status == o.status
153
+ combined_submission == o.combined_submission
119
154
  end
120
155
 
121
156
  # @see the `==` method
@@ -125,39 +160,42 @@ module DocSpring
125
160
  end
126
161
 
127
162
  # Calculates hash code according to all attributes.
128
- # @return [Fixnum] Hash code
163
+ # @return [Integer] Hash code
129
164
  def hash
130
- [combined_submission, errors, status].hash
165
+ [status, errors, combined_submission].hash
131
166
  end
132
167
 
133
168
  # Builds the object from hash
134
169
  # @param [Hash] attributes Model attributes in the form of hash
135
170
  # @return [Object] Returns the model itself
136
- def build_from_hash(attributes)
171
+ def self.build_from_hash(attributes)
137
172
  return nil unless attributes.is_a?(Hash)
138
- self.class.openapi_types.each_pair do |key, type|
139
- if type =~ /\AArray<(.*)>/i
140
- # check to ensure the input is an array given that the the attribute
173
+ attributes = attributes.transform_keys(&:to_sym)
174
+ transformed_hash = {}
175
+ openapi_types.each_pair do |key, type|
176
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
177
+ transformed_hash["#{key}"] = nil
178
+ elsif type =~ /\AArray<(.*)>/i
179
+ # check to ensure the input is an array given that the attribute
141
180
  # is documented as an array but the input is not
142
- if attributes[self.class.attribute_map[key]].is_a?(Array)
143
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
181
+ if attributes[attribute_map[key]].is_a?(Array)
182
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
144
183
  end
145
- elsif !attributes[self.class.attribute_map[key]].nil?
146
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
147
- end # or else data not found in attributes(hash), not an issue as the data can be optional
184
+ elsif !attributes[attribute_map[key]].nil?
185
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
186
+ end
148
187
  end
149
-
150
- self
188
+ new(transformed_hash)
151
189
  end
152
190
 
153
191
  # Deserializes the data based on type
154
192
  # @param string type Data type
155
193
  # @param string value Value to be deserialized
156
194
  # @return [Object] Deserialized data
157
- def _deserialize(type, value)
195
+ def self._deserialize(type, value)
158
196
  case type.to_sym
159
- when :DateTime
160
- DateTime.parse(value)
197
+ when :Time
198
+ Time.parse(value)
161
199
  when :Date
162
200
  Date.parse(value)
163
201
  when :String
@@ -166,7 +204,7 @@ module DocSpring
166
204
  value.to_i
167
205
  when :Float
168
206
  value.to_f
169
- when :BOOLEAN
207
+ when :Boolean
170
208
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
171
209
  true
172
210
  else
@@ -187,8 +225,9 @@ module DocSpring
187
225
  end
188
226
  end
189
227
  else # model
190
- temp_model = DocSpring.const_get(type).new
191
- temp_model.build_from_hash(value)
228
+ # models (e.g. Pet) or oneOf
229
+ klass = DocSpring.const_get(type)
230
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
192
231
  end
193
232
  end
194
233
 
@@ -210,7 +249,11 @@ module DocSpring
210
249
  hash = {}
211
250
  self.class.attribute_map.each_pair do |attr, param|
212
251
  value = self.send(attr)
213
- next if value.nil?
252
+ if value.nil?
253
+ is_nullable = self.class.openapi_nullable.include?(attr)
254
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
255
+ end
256
+
214
257
  hash[param] = _to_hash(value)
215
258
  end
216
259
  hash
@@ -233,5 +276,7 @@ module DocSpring
233
276
  value
234
277
  end
235
278
  end
279
+
236
280
  end
281
+
237
282
  end