docspring 1.4.1 → 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 (243) 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 +5 -0
  8. data/Gemfile +5 -1
  9. data/Gemfile.lock +85 -48
  10. data/README.md +43 -18
  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 -8
  16. data/docs/CombinedSubmission.md +37 -13
  17. data/docs/CombinedSubmissionAction.md +23 -8
  18. data/docs/CombinedSubmissionData.md +21 -7
  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 +17 -5
  45. data/docs/MoveFolderData.md +13 -3
  46. data/docs/MoveTemplateData.md +13 -3
  47. data/docs/PDFApi.md +1598 -523
  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 -10
  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 +1344 -539
  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 +65 -32
  89. data/lib/docspring/models/combined_submission.rb +165 -75
  90. data/lib/docspring/models/combined_submission_action.rb +83 -39
  91. data/lib/docspring/models/combined_submission_data.rb +63 -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/{template1.rb → full_template.rb} +476 -240
  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 +87 -39
  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 -50
  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/{template1_defaults.rb → template_defaults.rb} +77 -29
  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 +29 -12
  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 +427 -118
  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 +13 -18
  160. data/spec/models/combined_submission_action_spec.rb +16 -21
  161. data/spec/models/combined_submission_data_spec.rb +12 -17
  162. data/spec/models/combined_submission_spec.rb +42 -35
  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 +13 -18
  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 -30
  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 +108 -132
  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/Template1.md +0 -46
  228. data/docs/Template1Defaults.md +0 -10
  229. data/docs/TemplatestemplateIdaddFieldsFields.md +0 -92
  230. data/docs/UploadTemplateDataDocument.md +0 -10
  231. data/docs/UploadTemplateDataDocumentMetadata.md +0 -10
  232. data/lib/docspring/models/templatestemplate_idadd_fields_fields.rb +0 -1306
  233. data/spec/api_client_spec.rb +0 -226
  234. data/spec/configuration_spec.rb +0 -53
  235. data/spec/models/create_submission_data_request_token_response_token_spec.rb +0 -59
  236. data/spec/models/custom_file_spec.rb +0 -47
  237. data/spec/models/error_spec.rb +0 -51
  238. data/spec/models/folders_folder_spec.rb +0 -47
  239. data/spec/models/template1_defaults_spec.rb +0 -53
  240. data/spec/models/template1_spec.rb +0 -273
  241. data/spec/models/templatestemplate_idadd_fields_fields_spec.rb +0 -589
  242. data/spec/models/upload_template_data_document_metadata_spec.rb +0 -57
  243. data/spec/models/upload_template_data_document_spec.rb +0 -57
@@ -3,50 +3,57 @@
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 HtmlTemplateData
17
- attr_accessor :expiration_interval
18
+ attr_accessor :add_data_request_submission_id_footers
18
19
 
19
- attr_accessor :webhook_url
20
+ attr_accessor :allow_additional_properties
20
21
 
21
- attr_accessor :scss
22
+ attr_accessor :description
22
23
 
23
- attr_accessor :allow_additional_properties
24
+ attr_accessor :editable_submissions
24
25
 
25
- attr_accessor :expire_after
26
+ attr_accessor :expiration_interval
26
27
 
27
- attr_accessor :description
28
+ attr_accessor :expire_after
28
29
 
29
- attr_accessor :public_submissions
30
+ attr_accessor :expire_submissions
30
31
 
31
- attr_accessor :slack_webhook_url
32
+ attr_accessor :footer_html
32
33
 
33
34
  attr_accessor :header_html
34
35
 
35
- attr_accessor :public_web_form
36
-
37
- attr_accessor :editable_submissions
36
+ attr_accessor :html
38
37
 
39
- attr_accessor :expire_submissions
38
+ attr_accessor :merge_audit_trail_pdf
40
39
 
41
40
  attr_accessor :name
42
41
 
43
- attr_accessor :footer_html
42
+ attr_accessor :public_submissions
44
43
 
45
- attr_accessor :html
44
+ attr_accessor :public_web_form
45
+
46
+ attr_accessor :redirect_url
47
+
48
+ attr_accessor :scss
49
+
50
+ attr_accessor :slack_webhook_url
46
51
 
47
52
  attr_accessor :template_type
48
53
 
49
- attr_accessor :redirect_url
54
+ attr_accessor :webhook_options
55
+
56
+ attr_accessor :webhook_url
50
57
 
51
58
  class EnumAttributeValidator
52
59
  attr_reader :datatype
@@ -73,129 +80,178 @@ module DocSpring
73
80
  # Attribute mapping from ruby-style variable name to JSON key.
74
81
  def self.attribute_map
75
82
  {
76
- :'expiration_interval' => :'expiration_interval',
77
- :'webhook_url' => :'webhook_url',
78
- :'scss' => :'scss',
83
+ :'add_data_request_submission_id_footers' => :'add_data_request_submission_id_footers',
79
84
  :'allow_additional_properties' => :'allow_additional_properties',
80
- :'expire_after' => :'expire_after',
81
85
  :'description' => :'description',
82
- :'public_submissions' => :'public_submissions',
83
- :'slack_webhook_url' => :'slack_webhook_url',
84
- :'header_html' => :'header_html',
85
- :'public_web_form' => :'public_web_form',
86
86
  :'editable_submissions' => :'editable_submissions',
87
+ :'expiration_interval' => :'expiration_interval',
88
+ :'expire_after' => :'expire_after',
87
89
  :'expire_submissions' => :'expire_submissions',
88
- :'name' => :'name',
89
90
  :'footer_html' => :'footer_html',
91
+ :'header_html' => :'header_html',
90
92
  :'html' => :'html',
93
+ :'merge_audit_trail_pdf' => :'merge_audit_trail_pdf',
94
+ :'name' => :'name',
95
+ :'public_submissions' => :'public_submissions',
96
+ :'public_web_form' => :'public_web_form',
97
+ :'redirect_url' => :'redirect_url',
98
+ :'scss' => :'scss',
99
+ :'slack_webhook_url' => :'slack_webhook_url',
91
100
  :'template_type' => :'template_type',
92
- :'redirect_url' => :'redirect_url'
101
+ :'webhook_options' => :'webhook_options',
102
+ :'webhook_url' => :'webhook_url'
93
103
  }
94
104
  end
95
105
 
106
+ # Returns all the JSON keys this model knows about
107
+ def self.acceptable_attributes
108
+ attribute_map.values
109
+ end
110
+
96
111
  # Attribute type mapping.
97
112
  def self.openapi_types
98
113
  {
114
+ :'add_data_request_submission_id_footers' => :'Boolean',
115
+ :'allow_additional_properties' => :'Boolean',
116
+ :'description' => :'String',
117
+ :'editable_submissions' => :'Boolean',
99
118
  :'expiration_interval' => :'String',
100
- :'webhook_url' => :'String',
101
- :'scss' => :'String',
102
- :'allow_additional_properties' => :'BOOLEAN',
103
119
  :'expire_after' => :'Float',
104
- :'description' => :'String',
105
- :'public_submissions' => :'BOOLEAN',
106
- :'slack_webhook_url' => :'String',
107
- :'header_html' => :'String',
108
- :'public_web_form' => :'BOOLEAN',
109
- :'editable_submissions' => :'BOOLEAN',
110
- :'expire_submissions' => :'BOOLEAN',
111
- :'name' => :'String',
120
+ :'expire_submissions' => :'Boolean',
112
121
  :'footer_html' => :'String',
122
+ :'header_html' => :'String',
113
123
  :'html' => :'String',
124
+ :'merge_audit_trail_pdf' => :'Boolean',
125
+ :'name' => :'String',
126
+ :'public_submissions' => :'Boolean',
127
+ :'public_web_form' => :'Boolean',
128
+ :'redirect_url' => :'String',
129
+ :'scss' => :'String',
130
+ :'slack_webhook_url' => :'String',
114
131
  :'template_type' => :'String',
115
- :'redirect_url' => :'String'
132
+ :'webhook_options' => :'HtmlTemplateDataWebhookOptions',
133
+ :'webhook_url' => :'String'
116
134
  }
117
135
  end
118
136
 
137
+ # List of attributes with nullable: true
138
+ def self.openapi_nullable
139
+ Set.new([
140
+ :'description',
141
+ :'footer_html',
142
+ :'header_html',
143
+ :'html',
144
+ :'name',
145
+ :'redirect_url',
146
+ :'scss',
147
+ :'slack_webhook_url',
148
+ :'webhook_options',
149
+ :'webhook_url'
150
+ ])
151
+ end
152
+
119
153
  # Initializes the object
120
154
  # @param [Hash] attributes Model attributes in the form of hash
121
155
  def initialize(attributes = {})
122
- return unless attributes.is_a?(Hash)
156
+ if (!attributes.is_a?(Hash))
157
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DocSpring::HtmlTemplateData` initialize method"
158
+ end
123
159
 
124
- # convert string to symbol for hash key
125
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
160
+ # check to see if the attribute exists and convert string to symbol for hash key
161
+ attributes = attributes.each_with_object({}) { |(k, v), h|
162
+ if (!self.class.attribute_map.key?(k.to_sym))
163
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DocSpring::HtmlTemplateData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
164
+ end
165
+ h[k.to_sym] = v
166
+ }
126
167
 
127
- if attributes.has_key?(:'expiration_interval')
128
- self.expiration_interval = attributes[:'expiration_interval']
168
+ if attributes.key?(:'add_data_request_submission_id_footers')
169
+ self.add_data_request_submission_id_footers = attributes[:'add_data_request_submission_id_footers']
129
170
  end
130
171
 
131
- if attributes.has_key?(:'webhook_url')
132
- self.webhook_url = attributes[:'webhook_url']
172
+ if attributes.key?(:'allow_additional_properties')
173
+ self.allow_additional_properties = attributes[:'allow_additional_properties']
133
174
  end
134
175
 
135
- if attributes.has_key?(:'scss')
136
- self.scss = attributes[:'scss']
176
+ if attributes.key?(:'description')
177
+ self.description = attributes[:'description']
137
178
  end
138
179
 
139
- if attributes.has_key?(:'allow_additional_properties')
140
- self.allow_additional_properties = attributes[:'allow_additional_properties']
180
+ if attributes.key?(:'editable_submissions')
181
+ self.editable_submissions = attributes[:'editable_submissions']
141
182
  end
142
183
 
143
- if attributes.has_key?(:'expire_after')
144
- self.expire_after = attributes[:'expire_after']
184
+ if attributes.key?(:'expiration_interval')
185
+ self.expiration_interval = attributes[:'expiration_interval']
145
186
  end
146
187
 
147
- if attributes.has_key?(:'description')
148
- self.description = attributes[:'description']
188
+ if attributes.key?(:'expire_after')
189
+ self.expire_after = attributes[:'expire_after']
149
190
  end
150
191
 
151
- if attributes.has_key?(:'public_submissions')
152
- self.public_submissions = attributes[:'public_submissions']
192
+ if attributes.key?(:'expire_submissions')
193
+ self.expire_submissions = attributes[:'expire_submissions']
153
194
  end
154
195
 
155
- if attributes.has_key?(:'slack_webhook_url')
156
- self.slack_webhook_url = attributes[:'slack_webhook_url']
196
+ if attributes.key?(:'footer_html')
197
+ self.footer_html = attributes[:'footer_html']
157
198
  end
158
199
 
159
- if attributes.has_key?(:'header_html')
200
+ if attributes.key?(:'header_html')
160
201
  self.header_html = attributes[:'header_html']
161
202
  end
162
203
 
163
- if attributes.has_key?(:'public_web_form')
164
- self.public_web_form = attributes[:'public_web_form']
204
+ if attributes.key?(:'html')
205
+ self.html = attributes[:'html']
165
206
  end
166
207
 
167
- if attributes.has_key?(:'editable_submissions')
168
- self.editable_submissions = attributes[:'editable_submissions']
208
+ if attributes.key?(:'merge_audit_trail_pdf')
209
+ self.merge_audit_trail_pdf = attributes[:'merge_audit_trail_pdf']
169
210
  end
170
211
 
171
- if attributes.has_key?(:'expire_submissions')
172
- self.expire_submissions = attributes[:'expire_submissions']
212
+ if attributes.key?(:'name')
213
+ self.name = attributes[:'name']
214
+ else
215
+ self.name = nil
173
216
  end
174
217
 
175
- if attributes.has_key?(:'name')
176
- self.name = attributes[:'name']
218
+ if attributes.key?(:'public_submissions')
219
+ self.public_submissions = attributes[:'public_submissions']
177
220
  end
178
221
 
179
- if attributes.has_key?(:'footer_html')
180
- self.footer_html = attributes[:'footer_html']
222
+ if attributes.key?(:'public_web_form')
223
+ self.public_web_form = attributes[:'public_web_form']
181
224
  end
182
225
 
183
- if attributes.has_key?(:'html')
184
- self.html = attributes[:'html']
226
+ if attributes.key?(:'redirect_url')
227
+ self.redirect_url = attributes[:'redirect_url']
228
+ end
229
+
230
+ if attributes.key?(:'scss')
231
+ self.scss = attributes[:'scss']
232
+ end
233
+
234
+ if attributes.key?(:'slack_webhook_url')
235
+ self.slack_webhook_url = attributes[:'slack_webhook_url']
185
236
  end
186
237
 
187
- if attributes.has_key?(:'template_type')
238
+ if attributes.key?(:'template_type')
188
239
  self.template_type = attributes[:'template_type']
189
240
  end
190
241
 
191
- if attributes.has_key?(:'redirect_url')
192
- self.redirect_url = attributes[:'redirect_url']
242
+ if attributes.key?(:'webhook_options')
243
+ self.webhook_options = attributes[:'webhook_options']
244
+ end
245
+
246
+ if attributes.key?(:'webhook_url')
247
+ self.webhook_url = attributes[:'webhook_url']
193
248
  end
194
249
  end
195
250
 
196
251
  # Show invalid properties with the reasons. Usually used together with valid?
197
252
  # @return Array for valid properties with the reasons
198
253
  def list_invalid_properties
254
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
199
255
  invalid_properties = Array.new
200
256
  invalid_properties
201
257
  end
@@ -203,9 +259,10 @@ module DocSpring
203
259
  # Check to see if the all the properties in the model are valid
204
260
  # @return true if the model is valid
205
261
  def valid?
206
- expiration_interval_validator = EnumAttributeValidator.new('String', ['minutes', 'hours', 'days'])
262
+ warn '[DEPRECATED] the `valid?` method is obsolete'
263
+ expiration_interval_validator = EnumAttributeValidator.new('String', ["minutes", "hours", "days"])
207
264
  return false unless expiration_interval_validator.valid?(@expiration_interval)
208
- template_type_validator = EnumAttributeValidator.new('String', ['pdf', 'html'])
265
+ template_type_validator = EnumAttributeValidator.new('String', ["pdf", "html"])
209
266
  return false unless template_type_validator.valid?(@template_type)
210
267
  true
211
268
  end
@@ -213,9 +270,9 @@ module DocSpring
213
270
  # Custom attribute writer method checking allowed values (enum).
214
271
  # @param [Object] expiration_interval Object to be assigned
215
272
  def expiration_interval=(expiration_interval)
216
- validator = EnumAttributeValidator.new('String', ['minutes', 'hours', 'days'])
273
+ validator = EnumAttributeValidator.new('String', ["minutes", "hours", "days"])
217
274
  unless validator.valid?(expiration_interval)
218
- fail ArgumentError, 'invalid value for "expiration_interval", must be one of #{validator.allowable_values}.'
275
+ fail ArgumentError, "invalid value for \"expiration_interval\", must be one of #{validator.allowable_values}."
219
276
  end
220
277
  @expiration_interval = expiration_interval
221
278
  end
@@ -223,9 +280,9 @@ module DocSpring
223
280
  # Custom attribute writer method checking allowed values (enum).
224
281
  # @param [Object] template_type Object to be assigned
225
282
  def template_type=(template_type)
226
- validator = EnumAttributeValidator.new('String', ['pdf', 'html'])
283
+ validator = EnumAttributeValidator.new('String', ["pdf", "html"])
227
284
  unless validator.valid?(template_type)
228
- fail ArgumentError, 'invalid value for "template_type", must be one of #{validator.allowable_values}.'
285
+ fail ArgumentError, "invalid value for \"template_type\", must be one of #{validator.allowable_values}."
229
286
  end
230
287
  @template_type = template_type
231
288
  end
@@ -235,23 +292,26 @@ module DocSpring
235
292
  def ==(o)
236
293
  return true if self.equal?(o)
237
294
  self.class == o.class &&
238
- expiration_interval == o.expiration_interval &&
239
- webhook_url == o.webhook_url &&
240
- scss == o.scss &&
295
+ add_data_request_submission_id_footers == o.add_data_request_submission_id_footers &&
241
296
  allow_additional_properties == o.allow_additional_properties &&
242
- expire_after == o.expire_after &&
243
297
  description == o.description &&
244
- public_submissions == o.public_submissions &&
245
- slack_webhook_url == o.slack_webhook_url &&
246
- header_html == o.header_html &&
247
- public_web_form == o.public_web_form &&
248
298
  editable_submissions == o.editable_submissions &&
299
+ expiration_interval == o.expiration_interval &&
300
+ expire_after == o.expire_after &&
249
301
  expire_submissions == o.expire_submissions &&
250
- name == o.name &&
251
302
  footer_html == o.footer_html &&
303
+ header_html == o.header_html &&
252
304
  html == o.html &&
305
+ merge_audit_trail_pdf == o.merge_audit_trail_pdf &&
306
+ name == o.name &&
307
+ public_submissions == o.public_submissions &&
308
+ public_web_form == o.public_web_form &&
309
+ redirect_url == o.redirect_url &&
310
+ scss == o.scss &&
311
+ slack_webhook_url == o.slack_webhook_url &&
253
312
  template_type == o.template_type &&
254
- redirect_url == o.redirect_url
313
+ webhook_options == o.webhook_options &&
314
+ webhook_url == o.webhook_url
255
315
  end
256
316
 
257
317
  # @see the `==` method
@@ -261,39 +321,42 @@ module DocSpring
261
321
  end
262
322
 
263
323
  # Calculates hash code according to all attributes.
264
- # @return [Fixnum] Hash code
324
+ # @return [Integer] Hash code
265
325
  def hash
266
- [expiration_interval, webhook_url, scss, allow_additional_properties, expire_after, description, public_submissions, slack_webhook_url, header_html, public_web_form, editable_submissions, expire_submissions, name, footer_html, html, template_type, redirect_url].hash
326
+ [add_data_request_submission_id_footers, allow_additional_properties, description, editable_submissions, expiration_interval, expire_after, expire_submissions, footer_html, header_html, html, merge_audit_trail_pdf, name, public_submissions, public_web_form, redirect_url, scss, slack_webhook_url, template_type, webhook_options, webhook_url].hash
267
327
  end
268
328
 
269
329
  # Builds the object from hash
270
330
  # @param [Hash] attributes Model attributes in the form of hash
271
331
  # @return [Object] Returns the model itself
272
- def build_from_hash(attributes)
332
+ def self.build_from_hash(attributes)
273
333
  return nil unless attributes.is_a?(Hash)
274
- self.class.openapi_types.each_pair do |key, type|
275
- if type =~ /\AArray<(.*)>/i
276
- # check to ensure the input is an array given that the the attribute
334
+ attributes = attributes.transform_keys(&:to_sym)
335
+ transformed_hash = {}
336
+ openapi_types.each_pair do |key, type|
337
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
338
+ transformed_hash["#{key}"] = nil
339
+ elsif type =~ /\AArray<(.*)>/i
340
+ # check to ensure the input is an array given that the attribute
277
341
  # is documented as an array but the input is not
278
- if attributes[self.class.attribute_map[key]].is_a?(Array)
279
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
342
+ if attributes[attribute_map[key]].is_a?(Array)
343
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
280
344
  end
281
- elsif !attributes[self.class.attribute_map[key]].nil?
282
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
283
- end # or else data not found in attributes(hash), not an issue as the data can be optional
345
+ elsif !attributes[attribute_map[key]].nil?
346
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
347
+ end
284
348
  end
285
-
286
- self
349
+ new(transformed_hash)
287
350
  end
288
351
 
289
352
  # Deserializes the data based on type
290
353
  # @param string type Data type
291
354
  # @param string value Value to be deserialized
292
355
  # @return [Object] Deserialized data
293
- def _deserialize(type, value)
356
+ def self._deserialize(type, value)
294
357
  case type.to_sym
295
- when :DateTime
296
- DateTime.parse(value)
358
+ when :Time
359
+ Time.parse(value)
297
360
  when :Date
298
361
  Date.parse(value)
299
362
  when :String
@@ -302,7 +365,7 @@ module DocSpring
302
365
  value.to_i
303
366
  when :Float
304
367
  value.to_f
305
- when :BOOLEAN
368
+ when :Boolean
306
369
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
307
370
  true
308
371
  else
@@ -323,8 +386,9 @@ module DocSpring
323
386
  end
324
387
  end
325
388
  else # model
326
- temp_model = DocSpring.const_get(type).new
327
- temp_model.build_from_hash(value)
389
+ # models (e.g. Pet) or oneOf
390
+ klass = DocSpring.const_get(type)
391
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
328
392
  end
329
393
  end
330
394
 
@@ -346,7 +410,11 @@ module DocSpring
346
410
  hash = {}
347
411
  self.class.attribute_map.each_pair do |attr, param|
348
412
  value = self.send(attr)
349
- next if value.nil?
413
+ if value.nil?
414
+ is_nullable = self.class.openapi_nullable.include?(attr)
415
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
416
+ end
417
+
350
418
  hash[param] = _to_hash(value)
351
419
  end
352
420
  hash
@@ -369,5 +437,7 @@ module DocSpring
369
437
  value
370
438
  end
371
439
  end
440
+
372
441
  end
442
+
373
443
  end