shortcut_client_ruby 0.0.4 → 0.1.2

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 (452) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +74 -0
  3. data/README.md +31 -1986
  4. data/Rakefile +2 -0
  5. data/bin/update.rb +8 -4
  6. data/config.json +2 -1
  7. data/docs/BasicWorkspaceInfo.md +16 -4
  8. data/docs/Branch.md +34 -13
  9. data/docs/Category.md +30 -11
  10. data/docs/Commit.md +38 -15
  11. data/docs/CreateCategory.md +20 -6
  12. data/docs/CreateCategoryParams.md +18 -5
  13. data/docs/CreateCommentComment.md +22 -7
  14. data/docs/CreateEntityTemplate.md +18 -5
  15. data/docs/CreateEpic.md +46 -19
  16. data/docs/CreateEpicComment.md +22 -7
  17. data/docs/CreateGroup.md +28 -10
  18. data/docs/CreateIteration.md +26 -9
  19. data/docs/CreateLabelParams.md +20 -6
  20. data/docs/CreateLinkedFile.md +30 -11
  21. data/docs/CreateMilestone.md +24 -8
  22. data/docs/CreateOrDeleteStoryReaction.md +14 -3
  23. data/docs/CreateProject.md +34 -13
  24. data/docs/CreateStories.md +14 -3
  25. data/docs/CreateStoryComment.md +22 -7
  26. data/docs/CreateStoryCommentParams.md +22 -7
  27. data/docs/CreateStoryContents.md +54 -23
  28. data/docs/CreateStoryLink.md +18 -5
  29. data/docs/CreateStoryLinkParams.md +18 -5
  30. data/docs/CreateStoryParams.md +66 -29
  31. data/docs/CreateTask.md +24 -8
  32. data/docs/CreateTaskParams.md +24 -8
  33. data/docs/DefaultApi.md +3569 -1641
  34. data/docs/DeleteStories.md +14 -3
  35. data/docs/EntityTemplate.md +28 -10
  36. data/docs/EntityTemplateTask.md +20 -6
  37. data/docs/Epic.md +88 -40
  38. data/docs/EpicSearchResults.md +20 -6
  39. data/docs/EpicSlim.md +86 -39
  40. data/docs/EpicState.md +30 -11
  41. data/docs/EpicStats.md +38 -15
  42. data/docs/EpicWorkflow.md +24 -8
  43. data/docs/GetEpicStories.md +14 -3
  44. data/docs/GetExternalLinkStoriesParams.md +14 -3
  45. data/docs/GetIterationStories.md +14 -3
  46. data/docs/GetLabelStories.md +14 -3
  47. data/docs/GetMember.md +14 -3
  48. data/docs/GetProjectStories.md +14 -3
  49. data/docs/Group.md +44 -18
  50. data/docs/History.md +30 -11
  51. data/docs/HistoryActionBranchCreate.md +22 -7
  52. data/docs/HistoryActionBranchMerge.md +22 -7
  53. data/docs/HistoryActionBranchPush.md +22 -7
  54. data/docs/HistoryActionLabelCreate.md +22 -7
  55. data/docs/HistoryActionLabelDelete.md +20 -6
  56. data/docs/HistoryActionLabelUpdate.md +18 -5
  57. data/docs/HistoryActionProjectUpdate.md +22 -7
  58. data/docs/HistoryActionPullRequest.md +24 -8
  59. data/docs/HistoryActionStoryCommentCreate.md +24 -8
  60. data/docs/HistoryActionStoryCreate.md +60 -26
  61. data/docs/HistoryActionStoryDelete.md +22 -7
  62. data/docs/HistoryActionStoryLinkCreate.md +24 -8
  63. data/docs/HistoryActionStoryLinkDelete.md +24 -8
  64. data/docs/HistoryActionStoryLinkUpdate.md +26 -9
  65. data/docs/HistoryActionStoryUpdate.md +26 -9
  66. data/docs/HistoryActionTaskCreate.md +30 -11
  67. data/docs/HistoryActionTaskDelete.md +20 -6
  68. data/docs/HistoryActionTaskUpdate.md +26 -9
  69. data/docs/HistoryChangesStory.md +60 -26
  70. data/docs/HistoryChangesStoryLink.md +18 -5
  71. data/docs/HistoryChangesTask.md +20 -6
  72. data/docs/HistoryReferenceBranch.md +20 -6
  73. data/docs/HistoryReferenceCommit.md +20 -6
  74. data/docs/HistoryReferenceEpic.md +20 -6
  75. data/docs/HistoryReferenceGeneral.md +18 -5
  76. data/docs/HistoryReferenceGroup.md +18 -5
  77. data/docs/HistoryReferenceIteration.md +20 -6
  78. data/docs/HistoryReferenceLabel.md +20 -6
  79. data/docs/HistoryReferenceProject.md +20 -6
  80. data/docs/HistoryReferenceStory.md +22 -7
  81. data/docs/HistoryReferenceStoryTask.md +18 -5
  82. data/docs/HistoryReferenceWorkflowState.md +20 -6
  83. data/docs/Icon.md +22 -7
  84. data/docs/Identity.md +18 -5
  85. data/docs/Iteration.md +48 -20
  86. data/docs/IterationSlim.md +46 -19
  87. data/docs/IterationStats.md +34 -13
  88. data/docs/Label.md +34 -13
  89. data/docs/LabelSlim.md +32 -12
  90. data/docs/LabelStats.md +42 -17
  91. data/docs/LinkedFile.md +44 -18
  92. data/docs/ListEpics.md +14 -3
  93. data/docs/ListGroupStories.md +16 -4
  94. data/docs/ListLabels.md +14 -3
  95. data/docs/ListMembers.md +14 -3
  96. data/docs/MaxSearchResultsExceededError.md +18 -5
  97. data/docs/Member.md +34 -13
  98. data/docs/MemberInfo.md +20 -6
  99. data/docs/Milestone.md +46 -19
  100. data/docs/MilestoneStats.md +18 -5
  101. data/docs/Profile.md +30 -11
  102. data/docs/Project.md +50 -21
  103. data/docs/ProjectStats.md +18 -5
  104. data/docs/PullRequest.md +56 -24
  105. data/docs/PullRequestLabel.md +22 -7
  106. data/docs/Repository.md +30 -11
  107. data/docs/Search.md +20 -6
  108. data/docs/SearchResults.md +16 -4
  109. data/docs/SearchStories.md +68 -30
  110. data/docs/Story.md +112 -52
  111. data/docs/StoryComment.md +40 -16
  112. data/docs/StoryContents.md +50 -21
  113. data/docs/StoryContentsTask.md +22 -7
  114. data/docs/StoryHistoryChangeAddsRemovesInt.md +16 -4
  115. data/docs/StoryHistoryChangeAddsRemovesUuid.md +16 -4
  116. data/docs/StoryHistoryChangeOldNewBool.md +16 -4
  117. data/docs/StoryHistoryChangeOldNewInt.md +16 -4
  118. data/docs/StoryHistoryChangeOldNewStr.md +16 -4
  119. data/docs/StoryHistoryChangeOldNewUuid.md +16 -4
  120. data/docs/StoryLink.md +28 -10
  121. data/docs/StoryReaction.md +16 -4
  122. data/docs/StorySearchResults.md +20 -6
  123. data/docs/StorySlim.md +108 -50
  124. data/docs/StoryStats.md +14 -3
  125. data/docs/Task.md +40 -16
  126. data/docs/ThreadedComment.md +38 -15
  127. data/docs/TypedStoryLink.md +30 -11
  128. data/docs/UnusableEntitlementError.md +18 -5
  129. data/docs/UpdateCategory.md +18 -5
  130. data/docs/UpdateComment.md +14 -3
  131. data/docs/UpdateEntityTemplate.md +16 -4
  132. data/docs/UpdateEpic.md +46 -19
  133. data/docs/UpdateFile.md +24 -8
  134. data/docs/UpdateGroup.md +30 -11
  135. data/docs/UpdateIteration.md +26 -9
  136. data/docs/UpdateLabel.md +20 -6
  137. data/docs/UpdateLinkedFile.md +28 -10
  138. data/docs/UpdateMilestone.md +28 -10
  139. data/docs/UpdateProject.md +30 -11
  140. data/docs/UpdateStories.md +54 -23
  141. data/docs/UpdateStory.md +64 -28
  142. data/docs/UpdateStoryComment.md +14 -3
  143. data/docs/UpdateStoryContents.md +54 -23
  144. data/docs/UpdateStoryLink.md +18 -5
  145. data/docs/UpdateTask.md +22 -7
  146. data/docs/UploadedFile.md +46 -19
  147. data/docs/Workflow.md +34 -13
  148. data/docs/WorkflowState.md +36 -14
  149. data/git_push.sh +11 -9
  150. data/lib/shortcut_client_ruby/api/default_api.rb +2119 -1248
  151. data/lib/shortcut_client_ruby/api_client.rb +143 -106
  152. data/lib/shortcut_client_ruby/api_error.rb +4 -4
  153. data/lib/shortcut_client_ruby/configuration.rb +163 -32
  154. data/lib/shortcut_client_ruby/models/basic_workspace_info.rb +26 -13
  155. data/lib/shortcut_client_ruby/models/branch.rb +35 -42
  156. data/lib/shortcut_client_ruby/models/category.rb +57 -28
  157. data/lib/shortcut_client_ruby/models/commit.rb +37 -44
  158. data/lib/shortcut_client_ruby/models/create_category.rb +90 -17
  159. data/lib/shortcut_client_ruby/models/create_category_params.rb +87 -14
  160. data/lib/shortcut_client_ruby/models/create_comment_comment.rb +57 -16
  161. data/lib/shortcut_client_ruby/models/create_entity_template.rb +46 -14
  162. data/lib/shortcut_client_ruby/models/create_epic.rb +86 -30
  163. data/lib/shortcut_client_ruby/models/create_epic_comment.rb +57 -16
  164. data/lib/shortcut_client_ruby/models/create_group.rb +104 -21
  165. data/lib/shortcut_client_ruby/models/create_iteration.rb +103 -18
  166. data/lib/shortcut_client_ruby/models/create_label_params.rb +97 -15
  167. data/lib/shortcut_client_ruby/models/create_linked_file.rb +110 -22
  168. data/lib/shortcut_client_ruby/models/create_milestone.rb +75 -19
  169. data/lib/shortcut_client_ruby/models/create_or_delete_story_reaction.rb +25 -12
  170. data/lib/shortcut_client_ruby/models/create_project.rb +104 -22
  171. data/lib/shortcut_client_ruby/models/create_stories.rb +25 -12
  172. data/lib/shortcut_client_ruby/models/create_story_comment.rb +48 -16
  173. data/lib/shortcut_client_ruby/models/create_story_comment_params.rb +48 -16
  174. data/lib/shortcut_client_ruby/models/create_story_contents.rb +57 -32
  175. data/lib/shortcut_client_ruby/models/create_story_link.rb +29 -16
  176. data/lib/shortcut_client_ruby/models/create_story_link_params.rb +29 -16
  177. data/lib/shortcut_client_ruby/models/create_story_params.rb +120 -40
  178. data/lib/shortcut_client_ruby/models/create_task.rb +30 -17
  179. data/lib/shortcut_client_ruby/models/create_task_params.rb +30 -17
  180. data/lib/shortcut_client_ruby/models/delete_stories.rb +35 -12
  181. data/lib/shortcut_client_ruby/models/entity_template.rb +32 -19
  182. data/lib/shortcut_client_ruby/models/entity_template_task.rb +28 -15
  183. data/lib/shortcut_client_ruby/models/epic.rb +62 -124
  184. data/lib/shortcut_client_ruby/models/epic_search_results.rb +28 -20
  185. data/lib/shortcut_client_ruby/models/epic_slim.rb +61 -123
  186. data/lib/shortcut_client_ruby/models/epic_state.rb +59 -20
  187. data/lib/shortcut_client_ruby/models/epic_stats.rb +37 -29
  188. data/lib/shortcut_client_ruby/models/epic_workflow.rb +30 -17
  189. data/lib/shortcut_client_ruby/models/get_epic_stories.rb +25 -12
  190. data/lib/shortcut_client_ruby/models/get_external_link_stories_params.rb +55 -12
  191. data/lib/shortcut_client_ruby/models/get_iteration_stories.rb +25 -12
  192. data/lib/shortcut_client_ruby/models/get_label_stories.rb +25 -12
  193. data/lib/shortcut_client_ruby/models/get_member.rb +25 -12
  194. data/lib/shortcut_client_ruby/models/get_project_stories.rb +25 -12
  195. data/lib/shortcut_client_ruby/models/group.rb +96 -37
  196. data/lib/shortcut_client_ruby/models/history.rb +35 -22
  197. data/lib/shortcut_client_ruby/models/history_action_branch_create.rb +31 -18
  198. data/lib/shortcut_client_ruby/models/history_action_branch_merge.rb +31 -18
  199. data/lib/shortcut_client_ruby/models/history_action_branch_push.rb +31 -18
  200. data/lib/shortcut_client_ruby/models/history_action_label_create.rb +61 -18
  201. data/lib/shortcut_client_ruby/models/history_action_label_delete.rb +30 -17
  202. data/lib/shortcut_client_ruby/models/history_action_label_update.rb +29 -16
  203. data/lib/shortcut_client_ruby/models/history_action_project_update.rb +61 -18
  204. data/lib/shortcut_client_ruby/models/history_action_pull_request.rb +62 -19
  205. data/lib/shortcut_client_ruby/models/history_action_story_comment_create.rb +62 -19
  206. data/lib/shortcut_client_ruby/models/history_action_story_create.rb +82 -39
  207. data/lib/shortcut_client_ruby/models/history_action_story_delete.rb +33 -20
  208. data/lib/shortcut_client_ruby/models/history_action_story_link_create.rb +34 -21
  209. data/lib/shortcut_client_ruby/models/history_action_story_link_delete.rb +34 -31
  210. data/lib/shortcut_client_ruby/models/history_action_story_link_update.rb +35 -22
  211. data/lib/shortcut_client_ruby/models/history_action_story_update.rb +65 -22
  212. data/lib/shortcut_client_ruby/models/history_action_task_create.rb +35 -22
  213. data/lib/shortcut_client_ruby/models/history_action_task_delete.rb +30 -17
  214. data/lib/shortcut_client_ruby/models/history_action_task_update.rb +33 -20
  215. data/lib/shortcut_client_ruby/models/history_changes_story.rb +48 -35
  216. data/lib/shortcut_client_ruby/models/history_changes_story_link.rb +27 -14
  217. data/lib/shortcut_client_ruby/models/history_changes_task.rb +28 -15
  218. data/lib/shortcut_client_ruby/models/history_reference_branch.rb +58 -15
  219. data/lib/shortcut_client_ruby/models/history_reference_commit.rb +58 -15
  220. data/lib/shortcut_client_ruby/models/history_reference_epic.rb +58 -15
  221. data/lib/shortcut_client_ruby/models/history_reference_general.rb +27 -14
  222. data/lib/shortcut_client_ruby/models/history_reference_group.rb +27 -14
  223. data/lib/shortcut_client_ruby/models/history_reference_iteration.rb +58 -15
  224. data/lib/shortcut_client_ruby/models/history_reference_label.rb +58 -15
  225. data/lib/shortcut_client_ruby/models/history_reference_project.rb +58 -15
  226. data/lib/shortcut_client_ruby/models/history_reference_story.rb +61 -18
  227. data/lib/shortcut_client_ruby/models/history_reference_story_task.rb +27 -14
  228. data/lib/shortcut_client_ruby/models/history_reference_workflow_state.rb +30 -17
  229. data/lib/shortcut_client_ruby/models/icon.rb +29 -16
  230. data/lib/shortcut_client_ruby/models/identity.rb +27 -24
  231. data/lib/shortcut_client_ruby/models/iteration.rb +42 -29
  232. data/lib/shortcut_client_ruby/models/iteration_slim.rb +41 -28
  233. data/lib/shortcut_client_ruby/models/iteration_stats.rb +35 -22
  234. data/lib/shortcut_client_ruby/models/label.rb +59 -45
  235. data/lib/shortcut_client_ruby/models/label_slim.rb +58 -44
  236. data/lib/shortcut_client_ruby/models/label_stats.rb +39 -26
  237. data/lib/shortcut_client_ruby/models/linked_file.rb +40 -47
  238. data/lib/shortcut_client_ruby/models/list_epics.rb +25 -12
  239. data/lib/shortcut_client_ruby/models/list_group_stories.rb +26 -13
  240. data/lib/shortcut_client_ruby/models/list_labels.rb +25 -12
  241. data/lib/shortcut_client_ruby/models/list_members.rb +25 -12
  242. data/lib/shortcut_client_ruby/models/max_search_results_exceeded_error.rb +31 -18
  243. data/lib/shortcut_client_ruby/models/member.rb +37 -34
  244. data/lib/shortcut_client_ruby/models/member_info.rb +28 -15
  245. data/lib/shortcut_client_ruby/models/milestone.rb +41 -48
  246. data/lib/shortcut_client_ruby/models/milestone_stats.rb +27 -14
  247. data/lib/shortcut_client_ruby/models/profile.rb +33 -35
  248. data/lib/shortcut_client_ruby/models/project.rb +67 -58
  249. data/lib/shortcut_client_ruby/models/project_stats.rb +27 -14
  250. data/lib/shortcut_client_ruby/models/pull_request.rb +46 -43
  251. data/lib/shortcut_client_ruby/models/pull_request_label.rb +59 -16
  252. data/lib/shortcut_client_ruby/models/repository.rb +33 -55
  253. data/lib/shortcut_client_ruby/models/search.rb +49 -17
  254. data/lib/shortcut_client_ruby/models/search_results.rb +26 -13
  255. data/lib/shortcut_client_ruby/models/search_stories.rb +105 -41
  256. data/lib/shortcut_client_ruby/models/story.rb +74 -131
  257. data/lib/shortcut_client_ruby/models/story_comment.rb +38 -40
  258. data/lib/shortcut_client_ruby/models/story_contents.rb +43 -30
  259. data/lib/shortcut_client_ruby/models/story_contents_task.rb +29 -16
  260. data/lib/shortcut_client_ruby/models/story_history_change_adds_removes_int.rb +26 -13
  261. data/lib/shortcut_client_ruby/models/story_history_change_adds_removes_uuid.rb +26 -13
  262. data/lib/shortcut_client_ruby/models/story_history_change_old_new_bool.rb +26 -13
  263. data/lib/shortcut_client_ruby/models/story_history_change_old_new_int.rb +26 -13
  264. data/lib/shortcut_client_ruby/models/story_history_change_old_new_str.rb +26 -13
  265. data/lib/shortcut_client_ruby/models/story_history_change_old_new_uuid.rb +26 -13
  266. data/lib/shortcut_client_ruby/models/story_link.rb +32 -19
  267. data/lib/shortcut_client_ruby/models/story_reaction.rb +26 -13
  268. data/lib/shortcut_client_ruby/models/story_search_results.rb +28 -20
  269. data/lib/shortcut_client_ruby/models/story_slim.rb +72 -129
  270. data/lib/shortcut_client_ruby/models/story_stats.rb +25 -12
  271. data/lib/shortcut_client_ruby/models/task.rb +38 -40
  272. data/lib/shortcut_client_ruby/models/threaded_comment.rb +37 -29
  273. data/lib/shortcut_client_ruby/models/typed_story_link.rb +33 -20
  274. data/lib/shortcut_client_ruby/models/unusable_entitlement_error.rb +85 -16
  275. data/lib/shortcut_client_ruby/models/update_category.rb +68 -14
  276. data/lib/shortcut_client_ruby/models/update_comment.rb +25 -12
  277. data/lib/shortcut_client_ruby/models/update_entity_template.rb +41 -13
  278. data/lib/shortcut_client_ruby/models/update_epic.rb +82 -30
  279. data/lib/shortcut_client_ruby/models/update_file.rb +54 -17
  280. data/lib/shortcut_client_ruby/models/update_group.rb +97 -22
  281. data/lib/shortcut_client_ruby/models/update_iteration.rb +91 -18
  282. data/lib/shortcut_client_ruby/models/update_label.rb +78 -15
  283. data/lib/shortcut_client_ruby/models/update_linked_file.rb +101 -21
  284. data/lib/shortcut_client_ruby/models/update_milestone.rb +73 -21
  285. data/lib/shortcut_client_ruby/models/update_project.rb +98 -20
  286. data/lib/shortcut_client_ruby/models/update_stories.rb +83 -36
  287. data/lib/shortcut_client_ruby/models/update_story.rb +135 -41
  288. data/lib/shortcut_client_ruby/models/update_story_comment.rb +44 -12
  289. data/lib/shortcut_client_ruby/models/update_story_contents.rb +57 -32
  290. data/lib/shortcut_client_ruby/models/update_story_link.rb +29 -16
  291. data/lib/shortcut_client_ruby/models/update_task.rb +29 -16
  292. data/lib/shortcut_client_ruby/models/uploaded_file.rb +41 -53
  293. data/lib/shortcut_client_ruby/models/workflow.rb +35 -22
  294. data/lib/shortcut_client_ruby/models/workflow_state.rb +60 -26
  295. data/lib/shortcut_client_ruby/version.rb +5 -4
  296. data/lib/shortcut_client_ruby.rb +4 -4
  297. data/openapi-generator-cli.jar +0 -0
  298. data/shortcut_client_ruby-0.0.4.gem +0 -0
  299. data/shortcut_client_ruby.gemspec +7 -6
  300. data/spec/api/default_api_spec.rb +64 -63
  301. data/spec/api_client_spec.rb +7 -44
  302. data/spec/configuration_spec.rb +7 -6
  303. data/spec/models/basic_workspace_info_spec.rb +8 -14
  304. data/spec/models/branch_spec.rb +8 -14
  305. data/spec/models/category_spec.rb +8 -14
  306. data/spec/models/commit_spec.rb +8 -14
  307. data/spec/models/create_category_params_spec.rb +8 -14
  308. data/spec/models/create_category_spec.rb +9 -15
  309. data/spec/models/create_comment_comment_spec.rb +8 -14
  310. data/spec/models/create_entity_template_spec.rb +8 -14
  311. data/spec/models/create_epic_comment_spec.rb +8 -14
  312. data/spec/models/create_epic_spec.rb +9 -15
  313. data/spec/models/create_group_spec.rb +9 -15
  314. data/spec/models/create_iteration_spec.rb +8 -14
  315. data/spec/models/create_label_params_spec.rb +8 -14
  316. data/spec/models/create_linked_file_spec.rb +9 -15
  317. data/spec/models/create_milestone_spec.rb +9 -15
  318. data/spec/models/create_or_delete_story_reaction_spec.rb +8 -14
  319. data/spec/models/create_project_spec.rb +8 -14
  320. data/spec/models/create_stories_spec.rb +8 -14
  321. data/spec/models/create_story_comment_params_spec.rb +8 -14
  322. data/spec/models/create_story_comment_spec.rb +8 -14
  323. data/spec/models/create_story_contents_spec.rb +8 -14
  324. data/spec/models/create_story_link_params_spec.rb +9 -15
  325. data/spec/models/create_story_link_spec.rb +9 -15
  326. data/spec/models/create_story_params_spec.rb +9 -15
  327. data/spec/models/create_task_params_spec.rb +8 -14
  328. data/spec/models/create_task_spec.rb +8 -14
  329. data/spec/models/delete_stories_spec.rb +8 -14
  330. data/spec/models/entity_template_spec.rb +8 -14
  331. data/spec/models/entity_template_task_spec.rb +8 -14
  332. data/spec/models/epic_search_results_spec.rb +8 -14
  333. data/spec/models/epic_slim_spec.rb +8 -14
  334. data/spec/models/epic_spec.rb +8 -14
  335. data/spec/models/epic_state_spec.rb +8 -14
  336. data/spec/models/epic_stats_spec.rb +8 -14
  337. data/spec/models/epic_workflow_spec.rb +8 -14
  338. data/spec/models/get_epic_stories_spec.rb +8 -14
  339. data/spec/models/get_external_link_stories_params_spec.rb +8 -14
  340. data/spec/models/get_iteration_stories_spec.rb +8 -14
  341. data/spec/models/get_label_stories_spec.rb +8 -14
  342. data/spec/models/get_member_spec.rb +8 -14
  343. data/spec/models/get_project_stories_spec.rb +8 -14
  344. data/spec/models/group_spec.rb +9 -15
  345. data/spec/models/history_action_branch_create_spec.rb +9 -15
  346. data/spec/models/history_action_branch_merge_spec.rb +9 -15
  347. data/spec/models/history_action_branch_push_spec.rb +9 -15
  348. data/spec/models/history_action_label_create_spec.rb +9 -15
  349. data/spec/models/history_action_label_delete_spec.rb +9 -15
  350. data/spec/models/history_action_label_update_spec.rb +9 -15
  351. data/spec/models/history_action_project_update_spec.rb +9 -15
  352. data/spec/models/history_action_pull_request_spec.rb +9 -15
  353. data/spec/models/history_action_story_comment_create_spec.rb +9 -15
  354. data/spec/models/history_action_story_create_spec.rb +10 -16
  355. data/spec/models/history_action_story_delete_spec.rb +10 -16
  356. data/spec/models/history_action_story_link_create_spec.rb +10 -16
  357. data/spec/models/history_action_story_link_delete_spec.rb +10 -16
  358. data/spec/models/history_action_story_link_update_spec.rb +10 -16
  359. data/spec/models/history_action_story_update_spec.rb +10 -16
  360. data/spec/models/history_action_task_create_spec.rb +9 -15
  361. data/spec/models/history_action_task_delete_spec.rb +9 -15
  362. data/spec/models/history_action_task_update_spec.rb +9 -15
  363. data/spec/models/history_changes_story_link_spec.rb +8 -14
  364. data/spec/models/history_changes_story_spec.rb +8 -14
  365. data/spec/models/history_changes_task_spec.rb +8 -14
  366. data/spec/models/history_reference_branch_spec.rb +8 -14
  367. data/spec/models/history_reference_commit_spec.rb +8 -14
  368. data/spec/models/history_reference_epic_spec.rb +8 -14
  369. data/spec/models/history_reference_general_spec.rb +8 -14
  370. data/spec/models/history_reference_group_spec.rb +8 -14
  371. data/spec/models/history_reference_iteration_spec.rb +8 -14
  372. data/spec/models/history_reference_label_spec.rb +8 -14
  373. data/spec/models/history_reference_project_spec.rb +8 -14
  374. data/spec/models/history_reference_story_spec.rb +9 -15
  375. data/spec/models/history_reference_story_task_spec.rb +8 -14
  376. data/spec/models/history_reference_workflow_state_spec.rb +9 -15
  377. data/spec/models/history_spec.rb +9 -15
  378. data/spec/models/icon_spec.rb +8 -14
  379. data/spec/models/identity_spec.rb +8 -14
  380. data/spec/models/iteration_slim_spec.rb +8 -14
  381. data/spec/models/iteration_spec.rb +8 -14
  382. data/spec/models/iteration_stats_spec.rb +8 -14
  383. data/spec/models/label_slim_spec.rb +8 -14
  384. data/spec/models/label_spec.rb +8 -14
  385. data/spec/models/label_stats_spec.rb +8 -14
  386. data/spec/models/linked_file_spec.rb +8 -14
  387. data/spec/models/list_epics_spec.rb +8 -14
  388. data/spec/models/list_group_stories_spec.rb +8 -14
  389. data/spec/models/list_labels_spec.rb +8 -14
  390. data/spec/models/list_members_spec.rb +8 -14
  391. data/spec/models/max_search_results_exceeded_error_spec.rb +11 -17
  392. data/spec/models/member_info_spec.rb +8 -14
  393. data/spec/models/member_spec.rb +9 -15
  394. data/spec/models/milestone_spec.rb +8 -14
  395. data/spec/models/milestone_stats_spec.rb +8 -14
  396. data/spec/models/profile_spec.rb +8 -14
  397. data/spec/models/project_spec.rb +8 -14
  398. data/spec/models/project_stats_spec.rb +8 -14
  399. data/spec/models/pull_request_label_spec.rb +8 -14
  400. data/spec/models/pull_request_spec.rb +8 -14
  401. data/spec/models/repository_spec.rb +8 -14
  402. data/spec/models/search_results_spec.rb +8 -14
  403. data/spec/models/search_spec.rb +9 -15
  404. data/spec/models/search_stories_spec.rb +10 -16
  405. data/spec/models/story_comment_spec.rb +8 -14
  406. data/spec/models/story_contents_spec.rb +8 -14
  407. data/spec/models/story_contents_task_spec.rb +8 -14
  408. data/spec/models/story_history_change_adds_removes_int_spec.rb +8 -14
  409. data/spec/models/story_history_change_adds_removes_uuid_spec.rb +8 -14
  410. data/spec/models/story_history_change_old_new_bool_spec.rb +8 -14
  411. data/spec/models/story_history_change_old_new_int_spec.rb +8 -14
  412. data/spec/models/story_history_change_old_new_str_spec.rb +8 -14
  413. data/spec/models/story_history_change_old_new_uuid_spec.rb +8 -14
  414. data/spec/models/story_link_spec.rb +8 -14
  415. data/spec/models/story_reaction_spec.rb +8 -14
  416. data/spec/models/story_search_results_spec.rb +8 -14
  417. data/spec/models/story_slim_spec.rb +8 -14
  418. data/spec/models/story_spec.rb +8 -14
  419. data/spec/models/story_stats_spec.rb +8 -14
  420. data/spec/models/task_spec.rb +8 -14
  421. data/spec/models/threaded_comment_spec.rb +8 -14
  422. data/spec/models/typed_story_link_spec.rb +8 -14
  423. data/spec/models/unusable_entitlement_error_spec.rb +9 -15
  424. data/spec/models/update_category_spec.rb +8 -14
  425. data/spec/models/update_comment_spec.rb +8 -14
  426. data/spec/models/update_entity_template_spec.rb +8 -14
  427. data/spec/models/update_epic_spec.rb +9 -15
  428. data/spec/models/update_file_spec.rb +8 -14
  429. data/spec/models/update_group_spec.rb +9 -15
  430. data/spec/models/update_iteration_spec.rb +8 -14
  431. data/spec/models/update_label_spec.rb +8 -14
  432. data/spec/models/update_linked_file_spec.rb +9 -15
  433. data/spec/models/update_milestone_spec.rb +9 -15
  434. data/spec/models/update_project_spec.rb +8 -14
  435. data/spec/models/update_stories_spec.rb +10 -16
  436. data/spec/models/update_story_comment_spec.rb +8 -14
  437. data/spec/models/update_story_contents_spec.rb +8 -14
  438. data/spec/models/update_story_link_spec.rb +9 -15
  439. data/spec/models/update_story_spec.rb +10 -16
  440. data/spec/models/update_task_spec.rb +8 -14
  441. data/spec/models/uploaded_file_spec.rb +8 -14
  442. data/spec/models/workflow_spec.rb +8 -14
  443. data/spec/models/workflow_state_spec.rb +8 -14
  444. data/spec/spec_helper.rb +4 -3
  445. metadata +18 -30
  446. data/docs/V3FilesBody.md +0 -11
  447. data/lib/shortcut/client/ruby/version.rb +0 -9
  448. data/lib/shortcut/client/ruby.rb +0 -12
  449. data/lib/shortcut_client_ruby/models/v3_files_body.rb +0 -252
  450. data/shortcut-client-ruby.gemspec +0 -36
  451. data/spec/base_object_spec.rb +0 -109
  452. data/spec/models/v3_files_body_spec.rb +0 -64
@@ -3,13 +3,15 @@
3
3
 
4
4
  #Shortcut API
5
5
 
6
- OpenAPI spec version: 3.0
6
+ The version of the OpenAPI document: 3.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
7
10
 
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.35
10
11
  =end
11
12
 
12
13
  require 'date'
14
+ require 'time'
13
15
 
14
16
  module Shortcut
15
17
  class CreateEpic
@@ -109,26 +111,31 @@ module Shortcut
109
111
  }
110
112
  end
111
113
 
114
+ # Returns all the JSON keys this model knows about
115
+ def self.acceptable_attributes
116
+ attribute_map.values
117
+ end
118
+
112
119
  # Attribute type mapping.
113
120
  def self.openapi_types
114
121
  {
115
- :'description' => :'Object',
116
- :'labels' => :'Object',
117
- :'completed_at_override' => :'Object',
118
- :'name' => :'Object',
119
- :'planned_start_date' => :'Object',
120
- :'state' => :'Object',
121
- :'milestone_id' => :'Object',
122
- :'requested_by_id' => :'Object',
123
- :'epic_state_id' => :'Object',
124
- :'started_at_override' => :'Object',
125
- :'group_id' => :'Object',
126
- :'updated_at' => :'Object',
127
- :'follower_ids' => :'Object',
128
- :'owner_ids' => :'Object',
129
- :'external_id' => :'Object',
130
- :'deadline' => :'Object',
131
- :'created_at' => :'Object'
122
+ :'description' => :'String',
123
+ :'labels' => :'Array<CreateLabelParams>',
124
+ :'completed_at_override' => :'Time',
125
+ :'name' => :'String',
126
+ :'planned_start_date' => :'Time',
127
+ :'state' => :'String',
128
+ :'milestone_id' => :'Integer',
129
+ :'requested_by_id' => :'String',
130
+ :'epic_state_id' => :'Integer',
131
+ :'started_at_override' => :'Time',
132
+ :'group_id' => :'String',
133
+ :'updated_at' => :'Time',
134
+ :'follower_ids' => :'Array<String>',
135
+ :'owner_ids' => :'Array<String>',
136
+ :'external_id' => :'String',
137
+ :'deadline' => :'Time',
138
+ :'created_at' => :'Time'
132
139
  }
133
140
  end
134
141
 
@@ -141,7 +148,7 @@ module Shortcut
141
148
  :'deadline',
142
149
  ])
143
150
  end
144
-
151
+
145
152
  # Initializes the object
146
153
  # @param [Hash] attributes Model attributes in the form of hash
147
154
  def initialize(attributes = {})
@@ -236,26 +243,69 @@ module Shortcut
236
243
  # @return Array for valid properties with the reasons
237
244
  def list_invalid_properties
238
245
  invalid_properties = Array.new
246
+ if !@description.nil? && @description.to_s.length > 100000
247
+ invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 100000.')
248
+ end
249
+
239
250
  if @name.nil?
240
251
  invalid_properties.push('invalid value for "name", name cannot be nil.')
241
252
  end
242
253
 
254
+ if @name.to_s.length > 256
255
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 256.')
256
+ end
257
+
258
+ if @name.to_s.length < 1
259
+ invalid_properties.push('invalid value for "name", the character length must be great than or equal to 1.')
260
+ end
261
+
243
262
  invalid_properties
244
263
  end
245
264
 
246
265
  # Check to see if the all the properties in the model are valid
247
266
  # @return true if the model is valid
248
267
  def valid?
268
+ return false if !@description.nil? && @description.to_s.length > 100000
249
269
  return false if @name.nil?
250
- state_validator = EnumAttributeValidator.new('Object', ['in progress', 'to do', 'done'])
270
+ return false if @name.to_s.length > 256
271
+ return false if @name.to_s.length < 1
272
+ state_validator = EnumAttributeValidator.new('String', ["in progress", "to do", "done"])
251
273
  return false unless state_validator.valid?(@state)
252
274
  true
253
275
  end
254
276
 
277
+ # Custom attribute writer method with validation
278
+ # @param [Object] description Value to be assigned
279
+ def description=(description)
280
+ if !description.nil? && description.to_s.length > 100000
281
+ fail ArgumentError, 'invalid value for "description", the character length must be smaller than or equal to 100000.'
282
+ end
283
+
284
+ @description = description
285
+ end
286
+
287
+ # Custom attribute writer method with validation
288
+ # @param [Object] name Value to be assigned
289
+ def name=(name)
290
+ if name.nil?
291
+ fail ArgumentError, 'name cannot be nil'
292
+ end
293
+
294
+ if name.to_s.length > 256
295
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 256.'
296
+ end
297
+
298
+ if name.to_s.length < 1
299
+ fail ArgumentError, 'invalid value for "name", the character length must be great than or equal to 1.'
300
+ end
301
+
302
+ @name = name
303
+ end
304
+
255
305
  # Custom attribute writer method checking allowed values (enum).
256
306
  # @param [Object] state Object to be assigned
257
307
  def state=(state)
258
- validator = EnumAttributeValidator.new('Object', ['in progress', 'to do', 'done'])
308
+ validator = EnumAttributeValidator.new('String', ["in progress", "to do", "done"])
259
309
  unless validator.valid?(state)
260
310
  fail ArgumentError, "invalid value for \"state\", must be one of #{validator.allowable_values}."
261
311
  end
@@ -310,8 +360,11 @@ module Shortcut
310
360
  # @return [Object] Returns the model itself
311
361
  def build_from_hash(attributes)
312
362
  return nil unless attributes.is_a?(Hash)
363
+ attributes = attributes.transform_keys(&:to_sym)
313
364
  self.class.openapi_types.each_pair do |key, type|
314
- if type =~ /\AArray<(.*)>/i
365
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
366
+ self.send("#{key}=", nil)
367
+ elsif type =~ /\AArray<(.*)>/i
315
368
  # check to ensure the input is an array given that the attribute
316
369
  # is documented as an array but the input is not
317
370
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -319,8 +372,6 @@ module Shortcut
319
372
  end
320
373
  elsif !attributes[self.class.attribute_map[key]].nil?
321
374
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
322
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
323
- self.send("#{key}=", nil)
324
375
  end
325
376
  end
326
377
 
@@ -333,8 +384,8 @@ module Shortcut
333
384
  # @return [Object] Deserialized data
334
385
  def _deserialize(type, value)
335
386
  case type.to_sym
336
- when :DateTime
337
- DateTime.parse(value)
387
+ when :Time
388
+ Time.parse(value)
338
389
  when :Date
339
390
  Date.parse(value)
340
391
  when :String
@@ -364,7 +415,9 @@ module Shortcut
364
415
  end
365
416
  end
366
417
  else # model
367
- Shortcut.const_get(type).build_from_hash(value)
418
+ # models (e.g. Pet) or oneOf
419
+ klass = Shortcut.const_get(type)
420
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
368
421
  end
369
422
  end
370
423
 
@@ -412,5 +465,8 @@ module Shortcut
412
465
  else
413
466
  value
414
467
  end
415
- end end
468
+ end
469
+
470
+ end
471
+
416
472
  end
@@ -3,13 +3,15 @@
3
3
 
4
4
  #Shortcut API
5
5
 
6
- OpenAPI spec version: 3.0
6
+ The version of the OpenAPI document: 3.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
7
10
 
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.35
10
11
  =end
11
12
 
12
13
  require 'date'
14
+ require 'time'
13
15
 
14
16
  module Shortcut
15
17
  class CreateEpicComment
@@ -39,14 +41,19 @@ module Shortcut
39
41
  }
40
42
  end
41
43
 
44
+ # Returns all the JSON keys this model knows about
45
+ def self.acceptable_attributes
46
+ attribute_map.values
47
+ end
48
+
42
49
  # Attribute type mapping.
43
50
  def self.openapi_types
44
51
  {
45
- :'text' => :'Object',
46
- :'author_id' => :'Object',
47
- :'created_at' => :'Object',
48
- :'updated_at' => :'Object',
49
- :'external_id' => :'Object'
52
+ :'text' => :'String',
53
+ :'author_id' => :'String',
54
+ :'created_at' => :'Time',
55
+ :'updated_at' => :'Time',
56
+ :'external_id' => :'String'
50
57
  }
51
58
  end
52
59
 
@@ -55,7 +62,7 @@ module Shortcut
55
62
  Set.new([
56
63
  ])
57
64
  end
58
-
65
+
59
66
  # Initializes the object
60
67
  # @param [Hash] attributes Model attributes in the form of hash
61
68
  def initialize(attributes = {})
@@ -100,6 +107,14 @@ module Shortcut
100
107
  invalid_properties.push('invalid value for "text", text cannot be nil.')
101
108
  end
102
109
 
110
+ if @text.to_s.length > 100000
111
+ invalid_properties.push('invalid value for "text", the character length must be smaller than or equal to 100000.')
112
+ end
113
+
114
+ if @text.to_s.length < 1
115
+ invalid_properties.push('invalid value for "text", the character length must be great than or equal to 1.')
116
+ end
117
+
103
118
  invalid_properties
104
119
  end
105
120
 
@@ -107,9 +122,29 @@ module Shortcut
107
122
  # @return true if the model is valid
108
123
  def valid?
109
124
  return false if @text.nil?
125
+ return false if @text.to_s.length > 100000
126
+ return false if @text.to_s.length < 1
110
127
  true
111
128
  end
112
129
 
130
+ # Custom attribute writer method with validation
131
+ # @param [Object] text Value to be assigned
132
+ def text=(text)
133
+ if text.nil?
134
+ fail ArgumentError, 'text cannot be nil'
135
+ end
136
+
137
+ if text.to_s.length > 100000
138
+ fail ArgumentError, 'invalid value for "text", the character length must be smaller than or equal to 100000.'
139
+ end
140
+
141
+ if text.to_s.length < 1
142
+ fail ArgumentError, 'invalid value for "text", the character length must be great than or equal to 1.'
143
+ end
144
+
145
+ @text = text
146
+ end
147
+
113
148
  # Checks equality by comparing each attribute.
114
149
  # @param [Object] Object to be compared
115
150
  def ==(o)
@@ -146,8 +181,11 @@ module Shortcut
146
181
  # @return [Object] Returns the model itself
147
182
  def build_from_hash(attributes)
148
183
  return nil unless attributes.is_a?(Hash)
184
+ attributes = attributes.transform_keys(&:to_sym)
149
185
  self.class.openapi_types.each_pair do |key, type|
150
- if type =~ /\AArray<(.*)>/i
186
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
187
+ self.send("#{key}=", nil)
188
+ elsif type =~ /\AArray<(.*)>/i
151
189
  # check to ensure the input is an array given that the attribute
152
190
  # is documented as an array but the input is not
153
191
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -155,8 +193,6 @@ module Shortcut
155
193
  end
156
194
  elsif !attributes[self.class.attribute_map[key]].nil?
157
195
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
158
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
159
- self.send("#{key}=", nil)
160
196
  end
161
197
  end
162
198
 
@@ -169,8 +205,8 @@ module Shortcut
169
205
  # @return [Object] Deserialized data
170
206
  def _deserialize(type, value)
171
207
  case type.to_sym
172
- when :DateTime
173
- DateTime.parse(value)
208
+ when :Time
209
+ Time.parse(value)
174
210
  when :Date
175
211
  Date.parse(value)
176
212
  when :String
@@ -200,7 +236,9 @@ module Shortcut
200
236
  end
201
237
  end
202
238
  else # model
203
- Shortcut.const_get(type).build_from_hash(value)
239
+ # models (e.g. Pet) or oneOf
240
+ klass = Shortcut.const_get(type)
241
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
204
242
  end
205
243
  end
206
244
 
@@ -248,5 +286,8 @@ module Shortcut
248
286
  else
249
287
  value
250
288
  end
251
- end end
289
+ end
290
+
291
+ end
292
+
252
293
  end
@@ -3,13 +3,15 @@
3
3
 
4
4
  #Shortcut API
5
5
 
6
- OpenAPI spec version: 3.0
6
+ The version of the OpenAPI document: 3.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
7
10
 
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.35
10
11
  =end
11
12
 
12
13
  require 'date'
14
+ require 'time'
13
15
 
14
16
  module Shortcut
15
17
  class CreateGroup
@@ -73,17 +75,22 @@ module Shortcut
73
75
  }
74
76
  end
75
77
 
78
+ # Returns all the JSON keys this model knows about
79
+ def self.acceptable_attributes
80
+ attribute_map.values
81
+ end
82
+
76
83
  # Attribute type mapping.
77
84
  def self.openapi_types
78
85
  {
79
- :'description' => :'Object',
80
- :'member_ids' => :'Object',
81
- :'workflow_ids' => :'Object',
82
- :'name' => :'Object',
83
- :'mention_name' => :'Object',
84
- :'color' => :'Object',
85
- :'color_key' => :'Object',
86
- :'display_icon_id' => :'Object'
86
+ :'description' => :'String',
87
+ :'member_ids' => :'Array<String>',
88
+ :'workflow_ids' => :'Array<Integer>',
89
+ :'name' => :'String',
90
+ :'mention_name' => :'String',
91
+ :'color' => :'String',
92
+ :'color_key' => :'String',
93
+ :'display_icon_id' => :'String'
87
94
  }
88
95
  end
89
96
 
@@ -92,7 +99,7 @@ module Shortcut
92
99
  Set.new([
93
100
  ])
94
101
  end
95
-
102
+
96
103
  # Initializes the object
97
104
  # @param [Hash] attributes Model attributes in the form of hash
98
105
  def initialize(attributes = {})
@@ -153,10 +160,27 @@ module Shortcut
153
160
  invalid_properties.push('invalid value for "name", name cannot be nil.')
154
161
  end
155
162
 
163
+ if @name.to_s.length < 1
164
+ invalid_properties.push('invalid value for "name", the character length must be great than or equal to 1.')
165
+ end
166
+
156
167
  if @mention_name.nil?
157
168
  invalid_properties.push('invalid value for "mention_name", mention_name cannot be nil.')
158
169
  end
159
170
 
171
+ if @mention_name.to_s.length < 1
172
+ invalid_properties.push('invalid value for "mention_name", the character length must be great than or equal to 1.')
173
+ end
174
+
175
+ if !@color.nil? && @color.to_s.length < 1
176
+ invalid_properties.push('invalid value for "color", the character length must be great than or equal to 1.')
177
+ end
178
+
179
+ pattern = Regexp.new(/^#[a-fA-F0-9]{6}$/)
180
+ if !@color.nil? && @color !~ pattern
181
+ invalid_properties.push("invalid value for \"color\", must conform to the pattern #{pattern}.")
182
+ end
183
+
160
184
  invalid_properties
161
185
  end
162
186
 
@@ -164,16 +188,69 @@ module Shortcut
164
188
  # @return true if the model is valid
165
189
  def valid?
166
190
  return false if @name.nil?
191
+ return false if @name.to_s.length < 1
167
192
  return false if @mention_name.nil?
168
- color_key_validator = EnumAttributeValidator.new('Object', ['blue', 'purple', 'midnight-blue', 'orange', 'yellow-green', 'brass', 'gray', 'fuchsia', 'yellow', 'pink', 'sky-blue', 'green', 'red', 'black', 'slate', 'turquoise'])
193
+ return false if @mention_name.to_s.length < 1
194
+ return false if !@color.nil? && @color.to_s.length < 1
195
+ return false if !@color.nil? && @color !~ Regexp.new(/^#[a-fA-F0-9]{6}$/)
196
+ color_key_validator = EnumAttributeValidator.new('String', ["blue", "purple", "midnight-blue", "orange", "yellow-green", "brass", "gray", "fuchsia", "yellow", "pink", "sky-blue", "green", "red", "black", "slate", "turquoise"])
169
197
  return false unless color_key_validator.valid?(@color_key)
170
198
  true
171
199
  end
172
200
 
201
+ # Custom attribute writer method with validation
202
+ # @param [Object] member_ids Value to be assigned
203
+ def member_ids=(member_ids)
204
+ @member_ids = member_ids
205
+ end
206
+
207
+ # Custom attribute writer method with validation
208
+ # @param [Object] name Value to be assigned
209
+ def name=(name)
210
+ if name.nil?
211
+ fail ArgumentError, 'name cannot be nil'
212
+ end
213
+
214
+ if name.to_s.length < 1
215
+ fail ArgumentError, 'invalid value for "name", the character length must be great than or equal to 1.'
216
+ end
217
+
218
+ @name = name
219
+ end
220
+
221
+ # Custom attribute writer method with validation
222
+ # @param [Object] mention_name Value to be assigned
223
+ def mention_name=(mention_name)
224
+ if mention_name.nil?
225
+ fail ArgumentError, 'mention_name cannot be nil'
226
+ end
227
+
228
+ if mention_name.to_s.length < 1
229
+ fail ArgumentError, 'invalid value for "mention_name", the character length must be great than or equal to 1.'
230
+ end
231
+
232
+ @mention_name = mention_name
233
+ end
234
+
235
+ # Custom attribute writer method with validation
236
+ # @param [Object] color Value to be assigned
237
+ def color=(color)
238
+ if !color.nil? && color.to_s.length < 1
239
+ fail ArgumentError, 'invalid value for "color", the character length must be great than or equal to 1.'
240
+ end
241
+
242
+ pattern = Regexp.new(/^#[a-fA-F0-9]{6}$/)
243
+ if !color.nil? && color !~ pattern
244
+ fail ArgumentError, "invalid value for \"color\", must conform to the pattern #{pattern}."
245
+ end
246
+
247
+ @color = color
248
+ end
249
+
173
250
  # Custom attribute writer method checking allowed values (enum).
174
251
  # @param [Object] color_key Object to be assigned
175
252
  def color_key=(color_key)
176
- validator = EnumAttributeValidator.new('Object', ['blue', 'purple', 'midnight-blue', 'orange', 'yellow-green', 'brass', 'gray', 'fuchsia', 'yellow', 'pink', 'sky-blue', 'green', 'red', 'black', 'slate', 'turquoise'])
253
+ validator = EnumAttributeValidator.new('String', ["blue", "purple", "midnight-blue", "orange", "yellow-green", "brass", "gray", "fuchsia", "yellow", "pink", "sky-blue", "green", "red", "black", "slate", "turquoise"])
177
254
  unless validator.valid?(color_key)
178
255
  fail ArgumentError, "invalid value for \"color_key\", must be one of #{validator.allowable_values}."
179
256
  end
@@ -219,8 +296,11 @@ module Shortcut
219
296
  # @return [Object] Returns the model itself
220
297
  def build_from_hash(attributes)
221
298
  return nil unless attributes.is_a?(Hash)
299
+ attributes = attributes.transform_keys(&:to_sym)
222
300
  self.class.openapi_types.each_pair do |key, type|
223
- if type =~ /\AArray<(.*)>/i
301
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
302
+ self.send("#{key}=", nil)
303
+ elsif type =~ /\AArray<(.*)>/i
224
304
  # check to ensure the input is an array given that the attribute
225
305
  # is documented as an array but the input is not
226
306
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -228,8 +308,6 @@ module Shortcut
228
308
  end
229
309
  elsif !attributes[self.class.attribute_map[key]].nil?
230
310
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
231
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
232
- self.send("#{key}=", nil)
233
311
  end
234
312
  end
235
313
 
@@ -242,8 +320,8 @@ module Shortcut
242
320
  # @return [Object] Deserialized data
243
321
  def _deserialize(type, value)
244
322
  case type.to_sym
245
- when :DateTime
246
- DateTime.parse(value)
323
+ when :Time
324
+ Time.parse(value)
247
325
  when :Date
248
326
  Date.parse(value)
249
327
  when :String
@@ -273,7 +351,9 @@ module Shortcut
273
351
  end
274
352
  end
275
353
  else # model
276
- Shortcut.const_get(type).build_from_hash(value)
354
+ # models (e.g. Pet) or oneOf
355
+ klass = Shortcut.const_get(type)
356
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
277
357
  end
278
358
  end
279
359
 
@@ -321,5 +401,8 @@ module Shortcut
321
401
  else
322
402
  value
323
403
  end
324
- end end
404
+ end
405
+
406
+ end
407
+
325
408
  end