cyberdesk 0.2.7__py3-none-any.whl → 1.2.0__py3-none-any.whl

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.

Potentially problematic release.


This version of cyberdesk might be problematic. Click here for more details.

Files changed (228) hide show
  1. cyberdesk/__init__.py +45 -7
  2. cyberdesk/client.py +779 -70
  3. cyberdesk-1.2.0.dist-info/METADATA +274 -0
  4. cyberdesk-1.2.0.dist-info/RECORD +113 -0
  5. {cyberdesk-0.2.7.dist-info → cyberdesk-1.2.0.dist-info}/WHEEL +1 -1
  6. openapi_client/{api_reference_client → cyberdesk_cloud_client}/__init__.py +8 -8
  7. openapi_client/{api_reference_client → cyberdesk_cloud_client}/api/__init__.py +1 -1
  8. openapi_client/{api_reference_client/api/desktop → cyberdesk_cloud_client/api/computer}/__init__.py +1 -1
  9. openapi_client/cyberdesk_cloud_client/api/computer/get_display_dimensions_v1_computer_machine_id_display_dimensions_get.py +163 -0
  10. openapi_client/cyberdesk_cloud_client/api/computer/get_mouse_position_v1_computer_machine_id_input_mouse_position_get.py +163 -0
  11. openapi_client/cyberdesk_cloud_client/api/computer/get_screenshot_v1_computer_machine_id_display_screenshot_get.py +158 -0
  12. openapi_client/cyberdesk_cloud_client/api/computer/keyboard_key_v1_computer_machine_id_input_keyboard_key_post.py +183 -0
  13. openapi_client/cyberdesk_cloud_client/api/computer/keyboard_type_v1_computer_machine_id_input_keyboard_type_post.py +183 -0
  14. openapi_client/cyberdesk_cloud_client/api/computer/mouse_click_v1_computer_machine_id_input_mouse_click_post.py +187 -0
  15. openapi_client/cyberdesk_cloud_client/api/computer/mouse_move_v1_computer_machine_id_input_mouse_move_post.py +183 -0
  16. openapi_client/cyberdesk_cloud_client/api/connections/__init__.py +1 -0
  17. openapi_client/cyberdesk_cloud_client/api/connections/create_connection_v1_connections_post.py +180 -0
  18. openapi_client/cyberdesk_cloud_client/api/connections/delete_connection_v1_connections_connection_id_delete.py +170 -0
  19. openapi_client/cyberdesk_cloud_client/api/connections/get_connection_v1_connections_connection_id_get.py +172 -0
  20. openapi_client/cyberdesk_cloud_client/api/connections/list_connections_v1_connections_get.py +244 -0
  21. openapi_client/cyberdesk_cloud_client/api/connections/update_connection_v1_connections_connection_id_patch.py +198 -0
  22. openapi_client/cyberdesk_cloud_client/api/default/__init__.py +1 -0
  23. openapi_client/cyberdesk_cloud_client/api/default/root_get.py +83 -0
  24. openapi_client/cyberdesk_cloud_client/api/health/__init__.py +1 -0
  25. openapi_client/cyberdesk_cloud_client/api/health/database_health_check_v1_health_db_get.py +146 -0
  26. openapi_client/cyberdesk_cloud_client/api/health/health_check_v1_health_get.py +144 -0
  27. openapi_client/cyberdesk_cloud_client/api/machines/__init__.py +1 -0
  28. openapi_client/cyberdesk_cloud_client/api/machines/create_machine_v1_machines_post.py +180 -0
  29. openapi_client/cyberdesk_cloud_client/api/machines/delete_machine_v1_machines_machine_id_delete.py +174 -0
  30. openapi_client/cyberdesk_cloud_client/api/machines/get_machine_v1_machines_machine_id_get.py +172 -0
  31. openapi_client/cyberdesk_cloud_client/api/machines/list_machines_v1_machines_get.py +217 -0
  32. openapi_client/cyberdesk_cloud_client/api/machines/update_machine_v1_machines_machine_id_patch.py +198 -0
  33. openapi_client/cyberdesk_cloud_client/api/request_logs/__init__.py +1 -0
  34. openapi_client/cyberdesk_cloud_client/api/request_logs/create_request_log_v1_request_logs_post.py +184 -0
  35. openapi_client/cyberdesk_cloud_client/api/request_logs/delete_request_log_v1_request_logs_log_id_delete.py +170 -0
  36. openapi_client/cyberdesk_cloud_client/api/request_logs/get_request_log_v1_request_logs_log_id_get.py +172 -0
  37. openapi_client/cyberdesk_cloud_client/api/request_logs/list_request_logs_v1_request_logs_get.py +257 -0
  38. openapi_client/cyberdesk_cloud_client/api/request_logs/update_request_log_v1_request_logs_log_id_patch.py +202 -0
  39. openapi_client/cyberdesk_cloud_client/api/runs/__init__.py +1 -0
  40. openapi_client/cyberdesk_cloud_client/api/runs/create_run_v1_runs_post.py +188 -0
  41. openapi_client/cyberdesk_cloud_client/api/runs/delete_run_v1_runs_run_id_delete.py +170 -0
  42. openapi_client/cyberdesk_cloud_client/api/runs/get_run_v1_runs_run_id_get.py +176 -0
  43. openapi_client/cyberdesk_cloud_client/api/runs/list_runs_v1_runs_get.py +266 -0
  44. openapi_client/cyberdesk_cloud_client/api/runs/update_run_v1_runs_run_id_patch.py +202 -0
  45. openapi_client/cyberdesk_cloud_client/api/test/__init__.py +1 -0
  46. openapi_client/cyberdesk_cloud_client/api/test/dummy_test_endpoint_v1_test_post.py +156 -0
  47. openapi_client/cyberdesk_cloud_client/api/trajectories/__init__.py +1 -0
  48. openapi_client/cyberdesk_cloud_client/api/trajectories/create_trajectory_v1_trajectories_post.py +184 -0
  49. openapi_client/cyberdesk_cloud_client/api/trajectories/delete_trajectory_v1_trajectories_trajectory_id_delete.py +170 -0
  50. openapi_client/cyberdesk_cloud_client/api/trajectories/get_latest_trajectory_for_workflow_v1_workflows_workflow_id_latest_trajectory_get.py +176 -0
  51. openapi_client/cyberdesk_cloud_client/api/trajectories/get_trajectory_v1_trajectories_trajectory_id_get.py +176 -0
  52. openapi_client/cyberdesk_cloud_client/api/trajectories/list_trajectories_v1_trajectories_get.py +221 -0
  53. openapi_client/cyberdesk_cloud_client/api/trajectories/update_trajectory_v1_trajectories_trajectory_id_patch.py +198 -0
  54. openapi_client/cyberdesk_cloud_client/api/workflows/__init__.py +1 -0
  55. openapi_client/cyberdesk_cloud_client/api/workflows/create_workflow_v1_workflows_post.py +180 -0
  56. openapi_client/cyberdesk_cloud_client/api/workflows/delete_workflow_v1_workflows_workflow_id_delete.py +174 -0
  57. openapi_client/cyberdesk_cloud_client/api/workflows/get_workflow_v1_workflows_workflow_id_get.py +172 -0
  58. openapi_client/cyberdesk_cloud_client/api/workflows/get_workflow_versions_v1_workflows_workflow_id_versions_get.py +185 -0
  59. openapi_client/cyberdesk_cloud_client/api/workflows/list_workflows_v1_workflows_get.py +194 -0
  60. openapi_client/cyberdesk_cloud_client/api/workflows/update_workflow_v1_workflows_workflow_id_patch.py +202 -0
  61. openapi_client/{api_reference_client → cyberdesk_cloud_client}/client.py +268 -268
  62. openapi_client/{api_reference_client → cyberdesk_cloud_client}/errors.py +16 -16
  63. openapi_client/cyberdesk_cloud_client/models/__init__.py +105 -0
  64. openapi_client/cyberdesk_cloud_client/models/connection_create.py +111 -0
  65. openapi_client/cyberdesk_cloud_client/models/connection_response.py +171 -0
  66. openapi_client/{api_reference_client/models/get_v1_desktop_id_response_404_status.py → cyberdesk_cloud_client/models/connection_status.py} +10 -8
  67. openapi_client/cyberdesk_cloud_client/models/database_health_check_v1_health_db_get_response_database_health_check_v1_health_db_get.py +44 -0
  68. openapi_client/{api_reference_client/models/post_v1_desktop_id_bash_action_body.py → cyberdesk_cloud_client/models/display_dimensions.py} +67 -59
  69. openapi_client/cyberdesk_cloud_client/models/dummy_test_endpoint_v1_test_post_response_dummy_test_endpoint_v1_test_post.py +44 -0
  70. openapi_client/cyberdesk_cloud_client/models/get_workflow_versions_v1_workflows_workflow_id_versions_get_response_200_item.py +44 -0
  71. openapi_client/cyberdesk_cloud_client/models/health_check_v1_health_get_response_health_check_v1_health_get.py +44 -0
  72. openapi_client/cyberdesk_cloud_client/models/http_validation_error.py +75 -0
  73. openapi_client/{api_reference_client/models/post_v1_desktop_body.py → cyberdesk_cloud_client/models/keyboard_key_request.py} +59 -59
  74. openapi_client/{api_reference_client/models/post_v1_desktop_id_stop_response_200.py → cyberdesk_cloud_client/models/keyboard_type_request.py} +59 -62
  75. openapi_client/cyberdesk_cloud_client/models/machine_create.py +130 -0
  76. openapi_client/cyberdesk_cloud_client/models/machine_response.py +182 -0
  77. openapi_client/{api_reference_client/models/get_v1_desktop_id_response_403_status.py → cyberdesk_cloud_client/models/machine_status.py} +10 -8
  78. openapi_client/cyberdesk_cloud_client/models/machine_update.py +195 -0
  79. openapi_client/cyberdesk_cloud_client/models/mouse_click_request.py +109 -0
  80. openapi_client/{api_reference_client/models/post_v1_desktop_id_computer_action_drag_mouse_action_end.py → cyberdesk_cloud_client/models/mouse_move_request.py} +67 -71
  81. openapi_client/{api_reference_client/models/post_v1_desktop_id_computer_action_drag_mouse_action_start.py → cyberdesk_cloud_client/models/mouse_position.py} +67 -71
  82. openapi_client/cyberdesk_cloud_client/models/paginated_response.py +84 -0
  83. openapi_client/cyberdesk_cloud_client/models/paginated_response_connection_response.py +97 -0
  84. openapi_client/cyberdesk_cloud_client/models/paginated_response_machine_response.py +97 -0
  85. openapi_client/cyberdesk_cloud_client/models/paginated_response_run_response.py +97 -0
  86. openapi_client/cyberdesk_cloud_client/models/paginated_response_trajectory_response.py +97 -0
  87. openapi_client/cyberdesk_cloud_client/models/paginated_response_workflow_response.py +97 -0
  88. openapi_client/cyberdesk_cloud_client/models/request_log_create.py +187 -0
  89. openapi_client/cyberdesk_cloud_client/models/request_log_response.py +230 -0
  90. openapi_client/cyberdesk_cloud_client/models/request_log_update.py +164 -0
  91. openapi_client/cyberdesk_cloud_client/models/run_create.py +94 -0
  92. openapi_client/cyberdesk_cloud_client/models/run_response.py +245 -0
  93. openapi_client/cyberdesk_cloud_client/models/run_response_output_data_type_0.py +44 -0
  94. openapi_client/cyberdesk_cloud_client/models/run_response_run_message_history_type_0_item.py +44 -0
  95. openapi_client/{api_reference_client/models/post_v1_desktop_response_200_status.py → cyberdesk_cloud_client/models/run_status.py} +12 -11
  96. openapi_client/cyberdesk_cloud_client/models/run_update.py +226 -0
  97. openapi_client/cyberdesk_cloud_client/models/run_update_output_data_type_0.py +44 -0
  98. openapi_client/cyberdesk_cloud_client/models/run_update_run_message_history_type_0_item.py +44 -0
  99. openapi_client/cyberdesk_cloud_client/models/trajectory_create.py +83 -0
  100. openapi_client/cyberdesk_cloud_client/models/trajectory_create_trajectory_data_item.py +44 -0
  101. openapi_client/cyberdesk_cloud_client/models/trajectory_response.py +117 -0
  102. openapi_client/cyberdesk_cloud_client/models/trajectory_response_trajectory_data_item.py +44 -0
  103. openapi_client/cyberdesk_cloud_client/models/trajectory_update.py +99 -0
  104. openapi_client/cyberdesk_cloud_client/models/trajectory_update_trajectory_data_type_0_item.py +44 -0
  105. openapi_client/{api_reference_client/models/post_v1_desktop_id_computer_action_wait_action.py → cyberdesk_cloud_client/models/validation_error.py} +88 -70
  106. openapi_client/cyberdesk_cloud_client/models/workflow_create.py +82 -0
  107. openapi_client/cyberdesk_cloud_client/models/workflow_response.py +164 -0
  108. openapi_client/cyberdesk_cloud_client/models/workflow_response_old_versions_type_0_item.py +44 -0
  109. openapi_client/cyberdesk_cloud_client/models/workflow_update.py +92 -0
  110. openapi_client/{api_reference_client → cyberdesk_cloud_client}/types.py +54 -46
  111. cyberdesk/actions.py +0 -118
  112. cyberdesk/types.py +0 -50
  113. cyberdesk-0.2.7.dist-info/METADATA +0 -228
  114. cyberdesk-0.2.7.dist-info/RECORD +0 -136
  115. openapi_client/api_reference_client/api/desktop/get_v1_desktop_id.py +0 -293
  116. openapi_client/api_reference_client/api/desktop/post_v1_desktop.py +0 -294
  117. openapi_client/api_reference_client/api/desktop/post_v1_desktop_id_bash_action.py +0 -307
  118. openapi_client/api_reference_client/api/desktop/post_v1_desktop_id_computer_action.py +0 -419
  119. openapi_client/api_reference_client/api/desktop/post_v1_desktop_id_stop.py +0 -288
  120. openapi_client/api_reference_client/models/__init__.py +0 -249
  121. openapi_client/api_reference_client/models/get_v1_desktop_id_response_200.py +0 -104
  122. openapi_client/api_reference_client/models/get_v1_desktop_id_response_200_status.py +0 -11
  123. openapi_client/api_reference_client/models/get_v1_desktop_id_response_400.py +0 -69
  124. openapi_client/api_reference_client/models/get_v1_desktop_id_response_400_status.py +0 -8
  125. openapi_client/api_reference_client/models/get_v1_desktop_id_response_401.py +0 -69
  126. openapi_client/api_reference_client/models/get_v1_desktop_id_response_401_status.py +0 -8
  127. openapi_client/api_reference_client/models/get_v1_desktop_id_response_403.py +0 -69
  128. openapi_client/api_reference_client/models/get_v1_desktop_id_response_404.py +0 -69
  129. openapi_client/api_reference_client/models/get_v1_desktop_id_response_409.py +0 -69
  130. openapi_client/api_reference_client/models/get_v1_desktop_id_response_409_status.py +0 -8
  131. openapi_client/api_reference_client/models/get_v1_desktop_id_response_429.py +0 -69
  132. openapi_client/api_reference_client/models/get_v1_desktop_id_response_429_status.py +0 -8
  133. openapi_client/api_reference_client/models/get_v1_desktop_id_response_500.py +0 -69
  134. openapi_client/api_reference_client/models/get_v1_desktop_id_response_500_status.py +0 -8
  135. openapi_client/api_reference_client/models/get_v1_desktop_id_response_502.py +0 -69
  136. openapi_client/api_reference_client/models/get_v1_desktop_id_response_502_status.py +0 -8
  137. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_200.py +0 -79
  138. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_400.py +0 -69
  139. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_400_status.py +0 -8
  140. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_401.py +0 -69
  141. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_401_status.py +0 -8
  142. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_403.py +0 -69
  143. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_403_status.py +0 -8
  144. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_404.py +0 -69
  145. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_404_status.py +0 -8
  146. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_409.py +0 -69
  147. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_409_status.py +0 -8
  148. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_429.py +0 -69
  149. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_429_status.py +0 -8
  150. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_500.py +0 -69
  151. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_500_status.py +0 -8
  152. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_502.py +0 -69
  153. openapi_client/api_reference_client/models/post_v1_desktop_id_bash_action_response_502_status.py +0 -8
  154. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_click_mouse_action.py +0 -133
  155. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_click_mouse_action_button.py +0 -10
  156. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_click_mouse_action_click_type.py +0 -10
  157. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_click_mouse_action_type.py +0 -8
  158. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_drag_mouse_action.py +0 -98
  159. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_drag_mouse_action_type.py +0 -8
  160. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_get_cursor_position_action.py +0 -64
  161. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_get_cursor_position_action_type.py +0 -8
  162. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_move_mouse_action.py +0 -80
  163. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_move_mouse_action_type.py +0 -8
  164. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_press_keys_action.py +0 -109
  165. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_press_keys_action_key_action_type.py +0 -10
  166. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_press_keys_action_type.py +0 -8
  167. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_200.py +0 -79
  168. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_400.py +0 -71
  169. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_400_status.py +0 -8
  170. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_401.py +0 -71
  171. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_401_status.py +0 -8
  172. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_403.py +0 -71
  173. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_403_status.py +0 -8
  174. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_404.py +0 -71
  175. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_404_status.py +0 -8
  176. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_409.py +0 -71
  177. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_409_status.py +0 -8
  178. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_429.py +0 -71
  179. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_429_status.py +0 -8
  180. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_500.py +0 -71
  181. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_500_status.py +0 -8
  182. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_502.py +0 -71
  183. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_response_502_status.py +0 -8
  184. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_screenshot_action.py +0 -63
  185. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_screenshot_action_type.py +0 -8
  186. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_scroll_action.py +0 -81
  187. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_scroll_action_direction.py +0 -11
  188. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_scroll_action_type.py +0 -8
  189. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_type_text_action.py +0 -71
  190. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_type_text_action_type.py +0 -8
  191. openapi_client/api_reference_client/models/post_v1_desktop_id_computer_action_wait_action_type.py +0 -8
  192. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_200_status.py +0 -11
  193. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_400.py +0 -69
  194. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_400_status.py +0 -8
  195. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_401.py +0 -69
  196. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_401_status.py +0 -8
  197. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_403.py +0 -69
  198. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_403_status.py +0 -8
  199. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_404.py +0 -69
  200. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_404_status.py +0 -8
  201. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_409.py +0 -69
  202. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_409_status.py +0 -8
  203. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_429.py +0 -69
  204. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_429_status.py +0 -8
  205. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_500.py +0 -69
  206. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_500_status.py +0 -8
  207. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_502.py +0 -69
  208. openapi_client/api_reference_client/models/post_v1_desktop_id_stop_response_502_status.py +0 -8
  209. openapi_client/api_reference_client/models/post_v1_desktop_response_200.py +0 -70
  210. openapi_client/api_reference_client/models/post_v1_desktop_response_400.py +0 -69
  211. openapi_client/api_reference_client/models/post_v1_desktop_response_400_status.py +0 -8
  212. openapi_client/api_reference_client/models/post_v1_desktop_response_401.py +0 -69
  213. openapi_client/api_reference_client/models/post_v1_desktop_response_401_status.py +0 -8
  214. openapi_client/api_reference_client/models/post_v1_desktop_response_403.py +0 -69
  215. openapi_client/api_reference_client/models/post_v1_desktop_response_403_status.py +0 -8
  216. openapi_client/api_reference_client/models/post_v1_desktop_response_404.py +0 -69
  217. openapi_client/api_reference_client/models/post_v1_desktop_response_404_status.py +0 -8
  218. openapi_client/api_reference_client/models/post_v1_desktop_response_409.py +0 -69
  219. openapi_client/api_reference_client/models/post_v1_desktop_response_409_status.py +0 -8
  220. openapi_client/api_reference_client/models/post_v1_desktop_response_429.py +0 -69
  221. openapi_client/api_reference_client/models/post_v1_desktop_response_429_status.py +0 -8
  222. openapi_client/api_reference_client/models/post_v1_desktop_response_500.py +0 -69
  223. openapi_client/api_reference_client/models/post_v1_desktop_response_500_status.py +0 -8
  224. openapi_client/api_reference_client/models/post_v1_desktop_response_502.py +0 -69
  225. openapi_client/api_reference_client/models/post_v1_desktop_response_502_status.py +0 -8
  226. {cyberdesk-0.2.7.dist-info → cyberdesk-1.2.0.dist-info}/licenses/LICENSE +0 -0
  227. {cyberdesk-0.2.7.dist-info → cyberdesk-1.2.0.dist-info}/top_level.txt +0 -0
  228. /openapi_client/{api_reference_client → cyberdesk_cloud_client}/py.typed +0 -0
@@ -0,0 +1,164 @@
1
+ import datetime
2
+ from collections.abc import Mapping
3
+ from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
4
+ from uuid import UUID
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+ from dateutil.parser import isoparse
9
+
10
+ from ..types import UNSET, Unset
11
+
12
+ if TYPE_CHECKING:
13
+ from ..models.workflow_response_old_versions_type_0_item import WorkflowResponseOldVersionsType0Item
14
+
15
+
16
+ T = TypeVar("T", bound="WorkflowResponse")
17
+
18
+
19
+ @_attrs_define
20
+ class WorkflowResponse:
21
+ """Workflow response schema
22
+
23
+ Attributes:
24
+ main_prompt (str):
25
+ id (UUID):
26
+ user_id (UUID):
27
+ created_at (datetime.datetime):
28
+ updated_at (datetime.datetime):
29
+ cleanup_prompt (Union[None, Unset, str]):
30
+ old_versions (Union[None, Unset, list['WorkflowResponseOldVersionsType0Item']]):
31
+ """
32
+
33
+ main_prompt: str
34
+ id: UUID
35
+ user_id: UUID
36
+ created_at: datetime.datetime
37
+ updated_at: datetime.datetime
38
+ cleanup_prompt: Union[None, Unset, str] = UNSET
39
+ old_versions: Union[None, Unset, list["WorkflowResponseOldVersionsType0Item"]] = UNSET
40
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
41
+
42
+ def to_dict(self) -> dict[str, Any]:
43
+ main_prompt = self.main_prompt
44
+
45
+ id = str(self.id)
46
+
47
+ user_id = str(self.user_id)
48
+
49
+ created_at = self.created_at.isoformat()
50
+
51
+ updated_at = self.updated_at.isoformat()
52
+
53
+ cleanup_prompt: Union[None, Unset, str]
54
+ if isinstance(self.cleanup_prompt, Unset):
55
+ cleanup_prompt = UNSET
56
+ else:
57
+ cleanup_prompt = self.cleanup_prompt
58
+
59
+ old_versions: Union[None, Unset, list[dict[str, Any]]]
60
+ if isinstance(self.old_versions, Unset):
61
+ old_versions = UNSET
62
+ elif isinstance(self.old_versions, list):
63
+ old_versions = []
64
+ for old_versions_type_0_item_data in self.old_versions:
65
+ old_versions_type_0_item = old_versions_type_0_item_data.to_dict()
66
+ old_versions.append(old_versions_type_0_item)
67
+
68
+ else:
69
+ old_versions = self.old_versions
70
+
71
+ field_dict: dict[str, Any] = {}
72
+ field_dict.update(self.additional_properties)
73
+ field_dict.update(
74
+ {
75
+ "main_prompt": main_prompt,
76
+ "id": id,
77
+ "user_id": user_id,
78
+ "created_at": created_at,
79
+ "updated_at": updated_at,
80
+ }
81
+ )
82
+ if cleanup_prompt is not UNSET:
83
+ field_dict["cleanup_prompt"] = cleanup_prompt
84
+ if old_versions is not UNSET:
85
+ field_dict["old_versions"] = old_versions
86
+
87
+ return field_dict
88
+
89
+ @classmethod
90
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
91
+ from ..models.workflow_response_old_versions_type_0_item import WorkflowResponseOldVersionsType0Item
92
+
93
+ d = dict(src_dict)
94
+ main_prompt = d.pop("main_prompt")
95
+
96
+ id = UUID(d.pop("id"))
97
+
98
+ user_id = UUID(d.pop("user_id"))
99
+
100
+ created_at = isoparse(d.pop("created_at"))
101
+
102
+ updated_at = isoparse(d.pop("updated_at"))
103
+
104
+ def _parse_cleanup_prompt(data: object) -> Union[None, Unset, str]:
105
+ if data is None:
106
+ return data
107
+ if isinstance(data, Unset):
108
+ return data
109
+ return cast(Union[None, Unset, str], data)
110
+
111
+ cleanup_prompt = _parse_cleanup_prompt(d.pop("cleanup_prompt", UNSET))
112
+
113
+ def _parse_old_versions(data: object) -> Union[None, Unset, list["WorkflowResponseOldVersionsType0Item"]]:
114
+ if data is None:
115
+ return data
116
+ if isinstance(data, Unset):
117
+ return data
118
+ try:
119
+ if not isinstance(data, list):
120
+ raise TypeError()
121
+ old_versions_type_0 = []
122
+ _old_versions_type_0 = data
123
+ for old_versions_type_0_item_data in _old_versions_type_0:
124
+ old_versions_type_0_item = WorkflowResponseOldVersionsType0Item.from_dict(
125
+ old_versions_type_0_item_data
126
+ )
127
+
128
+ old_versions_type_0.append(old_versions_type_0_item)
129
+
130
+ return old_versions_type_0
131
+ except: # noqa: E722
132
+ pass
133
+ return cast(Union[None, Unset, list["WorkflowResponseOldVersionsType0Item"]], data)
134
+
135
+ old_versions = _parse_old_versions(d.pop("old_versions", UNSET))
136
+
137
+ workflow_response = cls(
138
+ main_prompt=main_prompt,
139
+ id=id,
140
+ user_id=user_id,
141
+ created_at=created_at,
142
+ updated_at=updated_at,
143
+ cleanup_prompt=cleanup_prompt,
144
+ old_versions=old_versions,
145
+ )
146
+
147
+ workflow_response.additional_properties = d
148
+ return workflow_response
149
+
150
+ @property
151
+ def additional_keys(self) -> list[str]:
152
+ return list(self.additional_properties.keys())
153
+
154
+ def __getitem__(self, key: str) -> Any:
155
+ return self.additional_properties[key]
156
+
157
+ def __setitem__(self, key: str, value: Any) -> None:
158
+ self.additional_properties[key] = value
159
+
160
+ def __delitem__(self, key: str) -> None:
161
+ del self.additional_properties[key]
162
+
163
+ def __contains__(self, key: str) -> bool:
164
+ return key in self.additional_properties
@@ -0,0 +1,44 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ T = TypeVar("T", bound="WorkflowResponseOldVersionsType0Item")
8
+
9
+
10
+ @_attrs_define
11
+ class WorkflowResponseOldVersionsType0Item:
12
+ """ """
13
+
14
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
15
+
16
+ def to_dict(self) -> dict[str, Any]:
17
+ field_dict: dict[str, Any] = {}
18
+ field_dict.update(self.additional_properties)
19
+
20
+ return field_dict
21
+
22
+ @classmethod
23
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
24
+ d = dict(src_dict)
25
+ workflow_response_old_versions_type_0_item = cls()
26
+
27
+ workflow_response_old_versions_type_0_item.additional_properties = d
28
+ return workflow_response_old_versions_type_0_item
29
+
30
+ @property
31
+ def additional_keys(self) -> list[str]:
32
+ return list(self.additional_properties.keys())
33
+
34
+ def __getitem__(self, key: str) -> Any:
35
+ return self.additional_properties[key]
36
+
37
+ def __setitem__(self, key: str, value: Any) -> None:
38
+ self.additional_properties[key] = value
39
+
40
+ def __delitem__(self, key: str) -> None:
41
+ del self.additional_properties[key]
42
+
43
+ def __contains__(self, key: str) -> bool:
44
+ return key in self.additional_properties
@@ -0,0 +1,92 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union, cast
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="WorkflowUpdate")
10
+
11
+
12
+ @_attrs_define
13
+ class WorkflowUpdate:
14
+ """Schema for updating a workflow
15
+
16
+ Attributes:
17
+ main_prompt (Union[None, Unset, str]):
18
+ cleanup_prompt (Union[None, Unset, str]):
19
+ """
20
+
21
+ main_prompt: Union[None, Unset, str] = UNSET
22
+ cleanup_prompt: Union[None, Unset, str] = UNSET
23
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
24
+
25
+ def to_dict(self) -> dict[str, Any]:
26
+ main_prompt: Union[None, Unset, str]
27
+ if isinstance(self.main_prompt, Unset):
28
+ main_prompt = UNSET
29
+ else:
30
+ main_prompt = self.main_prompt
31
+
32
+ cleanup_prompt: Union[None, Unset, str]
33
+ if isinstance(self.cleanup_prompt, Unset):
34
+ cleanup_prompt = UNSET
35
+ else:
36
+ cleanup_prompt = self.cleanup_prompt
37
+
38
+ field_dict: dict[str, Any] = {}
39
+ field_dict.update(self.additional_properties)
40
+ field_dict.update({})
41
+ if main_prompt is not UNSET:
42
+ field_dict["main_prompt"] = main_prompt
43
+ if cleanup_prompt is not UNSET:
44
+ field_dict["cleanup_prompt"] = cleanup_prompt
45
+
46
+ return field_dict
47
+
48
+ @classmethod
49
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
50
+ d = dict(src_dict)
51
+
52
+ def _parse_main_prompt(data: object) -> Union[None, Unset, str]:
53
+ if data is None:
54
+ return data
55
+ if isinstance(data, Unset):
56
+ return data
57
+ return cast(Union[None, Unset, str], data)
58
+
59
+ main_prompt = _parse_main_prompt(d.pop("main_prompt", UNSET))
60
+
61
+ def _parse_cleanup_prompt(data: object) -> Union[None, Unset, str]:
62
+ if data is None:
63
+ return data
64
+ if isinstance(data, Unset):
65
+ return data
66
+ return cast(Union[None, Unset, str], data)
67
+
68
+ cleanup_prompt = _parse_cleanup_prompt(d.pop("cleanup_prompt", UNSET))
69
+
70
+ workflow_update = cls(
71
+ main_prompt=main_prompt,
72
+ cleanup_prompt=cleanup_prompt,
73
+ )
74
+
75
+ workflow_update.additional_properties = d
76
+ return workflow_update
77
+
78
+ @property
79
+ def additional_keys(self) -> list[str]:
80
+ return list(self.additional_properties.keys())
81
+
82
+ def __getitem__(self, key: str) -> Any:
83
+ return self.additional_properties[key]
84
+
85
+ def __setitem__(self, key: str, value: Any) -> None:
86
+ self.additional_properties[key] = value
87
+
88
+ def __delitem__(self, key: str) -> None:
89
+ del self.additional_properties[key]
90
+
91
+ def __contains__(self, key: str) -> bool:
92
+ return key in self.additional_properties
@@ -1,46 +1,54 @@
1
- """Contains some shared types for properties"""
2
-
3
- from collections.abc import MutableMapping
4
- from http import HTTPStatus
5
- from typing import BinaryIO, Generic, Literal, Optional, TypeVar
6
-
7
- from attrs import define
8
-
9
-
10
- class Unset:
11
- def __bool__(self) -> Literal[False]:
12
- return False
13
-
14
-
15
- UNSET: Unset = Unset()
16
-
17
- FileJsonType = tuple[Optional[str], BinaryIO, Optional[str]]
18
-
19
-
20
- @define
21
- class File:
22
- """Contains information for file uploads"""
23
-
24
- payload: BinaryIO
25
- file_name: Optional[str] = None
26
- mime_type: Optional[str] = None
27
-
28
- def to_tuple(self) -> FileJsonType:
29
- """Return a tuple representation that httpx will accept for multipart/form-data"""
30
- return self.file_name, self.payload, self.mime_type
31
-
32
-
33
- T = TypeVar("T")
34
-
35
-
36
- @define
37
- class Response(Generic[T]):
38
- """A response from an endpoint"""
39
-
40
- status_code: HTTPStatus
41
- content: bytes
42
- headers: MutableMapping[str, str]
43
- parsed: Optional[T]
44
-
45
-
46
- __all__ = ["UNSET", "File", "FileJsonType", "Response", "Unset"]
1
+ """Contains some shared types for properties"""
2
+
3
+ from collections.abc import Mapping, MutableMapping
4
+ from http import HTTPStatus
5
+ from typing import IO, BinaryIO, Generic, Literal, Optional, TypeVar, Union
6
+
7
+ from attrs import define
8
+
9
+
10
+ class Unset:
11
+ def __bool__(self) -> Literal[False]:
12
+ return False
13
+
14
+
15
+ UNSET: Unset = Unset()
16
+
17
+ # The types that `httpx.Client(files=)` can accept, copied from that library.
18
+ FileContent = Union[IO[bytes], bytes, str]
19
+ FileTypes = Union[
20
+ # (filename, file (or bytes), content_type)
21
+ tuple[Optional[str], FileContent, Optional[str]],
22
+ # (filename, file (or bytes), content_type, headers)
23
+ tuple[Optional[str], FileContent, Optional[str], Mapping[str, str]],
24
+ ]
25
+ RequestFiles = list[tuple[str, FileTypes]]
26
+
27
+
28
+ @define
29
+ class File:
30
+ """Contains information for file uploads"""
31
+
32
+ payload: BinaryIO
33
+ file_name: Optional[str] = None
34
+ mime_type: Optional[str] = None
35
+
36
+ def to_tuple(self) -> FileTypes:
37
+ """Return a tuple representation that httpx will accept for multipart/form-data"""
38
+ return self.file_name, self.payload, self.mime_type
39
+
40
+
41
+ T = TypeVar("T")
42
+
43
+
44
+ @define
45
+ class Response(Generic[T]):
46
+ """A response from an endpoint"""
47
+
48
+ status_code: HTTPStatus
49
+ content: bytes
50
+ headers: MutableMapping[str, str]
51
+ parsed: Optional[T]
52
+
53
+
54
+ __all__ = ["UNSET", "File", "FileTypes", "RequestFiles", "Response", "Unset"]
cyberdesk/actions.py DELETED
@@ -1,118 +0,0 @@
1
- from typing import Union, List, Optional
2
-
3
- from openapi_client.api_reference_client.types import UNSET
4
- from openapi_client.api_reference_client.models import (
5
- PostV1DesktopIdComputerActionClickMouseAction,
6
- PostV1DesktopIdComputerActionClickMouseActionType,
7
- PostV1DesktopIdComputerActionClickMouseActionButton as ClickMouseButton,
8
- PostV1DesktopIdComputerActionClickMouseActionClickType as ClickMouseActionType,
9
- PostV1DesktopIdComputerActionDragMouseAction,
10
- PostV1DesktopIdComputerActionDragMouseActionType,
11
- PostV1DesktopIdComputerActionDragMouseActionStart,
12
- PostV1DesktopIdComputerActionDragMouseActionEnd,
13
- PostV1DesktopIdComputerActionGetCursorPositionAction,
14
- PostV1DesktopIdComputerActionGetCursorPositionActionType,
15
- PostV1DesktopIdComputerActionMoveMouseAction,
16
- PostV1DesktopIdComputerActionMoveMouseActionType,
17
- PostV1DesktopIdComputerActionPressKeysAction,
18
- PostV1DesktopIdComputerActionPressKeysActionType,
19
- PostV1DesktopIdComputerActionPressKeysActionKeyActionType as PressKeyActionType,
20
- PostV1DesktopIdComputerActionScreenshotAction,
21
- PostV1DesktopIdComputerActionScreenshotActionType,
22
- PostV1DesktopIdComputerActionScrollAction,
23
- PostV1DesktopIdComputerActionScrollActionType,
24
- PostV1DesktopIdComputerActionScrollActionDirection as ScrollDirection,
25
- PostV1DesktopIdComputerActionTypeTextAction,
26
- PostV1DesktopIdComputerActionTypeTextActionType,
27
- PostV1DesktopIdComputerActionWaitAction,
28
- PostV1DesktopIdComputerActionWaitActionType,
29
- )
30
-
31
- # Re-export the original Enum types under their aliased names for user convenience if they need to import them
32
- # This makes `from cyberdesk.actions import ClickMouseButton` possible.
33
-
34
- def click_mouse(
35
- x: Optional[int] = None,
36
- y: Optional[int] = None,
37
- button: Optional[ClickMouseButton] = None,
38
- num_of_clicks: Optional[int] = None,
39
- click_type: Optional[ClickMouseActionType] = None,
40
- ) -> PostV1DesktopIdComputerActionClickMouseAction:
41
- return PostV1DesktopIdComputerActionClickMouseAction(
42
- type_=PostV1DesktopIdComputerActionClickMouseActionType.CLICK_MOUSE,
43
- x=x if x is not None else UNSET,
44
- y=y if y is not None else UNSET,
45
- button=button if button is not None else UNSET,
46
- num_of_clicks=num_of_clicks if num_of_clicks is not None else UNSET,
47
- click_type=click_type if click_type is not None else UNSET
48
- )
49
-
50
- def drag_mouse(
51
- start_x: int,
52
- start_y: int,
53
- end_x: int,
54
- end_y: int
55
- ) -> PostV1DesktopIdComputerActionDragMouseAction:
56
- start_model = PostV1DesktopIdComputerActionDragMouseActionStart(x=start_x, y=start_y)
57
- end_model = PostV1DesktopIdComputerActionDragMouseActionEnd(x=end_x, y=end_y)
58
- return PostV1DesktopIdComputerActionDragMouseAction(
59
- type_=PostV1DesktopIdComputerActionDragMouseActionType.DRAG_MOUSE,
60
- start=start_model,
61
- end=end_model
62
- )
63
-
64
- def get_cursor_position() -> PostV1DesktopIdComputerActionGetCursorPositionAction:
65
- return PostV1DesktopIdComputerActionGetCursorPositionAction(
66
- type_=PostV1DesktopIdComputerActionGetCursorPositionActionType.GET_CURSOR_POSITION
67
- )
68
-
69
- def move_mouse(
70
- x: int,
71
- y: int
72
- ) -> PostV1DesktopIdComputerActionMoveMouseAction:
73
- return PostV1DesktopIdComputerActionMoveMouseAction(
74
- type_=PostV1DesktopIdComputerActionMoveMouseActionType.MOVE_MOUSE,
75
- x=x,
76
- y=y
77
- )
78
-
79
- def press_keys(
80
- keys: Optional[Union[str, List[str]]] = None,
81
- key_action_type: Optional[PressKeyActionType] = None
82
- ) -> PostV1DesktopIdComputerActionPressKeysAction:
83
- return PostV1DesktopIdComputerActionPressKeysAction(
84
- type_=PostV1DesktopIdComputerActionPressKeysActionType.PRESS_KEYS,
85
- keys=keys if keys is not None else UNSET,
86
- key_action_type=key_action_type if key_action_type is not None else UNSET
87
- )
88
-
89
- def screenshot() -> PostV1DesktopIdComputerActionScreenshotAction:
90
- return PostV1DesktopIdComputerActionScreenshotAction(
91
- type_=PostV1DesktopIdComputerActionScreenshotActionType.SCREENSHOT
92
- )
93
-
94
- def scroll(
95
- direction: ScrollDirection,
96
- amount: int
97
- ) -> PostV1DesktopIdComputerActionScrollAction:
98
- return PostV1DesktopIdComputerActionScrollAction(
99
- type_=PostV1DesktopIdComputerActionScrollActionType.SCROLL,
100
- direction=direction,
101
- amount=amount
102
- )
103
-
104
- def type_text(
105
- text: str
106
- ) -> PostV1DesktopIdComputerActionTypeTextAction:
107
- return PostV1DesktopIdComputerActionTypeTextAction(
108
- type_=PostV1DesktopIdComputerActionTypeTextActionType.TYPE,
109
- text=text
110
- )
111
-
112
- def wait(
113
- ms: int
114
- ) -> PostV1DesktopIdComputerActionWaitAction:
115
- return PostV1DesktopIdComputerActionWaitAction(
116
- type_=PostV1DesktopIdComputerActionWaitActionType.WAIT,
117
- ms=ms
118
- )
cyberdesk/types.py DELETED
@@ -1,50 +0,0 @@
1
- from openapi_client.api_reference_client.models import (
2
- PostV1DesktopBody,
3
- PostV1DesktopIdComputerActionClickMouseAction,
4
- PostV1DesktopIdComputerActionDragMouseAction,
5
- PostV1DesktopIdComputerActionGetCursorPositionAction,
6
- PostV1DesktopIdComputerActionMoveMouseAction,
7
- PostV1DesktopIdComputerActionPressKeysAction,
8
- PostV1DesktopIdComputerActionScreenshotAction,
9
- PostV1DesktopIdComputerActionScrollAction,
10
- PostV1DesktopIdComputerActionTypeTextAction,
11
- PostV1DesktopIdComputerActionWaitAction,
12
- )
13
- from typing import Union
14
-
15
- # Named parameter types for SDK methods
16
- GetDesktopParams = str # Desktop ID
17
- LaunchDesktopParams = PostV1DesktopBody
18
- TerminateDesktopParams = str # Desktop ID
19
- ExecuteBashActionParams = str # Command string
20
-
21
- # Strongly-typed union for all computer action models
22
- ComputerActionModel = Union[
23
- PostV1DesktopIdComputerActionClickMouseAction,
24
- PostV1DesktopIdComputerActionDragMouseAction,
25
- PostV1DesktopIdComputerActionGetCursorPositionAction,
26
- PostV1DesktopIdComputerActionMoveMouseAction,
27
- PostV1DesktopIdComputerActionPressKeysAction,
28
- PostV1DesktopIdComputerActionScreenshotAction,
29
- PostV1DesktopIdComputerActionScrollAction,
30
- PostV1DesktopIdComputerActionTypeTextAction,
31
- PostV1DesktopIdComputerActionWaitAction,
32
- ]
33
-
34
- # Re-export action models for ergonomic imports
35
- __all__ = [
36
- "GetDesktopParams",
37
- "LaunchDesktopParams",
38
- "TerminateDesktopParams",
39
- "ExecuteBashActionParams",
40
- "ComputerActionModel",
41
- "PostV1DesktopIdComputerActionClickMouseAction",
42
- "PostV1DesktopIdComputerActionDragMouseAction",
43
- "PostV1DesktopIdComputerActionGetCursorPositionAction",
44
- "PostV1DesktopIdComputerActionMoveMouseAction",
45
- "PostV1DesktopIdComputerActionPressKeysAction",
46
- "PostV1DesktopIdComputerActionScreenshotAction",
47
- "PostV1DesktopIdComputerActionScrollAction",
48
- "PostV1DesktopIdComputerActionTypeTextAction",
49
- "PostV1DesktopIdComputerActionWaitAction",
50
- ]