ittybit 0.8.14 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ittybit/automations/client.rb +80 -60
  3. data/lib/ittybit/automations/types/automations_create_request_workflow_item.rb +81 -0
  4. data/lib/ittybit/automations/types/automations_create_request_workflow_item_kind.rb +20 -0
  5. data/lib/ittybit/automations/types/automations_create_request_workflow_item_next_item.rb +71 -0
  6. data/lib/ittybit/automations/types/automations_create_response.rb +133 -0
  7. data/lib/ittybit/automations/types/automations_create_response_status.rb +10 -0
  8. data/lib/ittybit/automations/types/automations_create_response_trigger.rb +67 -0
  9. data/lib/ittybit/automations/types/automations_create_response_workflow_item.rb +61 -0
  10. data/lib/ittybit/automations/types/automations_create_response_workflow_item_conditions.rb +86 -0
  11. data/lib/ittybit/automations/types/automations_create_response_workflow_item_conditions_conditions_item.rb +71 -0
  12. data/lib/ittybit/automations/types/automations_create_response_workflow_item_conditions_next_item.rb +71 -0
  13. data/lib/ittybit/automations/types/automations_create_response_workflow_item_ref.rb +83 -0
  14. data/lib/ittybit/automations/types/automations_create_response_workflow_item_ref_kind.rb +20 -0
  15. data/lib/ittybit/automations/types/automations_create_response_workflow_item_ref_next_item.rb +71 -0
  16. data/lib/ittybit/automations/types/automations_delete_response.rb +59 -0
  17. data/lib/ittybit/automations/types/automations_get_response.rb +133 -0
  18. data/lib/ittybit/automations/types/automations_get_response_status.rb +10 -0
  19. data/lib/ittybit/automations/types/automations_get_response_trigger.rb +67 -0
  20. data/lib/ittybit/automations/types/automations_get_response_workflow_item.rb +60 -0
  21. data/lib/ittybit/automations/types/automations_get_response_workflow_item_conditions.rb +86 -0
  22. data/lib/ittybit/automations/types/automations_get_response_workflow_item_conditions_conditions_item.rb +71 -0
  23. data/lib/ittybit/automations/types/automations_get_response_workflow_item_conditions_next_item.rb +71 -0
  24. data/lib/ittybit/automations/types/automations_get_response_workflow_item_ref.rb +82 -0
  25. data/lib/ittybit/automations/types/automations_get_response_workflow_item_ref_kind.rb +20 -0
  26. data/lib/ittybit/automations/types/automations_get_response_workflow_item_ref_next_item.rb +71 -0
  27. data/lib/ittybit/automations/types/automations_list_response_item.rb +133 -0
  28. data/lib/ittybit/automations/types/automations_list_response_item_status.rb +10 -0
  29. data/lib/ittybit/automations/types/automations_list_response_item_trigger.rb +67 -0
  30. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item.rb +61 -0
  31. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item_conditions.rb +86 -0
  32. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item_conditions_conditions_item.rb +71 -0
  33. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item_conditions_next_item.rb +71 -0
  34. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item_ref.rb +83 -0
  35. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item_ref_kind.rb +20 -0
  36. data/lib/ittybit/automations/types/automations_list_response_item_workflow_item_ref_next_item.rb +71 -0
  37. data/lib/ittybit/automations/types/automations_update_request_workflow_item.rb +81 -0
  38. data/lib/ittybit/automations/types/automations_update_request_workflow_item_kind.rb +20 -0
  39. data/lib/ittybit/automations/types/automations_update_request_workflow_item_next_item.rb +71 -0
  40. data/lib/ittybit/automations/types/automations_update_response.rb +133 -0
  41. data/lib/ittybit/automations/types/automations_update_response_status.rb +10 -0
  42. data/lib/ittybit/automations/types/automations_update_response_trigger.rb +67 -0
  43. data/lib/ittybit/automations/types/automations_update_response_workflow_item.rb +61 -0
  44. data/lib/ittybit/automations/types/automations_update_response_workflow_item_conditions.rb +86 -0
  45. data/lib/ittybit/automations/types/automations_update_response_workflow_item_conditions_conditions_item.rb +71 -0
  46. data/lib/ittybit/automations/types/automations_update_response_workflow_item_conditions_next_item.rb +71 -0
  47. data/lib/ittybit/automations/types/automations_update_response_workflow_item_ref.rb +83 -0
  48. data/lib/ittybit/automations/types/automations_update_response_workflow_item_ref_kind.rb +20 -0
  49. data/lib/ittybit/automations/types/automations_update_response_workflow_item_ref_next_item.rb +71 -0
  50. data/lib/ittybit/files/client.rb +76 -55
  51. data/lib/ittybit/files/types/files_create_response.rb +317 -0
  52. data/lib/ittybit/files/types/files_create_response_kind.rb +11 -0
  53. data/lib/ittybit/files/types/files_create_response_object.rb +11 -0
  54. data/lib/ittybit/files/types/files_create_response_status.rb +12 -0
  55. data/lib/ittybit/files/types/files_delete_response.rb +59 -0
  56. data/lib/ittybit/files/types/files_get_response.rb +317 -0
  57. data/lib/ittybit/files/types/files_get_response_kind.rb +11 -0
  58. data/lib/ittybit/files/types/files_get_response_object.rb +11 -0
  59. data/lib/ittybit/files/types/files_get_response_status.rb +12 -0
  60. data/lib/ittybit/files/types/files_list_response_item.rb +317 -0
  61. data/lib/ittybit/files/types/files_list_response_item_kind.rb +11 -0
  62. data/lib/ittybit/files/types/files_list_response_item_object.rb +11 -0
  63. data/lib/ittybit/files/types/files_list_response_item_status.rb +12 -0
  64. data/lib/ittybit/files/types/files_update_response.rb +317 -0
  65. data/lib/ittybit/files/types/files_update_response_kind.rb +11 -0
  66. data/lib/ittybit/files/types/files_update_response_object.rb +11 -0
  67. data/lib/ittybit/files/types/files_update_response_status.rb +12 -0
  68. data/lib/ittybit/media/client.rb +77 -56
  69. data/lib/ittybit/media/types/media_create_response.rb +175 -0
  70. data/lib/ittybit/media/types/media_create_response_files_item.rb +262 -0
  71. data/lib/ittybit/media/types/media_create_response_files_item_kind.rb +11 -0
  72. data/lib/ittybit/media/types/media_create_response_files_item_object.rb +11 -0
  73. data/lib/ittybit/media/types/media_create_response_files_item_orientation.rb +11 -0
  74. data/lib/ittybit/media/types/media_create_response_files_item_status.rb +12 -0
  75. data/lib/ittybit/media/types/media_create_response_kind.rb +11 -0
  76. data/lib/ittybit/media/types/media_delete_response.rb +59 -0
  77. data/lib/ittybit/media/types/media_get_response.rb +175 -0
  78. data/lib/ittybit/media/types/media_get_response_files_item.rb +262 -0
  79. data/lib/ittybit/media/types/media_get_response_files_item_kind.rb +11 -0
  80. data/lib/ittybit/media/types/media_get_response_files_item_object.rb +11 -0
  81. data/lib/ittybit/media/types/media_get_response_files_item_orientation.rb +11 -0
  82. data/lib/ittybit/media/types/media_get_response_files_item_status.rb +12 -0
  83. data/lib/ittybit/media/types/media_get_response_kind.rb +11 -0
  84. data/lib/ittybit/media/types/media_update_response.rb +175 -0
  85. data/lib/ittybit/media/types/media_update_response_files_item.rb +262 -0
  86. data/lib/ittybit/media/types/media_update_response_files_item_kind.rb +11 -0
  87. data/lib/ittybit/media/types/media_update_response_files_item_object.rb +11 -0
  88. data/lib/ittybit/media/types/media_update_response_files_item_orientation.rb +11 -0
  89. data/lib/ittybit/media/types/media_update_response_files_item_status.rb +12 -0
  90. data/lib/ittybit/media/types/media_update_response_kind.rb +11 -0
  91. data/lib/ittybit/signatures/client.rb +13 -11
  92. data/lib/ittybit/signatures/types/signatures_create_response.rb +112 -0
  93. data/lib/ittybit/tasks/client.rb +47 -99
  94. data/lib/ittybit/tasks/types/tasks_create_response.rb +186 -0
  95. data/lib/ittybit/tasks/types/tasks_create_response_kind.rb +23 -0
  96. data/lib/ittybit/tasks/types/tasks_create_response_results.rb +76 -0
  97. data/lib/ittybit/tasks/types/tasks_create_response_status.rb +16 -0
  98. data/lib/ittybit/tasks/types/tasks_get_response.rb +186 -0
  99. data/lib/ittybit/tasks/types/tasks_get_response_kind.rb +23 -0
  100. data/lib/ittybit/tasks/types/tasks_get_response_results.rb +76 -0
  101. data/lib/ittybit/tasks/types/tasks_get_response_status.rb +16 -0
  102. data/lib/ittybit/tasks/types/tasks_list_response_item.rb +186 -0
  103. data/lib/ittybit/tasks/types/tasks_list_response_item_kind.rb +23 -0
  104. data/lib/ittybit/tasks/types/tasks_list_response_item_results.rb +76 -0
  105. data/lib/ittybit/tasks/types/tasks_list_response_item_status.rb +16 -0
  106. data/lib/ittybit/types/automation_list_response.rb +2 -98
  107. data/lib/ittybit/types/automation_list_response_item.rb +131 -0
  108. data/lib/ittybit/types/automation_list_response_item_status.rb +8 -0
  109. data/lib/ittybit/types/automation_list_response_item_trigger.rb +65 -0
  110. data/lib/ittybit/types/automation_list_response_item_workflow_item.rb +57 -0
  111. data/lib/ittybit/types/automation_list_response_item_workflow_item_conditions.rb +84 -0
  112. data/lib/ittybit/types/automation_list_response_item_workflow_item_conditions_conditions_item.rb +69 -0
  113. data/lib/ittybit/types/automation_list_response_item_workflow_item_conditions_next_item.rb +69 -0
  114. data/lib/ittybit/types/automation_list_response_item_workflow_item_ref.rb +81 -0
  115. data/lib/ittybit/types/automation_list_response_item_workflow_item_ref_kind.rb +18 -0
  116. data/lib/ittybit/types/automation_list_response_item_workflow_item_ref_next_item.rb +69 -0
  117. data/lib/ittybit/types/automation_response.rb +77 -46
  118. data/lib/ittybit/types/automation_response_status.rb +8 -0
  119. data/lib/ittybit/types/automation_response_trigger.rb +65 -0
  120. data/lib/ittybit/types/automation_response_workflow_item.rb +54 -0
  121. data/lib/ittybit/types/automation_response_workflow_item_conditions.rb +84 -0
  122. data/lib/ittybit/types/automation_response_workflow_item_conditions_conditions_item.rb +69 -0
  123. data/lib/ittybit/types/automation_response_workflow_item_conditions_next_item.rb +69 -0
  124. data/lib/ittybit/types/automation_response_workflow_item_ref.rb +79 -0
  125. data/lib/ittybit/types/automation_response_workflow_item_ref_kind.rb +18 -0
  126. data/lib/ittybit/types/automation_response_workflow_item_ref_next_item.rb +69 -0
  127. data/lib/ittybit/types/automation_workflow_item.rb +8 -8
  128. data/lib/ittybit/types/automation_workflow_item_conditions.rb +82 -0
  129. data/lib/ittybit/types/automation_workflow_item_conditions_conditions_item.rb +69 -0
  130. data/lib/ittybit/types/automation_workflow_item_conditions_next_item.rb +69 -0
  131. data/lib/ittybit/types/automation_workflow_item_ref.rb +79 -0
  132. data/lib/ittybit/types/automation_workflow_item_ref_kind.rb +18 -0
  133. data/lib/ittybit/types/automation_workflow_item_ref_next_item.rb +67 -0
  134. data/lib/ittybit/types/confirmation_response.rb +9 -52
  135. data/lib/ittybit/types/created_by.rb +5 -0
  136. data/lib/ittybit/types/error.rb +1 -53
  137. data/lib/ittybit/types/file_list_response.rb +2 -98
  138. data/lib/ittybit/types/file_list_response_item.rb +315 -0
  139. data/lib/ittybit/types/file_list_response_item_kind.rb +9 -0
  140. data/lib/ittybit/types/file_list_response_item_object.rb +9 -0
  141. data/lib/ittybit/types/file_list_response_item_status.rb +10 -0
  142. data/lib/ittybit/types/file_response.rb +264 -49
  143. data/lib/ittybit/types/file_response_kind.rb +9 -0
  144. data/lib/ittybit/types/file_response_object.rb +9 -0
  145. data/lib/ittybit/types/file_response_status.rb +10 -0
  146. data/lib/ittybit/types/kind.rb +21 -0
  147. data/lib/ittybit/types/links.rb +1 -63
  148. data/lib/ittybit/types/media.rb +4 -4
  149. data/lib/ittybit/types/media_files_item.rb +260 -0
  150. data/lib/ittybit/types/media_files_item_kind.rb +9 -0
  151. data/lib/ittybit/types/media_files_item_object.rb +9 -0
  152. data/lib/ittybit/types/media_files_item_orientation.rb +9 -0
  153. data/lib/ittybit/types/media_files_item_status.rb +10 -0
  154. data/lib/ittybit/types/media_list_response.rb +2 -98
  155. data/lib/ittybit/types/media_list_response_item.rb +173 -0
  156. data/lib/ittybit/types/media_list_response_item_files_item.rb +260 -0
  157. data/lib/ittybit/types/media_list_response_item_files_item_kind.rb +9 -0
  158. data/lib/ittybit/types/media_list_response_item_files_item_object.rb +9 -0
  159. data/lib/ittybit/types/media_list_response_item_files_item_orientation.rb +9 -0
  160. data/lib/ittybit/types/media_list_response_item_files_item_status.rb +10 -0
  161. data/lib/ittybit/types/media_list_response_item_kind.rb +9 -0
  162. data/lib/ittybit/types/media_response.rb +121 -48
  163. data/lib/ittybit/types/media_response_files_item.rb +260 -0
  164. data/lib/ittybit/types/media_response_files_item_kind.rb +9 -0
  165. data/lib/ittybit/types/media_response_files_item_object.rb +9 -0
  166. data/lib/ittybit/types/media_response_files_item_orientation.rb +9 -0
  167. data/lib/ittybit/types/media_response_files_item_status.rb +10 -0
  168. data/lib/ittybit/types/media_response_kind.rb +9 -0
  169. data/lib/ittybit/types/parent_id.rb +5 -0
  170. data/lib/ittybit/types/progress.rb +5 -0
  171. data/lib/ittybit/types/signature_response.rb +59 -49
  172. data/lib/ittybit/types/status.rb +14 -0
  173. data/lib/ittybit/types/task_list_response.rb +2 -98
  174. data/lib/ittybit/types/task_list_response_item.rb +184 -0
  175. data/lib/ittybit/types/task_list_response_item_kind.rb +21 -0
  176. data/lib/ittybit/types/task_list_response_item_results.rb +74 -0
  177. data/lib/ittybit/types/task_list_response_item_status.rb +14 -0
  178. data/lib/ittybit/types/task_response.rb +128 -44
  179. data/lib/ittybit/types/task_response_kind.rb +21 -0
  180. data/lib/ittybit/types/task_response_results.rb +74 -0
  181. data/lib/ittybit/types/task_response_status.rb +14 -0
  182. data/lib/requests.rb +2 -2
  183. data/lib/types_export.rb +168 -9
  184. metadata +163 -5
  185. data/lib/ittybit/types/links_list.rb +0 -88
  186. data/lib/ittybit/types/meta_list.rb +0 -128
  187. data/lib/ittybit/types/meta_list_type.rb +0 -8
@@ -1,103 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "meta_list"
4
- require_relative "automation"
5
- require_relative "error"
6
- require_relative "links_list"
7
- require "ostruct"
8
- require "json"
3
+ require_relative "automation_list_response_item"
9
4
 
10
5
  module Ittybit
11
- class AutomationListResponse
12
- # @return [Ittybit::MetaList]
13
- attr_reader :meta
14
- # @return [Array<Ittybit::Automation>]
15
- attr_reader :data
16
- # @return [Ittybit::Error]
17
- attr_reader :error
18
- # @return [Ittybit::LinksList]
19
- attr_reader :links
20
- # @return [OpenStruct] Additional properties unmapped to the current class definition
21
- attr_reader :additional_properties
22
- # @return [Object]
23
- attr_reader :_field_set
24
- protected :_field_set
25
-
26
- OMIT = Object.new
27
-
28
- # @param meta [Ittybit::MetaList]
29
- # @param data [Array<Ittybit::Automation>]
30
- # @param error [Ittybit::Error]
31
- # @param links [Ittybit::LinksList]
32
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
33
- # @return [Ittybit::AutomationListResponse]
34
- def initialize(meta: OMIT, data: OMIT, error: OMIT, links: OMIT, additional_properties: nil)
35
- @meta = meta if meta != OMIT
36
- @data = data if data != OMIT
37
- @error = error if error != OMIT
38
- @links = links if links != OMIT
39
- @additional_properties = additional_properties
40
- @_field_set = { "meta": meta, "data": data, "error": error, "links": links }.reject do |_k, v|
41
- v == OMIT
42
- end
43
- end
44
-
45
- # Deserialize a JSON object to an instance of AutomationListResponse
46
- #
47
- # @param json_object [String]
48
- # @return [Ittybit::AutomationListResponse]
49
- def self.from_json(json_object:)
50
- struct = JSON.parse(json_object, object_class: OpenStruct)
51
- parsed_json = JSON.parse(json_object)
52
- if parsed_json["meta"].nil?
53
- meta = nil
54
- else
55
- meta = parsed_json["meta"].to_json
56
- meta = Ittybit::MetaList.from_json(json_object: meta)
57
- end
58
- data = parsed_json["data"]&.map do |item|
59
- item = item.to_json
60
- Ittybit::Automation.from_json(json_object: item)
61
- end
62
- if parsed_json["error"].nil?
63
- error = nil
64
- else
65
- error = parsed_json["error"].to_json
66
- error = Ittybit::Error.from_json(json_object: error)
67
- end
68
- if parsed_json["links"].nil?
69
- links = nil
70
- else
71
- links = parsed_json["links"].to_json
72
- links = Ittybit::LinksList.from_json(json_object: links)
73
- end
74
- new(
75
- meta: meta,
76
- data: data,
77
- error: error,
78
- links: links,
79
- additional_properties: struct
80
- )
81
- end
82
-
83
- # Serialize an instance of AutomationListResponse to a JSON object
84
- #
85
- # @return [String]
86
- def to_json(*_args)
87
- @_field_set&.to_json
88
- end
89
-
90
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
91
- # hash and check each fields type against the current object's property
92
- # definitions.
93
- #
94
- # @param obj [Object]
95
- # @return [Void]
96
- def self.validate_raw(obj:)
97
- obj.meta.nil? || Ittybit::MetaList.validate_raw(obj: obj.meta)
98
- obj.data&.is_a?(Array) != false || raise("Passed value for field obj.data is not the expected type, validation failed.")
99
- obj.error.nil? || Ittybit::Error.validate_raw(obj: obj.error)
100
- obj.links.nil? || Ittybit::LinksList.validate_raw(obj: obj.links)
101
- end
102
- end
6
+ AUTOMATION_LIST_RESPONSE = Array
103
7
  end
@@ -0,0 +1,131 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "automation_list_response_item_trigger"
4
+ require_relative "automation_list_response_item_workflow_item"
5
+ require_relative "automation_list_response_item_status"
6
+ require "date"
7
+ require "ostruct"
8
+ require "json"
9
+
10
+ module Ittybit
11
+ class AutomationListResponseItem
12
+ # @return [String]
13
+ attr_reader :id
14
+ # @return [String]
15
+ attr_reader :name
16
+ # @return [String]
17
+ attr_reader :description
18
+ # @return [Ittybit::AutomationListResponseItemTrigger]
19
+ attr_reader :trigger
20
+ # @return [Array<Ittybit::AutomationListResponseItemWorkflowItem>]
21
+ attr_reader :workflow
22
+ # @return [Ittybit::AutomationListResponseItemStatus]
23
+ attr_reader :status
24
+ # @return [DateTime]
25
+ attr_reader :created
26
+ # @return [DateTime]
27
+ attr_reader :updated
28
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
29
+ attr_reader :additional_properties
30
+ # @return [Object]
31
+ attr_reader :_field_set
32
+ protected :_field_set
33
+
34
+ OMIT = Object.new
35
+
36
+ # @param id [String]
37
+ # @param name [String]
38
+ # @param description [String]
39
+ # @param trigger [Ittybit::AutomationListResponseItemTrigger]
40
+ # @param workflow [Array<Ittybit::AutomationListResponseItemWorkflowItem>]
41
+ # @param status [Ittybit::AutomationListResponseItemStatus]
42
+ # @param created [DateTime]
43
+ # @param updated [DateTime]
44
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
45
+ # @return [Ittybit::AutomationListResponseItem]
46
+ def initialize(id:, trigger:, workflow:, status:, created:, updated:, name: OMIT, description: OMIT,
47
+ additional_properties: nil)
48
+ @id = id
49
+ @name = name if name != OMIT
50
+ @description = description if description != OMIT
51
+ @trigger = trigger
52
+ @workflow = workflow
53
+ @status = status
54
+ @created = created
55
+ @updated = updated
56
+ @additional_properties = additional_properties
57
+ @_field_set = {
58
+ "id": id,
59
+ "name": name,
60
+ "description": description,
61
+ "trigger": trigger,
62
+ "workflow": workflow,
63
+ "status": status,
64
+ "created": created,
65
+ "updated": updated
66
+ }.reject do |_k, v|
67
+ v == OMIT
68
+ end
69
+ end
70
+
71
+ # Deserialize a JSON object to an instance of AutomationListResponseItem
72
+ #
73
+ # @param json_object [String]
74
+ # @return [Ittybit::AutomationListResponseItem]
75
+ def self.from_json(json_object:)
76
+ struct = JSON.parse(json_object, object_class: OpenStruct)
77
+ parsed_json = JSON.parse(json_object)
78
+ id = parsed_json["id"]
79
+ name = parsed_json["name"]
80
+ description = parsed_json["description"]
81
+ if parsed_json["trigger"].nil?
82
+ trigger = nil
83
+ else
84
+ trigger = parsed_json["trigger"].to_json
85
+ trigger = Ittybit::AutomationListResponseItemTrigger.from_json(json_object: trigger)
86
+ end
87
+ workflow = parsed_json["workflow"]&.map do |item|
88
+ item = item.to_json
89
+ Ittybit::AutomationListResponseItemWorkflowItem.from_json(json_object: item)
90
+ end
91
+ status = parsed_json["status"]
92
+ created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?)
93
+ updated = (DateTime.parse(parsed_json["updated"]) unless parsed_json["updated"].nil?)
94
+ new(
95
+ id: id,
96
+ name: name,
97
+ description: description,
98
+ trigger: trigger,
99
+ workflow: workflow,
100
+ status: status,
101
+ created: created,
102
+ updated: updated,
103
+ additional_properties: struct
104
+ )
105
+ end
106
+
107
+ # Serialize an instance of AutomationListResponseItem to a JSON object
108
+ #
109
+ # @return [String]
110
+ def to_json(*_args)
111
+ @_field_set&.to_json
112
+ end
113
+
114
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
115
+ # hash and check each fields type against the current object's property
116
+ # definitions.
117
+ #
118
+ # @param obj [Object]
119
+ # @return [Void]
120
+ def self.validate_raw(obj:)
121
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
122
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
123
+ obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
124
+ Ittybit::AutomationListResponseItemTrigger.validate_raw(obj: obj.trigger)
125
+ obj.workflow.is_a?(Array) != false || raise("Passed value for field obj.workflow is not the expected type, validation failed.")
126
+ obj.status.is_a?(Ittybit::AutomationListResponseItemStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
127
+ obj.created.is_a?(DateTime) != false || raise("Passed value for field obj.created is not the expected type, validation failed.")
128
+ obj.updated.is_a?(DateTime) != false || raise("Passed value for field obj.updated is not the expected type, validation failed.")
129
+ end
130
+ end
131
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class AutomationListResponseItemStatus
5
+ ACTIVE = "active"
6
+ PAUSED = "paused"
7
+ end
8
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Ittybit
7
+ class AutomationListResponseItemTrigger
8
+ # @return [String]
9
+ attr_reader :kind
10
+ # @return [String]
11
+ attr_reader :event
12
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
13
+ attr_reader :additional_properties
14
+ # @return [Object]
15
+ attr_reader :_field_set
16
+ protected :_field_set
17
+
18
+ OMIT = Object.new
19
+
20
+ # @param kind [String]
21
+ # @param event [String]
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [Ittybit::AutomationListResponseItemTrigger]
24
+ def initialize(kind:, event:, additional_properties: nil)
25
+ @kind = kind
26
+ @event = event
27
+ @additional_properties = additional_properties
28
+ @_field_set = { "kind": kind, "event": event }
29
+ end
30
+
31
+ # Deserialize a JSON object to an instance of AutomationListResponseItemTrigger
32
+ #
33
+ # @param json_object [String]
34
+ # @return [Ittybit::AutomationListResponseItemTrigger]
35
+ def self.from_json(json_object:)
36
+ struct = JSON.parse(json_object, object_class: OpenStruct)
37
+ parsed_json = JSON.parse(json_object)
38
+ kind = parsed_json["kind"]
39
+ event = parsed_json["event"]
40
+ new(
41
+ kind: kind,
42
+ event: event,
43
+ additional_properties: struct
44
+ )
45
+ end
46
+
47
+ # Serialize an instance of AutomationListResponseItemTrigger to a JSON object
48
+ #
49
+ # @return [String]
50
+ def to_json(*_args)
51
+ @_field_set&.to_json
52
+ end
53
+
54
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
55
+ # hash and check each fields type against the current object's property
56
+ # definitions.
57
+ #
58
+ # @param obj [Object]
59
+ # @return [Void]
60
+ def self.validate_raw(obj:)
61
+ obj.kind.is_a?(String) != false || raise("Passed value for field obj.kind is not the expected type, validation failed.")
62
+ obj.event.is_a?(String) != false || raise("Passed value for field obj.event is not the expected type, validation failed.")
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "automation_list_response_item_workflow_item_ref"
5
+ require_relative "automation_list_response_item_workflow_item_conditions"
6
+
7
+ module Ittybit
8
+ class AutomationListResponseItemWorkflowItem
9
+ # Deserialize a JSON object to an instance of
10
+ # AutomationListResponseItemWorkflowItem
11
+ #
12
+ # @param json_object [String]
13
+ # @return [Ittybit::AutomationListResponseItemWorkflowItem]
14
+ def self.from_json(json_object:)
15
+ struct = JSON.parse(json_object, object_class: OpenStruct)
16
+ begin
17
+ Ittybit::AutomationListResponseItemWorkflowItemRef.validate_raw(obj: struct)
18
+ return Ittybit::AutomationListResponseItemWorkflowItemRef.from_json(json_object: struct) unless struct.nil?
19
+
20
+ return nil
21
+ rescue StandardError
22
+ # noop
23
+ end
24
+ begin
25
+ Ittybit::AutomationListResponseItemWorkflowItemConditions.validate_raw(obj: struct)
26
+ unless struct.nil?
27
+ return Ittybit::AutomationListResponseItemWorkflowItemConditions.from_json(json_object: struct)
28
+ end
29
+
30
+ return nil
31
+ rescue StandardError
32
+ # noop
33
+ end
34
+ struct
35
+ end
36
+
37
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
38
+ # hash and check each fields type against the current object's property
39
+ # definitions.
40
+ #
41
+ # @param obj [Object]
42
+ # @return [Void]
43
+ def self.validate_raw(obj:)
44
+ begin
45
+ return Ittybit::AutomationListResponseItemWorkflowItemRef.validate_raw(obj: obj)
46
+ rescue StandardError
47
+ # noop
48
+ end
49
+ begin
50
+ return Ittybit::AutomationListResponseItemWorkflowItemConditions.validate_raw(obj: obj)
51
+ rescue StandardError
52
+ # noop
53
+ end
54
+ raise("Passed value matched no type within the union, validation failed.")
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,84 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "automation_list_response_item_workflow_item_conditions_conditions_item"
4
+ require_relative "automation_list_response_item_workflow_item_conditions_next_item"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Ittybit
9
+ class AutomationListResponseItemWorkflowItemConditions
10
+ # @return [String]
11
+ attr_reader :kind
12
+ # @return [Array<Ittybit::AutomationListResponseItemWorkflowItemConditionsConditionsItem>]
13
+ attr_reader :conditions
14
+ # @return [Array<Ittybit::AutomationListResponseItemWorkflowItemConditionsNextItem>]
15
+ attr_reader :next_
16
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
17
+ attr_reader :additional_properties
18
+ # @return [Object]
19
+ attr_reader :_field_set
20
+ protected :_field_set
21
+
22
+ OMIT = Object.new
23
+
24
+ # @param kind [String]
25
+ # @param conditions [Array<Ittybit::AutomationListResponseItemWorkflowItemConditionsConditionsItem>]
26
+ # @param next_ [Array<Ittybit::AutomationListResponseItemWorkflowItemConditionsNextItem>]
27
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
28
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemConditions]
29
+ def initialize(kind:, conditions:, next_: OMIT, additional_properties: nil)
30
+ @kind = kind
31
+ @conditions = conditions
32
+ @next_ = next_ if next_ != OMIT
33
+ @additional_properties = additional_properties
34
+ @_field_set = { "kind": kind, "conditions": conditions, "next": next_ }.reject do |_k, v|
35
+ v == OMIT
36
+ end
37
+ end
38
+
39
+ # Deserialize a JSON object to an instance of
40
+ # AutomationListResponseItemWorkflowItemConditions
41
+ #
42
+ # @param json_object [String]
43
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemConditions]
44
+ def self.from_json(json_object:)
45
+ struct = JSON.parse(json_object, object_class: OpenStruct)
46
+ parsed_json = JSON.parse(json_object)
47
+ kind = parsed_json["kind"]
48
+ conditions = parsed_json["conditions"]&.map do |item|
49
+ item = item.to_json
50
+ Ittybit::AutomationListResponseItemWorkflowItemConditionsConditionsItem.from_json(json_object: item)
51
+ end
52
+ next_ = parsed_json["next"]&.map do |item|
53
+ item = item.to_json
54
+ Ittybit::AutomationListResponseItemWorkflowItemConditionsNextItem.from_json(json_object: item)
55
+ end
56
+ new(
57
+ kind: kind,
58
+ conditions: conditions,
59
+ next_: next_,
60
+ additional_properties: struct
61
+ )
62
+ end
63
+
64
+ # Serialize an instance of AutomationListResponseItemWorkflowItemConditions to a
65
+ # JSON object
66
+ #
67
+ # @return [String]
68
+ def to_json(*_args)
69
+ @_field_set&.to_json
70
+ end
71
+
72
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
73
+ # hash and check each fields type against the current object's property
74
+ # definitions.
75
+ #
76
+ # @param obj [Object]
77
+ # @return [Void]
78
+ def self.validate_raw(obj:)
79
+ obj.kind.is_a?(String) != false || raise("Passed value for field obj.kind is not the expected type, validation failed.")
80
+ obj.conditions.is_a?(Array) != false || raise("Passed value for field obj.conditions is not the expected type, validation failed.")
81
+ obj.next_&.is_a?(Array) != false || raise("Passed value for field obj.next_ is not the expected type, validation failed.")
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Ittybit
7
+ class AutomationListResponseItemWorkflowItemConditionsConditionsItem
8
+ # @return [String]
9
+ attr_reader :prop
10
+ # @return [String]
11
+ attr_reader :value
12
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
13
+ attr_reader :additional_properties
14
+ # @return [Object]
15
+ attr_reader :_field_set
16
+ protected :_field_set
17
+
18
+ OMIT = Object.new
19
+
20
+ # @param prop [String]
21
+ # @param value [String]
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemConditionsConditionsItem]
24
+ def initialize(prop: OMIT, value: OMIT, additional_properties: nil)
25
+ @prop = prop if prop != OMIT
26
+ @value = value if value != OMIT
27
+ @additional_properties = additional_properties
28
+ @_field_set = { "prop": prop, "value": value }.reject do |_k, v|
29
+ v == OMIT
30
+ end
31
+ end
32
+
33
+ # Deserialize a JSON object to an instance of
34
+ # AutomationListResponseItemWorkflowItemConditionsConditionsItem
35
+ #
36
+ # @param json_object [String]
37
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemConditionsConditionsItem]
38
+ def self.from_json(json_object:)
39
+ struct = JSON.parse(json_object, object_class: OpenStruct)
40
+ parsed_json = JSON.parse(json_object)
41
+ prop = parsed_json["prop"]
42
+ value = parsed_json["value"]
43
+ new(
44
+ prop: prop,
45
+ value: value,
46
+ additional_properties: struct
47
+ )
48
+ end
49
+
50
+ # Serialize an instance of
51
+ # AutomationListResponseItemWorkflowItemConditionsConditionsItem to a JSON object
52
+ #
53
+ # @return [String]
54
+ def to_json(*_args)
55
+ @_field_set&.to_json
56
+ end
57
+
58
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
59
+ # hash and check each fields type against the current object's property
60
+ # definitions.
61
+ #
62
+ # @param obj [Object]
63
+ # @return [Void]
64
+ def self.validate_raw(obj:)
65
+ obj.prop&.is_a?(String) != false || raise("Passed value for field obj.prop is not the expected type, validation failed.")
66
+ obj.value&.is_a?(String) != false || raise("Passed value for field obj.value is not the expected type, validation failed.")
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Ittybit
7
+ class AutomationListResponseItemWorkflowItemConditionsNextItem
8
+ # @return [String]
9
+ attr_reader :kind
10
+ # @return [String]
11
+ attr_reader :ref
12
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
13
+ attr_reader :additional_properties
14
+ # @return [Object]
15
+ attr_reader :_field_set
16
+ protected :_field_set
17
+
18
+ OMIT = Object.new
19
+
20
+ # @param kind [String]
21
+ # @param ref [String]
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemConditionsNextItem]
24
+ def initialize(kind: OMIT, ref: OMIT, additional_properties: nil)
25
+ @kind = kind if kind != OMIT
26
+ @ref = ref if ref != OMIT
27
+ @additional_properties = additional_properties
28
+ @_field_set = { "kind": kind, "ref": ref }.reject do |_k, v|
29
+ v == OMIT
30
+ end
31
+ end
32
+
33
+ # Deserialize a JSON object to an instance of
34
+ # AutomationListResponseItemWorkflowItemConditionsNextItem
35
+ #
36
+ # @param json_object [String]
37
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemConditionsNextItem]
38
+ def self.from_json(json_object:)
39
+ struct = JSON.parse(json_object, object_class: OpenStruct)
40
+ parsed_json = JSON.parse(json_object)
41
+ kind = parsed_json["kind"]
42
+ ref = parsed_json["ref"]
43
+ new(
44
+ kind: kind,
45
+ ref: ref,
46
+ additional_properties: struct
47
+ )
48
+ end
49
+
50
+ # Serialize an instance of
51
+ # AutomationListResponseItemWorkflowItemConditionsNextItem to a JSON object
52
+ #
53
+ # @return [String]
54
+ def to_json(*_args)
55
+ @_field_set&.to_json
56
+ end
57
+
58
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
59
+ # hash and check each fields type against the current object's property
60
+ # definitions.
61
+ #
62
+ # @param obj [Object]
63
+ # @return [Void]
64
+ def self.validate_raw(obj:)
65
+ obj.kind&.is_a?(String) != false || raise("Passed value for field obj.kind is not the expected type, validation failed.")
66
+ obj.ref&.is_a?(String) != false || raise("Passed value for field obj.ref is not the expected type, validation failed.")
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "automation_list_response_item_workflow_item_ref_kind"
4
+ require_relative "automation_list_response_item_workflow_item_ref_next_item"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Ittybit
9
+ class AutomationListResponseItemWorkflowItemRef
10
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemRefKind]
11
+ attr_reader :kind
12
+ # @return [String]
13
+ attr_reader :ref
14
+ # @return [Array<Ittybit::AutomationListResponseItemWorkflowItemRefNextItem>]
15
+ attr_reader :next_
16
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
17
+ attr_reader :additional_properties
18
+ # @return [Object]
19
+ attr_reader :_field_set
20
+ protected :_field_set
21
+
22
+ OMIT = Object.new
23
+
24
+ # @param kind [Ittybit::AutomationListResponseItemWorkflowItemRefKind]
25
+ # @param ref [String]
26
+ # @param next_ [Array<Ittybit::AutomationListResponseItemWorkflowItemRefNextItem>]
27
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
28
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemRef]
29
+ def initialize(kind:, ref: OMIT, next_: OMIT, additional_properties: nil)
30
+ @kind = kind
31
+ @ref = ref if ref != OMIT
32
+ @next_ = next_ if next_ != OMIT
33
+ @additional_properties = additional_properties
34
+ @_field_set = { "kind": kind, "ref": ref, "next": next_ }.reject do |_k, v|
35
+ v == OMIT
36
+ end
37
+ end
38
+
39
+ # Deserialize a JSON object to an instance of
40
+ # AutomationListResponseItemWorkflowItemRef
41
+ #
42
+ # @param json_object [String]
43
+ # @return [Ittybit::AutomationListResponseItemWorkflowItemRef]
44
+ def self.from_json(json_object:)
45
+ struct = JSON.parse(json_object, object_class: OpenStruct)
46
+ parsed_json = JSON.parse(json_object)
47
+ kind = parsed_json["kind"]
48
+ ref = parsed_json["ref"]
49
+ next_ = parsed_json["next"]&.map do |item|
50
+ item = item.to_json
51
+ Ittybit::AutomationListResponseItemWorkflowItemRefNextItem.from_json(json_object: item)
52
+ end
53
+ new(
54
+ kind: kind,
55
+ ref: ref,
56
+ next_: next_,
57
+ additional_properties: struct
58
+ )
59
+ end
60
+
61
+ # Serialize an instance of AutomationListResponseItemWorkflowItemRef to a JSON
62
+ # object
63
+ #
64
+ # @return [String]
65
+ def to_json(*_args)
66
+ @_field_set&.to_json
67
+ end
68
+
69
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
70
+ # hash and check each fields type against the current object's property
71
+ # definitions.
72
+ #
73
+ # @param obj [Object]
74
+ # @return [Void]
75
+ def self.validate_raw(obj:)
76
+ obj.kind.is_a?(Ittybit::AutomationListResponseItemWorkflowItemRefKind) != false || raise("Passed value for field obj.kind is not the expected type, validation failed.")
77
+ obj.ref&.is_a?(String) != false || raise("Passed value for field obj.ref is not the expected type, validation failed.")
78
+ obj.next_&.is_a?(Array) != false || raise("Passed value for field obj.next_ is not the expected type, validation failed.")
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class AutomationListResponseItemWorkflowItemRefKind
5
+ VIDEO = "video"
6
+ IMAGE = "image"
7
+ AUDIO = "audio"
8
+ CHAPTERS = "chapters"
9
+ SUBTITLES = "subtitles"
10
+ THUMBNAILS = "thumbnails"
11
+ NSFW = "nsfw"
12
+ SPEECH = "speech"
13
+ DESCRIPTION = "description"
14
+ OUTLINE = "outline"
15
+ PROMPT = "prompt"
16
+ HTTP = "http"
17
+ end
18
+ end