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,252 @@
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
+ class DeleteTeamsTeamIdMembersRequest
18
+ # ユーザーのUUIDの配列
19
+ attr_accessor :user_ids
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'user_ids' => :'userIds'
25
+ }
26
+ end
27
+
28
+ # Returns all the JSON keys this model knows about
29
+ def self.acceptable_attributes
30
+ attribute_map.values
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.openapi_types
35
+ {
36
+ :'user_ids' => :'Array<String>'
37
+ }
38
+ end
39
+
40
+ # List of attributes with nullable: true
41
+ def self.openapi_nullable
42
+ Set.new([
43
+ ])
44
+ end
45
+
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Kickflow::DeleteTeamsTeamIdMembersRequest` initialize method"
51
+ end
52
+
53
+ # check to see if the attribute exists and convert string to symbol for hash key
54
+ attributes = attributes.each_with_object({}) { |(k, v), h|
55
+ if (!self.class.attribute_map.key?(k.to_sym))
56
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Kickflow::DeleteTeamsTeamIdMembersRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
+ end
58
+ h[k.to_sym] = v
59
+ }
60
+
61
+ if attributes.key?(:'user_ids')
62
+ if (value = attributes[:'user_ids']).is_a?(Array)
63
+ self.user_ids = value
64
+ end
65
+ else
66
+ self.user_ids = nil
67
+ end
68
+ end
69
+
70
+ # Show invalid properties with the reasons. Usually used together with valid?
71
+ # @return Array for valid properties with the reasons
72
+ def list_invalid_properties
73
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
74
+ invalid_properties = Array.new
75
+ if @user_ids.nil?
76
+ invalid_properties.push('invalid value for "user_ids", user_ids cannot be nil.')
77
+ end
78
+
79
+ if @user_ids.length > 10
80
+ invalid_properties.push('invalid value for "user_ids", number of items must be less than or equal to 10.')
81
+ end
82
+
83
+ if @user_ids.length < 1
84
+ invalid_properties.push('invalid value for "user_ids", number of items must be greater than or equal to 1.')
85
+ end
86
+
87
+ invalid_properties
88
+ end
89
+
90
+ # Check to see if the all the properties in the model are valid
91
+ # @return true if the model is valid
92
+ def valid?
93
+ warn '[DEPRECATED] the `valid?` method is obsolete'
94
+ return false if @user_ids.nil?
95
+ return false if @user_ids.length > 10
96
+ return false if @user_ids.length < 1
97
+ true
98
+ end
99
+
100
+ # Custom attribute writer method with validation
101
+ # @param [Object] user_ids Value to be assigned
102
+ def user_ids=(user_ids)
103
+ if user_ids.nil?
104
+ fail ArgumentError, 'user_ids cannot be nil'
105
+ end
106
+
107
+ if user_ids.length > 10
108
+ fail ArgumentError, 'invalid value for "user_ids", number of items must be less than or equal to 10.'
109
+ end
110
+
111
+ if user_ids.length < 1
112
+ fail ArgumentError, 'invalid value for "user_ids", number of items must be greater than or equal to 1.'
113
+ end
114
+
115
+ @user_ids = user_ids
116
+ end
117
+
118
+ # Checks equality by comparing each attribute.
119
+ # @param [Object] Object to be compared
120
+ def ==(o)
121
+ return true if self.equal?(o)
122
+ self.class == o.class &&
123
+ user_ids == o.user_ids
124
+ end
125
+
126
+ # @see the `==` method
127
+ # @param [Object] Object to be compared
128
+ def eql?(o)
129
+ self == o
130
+ end
131
+
132
+ # Calculates hash code according to all attributes.
133
+ # @return [Integer] Hash code
134
+ def hash
135
+ [user_ids].hash
136
+ end
137
+
138
+ # Builds the object from hash
139
+ # @param [Hash] attributes Model attributes in the form of hash
140
+ # @return [Object] Returns the model itself
141
+ def self.build_from_hash(attributes)
142
+ return nil unless attributes.is_a?(Hash)
143
+ attributes = attributes.transform_keys(&:to_sym)
144
+ transformed_hash = {}
145
+ openapi_types.each_pair do |key, type|
146
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
147
+ transformed_hash["#{key}"] = nil
148
+ elsif type =~ /\AArray<(.*)>/i
149
+ # check to ensure the input is an array given that the attribute
150
+ # is documented as an array but the input is not
151
+ if attributes[attribute_map[key]].is_a?(Array)
152
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
153
+ end
154
+ elsif !attributes[attribute_map[key]].nil?
155
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
156
+ end
157
+ end
158
+ new(transformed_hash)
159
+ end
160
+
161
+ # Deserializes the data based on type
162
+ # @param string type Data type
163
+ # @param string value Value to be deserialized
164
+ # @return [Object] Deserialized data
165
+ def self._deserialize(type, value)
166
+ case type.to_sym
167
+ when :Time
168
+ Time.parse(value)
169
+ when :Date
170
+ Date.parse(value)
171
+ when :String
172
+ value.to_s
173
+ when :Integer
174
+ value.to_i
175
+ when :Float
176
+ value.to_f
177
+ when :Boolean
178
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
179
+ true
180
+ else
181
+ false
182
+ end
183
+ when :Object
184
+ # generic object (usually a Hash), return directly
185
+ value
186
+ when /\AArray<(?<inner_type>.+)>\z/
187
+ inner_type = Regexp.last_match[:inner_type]
188
+ value.map { |v| _deserialize(inner_type, v) }
189
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
190
+ k_type = Regexp.last_match[:k_type]
191
+ v_type = Regexp.last_match[:v_type]
192
+ {}.tap do |hash|
193
+ value.each do |k, v|
194
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
195
+ end
196
+ end
197
+ else # model
198
+ # models (e.g. Pet) or oneOf
199
+ klass = Kickflow.const_get(type)
200
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
201
+ end
202
+ end
203
+
204
+ # Returns the string representation of the object
205
+ # @return [String] String presentation of the object
206
+ def to_s
207
+ to_hash.to_s
208
+ end
209
+
210
+ # to_body is an alias to to_hash (backward compatibility)
211
+ # @return [Hash] Returns the object in the form of hash
212
+ def to_body
213
+ to_hash
214
+ end
215
+
216
+ # Returns the object in the form of hash
217
+ # @return [Hash] Returns the object in the form of hash
218
+ def to_hash
219
+ hash = {}
220
+ self.class.attribute_map.each_pair do |attr, param|
221
+ value = self.send(attr)
222
+ if value.nil?
223
+ is_nullable = self.class.openapi_nullable.include?(attr)
224
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
225
+ end
226
+
227
+ hash[param] = _to_hash(value)
228
+ end
229
+ hash
230
+ end
231
+
232
+ # Outputs non-array value in the form of hash
233
+ # For object, use to_hash. Otherwise, just return the value
234
+ # @param [Object] value Any valid value
235
+ # @return [Hash] Returns the value in the form of hash
236
+ def _to_hash(value)
237
+ if value.is_a?(Array)
238
+ value.compact.map { |v| _to_hash(v) }
239
+ elsif value.is_a?(Hash)
240
+ {}.tap do |hash|
241
+ value.each { |k, v| hash[k] = _to_hash(v) }
242
+ end
243
+ elsif value.respond_to? :to_hash
244
+ value.to_hash
245
+ else
246
+ value
247
+ end
248
+ end
249
+
250
+ end
251
+
252
+ end
@@ -0,0 +1,359 @@
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
+ # 外部API設定
18
+ class ExternalApiSetting
19
+ # UUID
20
+ attr_accessor :id
21
+
22
+ # HTTPメソッド
23
+ attr_accessor :http_method
24
+
25
+ # URL
26
+ attr_accessor :url
27
+
28
+ # リクエストヘッダー
29
+ attr_accessor :headers
30
+
31
+ # レスポンスが複数レコードを含む場合true
32
+ attr_accessor :response_array
33
+
34
+ # 複数レコードを含む場合の配列へのJSONPath
35
+ attr_accessor :array_json_path
36
+
37
+ # フィールドへのマッピング設定
38
+ attr_accessor :mappings
39
+
40
+ class EnumAttributeValidator
41
+ attr_reader :datatype
42
+ attr_reader :allowable_values
43
+
44
+ def initialize(datatype, allowable_values)
45
+ @allowable_values = allowable_values.map do |value|
46
+ case datatype.to_s
47
+ when /Integer/i
48
+ value.to_i
49
+ when /Float/i
50
+ value.to_f
51
+ else
52
+ value
53
+ end
54
+ end
55
+ end
56
+
57
+ def valid?(value)
58
+ !value || allowable_values.include?(value)
59
+ end
60
+ end
61
+
62
+ # Attribute mapping from ruby-style variable name to JSON key.
63
+ def self.attribute_map
64
+ {
65
+ :'id' => :'id',
66
+ :'http_method' => :'httpMethod',
67
+ :'url' => :'url',
68
+ :'headers' => :'headers',
69
+ :'response_array' => :'responseArray',
70
+ :'array_json_path' => :'arrayJsonPath',
71
+ :'mappings' => :'mappings'
72
+ }
73
+ end
74
+
75
+ # Returns all the JSON keys this model knows about
76
+ def self.acceptable_attributes
77
+ attribute_map.values
78
+ end
79
+
80
+ # Attribute type mapping.
81
+ def self.openapi_types
82
+ {
83
+ :'id' => :'String',
84
+ :'http_method' => :'String',
85
+ :'url' => :'String',
86
+ :'headers' => :'Array<ExternalApiSettingHeadersInner>',
87
+ :'response_array' => :'Boolean',
88
+ :'array_json_path' => :'String',
89
+ :'mappings' => :'Array<ExternalApiSettingMappingsInner>'
90
+ }
91
+ end
92
+
93
+ # List of attributes with nullable: true
94
+ def self.openapi_nullable
95
+ Set.new([
96
+ :'array_json_path',
97
+ ])
98
+ end
99
+
100
+ # Initializes the object
101
+ # @param [Hash] attributes Model attributes in the form of hash
102
+ def initialize(attributes = {})
103
+ if (!attributes.is_a?(Hash))
104
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Kickflow::ExternalApiSetting` initialize method"
105
+ end
106
+
107
+ # check to see if the attribute exists and convert string to symbol for hash key
108
+ attributes = attributes.each_with_object({}) { |(k, v), h|
109
+ if (!self.class.attribute_map.key?(k.to_sym))
110
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Kickflow::ExternalApiSetting`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
111
+ end
112
+ h[k.to_sym] = v
113
+ }
114
+
115
+ if attributes.key?(:'id')
116
+ self.id = attributes[:'id']
117
+ else
118
+ self.id = nil
119
+ end
120
+
121
+ if attributes.key?(:'http_method')
122
+ self.http_method = attributes[:'http_method']
123
+ else
124
+ self.http_method = nil
125
+ end
126
+
127
+ if attributes.key?(:'url')
128
+ self.url = attributes[:'url']
129
+ else
130
+ self.url = nil
131
+ end
132
+
133
+ if attributes.key?(:'headers')
134
+ if (value = attributes[:'headers']).is_a?(Array)
135
+ self.headers = value
136
+ end
137
+ else
138
+ self.headers = nil
139
+ end
140
+
141
+ if attributes.key?(:'response_array')
142
+ self.response_array = attributes[:'response_array']
143
+ else
144
+ self.response_array = nil
145
+ end
146
+
147
+ if attributes.key?(:'array_json_path')
148
+ self.array_json_path = attributes[:'array_json_path']
149
+ else
150
+ self.array_json_path = nil
151
+ end
152
+
153
+ if attributes.key?(:'mappings')
154
+ if (value = attributes[:'mappings']).is_a?(Array)
155
+ self.mappings = value
156
+ end
157
+ else
158
+ self.mappings = nil
159
+ end
160
+ end
161
+
162
+ # Show invalid properties with the reasons. Usually used together with valid?
163
+ # @return Array for valid properties with the reasons
164
+ def list_invalid_properties
165
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
166
+ invalid_properties = Array.new
167
+ if @id.nil?
168
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
169
+ end
170
+
171
+ if @http_method.nil?
172
+ invalid_properties.push('invalid value for "http_method", http_method cannot be nil.')
173
+ end
174
+
175
+ if @url.nil?
176
+ invalid_properties.push('invalid value for "url", url cannot be nil.')
177
+ end
178
+
179
+ if @headers.nil?
180
+ invalid_properties.push('invalid value for "headers", headers cannot be nil.')
181
+ end
182
+
183
+ if @response_array.nil?
184
+ invalid_properties.push('invalid value for "response_array", response_array cannot be nil.')
185
+ end
186
+
187
+ if @mappings.nil?
188
+ invalid_properties.push('invalid value for "mappings", mappings cannot be nil.')
189
+ end
190
+
191
+ invalid_properties
192
+ end
193
+
194
+ # Check to see if the all the properties in the model are valid
195
+ # @return true if the model is valid
196
+ def valid?
197
+ warn '[DEPRECATED] the `valid?` method is obsolete'
198
+ return false if @id.nil?
199
+ return false if @http_method.nil?
200
+ http_method_validator = EnumAttributeValidator.new('String', ["get", "post", "put", "delete", "patch"])
201
+ return false unless http_method_validator.valid?(@http_method)
202
+ return false if @url.nil?
203
+ return false if @headers.nil?
204
+ return false if @response_array.nil?
205
+ return false if @mappings.nil?
206
+ true
207
+ end
208
+
209
+ # Custom attribute writer method checking allowed values (enum).
210
+ # @param [Object] http_method Object to be assigned
211
+ def http_method=(http_method)
212
+ validator = EnumAttributeValidator.new('String', ["get", "post", "put", "delete", "patch"])
213
+ unless validator.valid?(http_method)
214
+ fail ArgumentError, "invalid value for \"http_method\", must be one of #{validator.allowable_values}."
215
+ end
216
+ @http_method = http_method
217
+ end
218
+
219
+ # Checks equality by comparing each attribute.
220
+ # @param [Object] Object to be compared
221
+ def ==(o)
222
+ return true if self.equal?(o)
223
+ self.class == o.class &&
224
+ id == o.id &&
225
+ http_method == o.http_method &&
226
+ url == o.url &&
227
+ headers == o.headers &&
228
+ response_array == o.response_array &&
229
+ array_json_path == o.array_json_path &&
230
+ mappings == o.mappings
231
+ end
232
+
233
+ # @see the `==` method
234
+ # @param [Object] Object to be compared
235
+ def eql?(o)
236
+ self == o
237
+ end
238
+
239
+ # Calculates hash code according to all attributes.
240
+ # @return [Integer] Hash code
241
+ def hash
242
+ [id, http_method, url, headers, response_array, array_json_path, mappings].hash
243
+ end
244
+
245
+ # Builds the object from hash
246
+ # @param [Hash] attributes Model attributes in the form of hash
247
+ # @return [Object] Returns the model itself
248
+ def self.build_from_hash(attributes)
249
+ return nil unless attributes.is_a?(Hash)
250
+ attributes = attributes.transform_keys(&:to_sym)
251
+ transformed_hash = {}
252
+ openapi_types.each_pair do |key, type|
253
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
254
+ transformed_hash["#{key}"] = nil
255
+ elsif type =~ /\AArray<(.*)>/i
256
+ # check to ensure the input is an array given that the attribute
257
+ # is documented as an array but the input is not
258
+ if attributes[attribute_map[key]].is_a?(Array)
259
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
260
+ end
261
+ elsif !attributes[attribute_map[key]].nil?
262
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
263
+ end
264
+ end
265
+ new(transformed_hash)
266
+ end
267
+
268
+ # Deserializes the data based on type
269
+ # @param string type Data type
270
+ # @param string value Value to be deserialized
271
+ # @return [Object] Deserialized data
272
+ def self._deserialize(type, value)
273
+ case type.to_sym
274
+ when :Time
275
+ Time.parse(value)
276
+ when :Date
277
+ Date.parse(value)
278
+ when :String
279
+ value.to_s
280
+ when :Integer
281
+ value.to_i
282
+ when :Float
283
+ value.to_f
284
+ when :Boolean
285
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
286
+ true
287
+ else
288
+ false
289
+ end
290
+ when :Object
291
+ # generic object (usually a Hash), return directly
292
+ value
293
+ when /\AArray<(?<inner_type>.+)>\z/
294
+ inner_type = Regexp.last_match[:inner_type]
295
+ value.map { |v| _deserialize(inner_type, v) }
296
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
297
+ k_type = Regexp.last_match[:k_type]
298
+ v_type = Regexp.last_match[:v_type]
299
+ {}.tap do |hash|
300
+ value.each do |k, v|
301
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
302
+ end
303
+ end
304
+ else # model
305
+ # models (e.g. Pet) or oneOf
306
+ klass = Kickflow.const_get(type)
307
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
308
+ end
309
+ end
310
+
311
+ # Returns the string representation of the object
312
+ # @return [String] String presentation of the object
313
+ def to_s
314
+ to_hash.to_s
315
+ end
316
+
317
+ # to_body is an alias to to_hash (backward compatibility)
318
+ # @return [Hash] Returns the object in the form of hash
319
+ def to_body
320
+ to_hash
321
+ end
322
+
323
+ # Returns the object in the form of hash
324
+ # @return [Hash] Returns the object in the form of hash
325
+ def to_hash
326
+ hash = {}
327
+ self.class.attribute_map.each_pair do |attr, param|
328
+ value = self.send(attr)
329
+ if value.nil?
330
+ is_nullable = self.class.openapi_nullable.include?(attr)
331
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
332
+ end
333
+
334
+ hash[param] = _to_hash(value)
335
+ end
336
+ hash
337
+ end
338
+
339
+ # Outputs non-array value in the form of hash
340
+ # For object, use to_hash. Otherwise, just return the value
341
+ # @param [Object] value Any valid value
342
+ # @return [Hash] Returns the value in the form of hash
343
+ def _to_hash(value)
344
+ if value.is_a?(Array)
345
+ value.compact.map { |v| _to_hash(v) }
346
+ elsif value.is_a?(Hash)
347
+ {}.tap do |hash|
348
+ value.each { |k, v| hash[k] = _to_hash(v) }
349
+ end
350
+ elsif value.respond_to? :to_hash
351
+ value.to_hash
352
+ else
353
+ value
354
+ end
355
+ end
356
+
357
+ end
358
+
359
+ end