flat_api 0.1.2 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (409) hide show
  1. checksums.yaml +5 -5
  2. data/lib/flat_api/api/account_api.rb +31 -21
  3. data/lib/flat_api/api/class_api.rb +1405 -405
  4. data/lib/flat_api/api/collection_api.rb +684 -0
  5. data/lib/flat_api/api/edu_resources_api.rb +851 -0
  6. data/lib/flat_api/api/group_api.rb +81 -55
  7. data/lib/flat_api/api/organization_api.rb +524 -180
  8. data/lib/flat_api/api/score_api.rb +1034 -570
  9. data/lib/flat_api/api/task_api.rb +85 -0
  10. data/lib/flat_api/api/user_api.rb +114 -76
  11. data/lib/flat_api/api_client.rb +112 -107
  12. data/lib/flat_api/api_error.rb +24 -4
  13. data/lib/flat_api/configuration.rb +105 -16
  14. data/lib/flat_api/models/api_access_token.rb +268 -0
  15. data/lib/flat_api/models/app_scopes.rb +59 -0
  16. data/lib/flat_api/models/assignment.rb +192 -101
  17. data/lib/flat_api/models/assignment_capabilities.rb +283 -0
  18. data/lib/flat_api/models/assignment_capabilities_can_publish_in_class_error.rb +240 -0
  19. data/lib/flat_api/models/assignment_copy.rb +80 -169
  20. data/lib/flat_api/models/assignment_copy_response.rb +430 -0
  21. data/lib/flat_api/models/assignment_copy_to_class.rb +243 -0
  22. data/lib/flat_api/models/assignment_copy_to_resource_library.rb +233 -0
  23. data/lib/flat_api/models/assignment_submission.rb +249 -66
  24. data/lib/flat_api/models/assignment_submission_comment.rb +276 -0
  25. data/lib/flat_api/models/assignment_submission_comment_creation.rb +223 -0
  26. data/lib/flat_api/models/assignment_submission_comments.rb +225 -0
  27. data/lib/flat_api/models/assignment_submission_history.rb +384 -0
  28. data/lib/flat_api/models/assignment_submission_history_attachment.rb +235 -0
  29. data/lib/flat_api/models/assignment_submission_history_state.rb +43 -0
  30. data/lib/flat_api/models/assignment_submission_lti.rb +222 -0
  31. data/lib/flat_api/models/assignment_submission_playback_inner.rb +240 -0
  32. data/lib/flat_api/models/assignment_submission_state.rb +42 -0
  33. data/lib/flat_api/models/assignment_submission_update.rb +150 -50
  34. data/lib/flat_api/models/assignment_type.rb +44 -0
  35. data/lib/flat_api/models/assignment_update.rb +407 -0
  36. data/lib/flat_api/models/class_assignment.rb +613 -0
  37. data/lib/flat_api/models/class_assignment_all_of_canvas.rb +226 -0
  38. data/lib/flat_api/models/class_assignment_all_of_lti.rb +216 -0
  39. data/lib/flat_api/models/class_assignment_all_of_mfc.rb +226 -0
  40. data/lib/flat_api/models/class_assignment_update.rb +509 -0
  41. data/lib/flat_api/models/class_assignment_update_all_of_google_classroom.rb +217 -0
  42. data/lib/flat_api/models/class_assignment_update_all_of_microsoft_graph.rb +219 -0
  43. data/lib/flat_api/models/class_attachment_creation.rb +110 -41
  44. data/lib/flat_api/models/class_creation.rb +144 -43
  45. data/lib/flat_api/models/class_details.rb +175 -60
  46. data/lib/flat_api/models/class_details_canvas.rb +61 -34
  47. data/lib/flat_api/models/class_details_clever.rb +76 -48
  48. data/lib/flat_api/models/class_details_google_classroom.rb +66 -59
  49. data/lib/flat_api/models/class_details_google_drive.rb +63 -36
  50. data/lib/flat_api/models/class_details_issues.rb +218 -0
  51. data/lib/flat_api/models/class_details_issues_sync_inner.rb +270 -0
  52. data/lib/flat_api/models/class_details_lti.rb +65 -38
  53. data/lib/flat_api/models/class_details_mfc.rb +226 -0
  54. data/lib/flat_api/models/class_details_microsoft_graph.rb +215 -0
  55. data/lib/flat_api/models/class_grade_level.rb +43 -0
  56. data/lib/flat_api/models/class_roles.rb +18 -9
  57. data/lib/flat_api/models/class_state.rb +18 -9
  58. data/lib/flat_api/models/class_update.rb +144 -42
  59. data/lib/flat_api/models/collection.rb +373 -0
  60. data/lib/flat_api/models/collection_app.rb +236 -0
  61. data/lib/flat_api/models/collection_capabilities.rb +291 -0
  62. data/lib/flat_api/models/collection_creation.rb +288 -0
  63. data/lib/flat_api/models/collection_modification.rb +275 -0
  64. data/lib/flat_api/models/collection_privacy.rb +39 -0
  65. data/lib/flat_api/models/collection_type.rb +44 -0
  66. data/lib/flat_api/models/edu_library.rb +292 -0
  67. data/lib/flat_api/models/edu_resource.rb +366 -0
  68. data/lib/flat_api/models/edu_resource_capabilities.rb +236 -0
  69. data/lib/flat_api/models/edu_resource_copy.rb +223 -0
  70. data/lib/flat_api/models/edu_resource_creation.rb +301 -0
  71. data/lib/flat_api/models/edu_resource_folder.rb +216 -0
  72. data/lib/flat_api/models/edu_resource_lti_link.rb +223 -0
  73. data/lib/flat_api/models/edu_resource_move.rb +223 -0
  74. data/lib/flat_api/models/edu_resource_privacy.rb +41 -0
  75. data/lib/flat_api/models/edu_resource_resource.rb +105 -0
  76. data/lib/flat_api/models/edu_resource_type.rb +40 -0
  77. data/lib/flat_api/models/edu_resource_update.rb +277 -0
  78. data/lib/flat_api/models/edu_resource_use_in_class.rb +233 -0
  79. data/lib/flat_api/models/flat_error_response.rb +79 -38
  80. data/lib/flat_api/models/flat_locales.rb +30 -10
  81. data/lib/flat_api/models/google_classroom_coursework.rb +76 -38
  82. data/lib/flat_api/models/google_classroom_submission.rb +84 -36
  83. data/lib/flat_api/models/group.rb +72 -44
  84. data/lib/flat_api/models/group_details.rb +92 -43
  85. data/lib/flat_api/models/group_type.rb +18 -9
  86. data/lib/flat_api/models/license_mode.rb +18 -9
  87. data/lib/flat_api/models/license_sources.rb +21 -9
  88. data/lib/flat_api/models/lms_name.rb +19 -9
  89. data/lib/flat_api/models/lti_credentials.rb +95 -46
  90. data/lib/flat_api/models/lti_credentials_creation.rb +91 -38
  91. data/lib/flat_api/models/media_attachment.rb +167 -70
  92. data/lib/flat_api/models/media_score_sharing_mode.rb +19 -9
  93. data/lib/flat_api/models/microsoft_graph_assignment.rb +248 -0
  94. data/lib/flat_api/models/microsoft_graph_submission.rb +240 -0
  95. data/lib/flat_api/models/organization_invitation.rb +139 -44
  96. data/lib/flat_api/models/organization_invitation_creation.rb +99 -35
  97. data/lib/flat_api/models/organization_roles.rb +18 -9
  98. data/lib/flat_api/models/organization_user_access_token_creation.rb +225 -0
  99. data/lib/flat_api/models/resource_collaborator.rb +403 -0
  100. data/lib/flat_api/models/{score_collaborator_creation.rb → resource_collaborator_creation.rb} +85 -48
  101. data/lib/flat_api/models/resource_rights.rb +318 -0
  102. data/lib/flat_api/models/score_comment.rb +93 -56
  103. data/lib/flat_api/models/score_comment_context.rb +103 -59
  104. data/lib/flat_api/models/score_comment_creation.rb +70 -41
  105. data/lib/flat_api/models/score_comment_moderation.rb +260 -0
  106. data/lib/flat_api/models/score_comment_update.rb +82 -49
  107. data/lib/flat_api/models/score_comments_counts.rb +67 -40
  108. data/lib/flat_api/models/score_creation.rb +81 -215
  109. data/lib/flat_api/models/score_creation_builder_data.rb +298 -0
  110. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data.rb +230 -0
  111. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_layout_data.rb +322 -0
  112. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data.rb +274 -0
  113. data/lib/flat_api/models/score_creation_builder_data_all_of_builder_data_score_data_instruments.rb +269 -0
  114. data/lib/flat_api/models/score_creation_common.rb +268 -0
  115. data/lib/flat_api/models/score_creation_file_import.rb +324 -0
  116. data/lib/flat_api/models/score_creation_google_drive_import.rb +291 -0
  117. data/lib/flat_api/models/score_creation_type.rb +19 -9
  118. data/lib/flat_api/models/score_details.rb +274 -83
  119. data/lib/flat_api/models/score_fork.rb +94 -32
  120. data/lib/flat_api/models/score_license.rb +19 -9
  121. data/lib/flat_api/models/score_likes_counts.rb +83 -35
  122. data/lib/flat_api/models/score_modification.rb +175 -52
  123. data/lib/flat_api/models/score_plays_counts.rb +236 -0
  124. data/lib/flat_api/models/score_privacy.rb +18 -9
  125. data/lib/flat_api/models/score_revision.rb +80 -43
  126. data/lib/flat_api/models/score_revision_creation.rb +105 -40
  127. data/lib/flat_api/models/score_revision_statistics.rb +83 -36
  128. data/lib/flat_api/models/score_source.rb +61 -35
  129. data/lib/flat_api/models/score_summary.rb +124 -40
  130. data/lib/flat_api/models/score_track.rb +172 -51
  131. data/lib/flat_api/models/score_track_creation.rb +101 -39
  132. data/lib/flat_api/models/score_track_point.rb +70 -38
  133. data/lib/flat_api/models/score_track_purpose.rb +40 -0
  134. data/lib/flat_api/models/score_track_state.rb +18 -9
  135. data/lib/flat_api/models/score_track_type.rb +18 -9
  136. data/lib/flat_api/models/score_track_update.rb +88 -37
  137. data/lib/flat_api/models/score_views_counts.rb +62 -35
  138. data/lib/flat_api/models/task.rb +364 -0
  139. data/lib/flat_api/models/task_export_options.rb +218 -0
  140. data/lib/flat_api/models/task_progress.rb +226 -0
  141. data/lib/flat_api/models/task_result.rb +226 -0
  142. data/lib/flat_api/models/tutteo_product.rb +42 -0
  143. data/lib/flat_api/models/user_admin_update.rb +219 -41
  144. data/lib/flat_api/models/user_azure_details.rb +235 -0
  145. data/lib/flat_api/models/user_basics.rb +187 -55
  146. data/lib/flat_api/models/user_community_profile_links.rb +272 -0
  147. data/lib/flat_api/models/user_creation.rb +215 -49
  148. data/lib/flat_api/models/user_details.rb +258 -93
  149. data/lib/flat_api/models/user_details_admin.rb +220 -68
  150. data/lib/flat_api/models/user_details_admin_all_of_license.rb +278 -0
  151. data/lib/flat_api/models/user_public.rb +242 -79
  152. data/lib/flat_api/models/user_public_summary.rb +201 -61
  153. data/lib/flat_api/models/user_signin_link.rb +225 -0
  154. data/lib/flat_api/models/user_signin_link_creation.rb +217 -0
  155. data/lib/flat_api/version.rb +5 -5
  156. data/lib/flat_api.rb +87 -15
  157. data/spec/api/account_api_spec.rb +11 -10
  158. data/spec/api/class_api_spec.rb +212 -68
  159. data/spec/api/collection_api_spec.rb +158 -0
  160. data/spec/api/edu_resources_api_spec.rb +181 -0
  161. data/spec/api/group_api_spec.rb +14 -15
  162. data/spec/api/organization_api_spec.rb +78 -39
  163. data/spec/api/score_api_spec.rb +139 -110
  164. data/spec/api/task_api_spec.rb +47 -0
  165. data/spec/api/user_api_spec.rb +28 -26
  166. data/spec/models/api_access_token_spec.rb +66 -0
  167. data/spec/models/app_scopes_spec.rb +30 -0
  168. data/spec/models/assignment_capabilities_can_publish_in_class_error_spec.rb +42 -0
  169. data/spec/models/assignment_capabilities_spec.rb +60 -0
  170. data/spec/models/assignment_copy_response_spec.rb +124 -0
  171. data/spec/models/assignment_copy_spec.rb +13 -23
  172. data/spec/models/assignment_copy_to_class_spec.rb +48 -0
  173. data/spec/models/assignment_copy_to_resource_library_spec.rb +42 -0
  174. data/spec/models/assignment_spec.rb +51 -39
  175. data/spec/models/assignment_submission_comment_creation_spec.rb +36 -0
  176. data/spec/models/assignment_submission_comment_spec.rb +72 -0
  177. data/spec/models/assignment_submission_comments_spec.rb +42 -0
  178. data/spec/models/assignment_submission_history_attachment_spec.rb +48 -0
  179. data/spec/models/assignment_submission_history_spec.rb +112 -0
  180. data/spec/models/assignment_submission_history_state_spec.rb +30 -0
  181. data/spec/models/assignment_submission_lti_spec.rb +36 -0
  182. data/spec/models/assignment_submission_playback_inner_spec.rb +42 -0
  183. data/spec/models/assignment_submission_spec.rb +68 -32
  184. data/spec/models/assignment_submission_state_spec.rb +30 -0
  185. data/spec/models/assignment_submission_update_spec.rb +29 -23
  186. data/spec/models/assignment_type_spec.rb +30 -0
  187. data/spec/models/assignment_update_spec.rb +100 -0
  188. data/spec/models/class_assignment_all_of_canvas_spec.rb +42 -0
  189. data/spec/models/class_assignment_all_of_lti_spec.rb +36 -0
  190. data/spec/models/class_assignment_all_of_mfc_spec.rb +42 -0
  191. data/spec/models/class_assignment_spec.rb +216 -0
  192. data/spec/models/class_assignment_update_all_of_google_classroom_spec.rb +36 -0
  193. data/spec/models/class_assignment_update_all_of_microsoft_graph_spec.rb +36 -0
  194. data/spec/models/class_assignment_update_spec.rb +150 -0
  195. data/spec/models/class_attachment_creation_spec.rb +41 -23
  196. data/spec/models/class_creation_spec.rb +34 -18
  197. data/spec/models/class_details_canvas_spec.rb +12 -18
  198. data/spec/models/class_details_clever_spec.rb +21 -27
  199. data/spec/models/class_details_google_classroom_spec.rb +12 -30
  200. data/spec/models/class_details_google_drive_spec.rb +12 -18
  201. data/spec/models/class_details_issues_spec.rb +36 -0
  202. data/spec/models/class_details_issues_sync_inner_spec.rb +52 -0
  203. data/spec/models/class_details_lti_spec.rb +13 -19
  204. data/spec/models/class_details_mfc_spec.rb +42 -0
  205. data/spec/models/class_details_microsoft_graph_spec.rb +36 -0
  206. data/spec/models/class_details_spec.rb +68 -34
  207. data/spec/models/class_grade_level_spec.rb +30 -0
  208. data/spec/models/class_roles_spec.rb +10 -16
  209. data/spec/models/class_state_spec.rb +10 -16
  210. data/spec/models/class_update_spec.rb +34 -18
  211. data/spec/models/collection_app_spec.rb +48 -0
  212. data/spec/models/collection_capabilities_spec.rb +60 -0
  213. data/spec/models/collection_creation_spec.rb +42 -0
  214. data/spec/models/collection_modification_spec.rb +42 -0
  215. data/spec/models/collection_privacy_spec.rb +30 -0
  216. data/spec/models/collection_spec.rb +114 -0
  217. data/spec/models/collection_type_spec.rb +30 -0
  218. data/spec/models/edu_library_spec.rb +62 -0
  219. data/spec/models/edu_resource_capabilities_spec.rb +48 -0
  220. data/spec/models/edu_resource_copy_spec.rb +36 -0
  221. data/spec/models/edu_resource_creation_spec.rb +48 -0
  222. data/spec/models/edu_resource_folder_spec.rb +36 -0
  223. data/spec/models/edu_resource_lti_link_spec.rb +36 -0
  224. data/spec/models/edu_resource_move_spec.rb +36 -0
  225. data/spec/models/edu_resource_privacy_spec.rb +30 -0
  226. data/spec/models/edu_resource_resource_spec.rb +32 -0
  227. data/spec/models/edu_resource_spec.rb +96 -0
  228. data/spec/models/edu_resource_type_spec.rb +30 -0
  229. data/spec/models/edu_resource_update_spec.rb +42 -0
  230. data/spec/models/edu_resource_use_in_class_spec.rb +42 -0
  231. data/spec/models/flat_error_response_spec.rb +14 -20
  232. data/spec/models/flat_locales_spec.rb +10 -16
  233. data/spec/models/google_classroom_coursework_spec.rb +19 -19
  234. data/spec/models/google_classroom_submission_spec.rb +13 -19
  235. data/spec/models/group_details_spec.rb +17 -23
  236. data/spec/models/group_spec.rb +21 -27
  237. data/spec/models/group_type_spec.rb +10 -16
  238. data/spec/models/license_mode_spec.rb +10 -16
  239. data/spec/models/license_sources_spec.rb +10 -16
  240. data/spec/models/lms_name_spec.rb +10 -16
  241. data/spec/models/lti_credentials_creation_spec.rb +12 -18
  242. data/spec/models/lti_credentials_spec.rb +19 -25
  243. data/spec/models/media_attachment_spec.rb +67 -37
  244. data/spec/models/media_score_sharing_mode_spec.rb +10 -16
  245. data/spec/models/microsoft_graph_assignment_spec.rb +54 -0
  246. data/spec/models/microsoft_graph_submission_spec.rb +42 -0
  247. data/spec/models/organization_invitation_creation_spec.rb +16 -18
  248. data/spec/models/organization_invitation_spec.rb +29 -23
  249. data/spec/models/organization_roles_spec.rb +10 -16
  250. data/spec/models/organization_user_access_token_creation_spec.rb +36 -0
  251. data/spec/models/resource_collaborator_creation_spec.rb +72 -0
  252. data/spec/models/resource_collaborator_spec.rb +112 -0
  253. data/spec/models/resource_rights_spec.rb +64 -0
  254. data/spec/models/score_comment_context_spec.rb +23 -23
  255. data/spec/models/score_comment_creation_spec.rb +16 -22
  256. data/spec/models/score_comment_moderation_spec.rb +46 -0
  257. data/spec/models/score_comment_spec.rb +35 -35
  258. data/spec/models/score_comment_update_spec.rb +14 -20
  259. data/spec/models/score_comments_counts_spec.rb +14 -20
  260. data/spec/models/score_creation_builder_data_all_of_builder_data_layout_data_spec.rb +82 -0
  261. data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_instruments_spec.rb +60 -0
  262. data/spec/models/score_creation_builder_data_all_of_builder_data_score_data_spec.rb +66 -0
  263. data/spec/models/score_creation_builder_data_all_of_builder_data_spec.rb +42 -0
  264. data/spec/models/score_creation_builder_data_spec.rb +60 -0
  265. data/spec/models/score_creation_common_spec.rb +54 -0
  266. data/spec/models/score_creation_file_import_spec.rb +76 -0
  267. data/spec/models/score_creation_google_drive_import_spec.rb +60 -0
  268. data/spec/models/score_creation_spec.rb +12 -52
  269. data/spec/models/score_creation_type_spec.rb +10 -16
  270. data/spec/models/score_details_spec.rb +75 -45
  271. data/spec/models/score_fork_spec.rb +27 -15
  272. data/spec/models/score_license_spec.rb +10 -16
  273. data/spec/models/score_likes_counts_spec.rb +13 -19
  274. data/spec/models/score_modification_spec.rb +51 -21
  275. data/spec/models/score_plays_counts_spec.rb +48 -0
  276. data/spec/models/score_privacy_spec.rb +10 -16
  277. data/spec/models/score_revision_creation_spec.rb +18 -20
  278. data/spec/models/score_revision_spec.rb +23 -23
  279. data/spec/models/score_revision_statistics_spec.rb +24 -18
  280. data/spec/models/score_source_spec.rb +11 -17
  281. data/spec/models/score_summary_spec.rb +16 -22
  282. data/spec/models/score_track_creation_spec.rb +21 -21
  283. data/spec/models/score_track_point_spec.rb +17 -23
  284. data/spec/models/score_track_purpose_spec.rb +30 -0
  285. data/spec/models/score_track_spec.rb +28 -28
  286. data/spec/models/score_track_state_spec.rb +10 -16
  287. data/spec/models/score_track_type_spec.rb +10 -16
  288. data/spec/models/score_track_update_spec.rb +14 -20
  289. data/spec/models/score_views_counts_spec.rb +13 -19
  290. data/spec/models/task_export_options_spec.rb +36 -0
  291. data/spec/models/task_progress_spec.rb +42 -0
  292. data/spec/models/task_result_spec.rb +42 -0
  293. data/spec/models/task_spec.rb +100 -0
  294. data/spec/models/tutteo_product_spec.rb +30 -0
  295. data/spec/models/user_admin_update_spec.rb +36 -18
  296. data/spec/models/user_azure_details_spec.rb +48 -0
  297. data/spec/models/user_basics_spec.rb +47 -25
  298. data/spec/models/user_community_profile_links_spec.rb +66 -0
  299. data/spec/models/user_creation_spec.rb +36 -20
  300. data/spec/models/user_details_admin_all_of_license_spec.rb +60 -0
  301. data/spec/models/user_details_admin_spec.rb +60 -32
  302. data/spec/models/user_details_spec.rb +93 -45
  303. data/spec/models/user_public_spec.rb +71 -37
  304. data/spec/models/user_public_summary_spec.rb +51 -29
  305. data/spec/models/user_signin_link_creation_spec.rb +36 -0
  306. data/spec/models/user_signin_link_spec.rb +42 -0
  307. data/spec/spec_helper.rb +4 -4
  308. metadata +299 -312
  309. data/CHANGELOG.md +0 -13
  310. data/Gemfile +0 -7
  311. data/README.md +0 -249
  312. data/Rakefile +0 -8
  313. data/docs/AccountApi.md +0 -55
  314. data/docs/Assignment.md +0 -18
  315. data/docs/AssignmentCopy.md +0 -8
  316. data/docs/AssignmentCreation.md +0 -12
  317. data/docs/AssignmentSubmission.md +0 -19
  318. data/docs/AssignmentSubmissionUpdate.md +0 -11
  319. data/docs/ClassApi.md +0 -1051
  320. data/docs/ClassAttachmentCreation.md +0 -10
  321. data/docs/ClassCreation.md +0 -9
  322. data/docs/ClassDetails.md +0 -25
  323. data/docs/ClassDetailsCanvas.md +0 -9
  324. data/docs/ClassDetailsClever.md +0 -14
  325. data/docs/ClassDetailsGoogleClassroom.md +0 -11
  326. data/docs/ClassDetailsGoogleDrive.md +0 -9
  327. data/docs/ClassDetailsLti.md +0 -10
  328. data/docs/ClassRoles.md +0 -7
  329. data/docs/ClassState.md +0 -7
  330. data/docs/ClassUpdate.md +0 -9
  331. data/docs/FlatErrorResponse.md +0 -11
  332. data/docs/FlatLocales.md +0 -7
  333. data/docs/GoogleClassroomCoursework.md +0 -10
  334. data/docs/GoogleClassroomSubmission.md +0 -10
  335. data/docs/Group.md +0 -14
  336. data/docs/GroupApi.md +0 -167
  337. data/docs/GroupDetails.md +0 -14
  338. data/docs/GroupType.md +0 -7
  339. data/docs/LicenseMode.md +0 -7
  340. data/docs/LicenseSources.md +0 -7
  341. data/docs/LmsName.md +0 -7
  342. data/docs/LtiCredentials.md +0 -16
  343. data/docs/LtiCredentialsCreation.md +0 -9
  344. data/docs/MediaAttachment.md +0 -23
  345. data/docs/MediaScoreSharingMode.md +0 -7
  346. data/docs/OrganizationApi.md +0 -538
  347. data/docs/OrganizationInvitation.md +0 -14
  348. data/docs/OrganizationInvitationCreation.md +0 -9
  349. data/docs/OrganizationRoles.md +0 -7
  350. data/docs/ScoreApi.md +0 -1605
  351. data/docs/ScoreCollaborator.md +0 -15
  352. data/docs/ScoreCollaboratorCreation.md +0 -13
  353. data/docs/ScoreComment.md +0 -22
  354. data/docs/ScoreCommentContext.md +0 -14
  355. data/docs/ScoreCommentCreation.md +0 -13
  356. data/docs/ScoreCommentUpdate.md +0 -11
  357. data/docs/ScoreCommentsCounts.md +0 -11
  358. data/docs/ScoreCreation.md +0 -13
  359. data/docs/ScoreCreationType.md +0 -7
  360. data/docs/ScoreData.md +0 -7
  361. data/docs/ScoreDataEncoding.md +0 -7
  362. data/docs/ScoreDetails.md +0 -36
  363. data/docs/ScoreFork.md +0 -7
  364. data/docs/ScoreLicense.md +0 -7
  365. data/docs/ScoreLikesCounts.md +0 -10
  366. data/docs/ScoreModification.md +0 -13
  367. data/docs/ScorePrivacy.md +0 -7
  368. data/docs/ScoreRevision.md +0 -14
  369. data/docs/ScoreRevisionCreation.md +0 -11
  370. data/docs/ScoreRevisionStatistics.md +0 -9
  371. data/docs/ScoreRights.md +0 -10
  372. data/docs/ScoreSource.md +0 -8
  373. data/docs/ScoreSummary.md +0 -13
  374. data/docs/ScoreTrack.md +0 -19
  375. data/docs/ScoreTrackCreation.md +0 -12
  376. data/docs/ScoreTrackPoint.md +0 -10
  377. data/docs/ScoreTrackState.md +0 -7
  378. data/docs/ScoreTrackType.md +0 -7
  379. data/docs/ScoreTrackUpdate.md +0 -11
  380. data/docs/ScoreViewsCounts.md +0 -10
  381. data/docs/UserAdminUpdate.md +0 -9
  382. data/docs/UserApi.md +0 -173
  383. data/docs/UserBasics.md +0 -13
  384. data/docs/UserCreation.md +0 -11
  385. data/docs/UserDetails.md +0 -28
  386. data/docs/UserDetailsAdmin.md +0 -20
  387. data/docs/UserDetailsAdminLicense.md +0 -12
  388. data/docs/UserInstruments.md +0 -7
  389. data/docs/UserPublic.md +0 -25
  390. data/docs/UserPublicSummary.md +0 -17
  391. data/flat_api.gemspec +0 -48
  392. data/git_push.sh +0 -55
  393. data/lib/flat_api/models/assignment_creation.rb +0 -230
  394. data/lib/flat_api/models/score_collaborator.rb +0 -263
  395. data/lib/flat_api/models/score_data.rb +0 -179
  396. data/lib/flat_api/models/score_data_encoding.rb +0 -30
  397. data/lib/flat_api/models/score_rights.rb +0 -215
  398. data/lib/flat_api/models/user_details_admin_license.rb +0 -227
  399. data/lib/flat_api/models/user_instruments.rb +0 -179
  400. data/spec/api_client_spec.rb +0 -226
  401. data/spec/configuration_spec.rb +0 -42
  402. data/spec/models/assignment_creation_spec.rb +0 -66
  403. data/spec/models/score_collaborator_creation_spec.rb +0 -72
  404. data/spec/models/score_collaborator_spec.rb +0 -84
  405. data/spec/models/score_data_encoding_spec.rb +0 -36
  406. data/spec/models/score_data_spec.rb +0 -36
  407. data/spec/models/score_rights_spec.rb +0 -48
  408. data/spec/models/user_details_admin_license_spec.rb +0 -66
  409. data/spec/models/user_instruments_spec.rb +0 -36
@@ -1,16 +1,17 @@
1
1
  =begin
2
2
  #Flat API
3
3
 
4
- #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML or MIDI files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and interoduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
4
+ #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML, MIDI, Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar and MuseScore files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and introduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
5
5
 
6
- OpenAPI spec version: 2.5.2
6
+ The version of the OpenAPI document: 2.20.0
7
7
  Contact: developers@flat.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FlatApi
16
17
  # A classroom
@@ -51,16 +52,51 @@ module FlatApi
51
52
 
52
53
  attr_accessor :teachers_group
53
54
 
55
+ attr_accessor :issues
56
+
54
57
  attr_accessor :google_classroom
55
58
 
56
59
  attr_accessor :google_drive
57
60
 
61
+ attr_accessor :microsoft_graph
62
+
58
63
  attr_accessor :lti
59
64
 
60
65
  attr_accessor :canvas
61
66
 
67
+ attr_accessor :mfc
68
+
62
69
  attr_accessor :clever
63
70
 
71
+ attr_accessor :level
72
+
73
+ # Specific skills that will be focused in classroom
74
+ attr_accessor :skills_focused
75
+
76
+ # Number of students in the classroom
77
+ attr_accessor :size
78
+
79
+ class EnumAttributeValidator
80
+ attr_reader :datatype
81
+ attr_reader :allowable_values
82
+
83
+ def initialize(datatype, allowable_values)
84
+ @allowable_values = allowable_values.map do |value|
85
+ case datatype.to_s
86
+ when /Integer/i
87
+ value.to_i
88
+ when /Float/i
89
+ value.to_f
90
+ else
91
+ value
92
+ end
93
+ end
94
+ end
95
+
96
+ def valid?(value)
97
+ !value || allowable_values.include?(value)
98
+ end
99
+ end
64
100
 
65
101
  # Attribute mapping from ruby-style variable name to JSON key.
66
102
  def self.attribute_map
@@ -78,16 +114,27 @@ module FlatApi
78
114
  :'assignments_count' => :'assignmentsCount',
79
115
  :'students_group' => :'studentsGroup',
80
116
  :'teachers_group' => :'teachersGroup',
117
+ :'issues' => :'issues',
81
118
  :'google_classroom' => :'googleClassroom',
82
119
  :'google_drive' => :'googleDrive',
120
+ :'microsoft_graph' => :'microsoftGraph',
83
121
  :'lti' => :'lti',
84
122
  :'canvas' => :'canvas',
85
- :'clever' => :'clever'
123
+ :'mfc' => :'mfc',
124
+ :'clever' => :'clever',
125
+ :'level' => :'level',
126
+ :'skills_focused' => :'skillsFocused',
127
+ :'size' => :'size'
86
128
  }
87
129
  end
88
130
 
131
+ # Returns all the JSON keys this model knows about
132
+ def self.acceptable_attributes
133
+ attribute_map.values
134
+ end
135
+
89
136
  # Attribute type mapping.
90
- def self.swagger_types
137
+ def self.openapi_types
91
138
  {
92
139
  :'id' => :'String',
93
140
  :'state' => :'ClassState',
@@ -96,113 +143,167 @@ module FlatApi
96
143
  :'description' => :'String',
97
144
  :'organization' => :'String',
98
145
  :'owner' => :'String',
99
- :'creation_date' => :'DateTime',
146
+ :'creation_date' => :'Time',
100
147
  :'enrollment_code' => :'String',
101
148
  :'theme' => :'String',
102
149
  :'assignments_count' => :'Float',
103
150
  :'students_group' => :'GroupDetails',
104
151
  :'teachers_group' => :'GroupDetails',
152
+ :'issues' => :'ClassDetailsIssues',
105
153
  :'google_classroom' => :'ClassDetailsGoogleClassroom',
106
154
  :'google_drive' => :'ClassDetailsGoogleDrive',
155
+ :'microsoft_graph' => :'ClassDetailsMicrosoftGraph',
107
156
  :'lti' => :'ClassDetailsLti',
108
157
  :'canvas' => :'ClassDetailsCanvas',
109
- :'clever' => :'ClassDetailsClever'
158
+ :'mfc' => :'ClassDetailsMfc',
159
+ :'clever' => :'ClassDetailsClever',
160
+ :'level' => :'ClassGradeLevel',
161
+ :'skills_focused' => :'Array<String>',
162
+ :'size' => :'Float'
110
163
  }
111
164
  end
112
165
 
166
+ # List of attributes with nullable: true
167
+ def self.openapi_nullable
168
+ Set.new([
169
+ :'size'
170
+ ])
171
+ end
172
+
113
173
  # Initializes the object
114
174
  # @param [Hash] attributes Model attributes in the form of hash
115
175
  def initialize(attributes = {})
116
- return unless attributes.is_a?(Hash)
176
+ if (!attributes.is_a?(Hash))
177
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ClassDetails` initialize method"
178
+ end
117
179
 
118
- # convert string to symbol for hash key
119
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
180
+ # check to see if the attribute exists and convert string to symbol for hash key
181
+ attributes = attributes.each_with_object({}) { |(k, v), h|
182
+ if (!self.class.attribute_map.key?(k.to_sym))
183
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ClassDetails`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
184
+ end
185
+ h[k.to_sym] = v
186
+ }
120
187
 
121
- if attributes.has_key?(:'id')
188
+ if attributes.key?(:'id')
122
189
  self.id = attributes[:'id']
190
+ else
191
+ self.id = nil
123
192
  end
124
193
 
125
- if attributes.has_key?(:'state')
194
+ if attributes.key?(:'state')
126
195
  self.state = attributes[:'state']
127
196
  end
128
197
 
129
- if attributes.has_key?(:'name')
198
+ if attributes.key?(:'name')
130
199
  self.name = attributes[:'name']
131
200
  end
132
201
 
133
- if attributes.has_key?(:'section')
202
+ if attributes.key?(:'section')
134
203
  self.section = attributes[:'section']
135
204
  end
136
205
 
137
- if attributes.has_key?(:'description')
206
+ if attributes.key?(:'description')
138
207
  self.description = attributes[:'description']
139
208
  end
140
209
 
141
- if attributes.has_key?(:'organization')
210
+ if attributes.key?(:'organization')
142
211
  self.organization = attributes[:'organization']
143
212
  end
144
213
 
145
- if attributes.has_key?(:'owner')
214
+ if attributes.key?(:'owner')
146
215
  self.owner = attributes[:'owner']
147
216
  end
148
217
 
149
- if attributes.has_key?(:'creationDate')
150
- self.creation_date = attributes[:'creationDate']
218
+ if attributes.key?(:'creation_date')
219
+ self.creation_date = attributes[:'creation_date']
151
220
  end
152
221
 
153
- if attributes.has_key?(:'enrollmentCode')
154
- self.enrollment_code = attributes[:'enrollmentCode']
222
+ if attributes.key?(:'enrollment_code')
223
+ self.enrollment_code = attributes[:'enrollment_code']
155
224
  end
156
225
 
157
- if attributes.has_key?(:'theme')
226
+ if attributes.key?(:'theme')
158
227
  self.theme = attributes[:'theme']
159
228
  end
160
229
 
161
- if attributes.has_key?(:'assignmentsCount')
162
- self.assignments_count = attributes[:'assignmentsCount']
230
+ if attributes.key?(:'assignments_count')
231
+ self.assignments_count = attributes[:'assignments_count']
232
+ end
233
+
234
+ if attributes.key?(:'students_group')
235
+ self.students_group = attributes[:'students_group']
236
+ end
237
+
238
+ if attributes.key?(:'teachers_group')
239
+ self.teachers_group = attributes[:'teachers_group']
163
240
  end
164
241
 
165
- if attributes.has_key?(:'studentsGroup')
166
- self.students_group = attributes[:'studentsGroup']
242
+ if attributes.key?(:'issues')
243
+ self.issues = attributes[:'issues']
167
244
  end
168
245
 
169
- if attributes.has_key?(:'teachersGroup')
170
- self.teachers_group = attributes[:'teachersGroup']
246
+ if attributes.key?(:'google_classroom')
247
+ self.google_classroom = attributes[:'google_classroom']
171
248
  end
172
249
 
173
- if attributes.has_key?(:'googleClassroom')
174
- self.google_classroom = attributes[:'googleClassroom']
250
+ if attributes.key?(:'google_drive')
251
+ self.google_drive = attributes[:'google_drive']
175
252
  end
176
253
 
177
- if attributes.has_key?(:'googleDrive')
178
- self.google_drive = attributes[:'googleDrive']
254
+ if attributes.key?(:'microsoft_graph')
255
+ self.microsoft_graph = attributes[:'microsoft_graph']
179
256
  end
180
257
 
181
- if attributes.has_key?(:'lti')
258
+ if attributes.key?(:'lti')
182
259
  self.lti = attributes[:'lti']
183
260
  end
184
261
 
185
- if attributes.has_key?(:'canvas')
262
+ if attributes.key?(:'canvas')
186
263
  self.canvas = attributes[:'canvas']
187
264
  end
188
265
 
189
- if attributes.has_key?(:'clever')
266
+ if attributes.key?(:'mfc')
267
+ self.mfc = attributes[:'mfc']
268
+ end
269
+
270
+ if attributes.key?(:'clever')
190
271
  self.clever = attributes[:'clever']
191
272
  end
192
273
 
274
+ if attributes.key?(:'level')
275
+ self.level = attributes[:'level']
276
+ end
277
+
278
+ if attributes.key?(:'skills_focused')
279
+ if (value = attributes[:'skills_focused']).is_a?(Array)
280
+ self.skills_focused = value
281
+ end
282
+ end
283
+
284
+ if attributes.key?(:'size')
285
+ self.size = attributes[:'size']
286
+ end
193
287
  end
194
288
 
195
289
  # Show invalid properties with the reasons. Usually used together with valid?
196
290
  # @return Array for valid properties with the reasons
197
291
  def list_invalid_properties
292
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
198
293
  invalid_properties = Array.new
199
- return invalid_properties
294
+ if @id.nil?
295
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
296
+ end
297
+
298
+ invalid_properties
200
299
  end
201
300
 
202
301
  # Check to see if the all the properties in the model are valid
203
302
  # @return true if the model is valid
204
303
  def valid?
205
- return true
304
+ warn '[DEPRECATED] the `valid?` method is obsolete'
305
+ return false if @id.nil?
306
+ true
206
307
  end
207
308
 
208
309
  # Checks equality by comparing each attribute.
@@ -223,11 +324,17 @@ module FlatApi
223
324
  assignments_count == o.assignments_count &&
224
325
  students_group == o.students_group &&
225
326
  teachers_group == o.teachers_group &&
327
+ issues == o.issues &&
226
328
  google_classroom == o.google_classroom &&
227
329
  google_drive == o.google_drive &&
330
+ microsoft_graph == o.microsoft_graph &&
228
331
  lti == o.lti &&
229
332
  canvas == o.canvas &&
230
- clever == o.clever
333
+ mfc == o.mfc &&
334
+ clever == o.clever &&
335
+ level == o.level &&
336
+ skills_focused == o.skills_focused &&
337
+ size == o.size
231
338
  end
232
339
 
233
340
  # @see the `==` method
@@ -237,39 +344,42 @@ module FlatApi
237
344
  end
238
345
 
239
346
  # Calculates hash code according to all attributes.
240
- # @return [Fixnum] Hash code
347
+ # @return [Integer] Hash code
241
348
  def hash
242
- [id, state, name, section, description, organization, owner, creation_date, enrollment_code, theme, assignments_count, students_group, teachers_group, google_classroom, google_drive, lti, canvas, clever].hash
349
+ [id, state, name, section, description, organization, owner, creation_date, enrollment_code, theme, assignments_count, students_group, teachers_group, issues, google_classroom, google_drive, microsoft_graph, lti, canvas, mfc, clever, level, skills_focused, size].hash
243
350
  end
244
351
 
245
352
  # Builds the object from hash
246
353
  # @param [Hash] attributes Model attributes in the form of hash
247
354
  # @return [Object] Returns the model itself
248
- def build_from_hash(attributes)
355
+ def self.build_from_hash(attributes)
249
356
  return nil unless attributes.is_a?(Hash)
250
- self.class.swagger_types.each_pair do |key, type|
251
- if type =~ /\AArray<(.*)>/i
252
- # check to ensure the input is an array given that the the attribute
357
+ attributes = attributes.transform_keys(&:to_sym)
358
+ transformed_hash = {}
359
+ openapi_types.each_pair do |key, type|
360
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
361
+ transformed_hash["#{key}"] = nil
362
+ elsif type =~ /\AArray<(.*)>/i
363
+ # check to ensure the input is an array given that the attribute
253
364
  # is documented as an array but the input is not
254
- if attributes[self.class.attribute_map[key]].is_a?(Array)
255
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
365
+ if attributes[attribute_map[key]].is_a?(Array)
366
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
256
367
  end
257
- elsif !attributes[self.class.attribute_map[key]].nil?
258
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
259
- end # or else data not found in attributes(hash), not an issue as the data can be optional
368
+ elsif !attributes[attribute_map[key]].nil?
369
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
370
+ end
260
371
  end
261
-
262
- self
372
+ new(transformed_hash)
263
373
  end
264
374
 
265
375
  # Deserializes the data based on type
266
376
  # @param string type Data type
267
377
  # @param string value Value to be deserialized
268
378
  # @return [Object] Deserialized data
269
- def _deserialize(type, value)
379
+ def self._deserialize(type, value)
270
380
  case type.to_sym
271
- when :DateTime
272
- DateTime.parse(value)
381
+ when :Time
382
+ Time.parse(value)
273
383
  when :Date
274
384
  Date.parse(value)
275
385
  when :String
@@ -278,7 +388,7 @@ module FlatApi
278
388
  value.to_i
279
389
  when :Float
280
390
  value.to_f
281
- when :BOOLEAN
391
+ when :Boolean
282
392
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
283
393
  true
284
394
  else
@@ -299,8 +409,9 @@ module FlatApi
299
409
  end
300
410
  end
301
411
  else # model
302
- temp_model = FlatApi.const_get(type).new
303
- temp_model.build_from_hash(value)
412
+ # models (e.g. Pet) or oneOf
413
+ klass = FlatApi.const_get(type)
414
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
304
415
  end
305
416
  end
306
417
 
@@ -322,7 +433,11 @@ module FlatApi
322
433
  hash = {}
323
434
  self.class.attribute_map.each_pair do |attr, param|
324
435
  value = self.send(attr)
325
- next if value.nil?
436
+ if value.nil?
437
+ is_nullable = self.class.openapi_nullable.include?(attr)
438
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
439
+ end
440
+
326
441
  hash[param] = _to_hash(value)
327
442
  end
328
443
  hash
@@ -334,7 +449,7 @@ module FlatApi
334
449
  # @return [Hash] Returns the value in the form of hash
335
450
  def _to_hash(value)
336
451
  if value.is_a?(Array)
337
- value.compact.map{ |v| _to_hash(v) }
452
+ value.compact.map { |v| _to_hash(v) }
338
453
  elsif value.is_a?(Hash)
339
454
  {}.tap do |hash|
340
455
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -1,16 +1,17 @@
1
1
  =begin
2
2
  #Flat API
3
3
 
4
- #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML or MIDI files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and interoduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
4
+ #The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following: * Creating and importing new music scores using MusicXML, MIDI, Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar and MuseScore files * Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI) * Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments. The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/). This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference). Getting Started and learn more: * [API Overview and introduction](https://flat.io/developers/docs/api/) * [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html) * [SDKs](https://flat.io/developers/docs/api/sdks.html) * [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html) * [Changelog](https://flat.io/developers/docs/api/changelog.html)
5
5
 
6
- OpenAPI spec version: 2.5.2
6
+ The version of the OpenAPI document: 2.20.0
7
7
  Contact: developers@flat.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FlatApi
16
17
  # Meta information provided by Canvs LMS
@@ -21,7 +22,6 @@ module FlatApi
21
22
  # Canvas instance domain (e.g. \"canvas.instructure.com\")
22
23
  attr_accessor :domain
23
24
 
24
-
25
25
  # Attribute mapping from ruby-style variable name to JSON key.
26
26
  def self.attribute_map
27
27
  {
@@ -30,43 +30,62 @@ module FlatApi
30
30
  }
31
31
  end
32
32
 
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
33
38
  # Attribute type mapping.
34
- def self.swagger_types
39
+ def self.openapi_types
35
40
  {
36
41
  :'id' => :'String',
37
42
  :'domain' => :'String'
38
43
  }
39
44
  end
40
45
 
46
+ # List of attributes with nullable: true
47
+ def self.openapi_nullable
48
+ Set.new([
49
+ ])
50
+ end
51
+
41
52
  # Initializes the object
42
53
  # @param [Hash] attributes Model attributes in the form of hash
43
54
  def initialize(attributes = {})
44
- return unless attributes.is_a?(Hash)
55
+ if (!attributes.is_a?(Hash))
56
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FlatApi::ClassDetailsCanvas` initialize method"
57
+ end
45
58
 
46
- # convert string to symbol for hash key
47
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FlatApi::ClassDetailsCanvas`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
63
+ end
64
+ h[k.to_sym] = v
65
+ }
48
66
 
49
- if attributes.has_key?(:'id')
67
+ if attributes.key?(:'id')
50
68
  self.id = attributes[:'id']
51
69
  end
52
70
 
53
- if attributes.has_key?(:'domain')
71
+ if attributes.key?(:'domain')
54
72
  self.domain = attributes[:'domain']
55
73
  end
56
-
57
74
  end
58
75
 
59
76
  # Show invalid properties with the reasons. Usually used together with valid?
60
77
  # @return Array for valid properties with the reasons
61
78
  def list_invalid_properties
79
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
62
80
  invalid_properties = Array.new
63
- return invalid_properties
81
+ invalid_properties
64
82
  end
65
83
 
66
84
  # Check to see if the all the properties in the model are valid
67
85
  # @return true if the model is valid
68
86
  def valid?
69
- return true
87
+ warn '[DEPRECATED] the `valid?` method is obsolete'
88
+ true
70
89
  end
71
90
 
72
91
  # Checks equality by comparing each attribute.
@@ -85,7 +104,7 @@ module FlatApi
85
104
  end
86
105
 
87
106
  # Calculates hash code according to all attributes.
88
- # @return [Fixnum] Hash code
107
+ # @return [Integer] Hash code
89
108
  def hash
90
109
  [id, domain].hash
91
110
  end
@@ -93,31 +112,34 @@ module FlatApi
93
112
  # Builds the object from hash
94
113
  # @param [Hash] attributes Model attributes in the form of hash
95
114
  # @return [Object] Returns the model itself
96
- def build_from_hash(attributes)
115
+ def self.build_from_hash(attributes)
97
116
  return nil unless attributes.is_a?(Hash)
98
- self.class.swagger_types.each_pair do |key, type|
99
- if type =~ /\AArray<(.*)>/i
100
- # check to ensure the input is an array given that the the attribute
117
+ attributes = attributes.transform_keys(&:to_sym)
118
+ transformed_hash = {}
119
+ openapi_types.each_pair do |key, type|
120
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
121
+ transformed_hash["#{key}"] = nil
122
+ elsif type =~ /\AArray<(.*)>/i
123
+ # check to ensure the input is an array given that the attribute
101
124
  # is documented as an array but the input is not
102
- if attributes[self.class.attribute_map[key]].is_a?(Array)
103
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
125
+ if attributes[attribute_map[key]].is_a?(Array)
126
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
104
127
  end
105
- elsif !attributes[self.class.attribute_map[key]].nil?
106
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
107
- end # or else data not found in attributes(hash), not an issue as the data can be optional
128
+ elsif !attributes[attribute_map[key]].nil?
129
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
130
+ end
108
131
  end
109
-
110
- self
132
+ new(transformed_hash)
111
133
  end
112
134
 
113
135
  # Deserializes the data based on type
114
136
  # @param string type Data type
115
137
  # @param string value Value to be deserialized
116
138
  # @return [Object] Deserialized data
117
- def _deserialize(type, value)
139
+ def self._deserialize(type, value)
118
140
  case type.to_sym
119
- when :DateTime
120
- DateTime.parse(value)
141
+ when :Time
142
+ Time.parse(value)
121
143
  when :Date
122
144
  Date.parse(value)
123
145
  when :String
@@ -126,7 +148,7 @@ module FlatApi
126
148
  value.to_i
127
149
  when :Float
128
150
  value.to_f
129
- when :BOOLEAN
151
+ when :Boolean
130
152
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
131
153
  true
132
154
  else
@@ -147,8 +169,9 @@ module FlatApi
147
169
  end
148
170
  end
149
171
  else # model
150
- temp_model = FlatApi.const_get(type).new
151
- temp_model.build_from_hash(value)
172
+ # models (e.g. Pet) or oneOf
173
+ klass = FlatApi.const_get(type)
174
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
152
175
  end
153
176
  end
154
177
 
@@ -170,7 +193,11 @@ module FlatApi
170
193
  hash = {}
171
194
  self.class.attribute_map.each_pair do |attr, param|
172
195
  value = self.send(attr)
173
- next if value.nil?
196
+ if value.nil?
197
+ is_nullable = self.class.openapi_nullable.include?(attr)
198
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
199
+ end
200
+
174
201
  hash[param] = _to_hash(value)
175
202
  end
176
203
  hash
@@ -182,7 +209,7 @@ module FlatApi
182
209
  # @return [Hash] Returns the value in the form of hash
183
210
  def _to_hash(value)
184
211
  if value.is_a?(Array)
185
- value.compact.map{ |v| _to_hash(v) }
212
+ value.compact.map { |v| _to_hash(v) }
186
213
  elsif value.is_a?(Hash)
187
214
  {}.tap do |hash|
188
215
  value.each { |k, v| hash[k] = _to_hash(v) }