kickflow 0.1.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 (384) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +5 -0
  3. data/Gemfile +18 -0
  4. data/LICENSE.txt +202 -0
  5. data/README.md +303 -0
  6. data/Rakefile +48 -0
  7. data/Rakefile~ +48 -0
  8. data/bin/console +11 -0
  9. data/bin/setup +8 -0
  10. data/bin/setup-Nix +2 -0
  11. data/docs/Attachment.md +22 -0
  12. data/docs/Category.md +24 -0
  13. data/docs/ClimberCloudSetting.md +24 -0
  14. data/docs/ClimberCloudSettingMappingsInner.md +20 -0
  15. data/docs/Comment.md +32 -0
  16. data/docs/DefaultApi.md +6318 -0
  17. data/docs/DeleteTeamsTeamIdMembersRequest.md +18 -0
  18. data/docs/ExternalApiSetting.md +30 -0
  19. data/docs/ExternalApiSettingHeadersInner.md +20 -0
  20. data/docs/ExternalApiSettingMappingsInner.md +24 -0
  21. data/docs/Folder.md +34 -0
  22. data/docs/FolderDetail.md +38 -0
  23. data/docs/FormField.md +60 -0
  24. data/docs/FormFieldDetail.md +68 -0
  25. data/docs/GeneralMaster.md +30 -0
  26. data/docs/GeneralMasterField.md +36 -0
  27. data/docs/GeneralMasterItem.md +34 -0
  28. data/docs/GeneralMasterItemInputsInner.md +26 -0
  29. data/docs/GeneralMasterItemInputsInnerValue.md +15 -0
  30. data/docs/GetFilesSignedId200Response.md +28 -0
  31. data/docs/GetTicketsStatusParameter.md +49 -0
  32. data/docs/Grade.md +30 -0
  33. data/docs/GradeCreateBody.md +22 -0
  34. data/docs/GradeUpdateBody.md +22 -0
  35. data/docs/Label.md +28 -0
  36. data/docs/MemberUser.md +46 -0
  37. data/docs/OrganizationChart.md +32 -0
  38. data/docs/OrganizationChartActivationPlan.md +24 -0
  39. data/docs/OrganizationChartBody.md +18 -0
  40. data/docs/OrganizationChartDetail.md +32 -0
  41. data/docs/PatchFoldersFolderIdRequest.md +24 -0
  42. data/docs/PatchGeneralMastersGeneralMasterIdItemsItemIdRequest.md +28 -0
  43. data/docs/PatchGeneralMastersGeneralMasterIdItemsItemIdRequestInputsInner.md +20 -0
  44. data/docs/PatchGeneralMastersGeneralMasterIdItemsItemIdRequestInputsInnerValue.md +49 -0
  45. data/docs/PatchGeneralMastersGeneralMasterIdRequest.md +24 -0
  46. data/docs/PatchGeneralMastersGeneralMasterIdRequestFieldsInner.md +30 -0
  47. data/docs/PatchTeamsTeamIdMembershipsUserIdRequest.md +20 -0
  48. data/docs/PatchTicketsIdCommentsCommentIdRequest.md +18 -0
  49. data/docs/PatchTicketsTicketIdRequest.md +30 -0
  50. data/docs/PatchTicketsTicketIdRequestCloudSignDocument.md +22 -0
  51. data/docs/PatchTicketsTicketIdRequestInputsInner.md +32 -0
  52. data/docs/PatchTicketsTicketIdRequestSlipItemsInner.md +18 -0
  53. data/docs/PatchTicketsTicketIdRequestSlipItemsInnerInputsInner.md +26 -0
  54. data/docs/PatchUsersUserIdRequest.md +26 -0
  55. data/docs/PostCategoriesRequest.md +18 -0
  56. data/docs/PostFiles200Response.md +18 -0
  57. data/docs/PostFoldersRequest.md +24 -0
  58. data/docs/PostGeneralMastersGeneralMasterIdItemsRequest.md +28 -0
  59. data/docs/PostGeneralMastersGeneralMasterIdItemsRequestInputsInner.md +20 -0
  60. data/docs/PostGeneralMastersGeneralMasterIdItemsRequestInputsInnerValue.md +49 -0
  61. data/docs/PostGeneralMastersRequest.md +24 -0
  62. data/docs/PostGeneralMastersRequestFieldsInner.md +30 -0
  63. data/docs/PostOrganizationChartsOrganizationChartIdActivateRequest.md +18 -0
  64. data/docs/PostProxyApplicantsRequest.md +26 -0
  65. data/docs/PostProxyApproversRequest.md +26 -0
  66. data/docs/PostRolesRoleIdMembershipsRequest.md +18 -0
  67. data/docs/PostTeamsTeamIdMembersRequest.md +18 -0
  68. data/docs/PostTeamsTeamIdMembersRequestUsersInner.md +22 -0
  69. data/docs/PostTicketsIdCommentsRequest.md +20 -0
  70. data/docs/PostTicketsIdViewersRequest.md +22 -0
  71. data/docs/PostTicketsIdViewersRequestTeamId.md +15 -0
  72. data/docs/PostTicketsIdViewersRequestUserId.md +15 -0
  73. data/docs/PostTicketsRequest.md +32 -0
  74. data/docs/PostTicketsRequestCloudSignDocument.md +22 -0
  75. data/docs/PostTicketsRequestInputsInner.md +32 -0
  76. data/docs/PostTicketsRequestInputsInnerTeamId.md +49 -0
  77. data/docs/PostTicketsRequestInputsInnerTicketId.md +49 -0
  78. data/docs/PostTicketsRequestInputsInnerUserId.md +49 -0
  79. data/docs/PostTicketsRequestSlipItemsInner.md +18 -0
  80. data/docs/PostTicketsRequestSlipItemsInnerInputsInner.md +26 -0
  81. data/docs/PostTicketsRequestSlipItemsInnerInputsInnerGeneralMasterItemId.md +49 -0
  82. data/docs/PostTicketsRequestSlipItemsInnerInputsInnerValue.md +49 -0
  83. data/docs/PostTicketsTicketIdRejectRequest.md +18 -0
  84. data/docs/PostUsersRequest.md +28 -0
  85. data/docs/ProxyApplicant.md +32 -0
  86. data/docs/ProxyApprover.md +32 -0
  87. data/docs/Role.md +28 -0
  88. data/docs/RoleCreateBody.md +20 -0
  89. data/docs/RoleCreateBodyPermissionListInner.md +26 -0
  90. data/docs/RoleDetail.md +30 -0
  91. data/docs/RoleDetailAllOfPermissionList.md +26 -0
  92. data/docs/RoleUpdateBody.md +20 -0
  93. data/docs/RoleUpdateBodyPermissionListInner.md +26 -0
  94. data/docs/Route.md +40 -0
  95. data/docs/RouteDetail.md +42 -0
  96. data/docs/RouteStep.md +44 -0
  97. data/docs/RouteStepCondition.md +24 -0
  98. data/docs/RouteStepConditionField.md +34 -0
  99. data/docs/RouteStepTarget.md +24 -0
  100. data/docs/Section.md +32 -0
  101. data/docs/SlipField.md +56 -0
  102. data/docs/SlipFieldDetail.md +60 -0
  103. data/docs/SlipItem.md +24 -0
  104. data/docs/SlipItemInput.md +30 -0
  105. data/docs/SlipItemInputValue.md +15 -0
  106. data/docs/SubStatus.md +28 -0
  107. data/docs/Team.md +32 -0
  108. data/docs/TeamCreateBody.md +24 -0
  109. data/docs/TeamDetail.md +38 -0
  110. data/docs/TeamUpdateBody.md +24 -0
  111. data/docs/Ticket.md +50 -0
  112. data/docs/TicketAssignee.md +28 -0
  113. data/docs/TicketDetail.md +68 -0
  114. data/docs/TicketDetailAllOfCloudSignDocument.md +32 -0
  115. data/docs/TicketInput.md +32 -0
  116. data/docs/TicketInputValue.md +15 -0
  117. data/docs/TicketSection.md +22 -0
  118. data/docs/TicketStep.md +44 -0
  119. data/docs/TicketViewer.md +24 -0
  120. data/docs/TicketWorkflow.md +74 -0
  121. data/docs/User.md +42 -0
  122. data/docs/UserDetail.md +42 -0
  123. data/docs/UserImage.md +18 -0
  124. data/docs/Workflow.md +66 -0
  125. data/docs/WorkflowDetail.md +76 -0
  126. data/docs/WorkflowInTicket.md +74 -0
  127. data/docs/WorkflowInTicketAllOfCloudSignSetting.md +18 -0
  128. data/docs/WorkflowRouteCondition.md +30 -0
  129. data/docs/WorkflowRouteConditionField.md +30 -0
  130. data/docs/WorkflowTicketViewer.md +24 -0
  131. data/git_push.sh +57 -0
  132. data/kickflow.gemspec +34 -0
  133. data/lib/kickflow/api/_api.rb +6531 -0
  134. data/lib/kickflow/api_client.rb +431 -0
  135. data/lib/kickflow/api_error.rb +58 -0
  136. data/lib/kickflow/configuration.rb +392 -0
  137. data/lib/kickflow/models/attachment.rb +257 -0
  138. data/lib/kickflow/models/category.rb +293 -0
  139. data/lib/kickflow/models/climber_cloud_setting.rb +261 -0
  140. data/lib/kickflow/models/climber_cloud_setting_mappings_inner.rb +238 -0
  141. data/lib/kickflow/models/comment.rb +341 -0
  142. data/lib/kickflow/models/delete_teams_team_id_members_request.rb +252 -0
  143. data/lib/kickflow/models/external_api_setting.rb +359 -0
  144. data/lib/kickflow/models/external_api_setting_headers_inner.rb +239 -0
  145. data/lib/kickflow/models/external_api_setting_mappings_inner.rb +268 -0
  146. data/lib/kickflow/models/folder.rb +448 -0
  147. data/lib/kickflow/models/folder_detail.rb +479 -0
  148. data/lib/kickflow/models/form_field.rb +646 -0
  149. data/lib/kickflow/models/form_field_detail.rb +693 -0
  150. data/lib/kickflow/models/general_master.rb +361 -0
  151. data/lib/kickflow/models/general_master_field.rb +442 -0
  152. data/lib/kickflow/models/general_master_item.rb +387 -0
  153. data/lib/kickflow/models/general_master_item_inputs_inner.rb +288 -0
  154. data/lib/kickflow/models/general_master_item_inputs_inner_value.rb +105 -0
  155. data/lib/kickflow/models/get_files_signed_id200_response.rb +307 -0
  156. data/lib/kickflow/models/get_tickets_status_parameter.rb +105 -0
  157. data/lib/kickflow/models/grade.rb +383 -0
  158. data/lib/kickflow/models/grade_create_body.rb +316 -0
  159. data/lib/kickflow/models/grade_update_body.rb +283 -0
  160. data/lib/kickflow/models/label.rb +343 -0
  161. data/lib/kickflow/models/member_user.rb +620 -0
  162. data/lib/kickflow/models/organization_chart.rb +356 -0
  163. data/lib/kickflow/models/organization_chart_activation_plan.rb +274 -0
  164. data/lib/kickflow/models/organization_chart_body.rb +223 -0
  165. data/lib/kickflow/models/organization_chart_detail.rb +363 -0
  166. data/lib/kickflow/models/patch_folders_folder_id_request.rb +246 -0
  167. data/lib/kickflow/models/patch_general_masters_general_master_id_items_item_id_request.rb +269 -0
  168. data/lib/kickflow/models/patch_general_masters_general_master_id_items_item_id_request_inputs_inner.rb +238 -0
  169. data/lib/kickflow/models/patch_general_masters_general_master_id_items_item_id_request_inputs_inner_value.rb +106 -0
  170. data/lib/kickflow/models/patch_general_masters_general_master_id_request.rb +247 -0
  171. data/lib/kickflow/models/patch_general_masters_general_master_id_request_fields_inner.rb +286 -0
  172. data/lib/kickflow/models/patch_teams_team_id_memberships_user_id_request.rb +260 -0
  173. data/lib/kickflow/models/patch_tickets_id_comments_comment_id_request.rb +222 -0
  174. data/lib/kickflow/models/patch_tickets_ticket_id_request.rb +312 -0
  175. data/lib/kickflow/models/patch_tickets_ticket_id_request_cloud_sign_document.rb +257 -0
  176. data/lib/kickflow/models/patch_tickets_ticket_id_request_inputs_inner.rb +286 -0
  177. data/lib/kickflow/models/patch_tickets_ticket_id_request_slip_items_inner.rb +225 -0
  178. data/lib/kickflow/models/patch_tickets_ticket_id_request_slip_items_inner_inputs_inner.rb +261 -0
  179. data/lib/kickflow/models/patch_users_user_id_request.rb +347 -0
  180. data/lib/kickflow/models/post_categories_request.rb +222 -0
  181. data/lib/kickflow/models/post_files200_response.rb +222 -0
  182. data/lib/kickflow/models/post_folders_request.rb +253 -0
  183. data/lib/kickflow/models/post_general_masters_general_master_id_items_request.rb +283 -0
  184. data/lib/kickflow/models/post_general_masters_general_master_id_items_request_inputs_inner.rb +238 -0
  185. data/lib/kickflow/models/post_general_masters_general_master_id_items_request_inputs_inner_value.rb +106 -0
  186. data/lib/kickflow/models/post_general_masters_request.rb +254 -0
  187. data/lib/kickflow/models/post_general_masters_request_fields_inner.rb +341 -0
  188. data/lib/kickflow/models/post_organization_charts_organization_chart_id_activate_request.rb +215 -0
  189. data/lib/kickflow/models/post_proxy_applicants_request.rb +273 -0
  190. data/lib/kickflow/models/post_proxy_approvers_request.rb +273 -0
  191. data/lib/kickflow/models/post_roles_role_id_memberships_request.rb +252 -0
  192. data/lib/kickflow/models/post_teams_team_id_members_request.rb +252 -0
  193. data/lib/kickflow/models/post_teams_team_id_members_request_users_inner.rb +270 -0
  194. data/lib/kickflow/models/post_tickets_id_comments_request.rb +235 -0
  195. data/lib/kickflow/models/post_tickets_id_viewers_request.rb +236 -0
  196. data/lib/kickflow/models/post_tickets_id_viewers_request_team_id.rb +105 -0
  197. data/lib/kickflow/models/post_tickets_id_viewers_request_user_id.rb +105 -0
  198. data/lib/kickflow/models/post_tickets_request.rb +352 -0
  199. data/lib/kickflow/models/post_tickets_request_cloud_sign_document.rb +257 -0
  200. data/lib/kickflow/models/post_tickets_request_inputs_inner.rb +286 -0
  201. data/lib/kickflow/models/post_tickets_request_inputs_inner_team_id.rb +106 -0
  202. data/lib/kickflow/models/post_tickets_request_inputs_inner_ticket_id.rb +106 -0
  203. data/lib/kickflow/models/post_tickets_request_inputs_inner_user_id.rb +106 -0
  204. data/lib/kickflow/models/post_tickets_request_slip_items_inner.rb +225 -0
  205. data/lib/kickflow/models/post_tickets_request_slip_items_inner_inputs_inner.rb +259 -0
  206. data/lib/kickflow/models/post_tickets_request_slip_items_inner_inputs_inner_general_master_item_id.rb +106 -0
  207. data/lib/kickflow/models/post_tickets_request_slip_items_inner_inputs_inner_value.rb +106 -0
  208. data/lib/kickflow/models/post_tickets_ticket_id_reject_request.rb +222 -0
  209. data/lib/kickflow/models/post_users_request.rb +366 -0
  210. data/lib/kickflow/models/proxy_applicant.rb +334 -0
  211. data/lib/kickflow/models/proxy_approver.rb +334 -0
  212. data/lib/kickflow/models/role.rb +346 -0
  213. data/lib/kickflow/models/role_create_body.rb +242 -0
  214. data/lib/kickflow/models/role_create_body_permission_list_inner.rb +309 -0
  215. data/lib/kickflow/models/role_detail.rb +372 -0
  216. data/lib/kickflow/models/role_detail_all_of_permission_list.rb +330 -0
  217. data/lib/kickflow/models/role_update_body.rb +228 -0
  218. data/lib/kickflow/models/role_update_body_permission_list_inner.rb +330 -0
  219. data/lib/kickflow/models/route.rb +429 -0
  220. data/lib/kickflow/models/route_detail.rb +453 -0
  221. data/lib/kickflow/models/route_step.rb +495 -0
  222. data/lib/kickflow/models/route_step_condition.rb +292 -0
  223. data/lib/kickflow/models/route_step_condition_field.rb +293 -0
  224. data/lib/kickflow/models/route_step_target.rb +246 -0
  225. data/lib/kickflow/models/section.rb +336 -0
  226. data/lib/kickflow/models/slip_field.rb +535 -0
  227. data/lib/kickflow/models/slip_field_detail.rb +562 -0
  228. data/lib/kickflow/models/slip_item.rb +276 -0
  229. data/lib/kickflow/models/slip_item_input.rb +324 -0
  230. data/lib/kickflow/models/slip_item_input_value.rb +107 -0
  231. data/lib/kickflow/models/sub_status.rb +302 -0
  232. data/lib/kickflow/models/team.rb +399 -0
  233. data/lib/kickflow/models/team_create_body.rb +253 -0
  234. data/lib/kickflow/models/team_detail.rb +454 -0
  235. data/lib/kickflow/models/team_update_body.rb +246 -0
  236. data/lib/kickflow/models/ticket.rb +540 -0
  237. data/lib/kickflow/models/ticket_assignee.rb +303 -0
  238. data/lib/kickflow/models/ticket_detail.rb +684 -0
  239. data/lib/kickflow/models/ticket_detail_all_of_cloud_sign_document.rb +375 -0
  240. data/lib/kickflow/models/ticket_input.rb +308 -0
  241. data/lib/kickflow/models/ticket_input_value.rb +107 -0
  242. data/lib/kickflow/models/ticket_section.rb +259 -0
  243. data/lib/kickflow/models/ticket_step.rb +471 -0
  244. data/lib/kickflow/models/ticket_viewer.rb +259 -0
  245. data/lib/kickflow/models/ticket_workflow.rb +105 -0
  246. data/lib/kickflow/models/user.rb +558 -0
  247. data/lib/kickflow/models/user_detail.rb +565 -0
  248. data/lib/kickflow/models/user_image.rb +222 -0
  249. data/lib/kickflow/models/workflow.rb +693 -0
  250. data/lib/kickflow/models/workflow_detail.rb +796 -0
  251. data/lib/kickflow/models/workflow_in_ticket.rb +770 -0
  252. data/lib/kickflow/models/workflow_in_ticket_all_of_cloud_sign_setting.rb +222 -0
  253. data/lib/kickflow/models/workflow_route_condition.rb +364 -0
  254. data/lib/kickflow/models/workflow_route_condition_field.rb +305 -0
  255. data/lib/kickflow/models/workflow_ticket_viewer.rb +259 -0
  256. data/lib/kickflow/version.rb +15 -0
  257. data/lib/kickflow.rb +159 -0
  258. data/manifest.scm +1 -0
  259. data/manifest.scm~ +1 -0
  260. data/pkg/kickflow-0.1.0.gem +0 -0
  261. data/sig/kickflow.rbs +4 -0
  262. data/spec/api/_api_spec.rb +1260 -0
  263. data/spec/models/attachment_spec.rb +48 -0
  264. data/spec/models/category_spec.rb +54 -0
  265. data/spec/models/climber_cloud_setting_mappings_inner_spec.rb +42 -0
  266. data/spec/models/climber_cloud_setting_spec.rb +54 -0
  267. data/spec/models/comment_spec.rb +78 -0
  268. data/spec/models/delete_teams_team_id_members_request_spec.rb +36 -0
  269. data/spec/models/external_api_setting_headers_inner_spec.rb +42 -0
  270. data/spec/models/external_api_setting_mappings_inner_spec.rb +54 -0
  271. data/spec/models/external_api_setting_spec.rb +76 -0
  272. data/spec/models/folder_detail_spec.rb +96 -0
  273. data/spec/models/folder_spec.rb +84 -0
  274. data/spec/models/form_field_detail_spec.rb +194 -0
  275. data/spec/models/form_field_spec.rb +170 -0
  276. data/spec/models/general_master_field_spec.rb +94 -0
  277. data/spec/models/general_master_item_inputs_inner_spec.rb +60 -0
  278. data/spec/models/general_master_item_inputs_inner_value_spec.rb +21 -0
  279. data/spec/models/general_master_item_spec.rb +84 -0
  280. data/spec/models/general_master_spec.rb +72 -0
  281. data/spec/models/get_files_signed_id200_response_spec.rb +66 -0
  282. data/spec/models/get_tickets_status_parameter_spec.rb +32 -0
  283. data/spec/models/grade_create_body_spec.rb +48 -0
  284. data/spec/models/grade_spec.rb +72 -0
  285. data/spec/models/grade_update_body_spec.rb +48 -0
  286. data/spec/models/label_spec.rb +66 -0
  287. data/spec/models/member_user_spec.rb +124 -0
  288. data/spec/models/organization_chart_activation_plan_spec.rb +54 -0
  289. data/spec/models/organization_chart_body_spec.rb +36 -0
  290. data/spec/models/organization_chart_detail_spec.rb +78 -0
  291. data/spec/models/organization_chart_spec.rb +78 -0
  292. data/spec/models/patch_folders_folder_id_request_spec.rb +54 -0
  293. data/spec/models/patch_general_masters_general_master_id_items_item_id_request_inputs_inner_spec.rb +42 -0
  294. data/spec/models/patch_general_masters_general_master_id_items_item_id_request_inputs_inner_value_spec.rb +32 -0
  295. data/spec/models/patch_general_masters_general_master_id_items_item_id_request_spec.rb +66 -0
  296. data/spec/models/patch_general_masters_general_master_id_request_fields_inner_spec.rb +72 -0
  297. data/spec/models/patch_general_masters_general_master_id_request_spec.rb +54 -0
  298. data/spec/models/patch_teams_team_id_memberships_user_id_request_spec.rb +42 -0
  299. data/spec/models/patch_tickets_id_comments_comment_id_request_spec.rb +36 -0
  300. data/spec/models/patch_tickets_ticket_id_request_cloud_sign_document_spec.rb +48 -0
  301. data/spec/models/patch_tickets_ticket_id_request_inputs_inner_spec.rb +78 -0
  302. data/spec/models/patch_tickets_ticket_id_request_slip_items_inner_inputs_inner_spec.rb +60 -0
  303. data/spec/models/patch_tickets_ticket_id_request_slip_items_inner_spec.rb +36 -0
  304. data/spec/models/patch_tickets_ticket_id_request_spec.rb +76 -0
  305. data/spec/models/patch_users_user_id_request_spec.rb +60 -0
  306. data/spec/models/post_categories_request_spec.rb +36 -0
  307. data/spec/models/post_files200_response_spec.rb +36 -0
  308. data/spec/models/post_folders_request_spec.rb +54 -0
  309. data/spec/models/post_general_masters_general_master_id_items_request_inputs_inner_spec.rb +42 -0
  310. data/spec/models/post_general_masters_general_master_id_items_request_inputs_inner_value_spec.rb +32 -0
  311. data/spec/models/post_general_masters_general_master_id_items_request_spec.rb +66 -0
  312. data/spec/models/post_general_masters_request_fields_inner_spec.rb +76 -0
  313. data/spec/models/post_general_masters_request_spec.rb +54 -0
  314. data/spec/models/post_organization_charts_organization_chart_id_activate_request_spec.rb +36 -0
  315. data/spec/models/post_proxy_applicants_request_spec.rb +60 -0
  316. data/spec/models/post_proxy_approvers_request_spec.rb +60 -0
  317. data/spec/models/post_roles_role_id_memberships_request_spec.rb +36 -0
  318. data/spec/models/post_teams_team_id_members_request_spec.rb +36 -0
  319. data/spec/models/post_teams_team_id_members_request_users_inner_spec.rb +48 -0
  320. data/spec/models/post_tickets_id_comments_request_spec.rb +42 -0
  321. data/spec/models/post_tickets_id_viewers_request_spec.rb +48 -0
  322. data/spec/models/post_tickets_id_viewers_request_team_id_spec.rb +21 -0
  323. data/spec/models/post_tickets_id_viewers_request_user_id_spec.rb +21 -0
  324. data/spec/models/post_tickets_request_cloud_sign_document_spec.rb +48 -0
  325. data/spec/models/post_tickets_request_inputs_inner_spec.rb +78 -0
  326. data/spec/models/post_tickets_request_inputs_inner_team_id_spec.rb +32 -0
  327. data/spec/models/post_tickets_request_inputs_inner_ticket_id_spec.rb +32 -0
  328. data/spec/models/post_tickets_request_inputs_inner_user_id_spec.rb +32 -0
  329. data/spec/models/post_tickets_request_slip_items_inner_inputs_inner_general_master_item_id_spec.rb +32 -0
  330. data/spec/models/post_tickets_request_slip_items_inner_inputs_inner_spec.rb +60 -0
  331. data/spec/models/post_tickets_request_slip_items_inner_inputs_inner_value_spec.rb +32 -0
  332. data/spec/models/post_tickets_request_slip_items_inner_spec.rb +36 -0
  333. data/spec/models/post_tickets_request_spec.rb +82 -0
  334. data/spec/models/post_tickets_ticket_id_reject_request_spec.rb +36 -0
  335. data/spec/models/post_users_request_spec.rb +66 -0
  336. data/spec/models/proxy_applicant_spec.rb +78 -0
  337. data/spec/models/proxy_approver_spec.rb +78 -0
  338. data/spec/models/role_create_body_permission_list_inner_spec.rb +64 -0
  339. data/spec/models/role_create_body_spec.rb +42 -0
  340. data/spec/models/role_detail_all_of_permission_list_spec.rb +64 -0
  341. data/spec/models/role_detail_spec.rb +72 -0
  342. data/spec/models/role_spec.rb +66 -0
  343. data/spec/models/role_update_body_permission_list_inner_spec.rb +64 -0
  344. data/spec/models/role_update_body_spec.rb +42 -0
  345. data/spec/models/route_detail_spec.rb +112 -0
  346. data/spec/models/route_spec.rb +106 -0
  347. data/spec/models/route_step_condition_field_spec.rb +84 -0
  348. data/spec/models/route_step_condition_spec.rb +62 -0
  349. data/spec/models/route_step_spec.rb +126 -0
  350. data/spec/models/route_step_target_spec.rb +54 -0
  351. data/spec/models/section_spec.rb +78 -0
  352. data/spec/models/slip_field_detail_spec.rb +166 -0
  353. data/spec/models/slip_field_spec.rb +154 -0
  354. data/spec/models/slip_item_input_spec.rb +72 -0
  355. data/spec/models/slip_item_input_value_spec.rb +21 -0
  356. data/spec/models/slip_item_spec.rb +54 -0
  357. data/spec/models/sub_status_spec.rb +66 -0
  358. data/spec/models/team_create_body_spec.rb +54 -0
  359. data/spec/models/team_detail_spec.rb +96 -0
  360. data/spec/models/team_spec.rb +78 -0
  361. data/spec/models/team_update_body_spec.rb +54 -0
  362. data/spec/models/ticket_assignee_spec.rb +66 -0
  363. data/spec/models/ticket_detail_all_of_cloud_sign_document_spec.rb +82 -0
  364. data/spec/models/ticket_detail_spec.rb +194 -0
  365. data/spec/models/ticket_input_spec.rb +78 -0
  366. data/spec/models/ticket_input_value_spec.rb +21 -0
  367. data/spec/models/ticket_section_spec.rb +48 -0
  368. data/spec/models/ticket_spec.rb +140 -0
  369. data/spec/models/ticket_step_spec.rb +122 -0
  370. data/spec/models/ticket_viewer_spec.rb +54 -0
  371. data/spec/models/ticket_workflow_spec.rb +21 -0
  372. data/spec/models/user_detail_spec.rb +112 -0
  373. data/spec/models/user_image_spec.rb +36 -0
  374. data/spec/models/user_spec.rb +112 -0
  375. data/spec/models/workflow_detail_spec.rb +226 -0
  376. data/spec/models/workflow_in_ticket_all_of_cloud_sign_setting_spec.rb +36 -0
  377. data/spec/models/workflow_in_ticket_spec.rb +220 -0
  378. data/spec/models/workflow_route_condition_field_spec.rb +72 -0
  379. data/spec/models/workflow_route_condition_spec.rb +80 -0
  380. data/spec/models/workflow_spec.rb +196 -0
  381. data/spec/models/workflow_ticket_viewer_spec.rb +54 -0
  382. data/spec/spec_helper.rb +111 -0
  383. data/vendor/schema.yaml +6258 -0
  384. metadata +600 -0
@@ -0,0 +1,693 @@
1
+ =begin
2
+ #kickflow REST API v1
3
+
4
+ #kickflowの開発者用REST API (v1)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.7.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Kickflow
17
+ # ワークフロー
18
+ class Workflow
19
+ # UUID
20
+ attr_accessor :id
21
+
22
+ # コード
23
+ attr_accessor :code
24
+
25
+ # バージョンのUUID
26
+ attr_accessor :version_id
27
+
28
+ # バージョン番号
29
+ attr_accessor :version_number
30
+
31
+ # 名前
32
+ attr_accessor :name
33
+
34
+ # 説明
35
+ attr_accessor :description
36
+
37
+ # ステータス。visibleは有効、invisibleは無効、deletedは削除済み。
38
+ attr_accessor :status
39
+
40
+ # チケットが全体公開される場合true
41
+ attr_accessor :public_ticket
42
+
43
+ # 申請者の上長を閲覧者に追加するか。noneは追加しない、directは直属の上長のみ、allはすべての上長を表す。
44
+ attr_accessor :visible_to_manager
45
+
46
+ # 申請チームのメンバーが閲覧者に追加される場合true
47
+ attr_accessor :visible_to_team_members
48
+
49
+ # タイトルの説明
50
+ attr_accessor :title_description
51
+
52
+ # 明細を持つ場合true
53
+ attr_accessor :slip
54
+
55
+ # 明細タイトル
56
+ attr_accessor :slip_title
57
+
58
+ # 明細の説明
59
+ attr_accessor :slip_description
60
+
61
+ # 明細の位置
62
+ attr_accessor :slip_position
63
+
64
+ # チケット番号のフォーマット
65
+ attr_accessor :ticket_number_format
66
+
67
+ # 承認者による上書きが可能な場合true
68
+ attr_accessor :overwritable
69
+
70
+ # 作成日時
71
+ attr_accessor :created_at
72
+
73
+ # 更新日時
74
+ attr_accessor :updated_at
75
+
76
+ # タイトル入力モード
77
+ attr_accessor :title_input_mode
78
+
79
+ # タイトルの計算式
80
+ attr_accessor :title_formula
81
+
82
+ attr_accessor :author
83
+
84
+ attr_accessor :version_author
85
+
86
+ attr_accessor :folder
87
+
88
+ # カテゴリの配列
89
+ attr_accessor :categories
90
+
91
+ class EnumAttributeValidator
92
+ attr_reader :datatype
93
+ attr_reader :allowable_values
94
+
95
+ def initialize(datatype, allowable_values)
96
+ @allowable_values = allowable_values.map do |value|
97
+ case datatype.to_s
98
+ when /Integer/i
99
+ value.to_i
100
+ when /Float/i
101
+ value.to_f
102
+ else
103
+ value
104
+ end
105
+ end
106
+ end
107
+
108
+ def valid?(value)
109
+ !value || allowable_values.include?(value)
110
+ end
111
+ end
112
+
113
+ # Attribute mapping from ruby-style variable name to JSON key.
114
+ def self.attribute_map
115
+ {
116
+ :'id' => :'id',
117
+ :'code' => :'code',
118
+ :'version_id' => :'versionId',
119
+ :'version_number' => :'versionNumber',
120
+ :'name' => :'name',
121
+ :'description' => :'description',
122
+ :'status' => :'status',
123
+ :'public_ticket' => :'publicTicket',
124
+ :'visible_to_manager' => :'visibleToManager',
125
+ :'visible_to_team_members' => :'visibleToTeamMembers',
126
+ :'title_description' => :'titleDescription',
127
+ :'slip' => :'slip',
128
+ :'slip_title' => :'slipTitle',
129
+ :'slip_description' => :'slipDescription',
130
+ :'slip_position' => :'slipPosition',
131
+ :'ticket_number_format' => :'ticketNumberFormat',
132
+ :'overwritable' => :'overwritable',
133
+ :'created_at' => :'createdAt',
134
+ :'updated_at' => :'updatedAt',
135
+ :'title_input_mode' => :'titleInputMode',
136
+ :'title_formula' => :'titleFormula',
137
+ :'author' => :'author',
138
+ :'version_author' => :'versionAuthor',
139
+ :'folder' => :'folder',
140
+ :'categories' => :'categories'
141
+ }
142
+ end
143
+
144
+ # Returns all the JSON keys this model knows about
145
+ def self.acceptable_attributes
146
+ attribute_map.values
147
+ end
148
+
149
+ # Attribute type mapping.
150
+ def self.openapi_types
151
+ {
152
+ :'id' => :'String',
153
+ :'code' => :'String',
154
+ :'version_id' => :'String',
155
+ :'version_number' => :'Integer',
156
+ :'name' => :'String',
157
+ :'description' => :'String',
158
+ :'status' => :'String',
159
+ :'public_ticket' => :'Boolean',
160
+ :'visible_to_manager' => :'String',
161
+ :'visible_to_team_members' => :'Boolean',
162
+ :'title_description' => :'String',
163
+ :'slip' => :'Boolean',
164
+ :'slip_title' => :'String',
165
+ :'slip_description' => :'String',
166
+ :'slip_position' => :'String',
167
+ :'ticket_number_format' => :'String',
168
+ :'overwritable' => :'Boolean',
169
+ :'created_at' => :'String',
170
+ :'updated_at' => :'String',
171
+ :'title_input_mode' => :'String',
172
+ :'title_formula' => :'String',
173
+ :'author' => :'User',
174
+ :'version_author' => :'User',
175
+ :'folder' => :'Folder',
176
+ :'categories' => :'Array<Category>'
177
+ }
178
+ end
179
+
180
+ # List of attributes with nullable: true
181
+ def self.openapi_nullable
182
+ Set.new([
183
+ :'title_description',
184
+ :'slip_title',
185
+ :'slip_description',
186
+ :'ticket_number_format',
187
+ :'title_formula',
188
+ :'author',
189
+ :'version_author',
190
+ ])
191
+ end
192
+
193
+ # Initializes the object
194
+ # @param [Hash] attributes Model attributes in the form of hash
195
+ def initialize(attributes = {})
196
+ if (!attributes.is_a?(Hash))
197
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Kickflow::Workflow` initialize method"
198
+ end
199
+
200
+ # check to see if the attribute exists and convert string to symbol for hash key
201
+ attributes = attributes.each_with_object({}) { |(k, v), h|
202
+ if (!self.class.attribute_map.key?(k.to_sym))
203
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Kickflow::Workflow`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
204
+ end
205
+ h[k.to_sym] = v
206
+ }
207
+
208
+ if attributes.key?(:'id')
209
+ self.id = attributes[:'id']
210
+ else
211
+ self.id = nil
212
+ end
213
+
214
+ if attributes.key?(:'code')
215
+ self.code = attributes[:'code']
216
+ else
217
+ self.code = nil
218
+ end
219
+
220
+ if attributes.key?(:'version_id')
221
+ self.version_id = attributes[:'version_id']
222
+ else
223
+ self.version_id = nil
224
+ end
225
+
226
+ if attributes.key?(:'version_number')
227
+ self.version_number = attributes[:'version_number']
228
+ else
229
+ self.version_number = nil
230
+ end
231
+
232
+ if attributes.key?(:'name')
233
+ self.name = attributes[:'name']
234
+ else
235
+ self.name = nil
236
+ end
237
+
238
+ if attributes.key?(:'description')
239
+ self.description = attributes[:'description']
240
+ else
241
+ self.description = nil
242
+ end
243
+
244
+ if attributes.key?(:'status')
245
+ self.status = attributes[:'status']
246
+ else
247
+ self.status = nil
248
+ end
249
+
250
+ if attributes.key?(:'public_ticket')
251
+ self.public_ticket = attributes[:'public_ticket']
252
+ else
253
+ self.public_ticket = false
254
+ end
255
+
256
+ if attributes.key?(:'visible_to_manager')
257
+ self.visible_to_manager = attributes[:'visible_to_manager']
258
+ else
259
+ self.visible_to_manager = nil
260
+ end
261
+
262
+ if attributes.key?(:'visible_to_team_members')
263
+ self.visible_to_team_members = attributes[:'visible_to_team_members']
264
+ else
265
+ self.visible_to_team_members = false
266
+ end
267
+
268
+ if attributes.key?(:'title_description')
269
+ self.title_description = attributes[:'title_description']
270
+ else
271
+ self.title_description = nil
272
+ end
273
+
274
+ if attributes.key?(:'slip')
275
+ self.slip = attributes[:'slip']
276
+ else
277
+ self.slip = false
278
+ end
279
+
280
+ if attributes.key?(:'slip_title')
281
+ self.slip_title = attributes[:'slip_title']
282
+ else
283
+ self.slip_title = nil
284
+ end
285
+
286
+ if attributes.key?(:'slip_description')
287
+ self.slip_description = attributes[:'slip_description']
288
+ else
289
+ self.slip_description = nil
290
+ end
291
+
292
+ if attributes.key?(:'slip_position')
293
+ self.slip_position = attributes[:'slip_position']
294
+ else
295
+ self.slip_position = nil
296
+ end
297
+
298
+ if attributes.key?(:'ticket_number_format')
299
+ self.ticket_number_format = attributes[:'ticket_number_format']
300
+ else
301
+ self.ticket_number_format = nil
302
+ end
303
+
304
+ if attributes.key?(:'overwritable')
305
+ self.overwritable = attributes[:'overwritable']
306
+ else
307
+ self.overwritable = nil
308
+ end
309
+
310
+ if attributes.key?(:'created_at')
311
+ self.created_at = attributes[:'created_at']
312
+ else
313
+ self.created_at = nil
314
+ end
315
+
316
+ if attributes.key?(:'updated_at')
317
+ self.updated_at = attributes[:'updated_at']
318
+ else
319
+ self.updated_at = nil
320
+ end
321
+
322
+ if attributes.key?(:'title_input_mode')
323
+ self.title_input_mode = attributes[:'title_input_mode']
324
+ else
325
+ self.title_input_mode = nil
326
+ end
327
+
328
+ if attributes.key?(:'title_formula')
329
+ self.title_formula = attributes[:'title_formula']
330
+ else
331
+ self.title_formula = nil
332
+ end
333
+
334
+ if attributes.key?(:'author')
335
+ self.author = attributes[:'author']
336
+ else
337
+ self.author = nil
338
+ end
339
+
340
+ if attributes.key?(:'version_author')
341
+ self.version_author = attributes[:'version_author']
342
+ else
343
+ self.version_author = nil
344
+ end
345
+
346
+ if attributes.key?(:'folder')
347
+ self.folder = attributes[:'folder']
348
+ else
349
+ self.folder = nil
350
+ end
351
+
352
+ if attributes.key?(:'categories')
353
+ if (value = attributes[:'categories']).is_a?(Array)
354
+ self.categories = value
355
+ end
356
+ else
357
+ self.categories = nil
358
+ end
359
+ end
360
+
361
+ # Show invalid properties with the reasons. Usually used together with valid?
362
+ # @return Array for valid properties with the reasons
363
+ def list_invalid_properties
364
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
365
+ invalid_properties = Array.new
366
+ if @id.nil?
367
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
368
+ end
369
+
370
+ if @code.nil?
371
+ invalid_properties.push('invalid value for "code", code cannot be nil.')
372
+ end
373
+
374
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
375
+ if @code !~ pattern
376
+ invalid_properties.push("invalid value for \"code\", must conform to the pattern #{pattern}.")
377
+ end
378
+
379
+ if @version_id.nil?
380
+ invalid_properties.push('invalid value for "version_id", version_id cannot be nil.')
381
+ end
382
+
383
+ if @version_number.nil?
384
+ invalid_properties.push('invalid value for "version_number", version_number cannot be nil.')
385
+ end
386
+
387
+ if @name.nil?
388
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
389
+ end
390
+
391
+ if @description.nil?
392
+ invalid_properties.push('invalid value for "description", description cannot be nil.')
393
+ end
394
+
395
+ if @status.nil?
396
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
397
+ end
398
+
399
+ if @public_ticket.nil?
400
+ invalid_properties.push('invalid value for "public_ticket", public_ticket cannot be nil.')
401
+ end
402
+
403
+ if @visible_to_manager.nil?
404
+ invalid_properties.push('invalid value for "visible_to_manager", visible_to_manager cannot be nil.')
405
+ end
406
+
407
+ if @visible_to_team_members.nil?
408
+ invalid_properties.push('invalid value for "visible_to_team_members", visible_to_team_members cannot be nil.')
409
+ end
410
+
411
+ if @slip.nil?
412
+ invalid_properties.push('invalid value for "slip", slip cannot be nil.')
413
+ end
414
+
415
+ if @slip_position.nil?
416
+ invalid_properties.push('invalid value for "slip_position", slip_position cannot be nil.')
417
+ end
418
+
419
+ if @overwritable.nil?
420
+ invalid_properties.push('invalid value for "overwritable", overwritable cannot be nil.')
421
+ end
422
+
423
+ if @created_at.nil?
424
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
425
+ end
426
+
427
+ if @updated_at.nil?
428
+ invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
429
+ end
430
+
431
+ if @title_input_mode.nil?
432
+ invalid_properties.push('invalid value for "title_input_mode", title_input_mode cannot be nil.')
433
+ end
434
+
435
+ if @folder.nil?
436
+ invalid_properties.push('invalid value for "folder", folder cannot be nil.')
437
+ end
438
+
439
+ if @categories.nil?
440
+ invalid_properties.push('invalid value for "categories", categories cannot be nil.')
441
+ end
442
+
443
+ invalid_properties
444
+ end
445
+
446
+ # Check to see if the all the properties in the model are valid
447
+ # @return true if the model is valid
448
+ def valid?
449
+ warn '[DEPRECATED] the `valid?` method is obsolete'
450
+ return false if @id.nil?
451
+ return false if @code.nil?
452
+ return false if @code !~ Regexp.new(/^[a-zA-Z0-9_-]+$/)
453
+ return false if @version_id.nil?
454
+ return false if @version_number.nil?
455
+ return false if @name.nil?
456
+ return false if @description.nil?
457
+ return false if @status.nil?
458
+ status_validator = EnumAttributeValidator.new('String', ["visible", "invisible", "deleted"])
459
+ return false unless status_validator.valid?(@status)
460
+ return false if @public_ticket.nil?
461
+ return false if @visible_to_manager.nil?
462
+ visible_to_manager_validator = EnumAttributeValidator.new('String', ["none", "direct", "all"])
463
+ return false unless visible_to_manager_validator.valid?(@visible_to_manager)
464
+ return false if @visible_to_team_members.nil?
465
+ return false if @slip.nil?
466
+ return false if @slip_position.nil?
467
+ slip_position_validator = EnumAttributeValidator.new('String', ["top", "bottom"])
468
+ return false unless slip_position_validator.valid?(@slip_position)
469
+ return false if @overwritable.nil?
470
+ return false if @created_at.nil?
471
+ return false if @updated_at.nil?
472
+ return false if @title_input_mode.nil?
473
+ title_input_mode_validator = EnumAttributeValidator.new('String', ["none", "input", "calculate"])
474
+ return false unless title_input_mode_validator.valid?(@title_input_mode)
475
+ return false if @folder.nil?
476
+ return false if @categories.nil?
477
+ true
478
+ end
479
+
480
+ # Custom attribute writer method with validation
481
+ # @param [Object] code Value to be assigned
482
+ def code=(code)
483
+ if code.nil?
484
+ fail ArgumentError, 'code cannot be nil'
485
+ end
486
+
487
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
488
+ if code !~ pattern
489
+ fail ArgumentError, "invalid value for \"code\", must conform to the pattern #{pattern}."
490
+ end
491
+
492
+ @code = code
493
+ end
494
+
495
+ # Custom attribute writer method checking allowed values (enum).
496
+ # @param [Object] status Object to be assigned
497
+ def status=(status)
498
+ validator = EnumAttributeValidator.new('String', ["visible", "invisible", "deleted"])
499
+ unless validator.valid?(status)
500
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
501
+ end
502
+ @status = status
503
+ end
504
+
505
+ # Custom attribute writer method checking allowed values (enum).
506
+ # @param [Object] visible_to_manager Object to be assigned
507
+ def visible_to_manager=(visible_to_manager)
508
+ validator = EnumAttributeValidator.new('String', ["none", "direct", "all"])
509
+ unless validator.valid?(visible_to_manager)
510
+ fail ArgumentError, "invalid value for \"visible_to_manager\", must be one of #{validator.allowable_values}."
511
+ end
512
+ @visible_to_manager = visible_to_manager
513
+ end
514
+
515
+ # Custom attribute writer method checking allowed values (enum).
516
+ # @param [Object] slip_position Object to be assigned
517
+ def slip_position=(slip_position)
518
+ validator = EnumAttributeValidator.new('String', ["top", "bottom"])
519
+ unless validator.valid?(slip_position)
520
+ fail ArgumentError, "invalid value for \"slip_position\", must be one of #{validator.allowable_values}."
521
+ end
522
+ @slip_position = slip_position
523
+ end
524
+
525
+ # Custom attribute writer method checking allowed values (enum).
526
+ # @param [Object] title_input_mode Object to be assigned
527
+ def title_input_mode=(title_input_mode)
528
+ validator = EnumAttributeValidator.new('String', ["none", "input", "calculate"])
529
+ unless validator.valid?(title_input_mode)
530
+ fail ArgumentError, "invalid value for \"title_input_mode\", must be one of #{validator.allowable_values}."
531
+ end
532
+ @title_input_mode = title_input_mode
533
+ end
534
+
535
+ # Checks equality by comparing each attribute.
536
+ # @param [Object] Object to be compared
537
+ def ==(o)
538
+ return true if self.equal?(o)
539
+ self.class == o.class &&
540
+ id == o.id &&
541
+ code == o.code &&
542
+ version_id == o.version_id &&
543
+ version_number == o.version_number &&
544
+ name == o.name &&
545
+ description == o.description &&
546
+ status == o.status &&
547
+ public_ticket == o.public_ticket &&
548
+ visible_to_manager == o.visible_to_manager &&
549
+ visible_to_team_members == o.visible_to_team_members &&
550
+ title_description == o.title_description &&
551
+ slip == o.slip &&
552
+ slip_title == o.slip_title &&
553
+ slip_description == o.slip_description &&
554
+ slip_position == o.slip_position &&
555
+ ticket_number_format == o.ticket_number_format &&
556
+ overwritable == o.overwritable &&
557
+ created_at == o.created_at &&
558
+ updated_at == o.updated_at &&
559
+ title_input_mode == o.title_input_mode &&
560
+ title_formula == o.title_formula &&
561
+ author == o.author &&
562
+ version_author == o.version_author &&
563
+ folder == o.folder &&
564
+ categories == o.categories
565
+ end
566
+
567
+ # @see the `==` method
568
+ # @param [Object] Object to be compared
569
+ def eql?(o)
570
+ self == o
571
+ end
572
+
573
+ # Calculates hash code according to all attributes.
574
+ # @return [Integer] Hash code
575
+ def hash
576
+ [id, code, version_id, version_number, name, description, status, public_ticket, visible_to_manager, visible_to_team_members, title_description, slip, slip_title, slip_description, slip_position, ticket_number_format, overwritable, created_at, updated_at, title_input_mode, title_formula, author, version_author, folder, categories].hash
577
+ end
578
+
579
+ # Builds the object from hash
580
+ # @param [Hash] attributes Model attributes in the form of hash
581
+ # @return [Object] Returns the model itself
582
+ def self.build_from_hash(attributes)
583
+ return nil unless attributes.is_a?(Hash)
584
+ attributes = attributes.transform_keys(&:to_sym)
585
+ transformed_hash = {}
586
+ openapi_types.each_pair do |key, type|
587
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
588
+ transformed_hash["#{key}"] = nil
589
+ elsif type =~ /\AArray<(.*)>/i
590
+ # check to ensure the input is an array given that the attribute
591
+ # is documented as an array but the input is not
592
+ if attributes[attribute_map[key]].is_a?(Array)
593
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
594
+ end
595
+ elsif !attributes[attribute_map[key]].nil?
596
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
597
+ end
598
+ end
599
+ new(transformed_hash)
600
+ end
601
+
602
+ # Deserializes the data based on type
603
+ # @param string type Data type
604
+ # @param string value Value to be deserialized
605
+ # @return [Object] Deserialized data
606
+ def self._deserialize(type, value)
607
+ case type.to_sym
608
+ when :Time
609
+ Time.parse(value)
610
+ when :Date
611
+ Date.parse(value)
612
+ when :String
613
+ value.to_s
614
+ when :Integer
615
+ value.to_i
616
+ when :Float
617
+ value.to_f
618
+ when :Boolean
619
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
620
+ true
621
+ else
622
+ false
623
+ end
624
+ when :Object
625
+ # generic object (usually a Hash), return directly
626
+ value
627
+ when /\AArray<(?<inner_type>.+)>\z/
628
+ inner_type = Regexp.last_match[:inner_type]
629
+ value.map { |v| _deserialize(inner_type, v) }
630
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
631
+ k_type = Regexp.last_match[:k_type]
632
+ v_type = Regexp.last_match[:v_type]
633
+ {}.tap do |hash|
634
+ value.each do |k, v|
635
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
636
+ end
637
+ end
638
+ else # model
639
+ # models (e.g. Pet) or oneOf
640
+ klass = Kickflow.const_get(type)
641
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
642
+ end
643
+ end
644
+
645
+ # Returns the string representation of the object
646
+ # @return [String] String presentation of the object
647
+ def to_s
648
+ to_hash.to_s
649
+ end
650
+
651
+ # to_body is an alias to to_hash (backward compatibility)
652
+ # @return [Hash] Returns the object in the form of hash
653
+ def to_body
654
+ to_hash
655
+ end
656
+
657
+ # Returns the object in the form of hash
658
+ # @return [Hash] Returns the object in the form of hash
659
+ def to_hash
660
+ hash = {}
661
+ self.class.attribute_map.each_pair do |attr, param|
662
+ value = self.send(attr)
663
+ if value.nil?
664
+ is_nullable = self.class.openapi_nullable.include?(attr)
665
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
666
+ end
667
+
668
+ hash[param] = _to_hash(value)
669
+ end
670
+ hash
671
+ end
672
+
673
+ # Outputs non-array value in the form of hash
674
+ # For object, use to_hash. Otherwise, just return the value
675
+ # @param [Object] value Any valid value
676
+ # @return [Hash] Returns the value in the form of hash
677
+ def _to_hash(value)
678
+ if value.is_a?(Array)
679
+ value.compact.map { |v| _to_hash(v) }
680
+ elsif value.is_a?(Hash)
681
+ {}.tap do |hash|
682
+ value.each { |k, v| hash[k] = _to_hash(v) }
683
+ end
684
+ elsif value.respond_to? :to_hash
685
+ value.to_hash
686
+ else
687
+ value
688
+ end
689
+ end
690
+
691
+ end
692
+
693
+ end