api-sdk-rb 1.11.66 → 1.11.133

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 (430) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +294 -285
  3. data/docs/{GetPartnerCreditTransactions200Response.md → AccountCreditTransactionListResponse.md} +2 -2
  4. data/docs/AdapterConnection.md +7 -1
  5. data/docs/{GetUserAdapterConnections200Response.md → AdapterConnectionListResponse.md} +2 -2
  6. data/docs/{RemoveUserAdapterConnection200Response.md → AdapterConnectionRemovalResponse.md} +2 -2
  7. data/docs/{SetUserAdapterConnection200Response.md → AdapterConnectionResponse.md} +2 -2
  8. data/docs/{AddAiAnswersKnowledgeDocument201Response.md → AiAnswersKnowledgeDocumentResponse.md} +2 -2
  9. data/docs/BrandColor.md +22 -0
  10. data/docs/BrandFont.md +24 -0
  11. data/docs/BrandKitApi.md +593 -0
  12. data/docs/BrandKitAssetView.md +42 -0
  13. data/docs/BrandKitFigmaSource.md +26 -0
  14. data/docs/BrandKitTokens.md +26 -0
  15. data/docs/BrandKitTokensFonts.md +24 -0
  16. data/docs/BrandKitView.md +36 -0
  17. data/docs/BrandKitViewOwner.md +20 -0
  18. data/docs/{OperationsIdGetResponse.md → BrandKitViewResponse.md} +3 -3
  19. data/docs/BrandSpacing.md +32 -0
  20. data/docs/BrandTextStyle.md +22 -0
  21. data/docs/CanvasesApi.md +45 -45
  22. data/docs/Composition.md +5 -1
  23. data/docs/{CreateCompositionDatabaseRecord201Response.md → CompositionDatabaseRecordResponse.md} +2 -2
  24. data/docs/CompositionLastEditedBy.md +20 -0
  25. data/docs/CompositionsApi.md +821 -473
  26. data/docs/ConfirmAdapterConnectionRequest.md +18 -0
  27. data/docs/{CreateCompositionContentItem201Response.md → ContentItemWriteResultResponse.md} +2 -2
  28. data/docs/CreateWidget201ResponseData.md +2 -4
  29. data/docs/CreateWorkspaceWorkflowFromPresetRequest.md +20 -0
  30. data/docs/CreateWorkspaceWorkflowRequest.md +22 -0
  31. data/docs/CreditsApi.md +20 -20
  32. data/docs/DeleteUpload200Response.md +22 -0
  33. data/docs/{UploadsIdDelete200ResponseData.md → DeleteUpload200ResponseData.md} +2 -2
  34. data/docs/DeleteWorkspaceWorkflow200Response.md +22 -0
  35. data/docs/{GetPartnerDesignDefaults200Response.md → DesignDefaultsResponse.md} +2 -2
  36. data/docs/EntitlementsApi.md +18 -18
  37. data/docs/GetOperationResponse.md +22 -0
  38. data/docs/{OperationsIdGetResponseData.md → GetOperationResponseData.md} +3 -3
  39. data/docs/GetOperationResponseDataMetadata.md +24 -0
  40. data/docs/GetPublicCompositionEmbed200Response.md +7 -1
  41. data/docs/GetPublicCompositionEmbed200ResponseAdapters.md +20 -0
  42. data/docs/GetPublicCompositionEmbed200ResponseAdaptersCaptcha.md +18 -0
  43. data/docs/GetPublicCompositionEmbed200ResponseEntries.md +20 -0
  44. data/docs/GetPublicCompositionEmbed200ResponseMedia.md +18 -0
  45. data/docs/GetWorkspaceWorkflowStats200Response.md +22 -0
  46. data/docs/GetWorkspaceWorkflowVersion200Response.md +22 -0
  47. data/docs/InvoicesApi.md +9 -9
  48. data/docs/ListPartnerWorkflowPresets200Response.md +22 -0
  49. data/docs/{UploadsGet200Response.md → ListUploads200Response.md} +2 -2
  50. data/docs/ListWorkspaceWorkflowCompositionOptions200Response.md +22 -0
  51. data/docs/ListWorkspaceWorkflowPresets200Response.md +22 -0
  52. data/docs/ListWorkspaceWorkflowVersions200Response.md +22 -0
  53. data/docs/ListWorkspaceWorkflows200Response.md +22 -0
  54. data/docs/{GetManagedUserLimits200Response.md → ManagedUserLimitsResponse.md} +2 -2
  55. data/docs/{DeleteManagedUser200Response.md → ManagedUserRemovalResponse.md} +2 -2
  56. data/docs/ManagedUsersApi.md +261 -171
  57. data/docs/NewComposition.md +1 -1
  58. data/docs/NewEditorSession.md +1 -1
  59. data/docs/OfferWorkflowPresetRequest.md +24 -0
  60. data/docs/OfferedWorkflowPreset.md +40 -0
  61. data/docs/OfferedWorkflowPresetList.md +18 -0
  62. data/docs/OfferedWorkflowPresetWidget.md +22 -0
  63. data/docs/OperationsApi.md +11 -11
  64. data/docs/PartnerCustomization.md +2 -2
  65. data/docs/PartnerNotification.md +1 -1
  66. data/docs/PartnersApi.md +644 -352
  67. data/docs/PatchBrandKitAssetRequest.md +24 -0
  68. data/docs/PatchBrandKitRequest.md +30 -0
  69. data/docs/PatchBrandKitRequestFonts.md +24 -0
  70. data/docs/PatchBrandKitRequestSpacing.md +32 -0
  71. data/docs/PostBrandKitIconRequest.md +20 -0
  72. data/docs/PublicEmbedApi.md +324 -58
  73. data/docs/PublicWorkflow.md +36 -0
  74. data/docs/PublicWorkflowEventsAccepted.md +22 -0
  75. data/docs/PublicWorkflowEventsRequest.md +24 -0
  76. data/docs/PublicWorkflowEventsRequestEventsInner.md +24 -0
  77. data/docs/PublicWorkflowEventsRequestHeightsInner.md +20 -0
  78. data/docs/{CreateCompositionFromWidget201Response.md → PublicWorkflowResponse.md} +3 -3
  79. data/docs/PublicWorkflowTranslation.md +20 -0
  80. data/docs/PublishWorkspaceWorkflow200Response.md +22 -0
  81. data/docs/PublishWorkspaceWorkflowRequest.md +18 -0
  82. data/docs/PutBrandKitRequest.md +22 -0
  83. data/docs/RemovePartnerWorkflowPreset200Response.md +22 -0
  84. data/docs/ReportPublicWorkflowEvents200Response.md +22 -0
  85. data/docs/SaveWorkspaceWorkflowRequest.md +24 -0
  86. data/docs/SetAdapterConnectionRequest.md +1 -1
  87. data/docs/SetPartnerWorkflowPreset200Response.md +22 -0
  88. data/docs/TokensApi.md +11 -9
  89. data/docs/UpdateComposition.md +1 -1
  90. data/docs/Upload.md +1 -1
  91. data/docs/UploadLimits.md +3 -3
  92. data/docs/UploadsApi.md +85 -85
  93. data/docs/UsersApi.md +191 -115
  94. data/docs/Widget.md +2 -4
  95. data/docs/WidgetClarification.md +22 -0
  96. data/docs/WidgetClarificationOption.md +22 -0
  97. data/docs/WidgetClarificationQuestion.md +26 -0
  98. data/docs/WidgetNextStep.md +24 -0
  99. data/docs/WidgetPlan.md +26 -0
  100. data/docs/WidgetPlanDecisions.md +32 -0
  101. data/docs/WidgetPlanDecisionsAdaptersInner.md +20 -0
  102. data/docs/WidgetPlanDecisionsLibrariesInner.md +22 -0
  103. data/docs/WidgetPlanDecisionsResponsive.md +22 -0
  104. data/docs/WidgetPlanTask.md +24 -0
  105. data/docs/WidgetsApi.md +38 -38
  106. data/docs/Workflow.md +50 -0
  107. data/docs/WorkflowCompositionAction.md +24 -0
  108. data/docs/WorkflowCompositionField.md +24 -0
  109. data/docs/WorkflowCompositionOption.md +30 -0
  110. data/docs/WorkflowCompositionOptionActions.md +22 -0
  111. data/docs/WorkflowCompositionOptionInputs.md +24 -0
  112. data/docs/WorkflowCompositionOptions.md +24 -0
  113. data/docs/WorkflowConditionCase.md +24 -0
  114. data/docs/WorkflowConditionTest.md +22 -0
  115. data/docs/WorkflowCounter.md +20 -0
  116. data/docs/WorkflowDetail.md +60 -0
  117. data/docs/WorkflowDetailAllOfLastEditedBy.md +20 -0
  118. data/docs/WorkflowDetailResponse.md +22 -0
  119. data/docs/WorkflowEdge.md +24 -0
  120. data/docs/WorkflowFailureReason.md +15 -0
  121. data/docs/WorkflowFailureReasonCounter.md +22 -0
  122. data/docs/WorkflowFieldReference.md +22 -0
  123. data/docs/WorkflowGraph.md +22 -0
  124. data/docs/WorkflowIssue.md +28 -0
  125. data/docs/WorkflowList.md +24 -0
  126. data/docs/WorkflowNode.md +30 -0
  127. data/docs/WorkflowNodePosition.md +20 -0
  128. data/docs/WorkflowPresetChoice.md +26 -0
  129. data/docs/WorkflowPresetChoices.md +18 -0
  130. data/docs/WorkflowPresetRemoval.md +18 -0
  131. data/docs/WorkflowPresetWidget.md +20 -0
  132. data/docs/WorkflowPublishResult.md +22 -0
  133. data/docs/WorkflowRemoved.md +18 -0
  134. data/docs/WorkflowResponse.md +22 -0
  135. data/docs/WorkflowSchedule.md +24 -0
  136. data/docs/WorkflowStats.md +34 -0
  137. data/docs/WorkflowStatus.md +15 -0
  138. data/docs/WorkflowTrigger.md +28 -0
  139. data/docs/WorkflowTriggerValuesInner.md +20 -0
  140. data/docs/WorkflowVersion.md +28 -0
  141. data/docs/WorkflowVersionDetail.md +32 -0
  142. data/docs/WorkflowVersionList.md +18 -0
  143. data/docs/WorkflowVersionPublishedBy.md +20 -0
  144. data/docs/WorkflowsApi.md +1527 -0
  145. data/lib/api-sdk-rb/api/brand_kit_api.rb +581 -0
  146. data/lib/api-sdk-rb/api/canvases_api.rb +39 -39
  147. data/lib/api-sdk-rb/api/compositions_api.rb +993 -565
  148. data/lib/api-sdk-rb/api/credits_api.rb +20 -20
  149. data/lib/api-sdk-rb/api/entitlements_api.rb +14 -14
  150. data/lib/api-sdk-rb/api/invoices_api.rb +10 -10
  151. data/lib/api-sdk-rb/api/managed_users_api.rb +278 -172
  152. data/lib/api-sdk-rb/api/operations_api.rb +10 -10
  153. data/lib/api-sdk-rb/api/partners_api.rb +668 -352
  154. data/lib/api-sdk-rb/api/public_embed_api.rb +339 -62
  155. data/lib/api-sdk-rb/api/tokens_api.rb +8 -6
  156. data/lib/api-sdk-rb/api/uploads_api.rb +96 -96
  157. data/lib/api-sdk-rb/api/users_api.rb +213 -119
  158. data/lib/api-sdk-rb/api/widgets_api.rb +40 -40
  159. data/lib/api-sdk-rb/api/workflows_api.rb +1775 -0
  160. data/lib/api-sdk-rb/configuration.rb +11 -23
  161. data/lib/api-sdk-rb/models/{get_user_adapter_connections200_response.rb → account_credit_transaction_list_response.rb} +4 -4
  162. data/lib/api-sdk-rb/models/adapter_connection.rb +48 -5
  163. data/lib/api-sdk-rb/models/{get_partner_credit_transactions200_response.rb → adapter_connection_list_response.rb} +4 -4
  164. data/lib/api-sdk-rb/models/adapter_connection_removal_response.rb +246 -0
  165. data/lib/api-sdk-rb/models/{delete_managed_user200_response.rb → adapter_connection_response.rb} +4 -4
  166. data/lib/api-sdk-rb/models/ai_answers_knowledge_document_response.rb +246 -0
  167. data/lib/api-sdk-rb/models/brand_color.rb +329 -0
  168. data/lib/api-sdk-rb/models/brand_font.rb +357 -0
  169. data/lib/api-sdk-rb/models/brand_kit_asset_view.rb +409 -0
  170. data/lib/api-sdk-rb/models/brand_kit_figma_source.rb +277 -0
  171. data/lib/api-sdk-rb/models/brand_kit_tokens.rb +335 -0
  172. data/lib/api-sdk-rb/models/brand_kit_tokens_fonts.rb +241 -0
  173. data/lib/api-sdk-rb/models/brand_kit_view.rb +344 -0
  174. data/lib/api-sdk-rb/models/brand_kit_view_owner.rb +267 -0
  175. data/lib/api-sdk-rb/models/brand_kit_view_response.rb +247 -0
  176. data/lib/api-sdk-rb/models/brand_spacing.rb +557 -0
  177. data/lib/api-sdk-rb/models/brand_text_style.rb +344 -0
  178. data/lib/api-sdk-rb/models/composition.rb +26 -5
  179. data/lib/api-sdk-rb/models/{create_composition_database_record201_response.rb → composition_database_record_response.rb} +3 -3
  180. data/lib/api-sdk-rb/models/composition_last_edited_by.rb +242 -0
  181. data/lib/api-sdk-rb/models/confirm_adapter_connection_request.rb +241 -0
  182. data/lib/api-sdk-rb/models/content_item_write_result_response.rb +246 -0
  183. data/lib/api-sdk-rb/models/create_widget201_response_data.rb +9 -20
  184. data/lib/api-sdk-rb/models/create_workspace_workflow_from_preset_request.rb +278 -0
  185. data/lib/api-sdk-rb/models/create_workspace_workflow_request.rb +271 -0
  186. data/lib/api-sdk-rb/models/{operations_id_get_response.rb → delete_upload200_response.rb} +4 -5
  187. data/lib/api-sdk-rb/models/{uploads_id_delete200_response_data.rb → delete_upload200_response_data.rb} +3 -3
  188. data/lib/api-sdk-rb/models/delete_workspace_workflow200_response.rb +246 -0
  189. data/lib/api-sdk-rb/models/design_defaults_response.rb +246 -0
  190. data/lib/api-sdk-rb/models/get_operation_response.rb +247 -0
  191. data/lib/api-sdk-rb/models/{operations_id_get_response_data.rb → get_operation_response_data.rb} +5 -8
  192. data/lib/api-sdk-rb/models/get_operation_response_data_metadata.rb +283 -0
  193. data/lib/api-sdk-rb/models/get_public_composition_embed200_response.rb +29 -2
  194. data/lib/api-sdk-rb/models/get_public_composition_embed200_response_adapters.rb +225 -0
  195. data/lib/api-sdk-rb/models/get_public_composition_embed200_response_adapters_captcha.rb +216 -0
  196. data/lib/api-sdk-rb/models/get_public_composition_embed200_response_entries.rb +224 -0
  197. data/lib/api-sdk-rb/models/get_public_composition_embed200_response_media.rb +216 -0
  198. data/lib/api-sdk-rb/models/get_workspace_workflow_stats200_response.rb +246 -0
  199. data/lib/api-sdk-rb/models/{create_composition_from_widget201_response.rb → get_workspace_workflow_version200_response.rb} +4 -4
  200. data/lib/api-sdk-rb/models/list_partner_workflow_presets200_response.rb +246 -0
  201. data/lib/api-sdk-rb/models/{uploads_get200_response.rb → list_uploads200_response.rb} +3 -3
  202. data/lib/api-sdk-rb/models/list_workspace_workflow_composition_options200_response.rb +246 -0
  203. data/lib/api-sdk-rb/models/{create_composition_content_item201_response.rb → list_workspace_workflow_presets200_response.rb} +4 -4
  204. data/lib/api-sdk-rb/models/{add_ai_answers_knowledge_document201_response.rb → list_workspace_workflow_versions200_response.rb} +4 -4
  205. data/lib/api-sdk-rb/models/list_workspace_workflows200_response.rb +246 -0
  206. data/lib/api-sdk-rb/models/{get_managed_user_limits200_response.rb → managed_user_limits_response.rb} +3 -3
  207. data/lib/api-sdk-rb/models/{uploads_id_delete200_response.rb → managed_user_removal_response.rb} +4 -4
  208. data/lib/api-sdk-rb/models/new_composition.rb +1 -1
  209. data/lib/api-sdk-rb/models/new_editor_session.rb +1 -1
  210. data/lib/api-sdk-rb/models/offer_workflow_preset_request.rb +322 -0
  211. data/lib/api-sdk-rb/models/offered_workflow_preset.rb +423 -0
  212. data/lib/api-sdk-rb/models/offered_workflow_preset_list.rb +223 -0
  213. data/lib/api-sdk-rb/models/offered_workflow_preset_widget.rb +251 -0
  214. data/lib/api-sdk-rb/models/partner_notification.rb +1 -1
  215. data/lib/api-sdk-rb/models/partner_notification_event_type.rb +5 -1
  216. data/lib/api-sdk-rb/models/patch_brand_kit_asset_request.rb +289 -0
  217. data/lib/api-sdk-rb/models/patch_brand_kit_request.rb +363 -0
  218. data/lib/api-sdk-rb/models/patch_brand_kit_request_fonts.rb +242 -0
  219. data/lib/api-sdk-rb/models/patch_brand_kit_request_spacing.rb +502 -0
  220. data/lib/api-sdk-rb/models/post_brand_kit_icon_request.rb +237 -0
  221. data/lib/api-sdk-rb/models/public_workflow.rb +351 -0
  222. data/lib/api-sdk-rb/models/public_workflow_events_accepted.rb +242 -0
  223. data/lib/api-sdk-rb/models/public_workflow_events_request.rb +301 -0
  224. data/lib/api-sdk-rb/models/public_workflow_events_request_events_inner.rb +354 -0
  225. data/lib/api-sdk-rb/models/public_workflow_events_request_heights_inner.rb +267 -0
  226. data/lib/api-sdk-rb/models/public_workflow_response.rb +246 -0
  227. data/lib/api-sdk-rb/models/public_workflow_translation.rb +242 -0
  228. data/lib/api-sdk-rb/models/{set_user_adapter_connection200_response.rb → publish_workspace_workflow200_response.rb} +4 -4
  229. data/lib/api-sdk-rb/models/publish_workspace_workflow_request.rb +240 -0
  230. data/lib/api-sdk-rb/models/put_brand_kit_request.rb +239 -0
  231. data/lib/api-sdk-rb/models/{remove_user_adapter_connection200_response.rb → remove_partner_workflow_preset200_response.rb} +4 -4
  232. data/lib/api-sdk-rb/models/report_public_workflow_events200_response.rb +246 -0
  233. data/lib/api-sdk-rb/models/save_workspace_workflow_request.rb +296 -0
  234. data/lib/api-sdk-rb/models/set_adapter_connection_request.rb +1 -1
  235. data/lib/api-sdk-rb/models/{get_partner_design_defaults200_response.rb → set_partner_workflow_preset200_response.rb} +4 -4
  236. data/lib/api-sdk-rb/models/update_composition.rb +1 -1
  237. data/lib/api-sdk-rb/models/upload.rb +1 -1
  238. data/lib/api-sdk-rb/models/upload_limits.rb +3 -3
  239. data/lib/api-sdk-rb/models/widget.rb +9 -20
  240. data/lib/api-sdk-rb/models/widget_clarification.rb +279 -0
  241. data/lib/api-sdk-rb/models/widget_clarification_option.rb +256 -0
  242. data/lib/api-sdk-rb/models/widget_clarification_question.rb +329 -0
  243. data/lib/api-sdk-rb/models/widget_next_step.rb +307 -0
  244. data/lib/api-sdk-rb/models/widget_plan.rb +306 -0
  245. data/lib/api-sdk-rb/models/widget_plan_decisions.rb +346 -0
  246. data/lib/api-sdk-rb/models/widget_plan_decisions_adapters_inner.rb +237 -0
  247. data/lib/api-sdk-rb/models/widget_plan_decisions_libraries_inner.rb +255 -0
  248. data/lib/api-sdk-rb/models/widget_plan_decisions_responsive.rb +311 -0
  249. data/lib/api-sdk-rb/models/widget_plan_task.rb +320 -0
  250. data/lib/api-sdk-rb/models/workflow.rb +509 -0
  251. data/lib/api-sdk-rb/models/workflow_composition_action.rb +266 -0
  252. data/lib/api-sdk-rb/models/workflow_composition_field.rb +303 -0
  253. data/lib/api-sdk-rb/models/workflow_composition_option.rb +316 -0
  254. data/lib/api-sdk-rb/models/workflow_composition_option_actions.rb +284 -0
  255. data/lib/api-sdk-rb/models/workflow_composition_option_inputs.rb +304 -0
  256. data/lib/api-sdk-rb/models/workflow_composition_options.rb +271 -0
  257. data/lib/api-sdk-rb/models/workflow_condition_case.rb +322 -0
  258. data/lib/api-sdk-rb/models/workflow_condition_test.rb +284 -0
  259. data/lib/api-sdk-rb/models/workflow_counter.rb +238 -0
  260. data/lib/api-sdk-rb/models/workflow_detail.rb +580 -0
  261. data/lib/api-sdk-rb/models/workflow_detail_all_of_last_edited_by.rb +242 -0
  262. data/lib/api-sdk-rb/models/workflow_detail_response.rb +246 -0
  263. data/lib/api-sdk-rb/models/workflow_edge.rb +292 -0
  264. data/lib/api-sdk-rb/models/workflow_failure_reason.rb +42 -0
  265. data/lib/api-sdk-rb/models/workflow_failure_reason_counter.rb +277 -0
  266. data/lib/api-sdk-rb/models/workflow_field_reference.rb +300 -0
  267. data/lib/api-sdk-rb/models/workflow_graph.rb +330 -0
  268. data/lib/api-sdk-rb/models/workflow_issue.rb +309 -0
  269. data/lib/api-sdk-rb/models/workflow_list.rb +271 -0
  270. data/lib/api-sdk-rb/models/workflow_node.rb +343 -0
  271. data/lib/api-sdk-rb/models/workflow_node_position.rb +238 -0
  272. data/lib/api-sdk-rb/models/workflow_preset_choice.rb +288 -0
  273. data/lib/api-sdk-rb/models/workflow_preset_choices.rb +224 -0
  274. data/lib/api-sdk-rb/models/workflow_preset_removal.rb +222 -0
  275. data/lib/api-sdk-rb/models/workflow_preset_widget.rb +234 -0
  276. data/lib/api-sdk-rb/models/workflow_publish_result.rb +256 -0
  277. data/lib/api-sdk-rb/models/workflow_removed.rb +221 -0
  278. data/lib/api-sdk-rb/models/workflow_response.rb +246 -0
  279. data/lib/api-sdk-rb/models/workflow_schedule.rb +298 -0
  280. data/lib/api-sdk-rb/models/workflow_stats.rb +347 -0
  281. data/lib/api-sdk-rb/models/workflow_status.rb +42 -0
  282. data/lib/api-sdk-rb/models/workflow_trigger.rb +303 -0
  283. data/lib/api-sdk-rb/models/workflow_trigger_values_inner.rb +271 -0
  284. data/lib/api-sdk-rb/models/workflow_version.rb +316 -0
  285. data/lib/api-sdk-rb/models/workflow_version_detail.rb +354 -0
  286. data/lib/api-sdk-rb/models/workflow_version_list.rb +224 -0
  287. data/lib/api-sdk-rb/models/workflow_version_published_by.rb +225 -0
  288. data/lib/api-sdk-rb/version.rb +1 -1
  289. data/lib/api-sdk-rb.rb +116 -17
  290. data/spec/api/brand_kit_api_spec.rb +136 -0
  291. data/spec/api/canvases_api_spec.rb +10 -10
  292. data/spec/api/compositions_api_spec.rb +227 -149
  293. data/spec/api/credits_api_spec.rb +5 -5
  294. data/spec/api/entitlements_api_spec.rb +4 -4
  295. data/spec/api/invoices_api_spec.rb +2 -2
  296. data/spec/api/managed_users_api_spec.rb +63 -42
  297. data/spec/api/operations_api_spec.rb +3 -3
  298. data/spec/api/partners_api_spec.rb +138 -84
  299. data/spec/api/public_embed_api_spec.rb +66 -15
  300. data/spec/api/tokens_api_spec.rb +3 -2
  301. data/spec/api/uploads_api_spec.rb +24 -24
  302. data/spec/api/users_api_spec.rb +43 -28
  303. data/spec/api/widgets_api_spec.rb +9 -9
  304. data/spec/api/workflows_api_spec.rb +339 -0
  305. data/spec/models/account_credit_transaction_list_response_spec.rb +48 -0
  306. data/spec/models/adapter_connection_list_response_spec.rb +48 -0
  307. data/spec/models/{get_managed_user_limits200_response_spec.rb → adapter_connection_removal_response_spec.rb} +6 -6
  308. data/spec/models/{delete_managed_user200_response_spec.rb → adapter_connection_response_spec.rb} +6 -6
  309. data/spec/models/adapter_connection_spec.rb +18 -0
  310. data/spec/models/ai_answers_knowledge_document_response_spec.rb +48 -0
  311. data/spec/models/brand_color_spec.rb +52 -0
  312. data/spec/models/brand_font_spec.rb +62 -0
  313. data/spec/models/brand_kit_asset_view_spec.rb +120 -0
  314. data/spec/models/brand_kit_figma_source_spec.rb +60 -0
  315. data/spec/models/brand_kit_tokens_fonts_spec.rb +54 -0
  316. data/spec/models/brand_kit_tokens_spec.rb +60 -0
  317. data/spec/models/brand_kit_view_owner_spec.rb +46 -0
  318. data/spec/models/{uploads_get200_response_spec.rb → brand_kit_view_response_spec.rb} +6 -6
  319. data/spec/models/brand_kit_view_spec.rb +90 -0
  320. data/spec/models/brand_spacing_spec.rb +78 -0
  321. data/spec/models/brand_text_style_spec.rb +52 -0
  322. data/spec/models/composition_database_record_response_spec.rb +48 -0
  323. data/spec/models/composition_last_edited_by_spec.rb +42 -0
  324. data/spec/models/composition_spec.rb +12 -0
  325. data/spec/models/confirm_adapter_connection_request_spec.rb +36 -0
  326. data/spec/models/content_item_write_result_response_spec.rb +48 -0
  327. data/spec/models/create_widget201_response_data_spec.rb +1 -7
  328. data/spec/models/create_workspace_workflow_from_preset_request_spec.rb +42 -0
  329. data/spec/models/create_workspace_workflow_request_spec.rb +48 -0
  330. data/spec/models/{uploads_id_delete200_response_data_spec.rb → delete_upload200_response_data_spec.rb} +6 -6
  331. data/spec/models/{operations_id_get_response_spec.rb → delete_upload200_response_spec.rb} +6 -6
  332. data/spec/models/delete_workspace_workflow200_response_spec.rb +48 -0
  333. data/spec/models/design_defaults_response_spec.rb +48 -0
  334. data/spec/models/editor_session_spec.rb +1 -1
  335. data/spec/models/get_operation_response_data_metadata_spec.rb +58 -0
  336. data/spec/models/{operations_id_get_response_data_spec.rb → get_operation_response_data_spec.rb} +6 -6
  337. data/spec/models/get_operation_response_spec.rb +48 -0
  338. data/spec/models/get_public_composition_embed200_response_adapters_captcha_spec.rb +36 -0
  339. data/spec/models/get_public_composition_embed200_response_adapters_spec.rb +42 -0
  340. data/spec/models/get_public_composition_embed200_response_entries_spec.rb +42 -0
  341. data/spec/models/get_public_composition_embed200_response_media_spec.rb +36 -0
  342. data/spec/models/get_public_composition_embed200_response_spec.rb +18 -0
  343. data/spec/models/{get_user_adapter_connections200_response_spec.rb → get_workspace_workflow_stats200_response_spec.rb} +6 -6
  344. data/spec/models/{remove_user_adapter_connection200_response_spec.rb → get_workspace_workflow_version200_response_spec.rb} +6 -6
  345. data/spec/models/list_partner_workflow_presets200_response_spec.rb +48 -0
  346. data/spec/models/list_uploads200_response_spec.rb +48 -0
  347. data/spec/models/{create_composition_database_record201_response_spec.rb → list_workspace_workflow_composition_options200_response_spec.rb} +6 -6
  348. data/spec/models/{get_partner_credit_transactions200_response_spec.rb → list_workspace_workflow_presets200_response_spec.rb} +6 -6
  349. data/spec/models/{add_ai_answers_knowledge_document201_response_spec.rb → list_workspace_workflow_versions200_response_spec.rb} +6 -6
  350. data/spec/models/list_workspace_workflows200_response_spec.rb +48 -0
  351. data/spec/models/managed_user_limits_response_spec.rb +48 -0
  352. data/spec/models/{uploads_id_delete200_response_spec.rb → managed_user_removal_response_spec.rb} +6 -6
  353. data/spec/models/new_editor_session_spec.rb +1 -1
  354. data/spec/models/offer_workflow_preset_request_spec.rb +54 -0
  355. data/spec/models/offered_workflow_preset_list_spec.rb +36 -0
  356. data/spec/models/offered_workflow_preset_spec.rb +106 -0
  357. data/spec/models/offered_workflow_preset_widget_spec.rb +48 -0
  358. data/spec/models/patch_brand_kit_asset_request_spec.rb +62 -0
  359. data/spec/models/patch_brand_kit_request_fonts_spec.rb +54 -0
  360. data/spec/models/patch_brand_kit_request_spacing_spec.rb +78 -0
  361. data/spec/models/patch_brand_kit_request_spec.rb +72 -0
  362. data/spec/models/post_brand_kit_icon_request_spec.rb +42 -0
  363. data/spec/models/public_workflow_events_accepted_spec.rb +48 -0
  364. data/spec/models/public_workflow_events_request_events_inner_spec.rb +62 -0
  365. data/spec/models/public_workflow_events_request_heights_inner_spec.rb +42 -0
  366. data/spec/models/public_workflow_events_request_spec.rb +54 -0
  367. data/spec/models/public_workflow_response_spec.rb +48 -0
  368. data/spec/models/public_workflow_spec.rb +94 -0
  369. data/spec/models/public_workflow_translation_spec.rb +42 -0
  370. data/spec/models/{get_partner_design_defaults200_response_spec.rb → publish_workspace_workflow200_response_spec.rb} +6 -6
  371. data/spec/models/publish_workspace_workflow_request_spec.rb +36 -0
  372. data/spec/models/put_brand_kit_request_spec.rb +48 -0
  373. data/spec/models/{create_composition_from_widget201_response_spec.rb → remove_partner_workflow_preset200_response_spec.rb} +6 -6
  374. data/spec/models/report_public_workflow_events200_response_spec.rb +48 -0
  375. data/spec/models/save_workspace_workflow_request_spec.rb +54 -0
  376. data/spec/models/{set_user_adapter_connection200_response_spec.rb → set_partner_workflow_preset200_response_spec.rb} +6 -6
  377. data/spec/models/widget_clarification_option_spec.rb +48 -0
  378. data/spec/models/widget_clarification_question_spec.rb +60 -0
  379. data/spec/models/widget_clarification_spec.rb +48 -0
  380. data/spec/models/widget_next_step_spec.rb +58 -0
  381. data/spec/models/widget_plan_decisions_adapters_inner_spec.rb +42 -0
  382. data/spec/models/widget_plan_decisions_libraries_inner_spec.rb +48 -0
  383. data/spec/models/widget_plan_decisions_responsive_spec.rb +48 -0
  384. data/spec/models/widget_plan_decisions_spec.rb +78 -0
  385. data/spec/models/widget_plan_spec.rb +60 -0
  386. data/spec/models/widget_plan_task_spec.rb +62 -0
  387. data/spec/models/widget_spec.rb +1 -7
  388. data/spec/models/workflow_composition_action_spec.rb +54 -0
  389. data/spec/models/workflow_composition_field_spec.rb +58 -0
  390. data/spec/models/workflow_composition_option_actions_spec.rb +52 -0
  391. data/spec/models/workflow_composition_option_inputs_spec.rb +58 -0
  392. data/spec/models/workflow_composition_option_spec.rb +72 -0
  393. data/spec/models/workflow_composition_options_spec.rb +54 -0
  394. data/spec/models/workflow_condition_case_spec.rb +58 -0
  395. data/spec/models/workflow_condition_test_spec.rb +52 -0
  396. data/spec/models/workflow_counter_spec.rb +42 -0
  397. data/spec/models/workflow_detail_all_of_last_edited_by_spec.rb +42 -0
  398. data/spec/models/workflow_detail_response_spec.rb +48 -0
  399. data/spec/models/workflow_detail_spec.rb +162 -0
  400. data/spec/models/workflow_edge_spec.rb +54 -0
  401. data/spec/models/workflow_failure_reason_counter_spec.rb +48 -0
  402. data/spec/models/workflow_failure_reason_spec.rb +30 -0
  403. data/spec/models/workflow_field_reference_spec.rb +56 -0
  404. data/spec/models/workflow_graph_spec.rb +52 -0
  405. data/spec/models/workflow_issue_spec.rb +70 -0
  406. data/spec/models/{create_composition_content_item201_response_spec.rb → workflow_list_spec.rb} +15 -9
  407. data/spec/models/workflow_node_position_spec.rb +42 -0
  408. data/spec/models/workflow_node_spec.rb +76 -0
  409. data/spec/models/workflow_preset_choice_spec.rb +60 -0
  410. data/spec/models/workflow_preset_choices_spec.rb +36 -0
  411. data/spec/models/workflow_preset_removal_spec.rb +36 -0
  412. data/spec/models/workflow_preset_widget_spec.rb +42 -0
  413. data/spec/models/workflow_publish_result_spec.rb +48 -0
  414. data/spec/models/workflow_removed_spec.rb +36 -0
  415. data/spec/models/workflow_response_spec.rb +48 -0
  416. data/spec/models/workflow_schedule_spec.rb +62 -0
  417. data/spec/models/workflow_spec.rb +132 -0
  418. data/spec/models/workflow_stats_spec.rb +84 -0
  419. data/spec/models/workflow_status_spec.rb +30 -0
  420. data/spec/models/workflow_trigger_spec.rb +70 -0
  421. data/spec/models/workflow_trigger_values_inner_spec.rb +46 -0
  422. data/spec/models/workflow_version_detail_spec.rb +78 -0
  423. data/spec/models/workflow_version_list_spec.rb +36 -0
  424. data/spec/models/workflow_version_published_by_spec.rb +42 -0
  425. data/spec/models/workflow_version_spec.rb +66 -0
  426. metadata +476 -80
  427. data/docs/PartnerApi.md +0 -9892
  428. data/docs/UploadsIdDelete200Response.md +0 -22
  429. data/lib/api-sdk-rb/api/partner_api.rb +0 -10693
  430. data/spec/api/partner_api_spec.rb +0 -1895
@@ -0,0 +1,322 @@
1
+ =begin
2
+ #Widgetic API Gateway
3
+
4
+ #API documentation for the Widgetic API Gateway
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module ApiSdkRb
17
+ # One rule of a condition block, and one path out of it. Rules are read in order and the first that matches wins; the block's Default output is taken when none does.
18
+ class WorkflowConditionCase
19
+ # The output port of the rule. `default` is reserved for the Default output.
20
+ attr_accessor :id
21
+
22
+ attr_accessor :label
23
+
24
+ # `all` - every comparison must hold; `any` - one is enough.
25
+ attr_accessor :match
26
+
27
+ attr_accessor :tests
28
+
29
+ class EnumAttributeValidator
30
+ attr_reader :datatype
31
+ attr_reader :allowable_values
32
+
33
+ def initialize(datatype, allowable_values)
34
+ @allowable_values = allowable_values.map do |value|
35
+ case datatype.to_s
36
+ when /Integer/i
37
+ value.to_i
38
+ when /Float/i
39
+ value.to_f
40
+ else
41
+ value
42
+ end
43
+ end
44
+ end
45
+
46
+ def valid?(value)
47
+ !value || allowable_values.include?(value)
48
+ end
49
+ end
50
+
51
+ # Attribute mapping from ruby-style variable name to JSON key.
52
+ def self.attribute_map
53
+ {
54
+ :'id' => :'id',
55
+ :'label' => :'label',
56
+ :'match' => :'match',
57
+ :'tests' => :'tests'
58
+ }
59
+ end
60
+
61
+ # Returns all the JSON keys this model knows about
62
+ def self.acceptable_attributes
63
+ attribute_map.values
64
+ end
65
+
66
+ # Attribute type mapping.
67
+ def self.openapi_types
68
+ {
69
+ :'id' => :'String',
70
+ :'label' => :'String',
71
+ :'match' => :'String',
72
+ :'tests' => :'Array<WorkflowConditionTest>'
73
+ }
74
+ end
75
+
76
+ # List of attributes with nullable: true
77
+ def self.openapi_nullable
78
+ Set.new([
79
+ ])
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ if (!attributes.is_a?(Hash))
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `ApiSdkRb::WorkflowConditionCase` initialize method"
87
+ end
88
+
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ attributes = attributes.each_with_object({}) { |(k, v), h|
91
+ if (!self.class.attribute_map.key?(k.to_sym))
92
+ fail ArgumentError, "`#{k}` is not a valid attribute in `ApiSdkRb::WorkflowConditionCase`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
93
+ end
94
+ h[k.to_sym] = v
95
+ }
96
+
97
+ if attributes.key?(:'id')
98
+ self.id = attributes[:'id']
99
+ else
100
+ self.id = nil
101
+ end
102
+
103
+ if attributes.key?(:'label')
104
+ self.label = attributes[:'label']
105
+ end
106
+
107
+ if attributes.key?(:'match')
108
+ self.match = attributes[:'match']
109
+ else
110
+ self.match = nil
111
+ end
112
+
113
+ if attributes.key?(:'tests')
114
+ if (value = attributes[:'tests']).is_a?(Array)
115
+ self.tests = value
116
+ end
117
+ else
118
+ self.tests = nil
119
+ end
120
+ end
121
+
122
+ # Show invalid properties with the reasons. Usually used together with valid?
123
+ # @return Array for valid properties with the reasons
124
+ def list_invalid_properties
125
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
126
+ invalid_properties = Array.new
127
+ if @id.nil?
128
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
129
+ end
130
+
131
+ pattern = Regexp.new(/^[A-Za-z0-9_-]{1,64}$/)
132
+ if @id !~ pattern
133
+ invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.")
134
+ end
135
+
136
+ if @match.nil?
137
+ invalid_properties.push('invalid value for "match", match cannot be nil.')
138
+ end
139
+
140
+ if @tests.nil?
141
+ invalid_properties.push('invalid value for "tests", tests cannot be nil.')
142
+ end
143
+
144
+ invalid_properties
145
+ end
146
+
147
+ # Check to see if the all the properties in the model are valid
148
+ # @return true if the model is valid
149
+ def valid?
150
+ warn '[DEPRECATED] the `valid?` method is obsolete'
151
+ return false if @id.nil?
152
+ return false if @id !~ Regexp.new(/^[A-Za-z0-9_-]{1,64}$/)
153
+ return false if @match.nil?
154
+ match_validator = EnumAttributeValidator.new('String', ["all", "any"])
155
+ return false unless match_validator.valid?(@match)
156
+ return false if @tests.nil?
157
+ true
158
+ end
159
+
160
+ # Custom attribute writer method with validation
161
+ # @param [Object] id Value to be assigned
162
+ def id=(id)
163
+ if id.nil?
164
+ fail ArgumentError, 'id cannot be nil'
165
+ end
166
+
167
+ pattern = Regexp.new(/^[A-Za-z0-9_-]{1,64}$/)
168
+ if id !~ pattern
169
+ fail ArgumentError, "invalid value for \"id\", must conform to the pattern #{pattern}."
170
+ end
171
+
172
+ @id = id
173
+ end
174
+
175
+ # Custom attribute writer method checking allowed values (enum).
176
+ # @param [Object] match Object to be assigned
177
+ def match=(match)
178
+ validator = EnumAttributeValidator.new('String', ["all", "any"])
179
+ unless validator.valid?(match)
180
+ fail ArgumentError, "invalid value for \"match\", must be one of #{validator.allowable_values}."
181
+ end
182
+ @match = match
183
+ end
184
+
185
+ # Checks equality by comparing each attribute.
186
+ # @param [Object] Object to be compared
187
+ def ==(o)
188
+ return true if self.equal?(o)
189
+ self.class == o.class &&
190
+ id == o.id &&
191
+ label == o.label &&
192
+ match == o.match &&
193
+ tests == o.tests
194
+ end
195
+
196
+ # @see the `==` method
197
+ # @param [Object] Object to be compared
198
+ def eql?(o)
199
+ self == o
200
+ end
201
+
202
+ # Calculates hash code according to all attributes.
203
+ # @return [Integer] Hash code
204
+ def hash
205
+ [id, label, match, tests].hash
206
+ end
207
+
208
+ # Builds the object from hash
209
+ # @param [Hash] attributes Model attributes in the form of hash
210
+ # @return [Object] Returns the model itself
211
+ def self.build_from_hash(attributes)
212
+ return nil unless attributes.is_a?(Hash)
213
+ attributes = attributes.transform_keys(&:to_sym)
214
+ transformed_hash = {}
215
+ openapi_types.each_pair do |key, type|
216
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
217
+ transformed_hash["#{key}"] = nil
218
+ elsif type =~ /\AArray<(.*)>/i
219
+ # check to ensure the input is an array given that the attribute
220
+ # is documented as an array but the input is not
221
+ if attributes[attribute_map[key]].is_a?(Array)
222
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
223
+ end
224
+ elsif !attributes[attribute_map[key]].nil?
225
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
226
+ end
227
+ end
228
+ new(transformed_hash)
229
+ end
230
+
231
+ # Deserializes the data based on type
232
+ # @param string type Data type
233
+ # @param string value Value to be deserialized
234
+ # @return [Object] Deserialized data
235
+ def self._deserialize(type, value)
236
+ case type.to_sym
237
+ when :Time
238
+ Time.parse(value)
239
+ when :Date
240
+ Date.parse(value)
241
+ when :String
242
+ value.to_s
243
+ when :Integer
244
+ value.to_i
245
+ when :Float
246
+ value.to_f
247
+ when :Boolean
248
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
249
+ true
250
+ else
251
+ false
252
+ end
253
+ when :Object
254
+ # generic object (usually a Hash), return directly
255
+ value
256
+ when /\AArray<(?<inner_type>.+)>\z/
257
+ inner_type = Regexp.last_match[:inner_type]
258
+ value.map { |v| _deserialize(inner_type, v) }
259
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
260
+ k_type = Regexp.last_match[:k_type]
261
+ v_type = Regexp.last_match[:v_type]
262
+ {}.tap do |hash|
263
+ value.each do |k, v|
264
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
265
+ end
266
+ end
267
+ else # model
268
+ # models (e.g. Pet) or oneOf
269
+ klass = ApiSdkRb.const_get(type)
270
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
271
+ end
272
+ end
273
+
274
+ # Returns the string representation of the object
275
+ # @return [String] String presentation of the object
276
+ def to_s
277
+ to_hash.to_s
278
+ end
279
+
280
+ # to_body is an alias to to_hash (backward compatibility)
281
+ # @return [Hash] Returns the object in the form of hash
282
+ def to_body
283
+ to_hash
284
+ end
285
+
286
+ # Returns the object in the form of hash
287
+ # @return [Hash] Returns the object in the form of hash
288
+ def to_hash
289
+ hash = {}
290
+ self.class.attribute_map.each_pair do |attr, param|
291
+ value = self.send(attr)
292
+ if value.nil?
293
+ is_nullable = self.class.openapi_nullable.include?(attr)
294
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
295
+ end
296
+
297
+ hash[param] = _to_hash(value)
298
+ end
299
+ hash
300
+ end
301
+
302
+ # Outputs non-array value in the form of hash
303
+ # For object, use to_hash. Otherwise, just return the value
304
+ # @param [Object] value Any valid value
305
+ # @return [Hash] Returns the value in the form of hash
306
+ def _to_hash(value)
307
+ if value.is_a?(Array)
308
+ value.compact.map { |v| _to_hash(v) }
309
+ elsif value.is_a?(Hash)
310
+ {}.tap do |hash|
311
+ value.each { |k, v| hash[k] = _to_hash(v) }
312
+ end
313
+ elsif value.respond_to? :to_hash
314
+ value.to_hash
315
+ else
316
+ value
317
+ end
318
+ end
319
+
320
+ end
321
+
322
+ end
@@ -0,0 +1,284 @@
1
+ =begin
2
+ #Widgetic API Gateway
3
+
4
+ #API documentation for the Widgetic API Gateway
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module ApiSdkRb
17
+ # One comparison of a rule - a field, an operator and (for most operators) a value to compare with.
18
+ class WorkflowConditionTest
19
+ attr_accessor :field
20
+
21
+ # Text fields take is, isNot, contains, doesNotContain, startsWith, endsWith, isEmpty and isNotEmpty. Number fields take is, isNot, greaterThan, atLeast, lessThan, atMost, isEmpty and isNotEmpty. Yes/no fields take is and isNot.
22
+ attr_accessor :operator
23
+
24
+ # What the field is compared with; not used by isEmpty and isNotEmpty. A text for a text field, a number for a number field, true or false for a yes/no field.
25
+ attr_accessor :value
26
+
27
+ class EnumAttributeValidator
28
+ attr_reader :datatype
29
+ attr_reader :allowable_values
30
+
31
+ def initialize(datatype, allowable_values)
32
+ @allowable_values = allowable_values.map do |value|
33
+ case datatype.to_s
34
+ when /Integer/i
35
+ value.to_i
36
+ when /Float/i
37
+ value.to_f
38
+ else
39
+ value
40
+ end
41
+ end
42
+ end
43
+
44
+ def valid?(value)
45
+ !value || allowable_values.include?(value)
46
+ end
47
+ end
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ :'field' => :'field',
53
+ :'operator' => :'operator',
54
+ :'value' => :'value'
55
+ }
56
+ end
57
+
58
+ # Returns all the JSON keys this model knows about
59
+ def self.acceptable_attributes
60
+ attribute_map.values
61
+ end
62
+
63
+ # Attribute type mapping.
64
+ def self.openapi_types
65
+ {
66
+ :'field' => :'WorkflowFieldReference',
67
+ :'operator' => :'String',
68
+ :'value' => :'Object'
69
+ }
70
+ end
71
+
72
+ # List of attributes with nullable: true
73
+ def self.openapi_nullable
74
+ Set.new([
75
+ :'value'
76
+ ])
77
+ end
78
+
79
+ # Initializes the object
80
+ # @param [Hash] attributes Model attributes in the form of hash
81
+ def initialize(attributes = {})
82
+ if (!attributes.is_a?(Hash))
83
+ fail ArgumentError, "The input argument (attributes) must be a hash in `ApiSdkRb::WorkflowConditionTest` initialize method"
84
+ end
85
+
86
+ # check to see if the attribute exists and convert string to symbol for hash key
87
+ attributes = attributes.each_with_object({}) { |(k, v), h|
88
+ if (!self.class.attribute_map.key?(k.to_sym))
89
+ fail ArgumentError, "`#{k}` is not a valid attribute in `ApiSdkRb::WorkflowConditionTest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
90
+ end
91
+ h[k.to_sym] = v
92
+ }
93
+
94
+ if attributes.key?(:'field')
95
+ self.field = attributes[:'field']
96
+ else
97
+ self.field = nil
98
+ end
99
+
100
+ if attributes.key?(:'operator')
101
+ self.operator = attributes[:'operator']
102
+ else
103
+ self.operator = nil
104
+ end
105
+
106
+ if attributes.key?(:'value')
107
+ self.value = attributes[:'value']
108
+ end
109
+ end
110
+
111
+ # Show invalid properties with the reasons. Usually used together with valid?
112
+ # @return Array for valid properties with the reasons
113
+ def list_invalid_properties
114
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
115
+ invalid_properties = Array.new
116
+ if @field.nil?
117
+ invalid_properties.push('invalid value for "field", field cannot be nil.')
118
+ end
119
+
120
+ if @operator.nil?
121
+ invalid_properties.push('invalid value for "operator", operator cannot be nil.')
122
+ end
123
+
124
+ invalid_properties
125
+ end
126
+
127
+ # Check to see if the all the properties in the model are valid
128
+ # @return true if the model is valid
129
+ def valid?
130
+ warn '[DEPRECATED] the `valid?` method is obsolete'
131
+ return false if @field.nil?
132
+ return false if @operator.nil?
133
+ operator_validator = EnumAttributeValidator.new('String', ["is", "isNot", "contains", "doesNotContain", "startsWith", "endsWith", "greaterThan", "atLeast", "lessThan", "atMost", "isEmpty", "isNotEmpty"])
134
+ return false unless operator_validator.valid?(@operator)
135
+ true
136
+ end
137
+
138
+ # Custom attribute writer method checking allowed values (enum).
139
+ # @param [Object] operator Object to be assigned
140
+ def operator=(operator)
141
+ validator = EnumAttributeValidator.new('String', ["is", "isNot", "contains", "doesNotContain", "startsWith", "endsWith", "greaterThan", "atLeast", "lessThan", "atMost", "isEmpty", "isNotEmpty"])
142
+ unless validator.valid?(operator)
143
+ fail ArgumentError, "invalid value for \"operator\", must be one of #{validator.allowable_values}."
144
+ end
145
+ @operator = operator
146
+ end
147
+
148
+ # Checks equality by comparing each attribute.
149
+ # @param [Object] Object to be compared
150
+ def ==(o)
151
+ return true if self.equal?(o)
152
+ self.class == o.class &&
153
+ field == o.field &&
154
+ operator == o.operator &&
155
+ value == o.value
156
+ end
157
+
158
+ # @see the `==` method
159
+ # @param [Object] Object to be compared
160
+ def eql?(o)
161
+ self == o
162
+ end
163
+
164
+ # Calculates hash code according to all attributes.
165
+ # @return [Integer] Hash code
166
+ def hash
167
+ [field, operator, value].hash
168
+ end
169
+
170
+ # Builds the object from hash
171
+ # @param [Hash] attributes Model attributes in the form of hash
172
+ # @return [Object] Returns the model itself
173
+ def self.build_from_hash(attributes)
174
+ return nil unless attributes.is_a?(Hash)
175
+ attributes = attributes.transform_keys(&:to_sym)
176
+ transformed_hash = {}
177
+ openapi_types.each_pair do |key, type|
178
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
179
+ transformed_hash["#{key}"] = nil
180
+ elsif type =~ /\AArray<(.*)>/i
181
+ # check to ensure the input is an array given that the attribute
182
+ # is documented as an array but the input is not
183
+ if attributes[attribute_map[key]].is_a?(Array)
184
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
185
+ end
186
+ elsif !attributes[attribute_map[key]].nil?
187
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
188
+ end
189
+ end
190
+ new(transformed_hash)
191
+ end
192
+
193
+ # Deserializes the data based on type
194
+ # @param string type Data type
195
+ # @param string value Value to be deserialized
196
+ # @return [Object] Deserialized data
197
+ def self._deserialize(type, value)
198
+ case type.to_sym
199
+ when :Time
200
+ Time.parse(value)
201
+ when :Date
202
+ Date.parse(value)
203
+ when :String
204
+ value.to_s
205
+ when :Integer
206
+ value.to_i
207
+ when :Float
208
+ value.to_f
209
+ when :Boolean
210
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
211
+ true
212
+ else
213
+ false
214
+ end
215
+ when :Object
216
+ # generic object (usually a Hash), return directly
217
+ value
218
+ when /\AArray<(?<inner_type>.+)>\z/
219
+ inner_type = Regexp.last_match[:inner_type]
220
+ value.map { |v| _deserialize(inner_type, v) }
221
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
222
+ k_type = Regexp.last_match[:k_type]
223
+ v_type = Regexp.last_match[:v_type]
224
+ {}.tap do |hash|
225
+ value.each do |k, v|
226
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
227
+ end
228
+ end
229
+ else # model
230
+ # models (e.g. Pet) or oneOf
231
+ klass = ApiSdkRb.const_get(type)
232
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
233
+ end
234
+ end
235
+
236
+ # Returns the string representation of the object
237
+ # @return [String] String presentation of the object
238
+ def to_s
239
+ to_hash.to_s
240
+ end
241
+
242
+ # to_body is an alias to to_hash (backward compatibility)
243
+ # @return [Hash] Returns the object in the form of hash
244
+ def to_body
245
+ to_hash
246
+ end
247
+
248
+ # Returns the object in the form of hash
249
+ # @return [Hash] Returns the object in the form of hash
250
+ def to_hash
251
+ hash = {}
252
+ self.class.attribute_map.each_pair do |attr, param|
253
+ value = self.send(attr)
254
+ if value.nil?
255
+ is_nullable = self.class.openapi_nullable.include?(attr)
256
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
257
+ end
258
+
259
+ hash[param] = _to_hash(value)
260
+ end
261
+ hash
262
+ end
263
+
264
+ # Outputs non-array value in the form of hash
265
+ # For object, use to_hash. Otherwise, just return the value
266
+ # @param [Object] value Any valid value
267
+ # @return [Hash] Returns the value in the form of hash
268
+ def _to_hash(value)
269
+ if value.is_a?(Array)
270
+ value.compact.map { |v| _to_hash(v) }
271
+ elsif value.is_a?(Hash)
272
+ {}.tap do |hash|
273
+ value.each { |k, v| hash[k] = _to_hash(v) }
274
+ end
275
+ elsif value.respond_to? :to_hash
276
+ value.to_hash
277
+ else
278
+ value
279
+ end
280
+ end
281
+
282
+ end
283
+
284
+ end