daytona_api_client 0.204.0 → 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 (227) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +101 -0
  4. data/daytona_api_client.gemspec +4 -4
  5. data/lib/daytona_api_client/api/api_keys_api.rb +2 -2
  6. data/lib/daytona_api_client/api/audit_api.rb +98 -55
  7. data/lib/daytona_api_client/api/config_api.rb +1 -1
  8. data/lib/daytona_api_client/api/docker_registry_api.rb +67 -6
  9. data/lib/daytona_api_client/api/health_api.rb +3 -54
  10. data/lib/daytona_api_client/api/object_storage_api.rb +1 -1
  11. data/lib/daytona_api_client/api/organizations_api.rb +310 -1846
  12. data/lib/daytona_api_client/api/preview_api.rb +8 -202
  13. data/lib/daytona_api_client/api/runners_api.rb +22 -470
  14. data/lib/daytona_api_client/api/sandbox_api.rb +434 -2352
  15. data/lib/daytona_api_client/api/snapshots_api.rb +113 -42
  16. data/lib/daytona_api_client/api/toolbox_api.rb +5108 -0
  17. data/lib/daytona_api_client/api/users_api.rb +153 -89
  18. data/lib/daytona_api_client/api/volumes_api.rb +2 -2
  19. data/lib/daytona_api_client/api/webhooks_api.rb +164 -27
  20. data/lib/daytona_api_client/api/workspace_api.rb +955 -0
  21. data/lib/daytona_api_client/api_client.rb +4 -8
  22. data/lib/daytona_api_client/api_error.rb +1 -1
  23. data/lib/daytona_api_client/configuration.rb +2 -5
  24. data/lib/daytona_api_client/models/account_provider.rb +74 -3
  25. data/lib/daytona_api_client/models/announcement.rb +74 -3
  26. data/lib/daytona_api_client/models/api_key_list.rb +74 -3
  27. data/lib/daytona_api_client/models/api_key_response.rb +74 -3
  28. data/lib/daytona_api_client/models/audit_log.rb +75 -22
  29. data/lib/daytona_api_client/models/build_info.rb +78 -34
  30. data/lib/daytona_api_client/models/{create_runner_response.rb → command.rb} +104 -23
  31. data/lib/daytona_api_client/models/completion_context.rb +244 -0
  32. data/lib/daytona_api_client/models/completion_item.rb +289 -0
  33. data/lib/daytona_api_client/models/{paginated_traces.rb → completion_list.rb} +106 -91
  34. data/lib/daytona_api_client/models/compressed_screenshot_response.rb +256 -0
  35. data/lib/daytona_api_client/models/computer_use_start_response.rb +263 -0
  36. data/lib/daytona_api_client/models/{available_sandbox_class.rb → computer_use_status_response.rb} +97 -86
  37. data/lib/daytona_api_client/models/computer_use_stop_response.rb +263 -0
  38. data/lib/daytona_api_client/models/create_api_key.rb +75 -4
  39. data/lib/daytona_api_client/models/create_audit_log.rb +350 -0
  40. data/lib/daytona_api_client/models/create_build_info.rb +74 -3
  41. data/lib/daytona_api_client/models/create_docker_registry.rb +139 -7
  42. data/lib/daytona_api_client/models/create_linked_account.rb +74 -3
  43. data/lib/daytona_api_client/models/create_organization.rb +78 -34
  44. data/lib/daytona_api_client/models/create_organization_invitation.rb +76 -5
  45. data/lib/daytona_api_client/models/create_organization_quota.rb +78 -26
  46. data/lib/daytona_api_client/models/create_organization_role.rb +74 -3
  47. data/lib/daytona_api_client/models/create_runner.rb +386 -43
  48. data/lib/daytona_api_client/models/create_sandbox.rb +117 -86
  49. data/lib/daytona_api_client/models/{signed_port_preview_url.rb → create_session_request.rb} +93 -103
  50. data/lib/daytona_api_client/models/create_snapshot.rb +88 -61
  51. data/lib/daytona_api_client/models/create_user.rb +97 -40
  52. data/lib/daytona_api_client/models/create_volume.rb +74 -3
  53. data/lib/daytona_api_client/models/create_workspace.rb +411 -0
  54. data/lib/daytona_api_client/models/daytona_configuration.rb +78 -96
  55. data/lib/daytona_api_client/models/{runner_service_health.rb → display_info_response.rb} +95 -59
  56. data/lib/daytona_api_client/models/docker_registry.rb +76 -5
  57. data/lib/daytona_api_client/models/{paginated_jobs.rb → download_files.rb} +94 -100
  58. data/lib/daytona_api_client/models/{create_warm_pool.rb → execute_request.rb} +106 -62
  59. data/lib/daytona_api_client/models/execute_response.rb +263 -0
  60. data/lib/daytona_api_client/models/file_info.rb +417 -0
  61. data/lib/daytona_api_client/models/{secret.rb → file_status.rb} +122 -121
  62. data/lib/daytona_api_client/models/git_add_request.rb +264 -0
  63. data/lib/daytona_api_client/models/{admin_create_organization.rb → git_branch_request.rb} +95 -53
  64. data/lib/daytona_api_client/models/git_checkout_request.rb +261 -0
  65. data/lib/daytona_api_client/models/{toolbox_proxy_url.rb → git_clone_request.rb} +142 -10
  66. data/lib/daytona_api_client/models/{trace_span.rb → git_commit_info.rb} +148 -141
  67. data/lib/daytona_api_client/models/git_commit_request.rb +325 -0
  68. data/lib/daytona_api_client/models/{runner_healthcheck.rb → git_commit_response.rb} +92 -74
  69. data/lib/daytona_api_client/models/{create_secret.rb → git_delete_branch_request.rb} +106 -59
  70. data/lib/daytona_api_client/models/{snapshot_manager_credentials.rb → git_repo_request.rb} +96 -35
  71. data/lib/daytona_api_client/models/git_status.rb +290 -0
  72. data/lib/daytona_api_client/models/health_controller_check200_response.rb +74 -3
  73. data/lib/daytona_api_client/models/health_controller_check200_response_info_value.rb +74 -3
  74. data/lib/daytona_api_client/models/health_controller_check503_response.rb +74 -3
  75. data/lib/daytona_api_client/models/{oidc_id_p_config_response.rb → keyboard_hotkey_request.rb} +93 -59
  76. data/lib/daytona_api_client/models/{create_region_response.rb → keyboard_press_request.rb} +102 -63
  77. data/lib/daytona_api_client/models/keyboard_type_request.rb +246 -0
  78. data/lib/daytona_api_client/models/list_branch_response.rb +237 -0
  79. data/lib/daytona_api_client/models/lsp_completion_params.rb +325 -0
  80. data/lib/daytona_api_client/models/lsp_document_request.rb +290 -0
  81. data/lib/daytona_api_client/models/lsp_location.rb +261 -0
  82. data/lib/daytona_api_client/models/lsp_server_request.rb +263 -0
  83. data/lib/daytona_api_client/models/{create_sandbox_snapshot.rb → lsp_symbol.rb} +132 -22
  84. data/lib/daytona_api_client/models/match.rb +287 -0
  85. data/lib/daytona_api_client/models/mouse_click_request.rb +283 -0
  86. data/lib/daytona_api_client/models/mouse_click_response.rb +263 -0
  87. data/lib/daytona_api_client/models/mouse_drag_request.rb +327 -0
  88. data/lib/daytona_api_client/models/mouse_drag_response.rb +263 -0
  89. data/lib/daytona_api_client/models/mouse_move_request.rb +263 -0
  90. data/lib/daytona_api_client/models/mouse_move_response.rb +263 -0
  91. data/lib/daytona_api_client/models/mouse_position.rb +263 -0
  92. data/lib/daytona_api_client/models/mouse_scroll_request.rb +300 -0
  93. data/lib/daytona_api_client/models/{test_identity_provider_connection_response.rb → mouse_scroll_response.rb} +81 -30
  94. data/lib/daytona_api_client/models/oidc_config.rb +74 -3
  95. data/lib/daytona_api_client/models/organization.rb +159 -270
  96. data/lib/daytona_api_client/models/organization_invitation.rb +78 -7
  97. data/lib/daytona_api_client/models/organization_role.rb +74 -3
  98. data/lib/daytona_api_client/models/organization_sandbox_default_limited_network_egress.rb +74 -3
  99. data/lib/daytona_api_client/models/organization_suspension.rb +79 -10
  100. data/lib/daytona_api_client/models/organization_usage_overview.rb +220 -21
  101. data/lib/daytona_api_client/models/organization_user.rb +76 -5
  102. data/lib/daytona_api_client/models/paginated_audit_logs.rb +78 -17
  103. data/lib/daytona_api_client/models/{paginated_sandboxes_deprecated.rb → paginated_sandboxes.rb} +76 -5
  104. data/lib/daytona_api_client/models/paginated_snapshots.rb +74 -3
  105. data/lib/daytona_api_client/models/{paginated_logs.rb → paginated_snapshots_dto.rb} +77 -10
  106. data/lib/daytona_api_client/models/port_preview_url.rb +88 -34
  107. data/lib/daytona_api_client/models/position.rb +261 -0
  108. data/lib/daytona_api_client/models/posthog_config.rb +74 -3
  109. data/lib/daytona_api_client/models/process_errors_response.rb +263 -0
  110. data/lib/daytona_api_client/models/process_logs_response.rb +263 -0
  111. data/lib/daytona_api_client/models/process_restart_response.rb +263 -0
  112. data/lib/daytona_api_client/models/process_status_response.rb +263 -0
  113. data/lib/daytona_api_client/models/{update_last_activity.rb → project_dir_response.rb} +83 -13
  114. data/lib/daytona_api_client/models/{pending_sso_link.rb → pty_create_request.rb} +114 -109
  115. data/lib/daytona_api_client/models/pty_create_response.rb +236 -0
  116. data/lib/daytona_api_client/models/{metric_data_point.rb → pty_list_response.rb} +95 -49
  117. data/lib/daytona_api_client/models/pty_resize_request.rb +263 -0
  118. data/lib/daytona_api_client/models/pty_session_info.rb +425 -0
  119. data/lib/daytona_api_client/models/range.rb +261 -0
  120. data/lib/daytona_api_client/models/region.rb +78 -181
  121. data/lib/daytona_api_client/models/{regenerate_api_key_response.rb → region_screenshot_response.rb} +113 -22
  122. data/lib/daytona_api_client/models/registry_push_access_dto.rb +74 -3
  123. data/lib/daytona_api_client/models/replace_request.rb +289 -0
  124. data/lib/daytona_api_client/models/{oidc_id_p_config.rb → replace_result.rb} +95 -88
  125. data/lib/daytona_api_client/models/runner.rb +215 -155
  126. data/lib/daytona_api_client/models/runner_snapshot_dto.rb +91 -3
  127. data/lib/daytona_api_client/models/runner_state.rb +3 -4
  128. data/lib/daytona_api_client/models/sandbox.rb +101 -174
  129. data/lib/daytona_api_client/models/sandbox_class.rb +6 -8
  130. data/lib/daytona_api_client/models/sandbox_desired_state.rb +3 -5
  131. data/lib/daytona_api_client/models/{create_region.rb → sandbox_info.rb} +113 -38
  132. data/lib/daytona_api_client/models/sandbox_labels.rb +74 -3
  133. data/lib/daytona_api_client/models/sandbox_state.rb +3 -10
  134. data/lib/daytona_api_client/models/sandbox_volume.rb +79 -18
  135. data/lib/daytona_api_client/models/screenshot_response.rb +256 -0
  136. data/lib/daytona_api_client/models/{audit_target_scenario.rb → search_files_response.rb} +95 -66
  137. data/lib/daytona_api_client/models/send_webhook_dto.rb +75 -26
  138. data/lib/daytona_api_client/models/session.rb +251 -0
  139. data/lib/daytona_api_client/models/{list_sandboxes_response.rb → session_execute_request.rb} +110 -34
  140. data/lib/daytona_api_client/models/{organization_sso_enabled.rb → session_execute_response.rb} +104 -30
  141. data/lib/daytona_api_client/models/set_snapshot_general_status_dto.rb +74 -3
  142. data/lib/daytona_api_client/models/snapshot_dto.rb +78 -84
  143. data/lib/daytona_api_client/models/snapshot_state.rb +6 -5
  144. data/lib/daytona_api_client/models/ssh_access_dto.rb +78 -34
  145. data/lib/daytona_api_client/models/ssh_access_validation_dto.rb +98 -7
  146. data/lib/daytona_api_client/models/storage_access_dto.rb +78 -34
  147. data/lib/daytona_api_client/models/update_docker_registry.rb +74 -3
  148. data/lib/daytona_api_client/models/update_organization_invitation.rb +76 -5
  149. data/lib/daytona_api_client/models/update_organization_member_access.rb +76 -5
  150. data/lib/daytona_api_client/models/update_organization_quota.rb +115 -131
  151. data/lib/daytona_api_client/models/update_organization_role.rb +74 -3
  152. data/lib/daytona_api_client/models/update_sandbox_state_dto.rb +80 -29
  153. data/lib/daytona_api_client/models/user.rb +75 -31
  154. data/lib/daytona_api_client/models/{list_secrets_response.rb → user_home_dir_response.rb} +83 -72
  155. data/lib/daytona_api_client/models/user_public_key.rb +74 -3
  156. data/lib/daytona_api_client/models/volume_dto.rb +74 -3
  157. data/lib/daytona_api_client/models/volume_state.rb +3 -4
  158. data/lib/daytona_api_client/models/webhook_app_portal_access.rb +75 -31
  159. data/lib/daytona_api_client/models/{preview_warning.rb → webhook_controller_get_status200_response.rb} +76 -23
  160. data/lib/daytona_api_client/models/webhook_initialization_status.rb +74 -3
  161. data/lib/daytona_api_client/models/windows_response.rb +265 -0
  162. data/lib/daytona_api_client/models/{update_job_status.rb → work_dir_response.rb} +83 -72
  163. data/lib/daytona_api_client/models/{sandbox_list_item.rb → workspace.rb} +299 -200
  164. data/lib/daytona_api_client/version.rb +2 -2
  165. data/lib/daytona_api_client.rb +76 -87
  166. data/project.json +13 -38
  167. metadata +81 -96
  168. data/.gitignore +0 -39
  169. data/.openapi-generator/FILES +0 -176
  170. data/.openapi-generator/VERSION +0 -1
  171. data/.openapi-generator-ignore +0 -31
  172. data/.rspec +0 -2
  173. data/.rubocop.yml +0 -148
  174. data/fix-gemspec.sh +0 -11
  175. data/lib/daytona_api_client/api/admin_api.rb +0 -1618
  176. data/lib/daytona_api_client/api/jobs_api.rb +0 -299
  177. data/lib/daytona_api_client/api/regions_api.rb +0 -77
  178. data/lib/daytona_api_client/api/secret_api.rb +0 -441
  179. data/lib/daytona_api_client/api/warm_pools_api.rb +0 -286
  180. data/lib/daytona_api_client/api_model_base.rb +0 -88
  181. data/lib/daytona_api_client/models/admin_create_runner.rb +0 -326
  182. data/lib/daytona_api_client/models/admin_get_webhook_status200_response.rb +0 -147
  183. data/lib/daytona_api_client/models/audit_scenarios.rb +0 -167
  184. data/lib/daytona_api_client/models/create_identity_provider.rb +0 -269
  185. data/lib/daytona_api_client/models/create_organization_region_quota.rb +0 -386
  186. data/lib/daytona_api_client/models/date_filter.rb +0 -178
  187. data/lib/daytona_api_client/models/fork_sandbox.rb +0 -148
  188. data/lib/daytona_api_client/models/gpu_type.rb +0 -44
  189. data/lib/daytona_api_client/models/identity_provider.rb +0 -439
  190. data/lib/daytona_api_client/models/int_filter.rb +0 -222
  191. data/lib/daytona_api_client/models/job.rb +0 -366
  192. data/lib/daytona_api_client/models/job_status.rb +0 -43
  193. data/lib/daytona_api_client/models/job_type.rb +0 -55
  194. data/lib/daytona_api_client/models/log_entry.rb +0 -334
  195. data/lib/daytona_api_client/models/metric_series.rb +0 -194
  196. data/lib/daytona_api_client/models/metrics_response.rb +0 -167
  197. data/lib/daytona_api_client/models/organization_preview_warning.rb +0 -165
  198. data/lib/daytona_api_client/models/otel_config.rb +0 -188
  199. data/lib/daytona_api_client/models/poll_jobs_response.rb +0 -167
  200. data/lib/daytona_api_client/models/rate_limit_config.rb +0 -188
  201. data/lib/daytona_api_client/models/rate_limit_entry.rb +0 -158
  202. data/lib/daytona_api_client/models/region_quota.rb +0 -453
  203. data/lib/daytona_api_client/models/region_type.rb +0 -42
  204. data/lib/daytona_api_client/models/region_usage_overview.rb +0 -518
  205. data/lib/daytona_api_client/models/resize_sandbox.rb +0 -225
  206. data/lib/daytona_api_client/models/resolve_sandbox_secrets200_response_inner.rb +0 -176
  207. data/lib/daytona_api_client/models/runner_class.rb +0 -40
  208. data/lib/daytona_api_client/models/runner_full.rb +0 -757
  209. data/lib/daytona_api_client/models/runner_health_metrics.rb +0 -482
  210. data/lib/daytona_api_client/models/sandbox_list_sort_direction.rb +0 -41
  211. data/lib/daytona_api_client/models/sandbox_list_sort_field.rb +0 -45
  212. data/lib/daytona_api_client/models/sso_oidc_config.rb +0 -192
  213. data/lib/daytona_api_client/models/string_filter.rb +0 -182
  214. data/lib/daytona_api_client/models/test_identity_provider_connection.rb +0 -165
  215. data/lib/daytona_api_client/models/trace_summary.rb +0 -310
  216. data/lib/daytona_api_client/models/update_identity_provider.rb +0 -212
  217. data/lib/daytona_api_client/models/update_oidc_id_p_config.rb +0 -178
  218. data/lib/daytona_api_client/models/update_organization_default_region.rb +0 -165
  219. data/lib/daytona_api_client/models/update_organization_region_quota.rb +0 -313
  220. data/lib/daytona_api_client/models/update_region.rb +0 -171
  221. data/lib/daytona_api_client/models/update_sandbox_network_settings.rb +0 -168
  222. data/lib/daytona_api_client/models/update_sandbox_secrets.rb +0 -167
  223. data/lib/daytona_api_client/models/update_secret.rb +0 -170
  224. data/lib/daytona_api_client/models/update_warm_pool.rb +0 -174
  225. data/lib/daytona_api_client/models/url.rb +0 -165
  226. data/lib/daytona_api_client/models/warm_pool.rb +0 -490
  227. data/lib/daytona_api_client/models/webhook_event.rb +0 -46
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0
7
7
  Contact: support@daytona.com
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.21.0
9
+ Generator version: 7.12.0
10
10
 
11
11
  =end
12
12
 
@@ -14,42 +14,24 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module DaytonaApiClient
17
- class SandboxListItem < ApiModelBase
17
+ class Workspace
18
18
  # The ID of the sandbox
19
19
  attr_accessor :id
20
20
 
21
21
  # The organization ID of the sandbox
22
22
  attr_accessor :organization_id
23
23
 
24
- # The name of the sandbox
25
- attr_accessor :name
26
-
27
- # The target environment for the sandbox
28
- attr_accessor :target
29
-
30
- # The runner ID of the sandbox
31
- attr_accessor :runner_id
32
-
33
- # The class of the sandbox
34
- attr_accessor :sandbox_class
35
-
36
- # The state of the sandbox
37
- attr_accessor :state
38
-
39
- # The desired state of the sandbox
40
- attr_accessor :desired_state
41
-
42
24
  # The snapshot used for the sandbox
43
25
  attr_accessor :snapshot
44
26
 
45
27
  # The user associated with the project
46
28
  attr_accessor :user
47
29
 
48
- # The error reason of the sandbox
49
- attr_accessor :error_reason
30
+ # Environment variables for the sandbox
31
+ attr_accessor :env
50
32
 
51
- # Whether the sandbox error is recoverable.
52
- attr_accessor :recoverable
33
+ # Labels for the sandbox
34
+ attr_accessor :labels
53
35
 
54
36
  # Whether the sandbox http preview is public
55
37
  attr_accessor :public
@@ -60,8 +42,8 @@ module DaytonaApiClient
60
42
  # Comma-separated list of allowed CIDR network addresses for the sandbox
61
43
  attr_accessor :network_allow_list
62
44
 
63
- # Comma-separated list of allowed domains for the sandbox
64
- attr_accessor :domain_allow_list
45
+ # The target environment for the sandbox
46
+ attr_accessor :target
65
47
 
66
48
  # The CPU quota for the sandbox
67
49
  attr_accessor :cpu
@@ -69,35 +51,44 @@ module DaytonaApiClient
69
51
  # The GPU quota for the sandbox
70
52
  attr_accessor :gpu
71
53
 
72
- # The GPU type assigned to the sandbox
73
- attr_accessor :gpu_type
74
-
75
54
  # The memory quota for the sandbox
76
55
  attr_accessor :memory
77
56
 
78
57
  # The disk quota for the sandbox
79
58
  attr_accessor :disk
80
59
 
81
- # Labels for the sandbox
82
- attr_accessor :labels
60
+ # The state of the sandbox
61
+ attr_accessor :state
62
+
63
+ # The desired state of the sandbox
64
+ attr_accessor :desired_state
65
+
66
+ # The error reason of the sandbox
67
+ attr_accessor :error_reason
83
68
 
84
69
  # The state of the backup
85
70
  attr_accessor :backup_state
86
71
 
72
+ # The creation timestamp of the last backup
73
+ attr_accessor :backup_created_at
74
+
87
75
  # Auto-stop interval in minutes (0 means disabled)
88
76
  attr_accessor :auto_stop_interval
89
77
 
90
- # Auto-pause interval in minutes (0 means disabled)
91
- attr_accessor :auto_pause_interval
92
-
93
78
  # Auto-archive interval in minutes
94
79
  attr_accessor :auto_archive_interval
95
80
 
96
81
  # Auto-delete interval in minutes (negative value means disabled, 0 means delete immediately upon stopping)
97
82
  attr_accessor :auto_delete_interval
98
83
 
99
- # When the sandbox will be automatically destroyed, regardless of its state (only set when a TTL is configured)
100
- attr_accessor :auto_destroy_at
84
+ # The domain name of the runner
85
+ attr_accessor :runner_domain
86
+
87
+ # Array of volumes attached to the sandbox
88
+ attr_accessor :volumes
89
+
90
+ # Build information for the sandbox
91
+ attr_accessor :build_info
101
92
 
102
93
  # The creation timestamp of the sandbox
103
94
  attr_accessor :created_at
@@ -105,17 +96,26 @@ module DaytonaApiClient
105
96
  # The last update timestamp of the sandbox
106
97
  attr_accessor :updated_at
107
98
 
108
- # The last activity timestamp of the sandbox
109
- attr_accessor :last_activity_at
99
+ # The class of the sandbox
100
+ attr_accessor :_class
110
101
 
111
102
  # The version of the daemon running in the sandbox
112
103
  attr_accessor :daemon_version
113
104
 
114
- # Id of the warm pool this sandbox waits in; set only while it is an unclaimed member
115
- attr_accessor :warm_pool_id
105
+ # The name of the workspace
106
+ attr_accessor :name
107
+
108
+ # The image used for the workspace
109
+ attr_accessor :image
110
+
111
+ # The state of the snapshot
112
+ attr_accessor :snapshot_state
113
+
114
+ # The creation timestamp of the last snapshot
115
+ attr_accessor :snapshot_created_at
116
116
 
117
- # The toolbox proxy URL for the sandbox
118
- attr_accessor :toolbox_proxy_url
117
+ # Additional information about the sandbox
118
+ attr_accessor :info
119
119
 
120
120
  class EnumAttributeValidator
121
121
  attr_reader :datatype
@@ -144,38 +144,38 @@ module DaytonaApiClient
144
144
  {
145
145
  :'id' => :'id',
146
146
  :'organization_id' => :'organizationId',
147
- :'name' => :'name',
148
- :'target' => :'target',
149
- :'runner_id' => :'runnerId',
150
- :'sandbox_class' => :'sandboxClass',
151
- :'state' => :'state',
152
- :'desired_state' => :'desiredState',
153
147
  :'snapshot' => :'snapshot',
154
148
  :'user' => :'user',
155
- :'error_reason' => :'errorReason',
156
- :'recoverable' => :'recoverable',
149
+ :'env' => :'env',
150
+ :'labels' => :'labels',
157
151
  :'public' => :'public',
158
152
  :'network_block_all' => :'networkBlockAll',
159
153
  :'network_allow_list' => :'networkAllowList',
160
- :'domain_allow_list' => :'domainAllowList',
154
+ :'target' => :'target',
161
155
  :'cpu' => :'cpu',
162
156
  :'gpu' => :'gpu',
163
- :'gpu_type' => :'gpuType',
164
157
  :'memory' => :'memory',
165
158
  :'disk' => :'disk',
166
- :'labels' => :'labels',
159
+ :'state' => :'state',
160
+ :'desired_state' => :'desiredState',
161
+ :'error_reason' => :'errorReason',
167
162
  :'backup_state' => :'backupState',
163
+ :'backup_created_at' => :'backupCreatedAt',
168
164
  :'auto_stop_interval' => :'autoStopInterval',
169
- :'auto_pause_interval' => :'autoPauseInterval',
170
165
  :'auto_archive_interval' => :'autoArchiveInterval',
171
166
  :'auto_delete_interval' => :'autoDeleteInterval',
172
- :'auto_destroy_at' => :'autoDestroyAt',
167
+ :'runner_domain' => :'runnerDomain',
168
+ :'volumes' => :'volumes',
169
+ :'build_info' => :'buildInfo',
173
170
  :'created_at' => :'createdAt',
174
171
  :'updated_at' => :'updatedAt',
175
- :'last_activity_at' => :'lastActivityAt',
172
+ :'_class' => :'class',
176
173
  :'daemon_version' => :'daemonVersion',
177
- :'warm_pool_id' => :'warmPoolId',
178
- :'toolbox_proxy_url' => :'toolboxProxyUrl'
174
+ :'name' => :'name',
175
+ :'image' => :'image',
176
+ :'snapshot_state' => :'snapshotState',
177
+ :'snapshot_created_at' => :'snapshotCreatedAt',
178
+ :'info' => :'info'
179
179
  }
180
180
  end
181
181
 
@@ -194,38 +194,38 @@ module DaytonaApiClient
194
194
  {
195
195
  :'id' => :'String',
196
196
  :'organization_id' => :'String',
197
- :'name' => :'String',
198
- :'target' => :'String',
199
- :'runner_id' => :'String',
200
- :'sandbox_class' => :'SandboxClass',
201
- :'state' => :'SandboxState',
202
- :'desired_state' => :'SandboxDesiredState',
203
197
  :'snapshot' => :'String',
204
198
  :'user' => :'String',
205
- :'error_reason' => :'String',
206
- :'recoverable' => :'Boolean',
199
+ :'env' => :'Hash<String, String>',
200
+ :'labels' => :'Hash<String, String>',
207
201
  :'public' => :'Boolean',
208
202
  :'network_block_all' => :'Boolean',
209
203
  :'network_allow_list' => :'String',
210
- :'domain_allow_list' => :'String',
204
+ :'target' => :'String',
211
205
  :'cpu' => :'Float',
212
206
  :'gpu' => :'Float',
213
- :'gpu_type' => :'GpuType',
214
207
  :'memory' => :'Float',
215
208
  :'disk' => :'Float',
216
- :'labels' => :'Hash<String, String>',
209
+ :'state' => :'SandboxState',
210
+ :'desired_state' => :'SandboxDesiredState',
211
+ :'error_reason' => :'String',
217
212
  :'backup_state' => :'String',
213
+ :'backup_created_at' => :'String',
218
214
  :'auto_stop_interval' => :'Float',
219
- :'auto_pause_interval' => :'Float',
220
215
  :'auto_archive_interval' => :'Float',
221
216
  :'auto_delete_interval' => :'Float',
222
- :'auto_destroy_at' => :'String',
217
+ :'runner_domain' => :'String',
218
+ :'volumes' => :'Array<SandboxVolume>',
219
+ :'build_info' => :'BuildInfo',
223
220
  :'created_at' => :'String',
224
221
  :'updated_at' => :'String',
225
- :'last_activity_at' => :'String',
222
+ :'_class' => :'String',
226
223
  :'daemon_version' => :'String',
227
- :'warm_pool_id' => :'String',
228
- :'toolbox_proxy_url' => :'String'
224
+ :'name' => :'String',
225
+ :'image' => :'String',
226
+ :'snapshot_state' => :'String',
227
+ :'snapshot_created_at' => :'String',
228
+ :'info' => :'SandboxInfo'
229
229
  }
230
230
  end
231
231
 
@@ -239,14 +239,14 @@ module DaytonaApiClient
239
239
  # @param [Hash] attributes Model attributes in the form of hash
240
240
  def initialize(attributes = {})
241
241
  if (!attributes.is_a?(Hash))
242
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::SandboxListItem` initialize method"
242
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::Workspace` initialize method"
243
243
  end
244
244
 
245
245
  # check to see if the attribute exists and convert string to symbol for hash key
246
246
  acceptable_attribute_map = self.class.acceptable_attribute_map
247
247
  attributes = attributes.each_with_object({}) { |(k, v), h|
248
248
  if (!acceptable_attribute_map.key?(k.to_sym))
249
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::SandboxListItem`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
249
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::Workspace`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
250
250
  end
251
251
  h[k.to_sym] = v
252
252
  }
@@ -263,34 +263,6 @@ module DaytonaApiClient
263
263
  self.organization_id = nil
264
264
  end
265
265
 
266
- if attributes.key?(:'name')
267
- self.name = attributes[:'name']
268
- else
269
- self.name = nil
270
- end
271
-
272
- if attributes.key?(:'target')
273
- self.target = attributes[:'target']
274
- else
275
- self.target = nil
276
- end
277
-
278
- if attributes.key?(:'runner_id')
279
- self.runner_id = attributes[:'runner_id']
280
- end
281
-
282
- if attributes.key?(:'sandbox_class')
283
- self.sandbox_class = attributes[:'sandbox_class']
284
- end
285
-
286
- if attributes.key?(:'state')
287
- self.state = attributes[:'state']
288
- end
289
-
290
- if attributes.key?(:'desired_state')
291
- self.desired_state = attributes[:'desired_state']
292
- end
293
-
294
266
  if attributes.key?(:'snapshot')
295
267
  self.snapshot = attributes[:'snapshot']
296
268
  end
@@ -301,12 +273,20 @@ module DaytonaApiClient
301
273
  self.user = nil
302
274
  end
303
275
 
304
- if attributes.key?(:'error_reason')
305
- self.error_reason = attributes[:'error_reason']
276
+ if attributes.key?(:'env')
277
+ if (value = attributes[:'env']).is_a?(Hash)
278
+ self.env = value
279
+ end
280
+ else
281
+ self.env = nil
306
282
  end
307
283
 
308
- if attributes.key?(:'recoverable')
309
- self.recoverable = attributes[:'recoverable']
284
+ if attributes.key?(:'labels')
285
+ if (value = attributes[:'labels']).is_a?(Hash)
286
+ self.labels = value
287
+ end
288
+ else
289
+ self.labels = nil
310
290
  end
311
291
 
312
292
  if attributes.key?(:'public')
@@ -325,8 +305,10 @@ module DaytonaApiClient
325
305
  self.network_allow_list = attributes[:'network_allow_list']
326
306
  end
327
307
 
328
- if attributes.key?(:'domain_allow_list')
329
- self.domain_allow_list = attributes[:'domain_allow_list']
308
+ if attributes.key?(:'target')
309
+ self.target = attributes[:'target']
310
+ else
311
+ self.target = nil
330
312
  end
331
313
 
332
314
  if attributes.key?(:'cpu')
@@ -341,10 +323,6 @@ module DaytonaApiClient
341
323
  self.gpu = nil
342
324
  end
343
325
 
344
- if attributes.key?(:'gpu_type')
345
- self.gpu_type = attributes[:'gpu_type']
346
- end
347
-
348
326
  if attributes.key?(:'memory')
349
327
  self.memory = attributes[:'memory']
350
328
  else
@@ -357,24 +335,28 @@ module DaytonaApiClient
357
335
  self.disk = nil
358
336
  end
359
337
 
360
- if attributes.key?(:'labels')
361
- if (value = attributes[:'labels']).is_a?(Hash)
362
- self.labels = value
363
- end
364
- else
365
- self.labels = nil
338
+ if attributes.key?(:'state')
339
+ self.state = attributes[:'state']
340
+ end
341
+
342
+ if attributes.key?(:'desired_state')
343
+ self.desired_state = attributes[:'desired_state']
344
+ end
345
+
346
+ if attributes.key?(:'error_reason')
347
+ self.error_reason = attributes[:'error_reason']
366
348
  end
367
349
 
368
350
  if attributes.key?(:'backup_state')
369
351
  self.backup_state = attributes[:'backup_state']
370
352
  end
371
353
 
372
- if attributes.key?(:'auto_stop_interval')
373
- self.auto_stop_interval = attributes[:'auto_stop_interval']
354
+ if attributes.key?(:'backup_created_at')
355
+ self.backup_created_at = attributes[:'backup_created_at']
374
356
  end
375
357
 
376
- if attributes.key?(:'auto_pause_interval')
377
- self.auto_pause_interval = attributes[:'auto_pause_interval']
358
+ if attributes.key?(:'auto_stop_interval')
359
+ self.auto_stop_interval = attributes[:'auto_stop_interval']
378
360
  end
379
361
 
380
362
  if attributes.key?(:'auto_archive_interval')
@@ -385,8 +367,18 @@ module DaytonaApiClient
385
367
  self.auto_delete_interval = attributes[:'auto_delete_interval']
386
368
  end
387
369
 
388
- if attributes.key?(:'auto_destroy_at')
389
- self.auto_destroy_at = attributes[:'auto_destroy_at']
370
+ if attributes.key?(:'runner_domain')
371
+ self.runner_domain = attributes[:'runner_domain']
372
+ end
373
+
374
+ if attributes.key?(:'volumes')
375
+ if (value = attributes[:'volumes']).is_a?(Array)
376
+ self.volumes = value
377
+ end
378
+ end
379
+
380
+ if attributes.key?(:'build_info')
381
+ self.build_info = attributes[:'build_info']
390
382
  end
391
383
 
392
384
  if attributes.key?(:'created_at')
@@ -397,22 +389,34 @@ module DaytonaApiClient
397
389
  self.updated_at = attributes[:'updated_at']
398
390
  end
399
391
 
400
- if attributes.key?(:'last_activity_at')
401
- self.last_activity_at = attributes[:'last_activity_at']
392
+ if attributes.key?(:'_class')
393
+ self._class = attributes[:'_class']
402
394
  end
403
395
 
404
396
  if attributes.key?(:'daemon_version')
405
397
  self.daemon_version = attributes[:'daemon_version']
406
398
  end
407
399
 
408
- if attributes.key?(:'warm_pool_id')
409
- self.warm_pool_id = attributes[:'warm_pool_id']
400
+ if attributes.key?(:'name')
401
+ self.name = attributes[:'name']
402
+ else
403
+ self.name = ''
410
404
  end
411
405
 
412
- if attributes.key?(:'toolbox_proxy_url')
413
- self.toolbox_proxy_url = attributes[:'toolbox_proxy_url']
414
- else
415
- self.toolbox_proxy_url = nil
406
+ if attributes.key?(:'image')
407
+ self.image = attributes[:'image']
408
+ end
409
+
410
+ if attributes.key?(:'snapshot_state')
411
+ self.snapshot_state = attributes[:'snapshot_state']
412
+ end
413
+
414
+ if attributes.key?(:'snapshot_created_at')
415
+ self.snapshot_created_at = attributes[:'snapshot_created_at']
416
+ end
417
+
418
+ if attributes.key?(:'info')
419
+ self.info = attributes[:'info']
416
420
  end
417
421
  end
418
422
 
@@ -429,16 +433,16 @@ module DaytonaApiClient
429
433
  invalid_properties.push('invalid value for "organization_id", organization_id cannot be nil.')
430
434
  end
431
435
 
432
- if @name.nil?
433
- invalid_properties.push('invalid value for "name", name cannot be nil.')
436
+ if @user.nil?
437
+ invalid_properties.push('invalid value for "user", user cannot be nil.')
434
438
  end
435
439
 
436
- if @target.nil?
437
- invalid_properties.push('invalid value for "target", target cannot be nil.')
440
+ if @env.nil?
441
+ invalid_properties.push('invalid value for "env", env cannot be nil.')
438
442
  end
439
443
 
440
- if @user.nil?
441
- invalid_properties.push('invalid value for "user", user cannot be nil.')
444
+ if @labels.nil?
445
+ invalid_properties.push('invalid value for "labels", labels cannot be nil.')
442
446
  end
443
447
 
444
448
  if @public.nil?
@@ -449,6 +453,10 @@ module DaytonaApiClient
449
453
  invalid_properties.push('invalid value for "network_block_all", network_block_all cannot be nil.')
450
454
  end
451
455
 
456
+ if @target.nil?
457
+ invalid_properties.push('invalid value for "target", target cannot be nil.')
458
+ end
459
+
452
460
  if @cpu.nil?
453
461
  invalid_properties.push('invalid value for "cpu", cpu cannot be nil.')
454
462
  end
@@ -465,12 +473,8 @@ module DaytonaApiClient
465
473
  invalid_properties.push('invalid value for "disk", disk cannot be nil.')
466
474
  end
467
475
 
468
- if @labels.nil?
469
- invalid_properties.push('invalid value for "labels", labels cannot be nil.')
470
- end
471
-
472
- if @toolbox_proxy_url.nil?
473
- invalid_properties.push('invalid value for "toolbox_proxy_url", toolbox_proxy_url cannot be nil.')
476
+ if @name.nil?
477
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
474
478
  end
475
479
 
476
480
  invalid_properties
@@ -482,19 +486,23 @@ module DaytonaApiClient
482
486
  warn '[DEPRECATED] the `valid?` method is obsolete'
483
487
  return false if @id.nil?
484
488
  return false if @organization_id.nil?
485
- return false if @name.nil?
486
- return false if @target.nil?
487
489
  return false if @user.nil?
490
+ return false if @env.nil?
491
+ return false if @labels.nil?
488
492
  return false if @public.nil?
489
493
  return false if @network_block_all.nil?
494
+ return false if @target.nil?
490
495
  return false if @cpu.nil?
491
496
  return false if @gpu.nil?
492
497
  return false if @memory.nil?
493
498
  return false if @disk.nil?
494
- return false if @labels.nil?
495
- backup_state_validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error", "unknown_default_open_api"])
499
+ backup_state_validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
496
500
  return false unless backup_state_validator.valid?(@backup_state)
497
- return false if @toolbox_proxy_url.nil?
501
+ _class_validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
502
+ return false unless _class_validator.valid?(@_class)
503
+ return false if @name.nil?
504
+ snapshot_state_validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
505
+ return false unless snapshot_state_validator.valid?(@snapshot_state)
498
506
  true
499
507
  end
500
508
 
@@ -519,33 +527,33 @@ module DaytonaApiClient
519
527
  end
520
528
 
521
529
  # Custom attribute writer method with validation
522
- # @param [Object] name Value to be assigned
523
- def name=(name)
524
- if name.nil?
525
- fail ArgumentError, 'name cannot be nil'
530
+ # @param [Object] user Value to be assigned
531
+ def user=(user)
532
+ if user.nil?
533
+ fail ArgumentError, 'user cannot be nil'
526
534
  end
527
535
 
528
- @name = name
536
+ @user = user
529
537
  end
530
538
 
531
539
  # Custom attribute writer method with validation
532
- # @param [Object] target Value to be assigned
533
- def target=(target)
534
- if target.nil?
535
- fail ArgumentError, 'target cannot be nil'
540
+ # @param [Object] env Value to be assigned
541
+ def env=(env)
542
+ if env.nil?
543
+ fail ArgumentError, 'env cannot be nil'
536
544
  end
537
545
 
538
- @target = target
546
+ @env = env
539
547
  end
540
548
 
541
549
  # Custom attribute writer method with validation
542
- # @param [Object] user Value to be assigned
543
- def user=(user)
544
- if user.nil?
545
- fail ArgumentError, 'user cannot be nil'
550
+ # @param [Object] labels Value to be assigned
551
+ def labels=(labels)
552
+ if labels.nil?
553
+ fail ArgumentError, 'labels cannot be nil'
546
554
  end
547
555
 
548
- @user = user
556
+ @labels = labels
549
557
  end
550
558
 
551
559
  # Custom attribute writer method with validation
@@ -568,6 +576,16 @@ module DaytonaApiClient
568
576
  @network_block_all = network_block_all
569
577
  end
570
578
 
579
+ # Custom attribute writer method with validation
580
+ # @param [Object] target Value to be assigned
581
+ def target=(target)
582
+ if target.nil?
583
+ fail ArgumentError, 'target cannot be nil'
584
+ end
585
+
586
+ @target = target
587
+ end
588
+
571
589
  # Custom attribute writer method with validation
572
590
  # @param [Object] cpu Value to be assigned
573
591
  def cpu=(cpu)
@@ -608,34 +626,44 @@ module DaytonaApiClient
608
626
  @disk = disk
609
627
  end
610
628
 
611
- # Custom attribute writer method with validation
612
- # @param [Object] labels Value to be assigned
613
- def labels=(labels)
614
- if labels.nil?
615
- fail ArgumentError, 'labels cannot be nil'
616
- end
617
-
618
- @labels = labels
619
- end
620
-
621
629
  # Custom attribute writer method checking allowed values (enum).
622
630
  # @param [Object] backup_state Object to be assigned
623
631
  def backup_state=(backup_state)
624
- validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error", "unknown_default_open_api"])
632
+ validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
625
633
  unless validator.valid?(backup_state)
626
634
  fail ArgumentError, "invalid value for \"backup_state\", must be one of #{validator.allowable_values}."
627
635
  end
628
636
  @backup_state = backup_state
629
637
  end
630
638
 
639
+ # Custom attribute writer method checking allowed values (enum).
640
+ # @param [Object] _class Object to be assigned
641
+ def _class=(_class)
642
+ validator = EnumAttributeValidator.new('String', ["small", "medium", "large"])
643
+ unless validator.valid?(_class)
644
+ fail ArgumentError, "invalid value for \"_class\", must be one of #{validator.allowable_values}."
645
+ end
646
+ @_class = _class
647
+ end
648
+
631
649
  # Custom attribute writer method with validation
632
- # @param [Object] toolbox_proxy_url Value to be assigned
633
- def toolbox_proxy_url=(toolbox_proxy_url)
634
- if toolbox_proxy_url.nil?
635
- fail ArgumentError, 'toolbox_proxy_url cannot be nil'
650
+ # @param [Object] name Value to be assigned
651
+ def name=(name)
652
+ if name.nil?
653
+ fail ArgumentError, 'name cannot be nil'
636
654
  end
637
655
 
638
- @toolbox_proxy_url = toolbox_proxy_url
656
+ @name = name
657
+ end
658
+
659
+ # Custom attribute writer method checking allowed values (enum).
660
+ # @param [Object] snapshot_state Object to be assigned
661
+ def snapshot_state=(snapshot_state)
662
+ validator = EnumAttributeValidator.new('String', ["None", "Pending", "InProgress", "Completed", "Error"])
663
+ unless validator.valid?(snapshot_state)
664
+ fail ArgumentError, "invalid value for \"snapshot_state\", must be one of #{validator.allowable_values}."
665
+ end
666
+ @snapshot_state = snapshot_state
639
667
  end
640
668
 
641
669
  # Checks equality by comparing each attribute.
@@ -645,38 +673,38 @@ module DaytonaApiClient
645
673
  self.class == o.class &&
646
674
  id == o.id &&
647
675
  organization_id == o.organization_id &&
648
- name == o.name &&
649
- target == o.target &&
650
- runner_id == o.runner_id &&
651
- sandbox_class == o.sandbox_class &&
652
- state == o.state &&
653
- desired_state == o.desired_state &&
654
676
  snapshot == o.snapshot &&
655
677
  user == o.user &&
656
- error_reason == o.error_reason &&
657
- recoverable == o.recoverable &&
678
+ env == o.env &&
679
+ labels == o.labels &&
658
680
  public == o.public &&
659
681
  network_block_all == o.network_block_all &&
660
682
  network_allow_list == o.network_allow_list &&
661
- domain_allow_list == o.domain_allow_list &&
683
+ target == o.target &&
662
684
  cpu == o.cpu &&
663
685
  gpu == o.gpu &&
664
- gpu_type == o.gpu_type &&
665
686
  memory == o.memory &&
666
687
  disk == o.disk &&
667
- labels == o.labels &&
688
+ state == o.state &&
689
+ desired_state == o.desired_state &&
690
+ error_reason == o.error_reason &&
668
691
  backup_state == o.backup_state &&
692
+ backup_created_at == o.backup_created_at &&
669
693
  auto_stop_interval == o.auto_stop_interval &&
670
- auto_pause_interval == o.auto_pause_interval &&
671
694
  auto_archive_interval == o.auto_archive_interval &&
672
695
  auto_delete_interval == o.auto_delete_interval &&
673
- auto_destroy_at == o.auto_destroy_at &&
696
+ runner_domain == o.runner_domain &&
697
+ volumes == o.volumes &&
698
+ build_info == o.build_info &&
674
699
  created_at == o.created_at &&
675
700
  updated_at == o.updated_at &&
676
- last_activity_at == o.last_activity_at &&
701
+ _class == o._class &&
677
702
  daemon_version == o.daemon_version &&
678
- warm_pool_id == o.warm_pool_id &&
679
- toolbox_proxy_url == o.toolbox_proxy_url
703
+ name == o.name &&
704
+ image == o.image &&
705
+ snapshot_state == o.snapshot_state &&
706
+ snapshot_created_at == o.snapshot_created_at &&
707
+ info == o.info
680
708
  end
681
709
 
682
710
  # @see the `==` method
@@ -688,7 +716,7 @@ module DaytonaApiClient
688
716
  # Calculates hash code according to all attributes.
689
717
  # @return [Integer] Hash code
690
718
  def hash
691
- [id, organization_id, name, target, runner_id, sandbox_class, state, desired_state, snapshot, user, error_reason, recoverable, public, network_block_all, network_allow_list, domain_allow_list, cpu, gpu, gpu_type, memory, disk, labels, backup_state, auto_stop_interval, auto_pause_interval, auto_archive_interval, auto_delete_interval, auto_destroy_at, created_at, updated_at, last_activity_at, daemon_version, warm_pool_id, toolbox_proxy_url].hash
719
+ [id, organization_id, snapshot, user, env, labels, public, network_block_all, network_allow_list, target, cpu, gpu, memory, disk, state, desired_state, error_reason, backup_state, backup_created_at, auto_stop_interval, auto_archive_interval, auto_delete_interval, runner_domain, volumes, build_info, created_at, updated_at, _class, daemon_version, name, image, snapshot_state, snapshot_created_at, info].hash
692
720
  end
693
721
 
694
722
  # Builds the object from hash
@@ -714,6 +742,61 @@ module DaytonaApiClient
714
742
  new(transformed_hash)
715
743
  end
716
744
 
745
+ # Deserializes the data based on type
746
+ # @param string type Data type
747
+ # @param string value Value to be deserialized
748
+ # @return [Object] Deserialized data
749
+ def self._deserialize(type, value)
750
+ case type.to_sym
751
+ when :Time
752
+ Time.parse(value)
753
+ when :Date
754
+ Date.parse(value)
755
+ when :String
756
+ value.to_s
757
+ when :Integer
758
+ value.to_i
759
+ when :Float
760
+ value.to_f
761
+ when :Boolean
762
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
763
+ true
764
+ else
765
+ false
766
+ end
767
+ when :Object
768
+ # generic object (usually a Hash), return directly
769
+ value
770
+ when /\AArray<(?<inner_type>.+)>\z/
771
+ inner_type = Regexp.last_match[:inner_type]
772
+ value.map { |v| _deserialize(inner_type, v) }
773
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
774
+ k_type = Regexp.last_match[:k_type]
775
+ v_type = Regexp.last_match[:v_type]
776
+ {}.tap do |hash|
777
+ value.each do |k, v|
778
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
779
+ end
780
+ end
781
+ else # model
782
+ # models (e.g. Pet) or oneOf
783
+ klass = DaytonaApiClient.const_get(type)
784
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
785
+ end
786
+ end
787
+
788
+ # Returns the string representation of the object
789
+ # @return [String] String presentation of the object
790
+ def to_s
791
+ to_hash.to_s
792
+ end
793
+
794
+ # to_body is an alias to to_hash (backward compatibility)
795
+ # @return [Hash] Returns the object in the form of hash
796
+ def to_body
797
+ to_hash
798
+ end
799
+
717
800
  # Returns the object in the form of hash
718
801
  # @return [Hash] Returns the object in the form of hash
719
802
  def to_hash
@@ -730,6 +813,22 @@ module DaytonaApiClient
730
813
  hash
731
814
  end
732
815
 
816
+ # Outputs non-array value in the form of hash
817
+ # For object, use to_hash. Otherwise, just return the value
818
+ # @param [Object] value Any valid value
819
+ # @return [Hash] Returns the value in the form of hash
820
+ def _to_hash(value)
821
+ if value.is_a?(Array)
822
+ value.compact.map { |v| _to_hash(v) }
823
+ elsif value.is_a?(Hash)
824
+ {}.tap do |hash|
825
+ value.each { |k, v| hash[k] = _to_hash(v) }
826
+ end
827
+ elsif value.respond_to? :to_hash
828
+ value.to_hash
829
+ else
830
+ value
831
+ end
832
+ end
733
833
  end
734
-
735
834
  end