gpp-client 26.6.0.dev1__tar.gz → 26.6.0.dev2__tar.gz

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 (112) hide show
  1. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/PKG-INFO +1 -1
  2. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/workflow_state.py +45 -0
  3. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/__init__.py +40 -0
  4. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/client.py +72 -3
  5. gpp_client-26.6.0.dev2/src/gpp_client/generated/scheduler_observations_updates.py +284 -0
  6. gpp_client-26.6.0.dev1/src/gpp_client/generated/scheduler_observations_updates.py +0 -101
  7. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/.gitignore +0 -0
  8. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/LICENSE +0 -0
  9. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/README.md +0 -0
  10. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/graphql/README.md +0 -0
  11. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/pyproject.toml +0 -0
  12. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/__init__.py +0 -0
  13. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/__init__.py +0 -0
  14. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/cli.py +0 -0
  15. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/__init__.py +0 -0
  16. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/attachment.py +0 -0
  17. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/goats.py +0 -0
  18. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/observation.py +0 -0
  19. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/program.py +0 -0
  20. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/scheduler.py +0 -0
  21. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/site_status.py +0 -0
  22. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/commands/target.py +0 -0
  23. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/console.py +0 -0
  24. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/output.py +0 -0
  25. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/cli/utils.py +0 -0
  26. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/client.py +0 -0
  27. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/constants.py +0 -0
  28. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/__init__.py +0 -0
  29. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/atom.py +0 -0
  30. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/attachment.py +0 -0
  31. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/base.py +0 -0
  32. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/goats.py +0 -0
  33. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/observation.py +0 -0
  34. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/program.py +0 -0
  35. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/scheduler.py +0 -0
  36. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/site_status.py +0 -0
  37. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/target.py +0 -0
  38. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/domains/workflow_state.py +0 -0
  39. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/environment.py +0 -0
  40. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/exceptions.py +0 -0
  41. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/async_base_client.py +0 -0
  42. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/base_model.py +0 -0
  43. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/base_operation.py +0 -0
  44. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/clone_observation.py +0 -0
  45. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/clone_target.py +0 -0
  46. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/create_call_for_proposals.py +0 -0
  47. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/create_observation.py +0 -0
  48. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/create_program.py +0 -0
  49. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/create_target_by_program_id.py +0 -0
  50. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/create_target_by_program_reference.py +0 -0
  51. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/create_target_by_proposal_reference.py +0 -0
  52. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/custom_fields.py +0 -0
  53. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/custom_mutations.py +0 -0
  54. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/custom_queries.py +0 -0
  55. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/custom_typing_fields.py +0 -0
  56. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/delete_call_for_proposals_by_id.py +0 -0
  57. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/delete_observation_by_id.py +0 -0
  58. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/delete_observation_by_reference.py +0 -0
  59. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/delete_program_by_id.py +0 -0
  60. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/delete_target_by_id.py +0 -0
  61. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/enums.py +0 -0
  62. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/exceptions.py +0 -0
  63. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/fragments.py +0 -0
  64. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_call_for_proposals.py +0 -0
  65. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_calls_for_proposals.py +0 -0
  66. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_goats_observations.py +0 -0
  67. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_goats_programs.py +0 -0
  68. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_observation.py +0 -0
  69. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_observation_attachments_by_id.py +0 -0
  70. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_observation_attachments_by_reference.py +0 -0
  71. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_observation_workflow_state_by_id.py +0 -0
  72. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_observation_workflow_state_by_reference.py +0 -0
  73. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_observations.py +0 -0
  74. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_program_attachments_by_id.py +0 -0
  75. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_program_attachments_by_proposal_reference.py +0 -0
  76. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_program_attachments_by_reference.py +0 -0
  77. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_program_by_id.py +0 -0
  78. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_program_by_proposal_reference.py +0 -0
  79. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_program_by_reference.py +0 -0
  80. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_programs.py +0 -0
  81. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_scheduler_all_programs_id.py +0 -0
  82. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_scheduler_programs.py +0 -0
  83. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_target_by_id.py +0 -0
  84. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/get_targets.py +0 -0
  85. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/input_types.py +0 -0
  86. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/obs_calculation_update.py +0 -0
  87. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/observation_edit.py +0 -0
  88. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/package_environment.py +0 -0
  89. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/ping.py +0 -0
  90. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/program_edit.py +0 -0
  91. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/restore_call_for_proposals_by_id.py +0 -0
  92. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/restore_observation_by_id.py +0 -0
  93. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/restore_observation_by_reference.py +0 -0
  94. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/restore_program_by_id.py +0 -0
  95. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/restore_target_by_id.py +0 -0
  96. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/set_observation_workflow_state.py +0 -0
  97. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/target_edit.py +0 -0
  98. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_call_for_proposals_by_id.py +0 -0
  99. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_calls_for_proposals.py +0 -0
  100. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_observation_by_id.py +0 -0
  101. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_observation_by_reference.py +0 -0
  102. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_observations.py +0 -0
  103. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_program_by_id.py +0 -0
  104. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_programs.py +0 -0
  105. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_target_by_id.py +0 -0
  106. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/generated/update_targets.py +0 -0
  107. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/logging_utils.py +0 -0
  108. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/rest/__init__.py +0 -0
  109. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/rest/client.py +0 -0
  110. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/rest/utils.py +0 -0
  111. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/settings.py +0 -0
  112. {gpp_client-26.6.0.dev1 → gpp_client-26.6.0.dev2}/src/gpp_client/urls.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gpp-client
3
- Version: 26.6.0.dev1
3
+ Version: 26.6.0.dev2
4
4
  Summary: Gemini Program Platform client.
5
5
  Project-URL: Homepage, https://github.com/gemini-hlsw/gpp-client
6
6
  Project-URL: Source, https://github.com/gemini-hlsw/gpp-client
@@ -11,6 +11,7 @@ import typer
11
11
  from gpp_client.cli import output
12
12
  from gpp_client.cli.utils import async_command, require_exactly_one
13
13
  from gpp_client.client import GPPClient
14
+ from gpp_client.generated import ObservationWorkflowState
14
15
 
15
16
  workflow_state_app = typer.Typer(
16
17
  name="workflow-state",
@@ -59,3 +60,47 @@ async def get_workflow_state(
59
60
  raise typer.BadParameter(f"Unsupported selector: {selector_name}")
60
61
 
61
62
  output.json_pydantic(result)
63
+
64
+
65
+ @workflow_state_app.command("set")
66
+ @async_command
67
+ async def set_workflow_state(
68
+ observation_id: Annotated[
69
+ str,
70
+ typer.Argument(
71
+ help="Observation ID.",
72
+ ),
73
+ ],
74
+ workflow_state: Annotated[
75
+ str,
76
+ typer.Argument(
77
+ help="Workflow state to be set. Must be on all caps.",
78
+ ),
79
+ ],
80
+ retry: Annotated[
81
+ bool,
82
+ typer.Option(
83
+ "--retry",
84
+ help="Retry the request if an error occurs.",
85
+ ),
86
+ ] = False,
87
+ ) -> None:
88
+ """
89
+ Set workflow state.
90
+ """
91
+ async with GPPClient() as client:
92
+ try:
93
+ workflow_state_enum = ObservationWorkflowState[workflow_state]
94
+ except ValueError:
95
+ raise typer.BadParameter(
96
+ "Invalid workflow state. Must be in this options: INACTIVE, UNDEFINED, UNAPPROVED, DEFINED, READY, ONGOING, COMPLETED."
97
+ )
98
+ if not retry:
99
+ result = await client.workflow_state.update_by_id(
100
+ observation_id=observation_id, workflow_state=workflow_state_enum
101
+ )
102
+ else:
103
+ result = await client.workflow_state.update_by_id_with_retry(
104
+ observation_id=observation_id, workflow_state=workflow_state_enum
105
+ )
106
+ output.json_pydantic(result)
@@ -1187,12 +1187,32 @@ from .scheduler_observations_updates import (
1187
1187
  SchedulerObservationsUpdatesObscalcUpdate,
1188
1188
  SchedulerObservationsUpdatesObscalcUpdateValue,
1189
1189
  SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet,
1190
+ SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRange,
1191
+ SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeAirMass,
1192
+ SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeHourAngle,
1190
1193
  SchedulerObservationsUpdatesObscalcUpdateValueExecution,
1191
1194
  SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits,
1192
1195
  SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches,
1193
1196
  SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords,
1194
1197
  SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecordsMatches,
1195
1198
  SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesObservation,
1199
+ SchedulerObservationsUpdatesObscalcUpdateValueProgram,
1200
+ SchedulerObservationsUpdatesObscalcUpdateValueProgramActive,
1201
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironment,
1202
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterism,
1203
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismNonsidereal,
1204
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSidereal,
1205
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealDec,
1206
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealRa,
1207
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBase,
1208
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseDec,
1209
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseRa,
1210
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindows,
1211
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfter,
1212
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterAfter,
1213
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeat,
1214
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeatPeriod,
1215
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAt,
1196
1216
  SchedulerObservationsUpdatesObscalcUpdateValueWorkflow,
1197
1217
  SchedulerObservationsUpdatesObscalcUpdateValueWorkflowValue,
1198
1218
  )
@@ -2165,12 +2185,32 @@ __all__ = [
2165
2185
  "SchedulerObservationsUpdatesObscalcUpdate",
2166
2186
  "SchedulerObservationsUpdatesObscalcUpdateValue",
2167
2187
  "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet",
2188
+ "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRange",
2189
+ "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeAirMass",
2190
+ "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeHourAngle",
2168
2191
  "SchedulerObservationsUpdatesObscalcUpdateValueExecution",
2169
2192
  "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits",
2170
2193
  "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches",
2171
2194
  "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords",
2172
2195
  "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecordsMatches",
2173
2196
  "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesObservation",
2197
+ "SchedulerObservationsUpdatesObscalcUpdateValueProgram",
2198
+ "SchedulerObservationsUpdatesObscalcUpdateValueProgramActive",
2199
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironment",
2200
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterism",
2201
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismNonsidereal",
2202
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSidereal",
2203
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealDec",
2204
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealRa",
2205
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBase",
2206
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseDec",
2207
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseRa",
2208
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindows",
2209
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfter",
2210
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterAfter",
2211
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeat",
2212
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeatPeriod",
2213
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAt",
2174
2214
  "SchedulerObservationsUpdatesObscalcUpdateValueWorkflow",
2175
2215
  "SchedulerObservationsUpdatesObscalcUpdateValueWorkflowValue",
2176
2216
  "SchedulingConstraintsInput",
@@ -111,9 +111,11 @@ class GraphQLClient(AsyncBaseClient):
111
111
  value {
112
112
  id
113
113
  observationTime
114
- constraintSet {
115
- cloudExtinction
116
- imageQuality
114
+ program {
115
+ active {
116
+ end
117
+ start
118
+ }
117
119
  }
118
120
  workflow {
119
121
  value {
@@ -135,6 +137,73 @@ class GraphQLClient(AsyncBaseClient):
135
137
  }
136
138
  }
137
139
  }
140
+ targetEnvironment {
141
+ asterism {
142
+ name
143
+ sidereal {
144
+ ra {
145
+ hours
146
+ hms
147
+ degrees
148
+ }
149
+ dec {
150
+ degrees
151
+ dms
152
+ }
153
+ epoch
154
+ }
155
+ nonsidereal {
156
+ des
157
+ keyType
158
+ key
159
+ }
160
+ }
161
+ explicitBase {
162
+ ra {
163
+ hms
164
+ }
165
+ dec {
166
+ dms
167
+ }
168
+ }
169
+ }
170
+ constraintSet {
171
+ imageQuality
172
+ cloudExtinction
173
+ skyBackground
174
+ waterVapor
175
+ elevationRange {
176
+ airMass {
177
+ min
178
+ max
179
+ }
180
+ hourAngle {
181
+ minHours
182
+ maxHours
183
+ }
184
+ }
185
+ }
186
+ timingWindows {
187
+ inclusion
188
+ startUtc
189
+ end {
190
+ __typename
191
+ ... on TimingWindowEndAt {
192
+ atUtc
193
+ }
194
+ ... on TimingWindowEndAfter {
195
+ after {
196
+ seconds
197
+ }
198
+ repeat {
199
+ period {
200
+ seconds
201
+ }
202
+ times
203
+ }
204
+ }
205
+ }
206
+ }
138
207
  }
139
208
  }
140
209
  }
@@ -0,0 +1,284 @@
1
+ from typing import Annotated, Any, Literal, Optional, Union
2
+
3
+ from pydantic import Field
4
+
5
+ from .base_model import BaseModel
6
+ from .enums import (
7
+ AtomExecutionState,
8
+ CalculationState,
9
+ CloudExtinctionPreset,
10
+ EditType,
11
+ EphemerisKeyType,
12
+ ImageQualityPreset,
13
+ ObservationWorkflowState,
14
+ SkyBackground,
15
+ TimingWindowInclusion,
16
+ WaterVapor,
17
+ )
18
+
19
+
20
+ class SchedulerObservationsUpdates(BaseModel):
21
+ obscalc_update: "SchedulerObservationsUpdatesObscalcUpdate" = Field(
22
+ alias="obscalcUpdate"
23
+ )
24
+
25
+
26
+ class SchedulerObservationsUpdatesObscalcUpdate(BaseModel):
27
+ old_calculation_state: Optional[CalculationState] = Field(
28
+ alias="oldCalculationState"
29
+ )
30
+ new_calculation_state: Optional[CalculationState] = Field(
31
+ alias="newCalculationState"
32
+ )
33
+ edit_type: EditType = Field(alias="editType")
34
+ value: Optional["SchedulerObservationsUpdatesObscalcUpdateValue"]
35
+
36
+
37
+ class SchedulerObservationsUpdatesObscalcUpdateValue(BaseModel):
38
+ id: Any
39
+ observation_time: Optional[Any] = Field(alias="observationTime")
40
+ program: "SchedulerObservationsUpdatesObscalcUpdateValueProgram"
41
+ workflow: Optional["SchedulerObservationsUpdatesObscalcUpdateValueWorkflow"]
42
+ execution: "SchedulerObservationsUpdatesObscalcUpdateValueExecution"
43
+ target_environment: "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironment" = Field(
44
+ alias="targetEnvironment"
45
+ )
46
+ constraint_set: "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet" = (
47
+ Field(alias="constraintSet")
48
+ )
49
+ timing_windows: list[
50
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindows"
51
+ ] = Field(alias="timingWindows")
52
+
53
+
54
+ class SchedulerObservationsUpdatesObscalcUpdateValueProgram(BaseModel):
55
+ active: "SchedulerObservationsUpdatesObscalcUpdateValueProgramActive"
56
+
57
+
58
+ class SchedulerObservationsUpdatesObscalcUpdateValueProgramActive(BaseModel):
59
+ end: Any
60
+ start: Any
61
+
62
+
63
+ class SchedulerObservationsUpdatesObscalcUpdateValueWorkflow(BaseModel):
64
+ value: "SchedulerObservationsUpdatesObscalcUpdateValueWorkflowValue"
65
+
66
+
67
+ class SchedulerObservationsUpdatesObscalcUpdateValueWorkflowValue(BaseModel):
68
+ state: ObservationWorkflowState
69
+
70
+
71
+ class SchedulerObservationsUpdatesObscalcUpdateValueExecution(BaseModel):
72
+ visits: "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits"
73
+
74
+
75
+ class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits(BaseModel):
76
+ matches: list[
77
+ "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches"
78
+ ]
79
+
80
+
81
+ class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches(BaseModel):
82
+ observation: "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesObservation"
83
+ atom_records: "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords" = Field(
84
+ alias="atomRecords"
85
+ )
86
+
87
+
88
+ class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesObservation(
89
+ BaseModel
90
+ ):
91
+ id: Any
92
+
93
+
94
+ class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords(
95
+ BaseModel
96
+ ):
97
+ matches: list[
98
+ "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecordsMatches"
99
+ ]
100
+
101
+
102
+ class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecordsMatches(
103
+ BaseModel
104
+ ):
105
+ execution_state: AtomExecutionState = Field(alias="executionState")
106
+ id: Any
107
+
108
+
109
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironment(BaseModel):
110
+ asterism: list[
111
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterism"
112
+ ]
113
+ explicit_base: Optional[
114
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBase"
115
+ ] = Field(alias="explicitBase")
116
+
117
+
118
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterism(
119
+ BaseModel
120
+ ):
121
+ name: Any
122
+ sidereal: Optional[
123
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSidereal"
124
+ ]
125
+ nonsidereal: Optional[
126
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismNonsidereal"
127
+ ]
128
+
129
+
130
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSidereal(
131
+ BaseModel
132
+ ):
133
+ ra: "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealRa"
134
+ dec: "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealDec"
135
+ epoch: Any
136
+
137
+
138
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealRa(
139
+ BaseModel
140
+ ):
141
+ hours: Any
142
+ hms: Any
143
+ degrees: Any
144
+
145
+
146
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSiderealDec(
147
+ BaseModel
148
+ ):
149
+ degrees: Any
150
+ dms: Any
151
+
152
+
153
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismNonsidereal(
154
+ BaseModel
155
+ ):
156
+ des: str
157
+ key_type: EphemerisKeyType = Field(alias="keyType")
158
+ key: str
159
+
160
+
161
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBase(
162
+ BaseModel
163
+ ):
164
+ ra: "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseRa"
165
+ dec: (
166
+ "SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseDec"
167
+ )
168
+
169
+
170
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseRa(
171
+ BaseModel
172
+ ):
173
+ hms: Any
174
+
175
+
176
+ class SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBaseDec(
177
+ BaseModel
178
+ ):
179
+ dms: Any
180
+
181
+
182
+ class SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet(BaseModel):
183
+ image_quality: ImageQualityPreset = Field(alias="imageQuality")
184
+ cloud_extinction: CloudExtinctionPreset = Field(alias="cloudExtinction")
185
+ sky_background: SkyBackground = Field(alias="skyBackground")
186
+ water_vapor: WaterVapor = Field(alias="waterVapor")
187
+ elevation_range: "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRange" = Field(
188
+ alias="elevationRange"
189
+ )
190
+
191
+
192
+ class SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRange(
193
+ BaseModel
194
+ ):
195
+ air_mass: Optional[
196
+ "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeAirMass"
197
+ ] = Field(alias="airMass")
198
+ hour_angle: Optional[
199
+ "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeHourAngle"
200
+ ] = Field(alias="hourAngle")
201
+
202
+
203
+ class SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeAirMass(
204
+ BaseModel
205
+ ):
206
+ min: Any
207
+ max: Any
208
+
209
+
210
+ class SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRangeHourAngle(
211
+ BaseModel
212
+ ):
213
+ min_hours: Any = Field(alias="minHours")
214
+ max_hours: Any = Field(alias="maxHours")
215
+
216
+
217
+ class SchedulerObservationsUpdatesObscalcUpdateValueTimingWindows(BaseModel):
218
+ inclusion: TimingWindowInclusion
219
+ start_utc: Any = Field(alias="startUtc")
220
+ end: Optional[
221
+ Annotated[
222
+ Union[
223
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAt",
224
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfter",
225
+ ],
226
+ Field(discriminator="typename__"),
227
+ ]
228
+ ]
229
+
230
+
231
+ class SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAt(
232
+ BaseModel
233
+ ):
234
+ typename__: Literal["TimingWindowEndAt"] = Field(alias="__typename")
235
+ at_utc: Any = Field(alias="atUtc")
236
+
237
+
238
+ class SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfter(
239
+ BaseModel
240
+ ):
241
+ typename__: Literal["TimingWindowEndAfter"] = Field(alias="__typename")
242
+ after: "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterAfter"
243
+ repeat: Optional[
244
+ "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeat"
245
+ ]
246
+
247
+
248
+ class SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterAfter(
249
+ BaseModel
250
+ ):
251
+ seconds: Any
252
+
253
+
254
+ class SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeat(
255
+ BaseModel
256
+ ):
257
+ period: "SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeatPeriod"
258
+ times: Optional[Any]
259
+
260
+
261
+ class SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeatPeriod(
262
+ BaseModel
263
+ ):
264
+ seconds: Any
265
+
266
+
267
+ SchedulerObservationsUpdates.model_rebuild()
268
+ SchedulerObservationsUpdatesObscalcUpdate.model_rebuild()
269
+ SchedulerObservationsUpdatesObscalcUpdateValue.model_rebuild()
270
+ SchedulerObservationsUpdatesObscalcUpdateValueProgram.model_rebuild()
271
+ SchedulerObservationsUpdatesObscalcUpdateValueWorkflow.model_rebuild()
272
+ SchedulerObservationsUpdatesObscalcUpdateValueExecution.model_rebuild()
273
+ SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits.model_rebuild()
274
+ SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches.model_rebuild()
275
+ SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords.model_rebuild()
276
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironment.model_rebuild()
277
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterism.model_rebuild()
278
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentAsterismSidereal.model_rebuild()
279
+ SchedulerObservationsUpdatesObscalcUpdateValueTargetEnvironmentExplicitBase.model_rebuild()
280
+ SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet.model_rebuild()
281
+ SchedulerObservationsUpdatesObscalcUpdateValueConstraintSetElevationRange.model_rebuild()
282
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindows.model_rebuild()
283
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfter.model_rebuild()
284
+ SchedulerObservationsUpdatesObscalcUpdateValueTimingWindowsEndTimingWindowEndAfterRepeat.model_rebuild()
@@ -1,101 +0,0 @@
1
- from typing import Any, Optional
2
-
3
- from pydantic import Field
4
-
5
- from .base_model import BaseModel
6
- from .enums import (
7
- AtomExecutionState,
8
- CalculationState,
9
- CloudExtinctionPreset,
10
- EditType,
11
- ImageQualityPreset,
12
- ObservationWorkflowState,
13
- )
14
-
15
-
16
- class SchedulerObservationsUpdates(BaseModel):
17
- obscalc_update: "SchedulerObservationsUpdatesObscalcUpdate" = Field(
18
- alias="obscalcUpdate"
19
- )
20
-
21
-
22
- class SchedulerObservationsUpdatesObscalcUpdate(BaseModel):
23
- old_calculation_state: Optional[CalculationState] = Field(
24
- alias="oldCalculationState"
25
- )
26
- new_calculation_state: Optional[CalculationState] = Field(
27
- alias="newCalculationState"
28
- )
29
- edit_type: EditType = Field(alias="editType")
30
- value: Optional["SchedulerObservationsUpdatesObscalcUpdateValue"]
31
-
32
-
33
- class SchedulerObservationsUpdatesObscalcUpdateValue(BaseModel):
34
- id: Any
35
- observation_time: Optional[Any] = Field(alias="observationTime")
36
- constraint_set: "SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet" = (
37
- Field(alias="constraintSet")
38
- )
39
- workflow: Optional["SchedulerObservationsUpdatesObscalcUpdateValueWorkflow"]
40
- execution: "SchedulerObservationsUpdatesObscalcUpdateValueExecution"
41
-
42
-
43
- class SchedulerObservationsUpdatesObscalcUpdateValueConstraintSet(BaseModel):
44
- cloud_extinction: CloudExtinctionPreset = Field(alias="cloudExtinction")
45
- image_quality: ImageQualityPreset = Field(alias="imageQuality")
46
-
47
-
48
- class SchedulerObservationsUpdatesObscalcUpdateValueWorkflow(BaseModel):
49
- value: "SchedulerObservationsUpdatesObscalcUpdateValueWorkflowValue"
50
-
51
-
52
- class SchedulerObservationsUpdatesObscalcUpdateValueWorkflowValue(BaseModel):
53
- state: ObservationWorkflowState
54
-
55
-
56
- class SchedulerObservationsUpdatesObscalcUpdateValueExecution(BaseModel):
57
- visits: "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits"
58
-
59
-
60
- class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits(BaseModel):
61
- matches: list[
62
- "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches"
63
- ]
64
-
65
-
66
- class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches(BaseModel):
67
- observation: "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesObservation"
68
- atom_records: "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords" = Field(
69
- alias="atomRecords"
70
- )
71
-
72
-
73
- class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesObservation(
74
- BaseModel
75
- ):
76
- id: Any
77
-
78
-
79
- class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords(
80
- BaseModel
81
- ):
82
- matches: list[
83
- "SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecordsMatches"
84
- ]
85
-
86
-
87
- class SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecordsMatches(
88
- BaseModel
89
- ):
90
- execution_state: AtomExecutionState = Field(alias="executionState")
91
- id: Any
92
-
93
-
94
- SchedulerObservationsUpdates.model_rebuild()
95
- SchedulerObservationsUpdatesObscalcUpdate.model_rebuild()
96
- SchedulerObservationsUpdatesObscalcUpdateValue.model_rebuild()
97
- SchedulerObservationsUpdatesObscalcUpdateValueWorkflow.model_rebuild()
98
- SchedulerObservationsUpdatesObscalcUpdateValueExecution.model_rebuild()
99
- SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisits.model_rebuild()
100
- SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatches.model_rebuild()
101
- SchedulerObservationsUpdatesObscalcUpdateValueExecutionVisitsMatchesAtomRecords.model_rebuild()