UncountablePythonSDK 0.0.24__py3-none-any.whl → 0.0.131__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 UncountablePythonSDK might be problematic. Click here for more details.

Files changed (373) hide show
  1. docs/conf.py +60 -8
  2. docs/index.md +107 -4
  3. docs/integration_examples/create_ingredient.md +43 -0
  4. docs/integration_examples/create_output.md +56 -0
  5. docs/integration_examples/index.md +6 -0
  6. docs/justfile +2 -2
  7. docs/requirements.txt +7 -5
  8. examples/async_batch.py +5 -6
  9. examples/basic_auth.py +7 -0
  10. examples/create_entity.py +4 -6
  11. examples/create_ingredient_sdk.py +34 -0
  12. examples/download_files.py +26 -0
  13. examples/edit_recipe_inputs.py +50 -0
  14. examples/integration-server/jobs/materials_auto/concurrent_cron.py +11 -0
  15. examples/integration-server/jobs/materials_auto/example_cron.py +21 -0
  16. examples/integration-server/jobs/materials_auto/example_http.py +47 -0
  17. examples/integration-server/jobs/materials_auto/example_instrument.py +100 -0
  18. examples/integration-server/jobs/materials_auto/example_parse.py +140 -0
  19. examples/integration-server/jobs/materials_auto/example_predictions.py +61 -0
  20. examples/integration-server/jobs/materials_auto/example_runsheet_wh.py +39 -0
  21. examples/integration-server/jobs/materials_auto/example_wh.py +23 -0
  22. examples/integration-server/jobs/materials_auto/profile.yaml +104 -0
  23. examples/integration-server/pyproject.toml +224 -0
  24. examples/invoke_uploader.py +26 -0
  25. examples/oauth.py +7 -0
  26. examples/set_recipe_metadata_file.py +40 -0
  27. examples/set_recipe_output_file_sdk.py +26 -0
  28. examples/upload_files.py +2 -3
  29. pkgs/argument_parser/__init__.py +9 -0
  30. pkgs/argument_parser/_is_namedtuple.py +3 -0
  31. pkgs/argument_parser/argument_parser.py +295 -74
  32. pkgs/argument_parser/case_convert.py +4 -3
  33. pkgs/filesystem_utils/__init__.py +20 -0
  34. pkgs/filesystem_utils/_blob_session.py +144 -0
  35. pkgs/filesystem_utils/_gdrive_session.py +309 -0
  36. pkgs/filesystem_utils/_local_session.py +69 -0
  37. pkgs/filesystem_utils/_s3_session.py +118 -0
  38. pkgs/filesystem_utils/_sftp_session.py +151 -0
  39. pkgs/filesystem_utils/file_type_utils.py +91 -0
  40. pkgs/filesystem_utils/filesystem_session.py +39 -0
  41. pkgs/py.typed +0 -0
  42. pkgs/serialization/__init__.py +8 -1
  43. pkgs/serialization/annotation.py +64 -0
  44. pkgs/serialization/missing_sentry.py +1 -1
  45. pkgs/serialization/opaque_key.py +1 -1
  46. pkgs/serialization/serial_alias.py +47 -0
  47. pkgs/serialization/serial_class.py +69 -54
  48. pkgs/serialization/serial_generic.py +16 -0
  49. pkgs/serialization/serial_union.py +84 -0
  50. pkgs/serialization/yaml.py +57 -0
  51. pkgs/serialization_util/__init__.py +7 -7
  52. pkgs/serialization_util/convert_to_snakecase.py +27 -0
  53. pkgs/serialization_util/dataclasses.py +14 -0
  54. pkgs/serialization_util/serialization_helpers.py +117 -71
  55. pkgs/type_spec/actions_registry/__main__.py +0 -4
  56. pkgs/type_spec/actions_registry/emit_typescript.py +5 -5
  57. pkgs/type_spec/builder.py +438 -109
  58. pkgs/type_spec/builder_types.py +9 -0
  59. pkgs/type_spec/config.py +52 -24
  60. pkgs/type_spec/cross_output_links.py +99 -0
  61. pkgs/type_spec/emit_io_ts.py +1 -1
  62. pkgs/type_spec/emit_open_api.py +160 -41
  63. pkgs/type_spec/emit_open_api_util.py +13 -7
  64. pkgs/type_spec/emit_python.py +450 -136
  65. pkgs/type_spec/emit_typescript.py +117 -250
  66. pkgs/type_spec/emit_typescript_util.py +293 -4
  67. pkgs/type_spec/load_types.py +20 -5
  68. pkgs/type_spec/non_discriminated_union_exceptions.py +14 -0
  69. pkgs/type_spec/open_api_util.py +29 -4
  70. pkgs/type_spec/parts/base.py.prepart +13 -10
  71. pkgs/type_spec/parts/base.ts.prepart +4 -0
  72. pkgs/type_spec/type_info/__main__.py +3 -1
  73. pkgs/type_spec/type_info/emit_type_info.py +161 -32
  74. pkgs/type_spec/ui_entry_actions/__init__.py +4 -0
  75. pkgs/type_spec/ui_entry_actions/generate_ui_entry_actions.py +308 -0
  76. pkgs/type_spec/util.py +4 -4
  77. pkgs/type_spec/value_spec/__main__.py +27 -10
  78. pkgs/type_spec/value_spec/convert_type.py +21 -1
  79. pkgs/type_spec/value_spec/emit_python.py +25 -7
  80. pkgs/type_spec/value_spec/types.py +1 -1
  81. uncountable/__init__.py +1 -2
  82. uncountable/core/__init__.py +11 -3
  83. uncountable/core/async_batch.py +16 -1
  84. uncountable/core/client.py +247 -52
  85. uncountable/core/environment.py +41 -0
  86. uncountable/core/file_upload.py +67 -22
  87. uncountable/core/types.py +8 -13
  88. uncountable/integration/cli.py +142 -0
  89. uncountable/integration/construct_client.py +43 -27
  90. uncountable/integration/cron.py +12 -11
  91. uncountable/integration/db/connect.py +12 -2
  92. uncountable/integration/db/session.py +25 -0
  93. uncountable/integration/entrypoint.py +4 -34
  94. uncountable/integration/executors/executors.py +147 -0
  95. uncountable/integration/executors/generic_upload_executor.py +336 -0
  96. uncountable/integration/executors/script_executor.py +15 -9
  97. uncountable/integration/http_server/__init__.py +5 -0
  98. uncountable/integration/http_server/types.py +69 -0
  99. uncountable/integration/job.py +246 -19
  100. uncountable/integration/queue_runner/__init__.py +0 -0
  101. uncountable/integration/queue_runner/command_server/__init__.py +28 -0
  102. uncountable/integration/queue_runner/command_server/command_client.py +133 -0
  103. uncountable/integration/queue_runner/command_server/command_server.py +142 -0
  104. uncountable/integration/queue_runner/command_server/constants.py +4 -0
  105. uncountable/integration/queue_runner/command_server/protocol/__init__.py +0 -0
  106. uncountable/integration/queue_runner/command_server/protocol/command_server.proto +58 -0
  107. uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.py +57 -0
  108. uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.pyi +114 -0
  109. uncountable/integration/queue_runner/command_server/protocol/command_server_pb2_grpc.py +264 -0
  110. uncountable/integration/queue_runner/command_server/types.py +75 -0
  111. uncountable/integration/queue_runner/datastore/__init__.py +3 -0
  112. uncountable/integration/queue_runner/datastore/datastore_sqlite.py +250 -0
  113. uncountable/integration/queue_runner/datastore/interface.py +29 -0
  114. uncountable/integration/queue_runner/datastore/model.py +24 -0
  115. uncountable/integration/queue_runner/job_scheduler.py +200 -0
  116. uncountable/integration/queue_runner/queue_runner.py +34 -0
  117. uncountable/integration/queue_runner/types.py +7 -0
  118. uncountable/integration/queue_runner/worker.py +116 -0
  119. uncountable/integration/scan_profiles.py +67 -0
  120. uncountable/integration/scheduler.py +199 -0
  121. uncountable/integration/secret_retrieval/__init__.py +3 -0
  122. uncountable/integration/secret_retrieval/retrieve_secret.py +93 -0
  123. uncountable/integration/server.py +103 -54
  124. uncountable/integration/telemetry.py +251 -0
  125. uncountable/integration/webhook_server/entrypoint.py +97 -0
  126. uncountable/types/__init__.py +149 -30
  127. uncountable/types/api/batch/execute_batch.py +16 -9
  128. uncountable/types/api/batch/execute_batch_load_async.py +13 -7
  129. uncountable/types/api/chemical/convert_chemical_formats.py +20 -8
  130. uncountable/types/api/condition_parameters/__init__.py +1 -0
  131. uncountable/types/api/condition_parameters/upsert_condition_match.py +72 -0
  132. uncountable/types/api/entity/create_entities.py +24 -12
  133. uncountable/types/api/entity/create_entity.py +22 -13
  134. uncountable/types/api/entity/create_or_update_entity.py +48 -0
  135. uncountable/types/api/entity/export_entities.py +59 -0
  136. uncountable/types/api/entity/get_entities_data.py +18 -9
  137. uncountable/types/api/entity/grant_entity_permissions.py +48 -0
  138. uncountable/types/api/entity/list_aggregate.py +79 -0
  139. uncountable/types/api/entity/list_entities.py +53 -14
  140. uncountable/types/api/entity/lock_entity.py +45 -0
  141. uncountable/types/api/entity/lookup_entity.py +116 -0
  142. uncountable/types/api/entity/resolve_entity_ids.py +19 -10
  143. uncountable/types/api/entity/set_entity_field_values.py +44 -0
  144. uncountable/types/api/entity/set_values.py +15 -8
  145. uncountable/types/api/entity/transition_entity_phase.py +27 -12
  146. uncountable/types/api/entity/unlock_entity.py +44 -0
  147. uncountable/types/api/equipment/__init__.py +1 -0
  148. uncountable/types/api/equipment/associate_equipment_input.py +43 -0
  149. uncountable/types/api/field_options/__init__.py +1 -0
  150. uncountable/types/api/field_options/upsert_field_options.py +55 -0
  151. uncountable/types/api/files/__init__.py +1 -0
  152. uncountable/types/api/files/download_file.py +77 -0
  153. uncountable/types/api/id_source/list_id_source.py +20 -11
  154. uncountable/types/api/id_source/match_id_source.py +15 -10
  155. uncountable/types/api/input_groups/get_input_group_names.py +16 -7
  156. uncountable/types/api/inputs/create_inputs.py +28 -14
  157. uncountable/types/api/inputs/get_input_data.py +34 -16
  158. uncountable/types/api/inputs/get_input_names.py +19 -10
  159. uncountable/types/api/inputs/get_inputs_data.py +29 -11
  160. uncountable/types/api/inputs/set_input_attribute_values.py +16 -10
  161. uncountable/types/api/inputs/set_input_category.py +44 -0
  162. uncountable/types/api/inputs/set_input_subcategories.py +45 -0
  163. uncountable/types/api/inputs/set_intermediate_type.py +50 -0
  164. uncountable/types/api/integrations/__init__.py +1 -0
  165. uncountable/types/api/integrations/publish_realtime_data.py +41 -0
  166. uncountable/types/api/integrations/push_notification.py +49 -0
  167. uncountable/types/api/integrations/register_sockets_token.py +41 -0
  168. uncountable/types/api/listing/__init__.py +1 -0
  169. uncountable/types/api/listing/fetch_listing.py +58 -0
  170. uncountable/types/api/material_families/__init__.py +1 -0
  171. uncountable/types/api/material_families/update_entity_material_families.py +47 -0
  172. uncountable/types/api/notebooks/__init__.py +1 -0
  173. uncountable/types/api/notebooks/add_notebook_content.py +119 -0
  174. uncountable/types/api/outputs/get_output_data.py +32 -17
  175. uncountable/types/api/outputs/get_output_names.py +18 -9
  176. uncountable/types/api/outputs/get_output_organization.py +173 -0
  177. uncountable/types/api/outputs/resolve_output_conditions.py +23 -11
  178. uncountable/types/api/permissions/set_core_permissions.py +31 -15
  179. uncountable/types/api/project/get_projects.py +20 -11
  180. uncountable/types/api/project/get_projects_data.py +23 -14
  181. uncountable/types/api/recipe_links/create_recipe_link.py +17 -10
  182. uncountable/types/api/recipe_links/remove_recipe_link.py +45 -0
  183. uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +19 -10
  184. uncountable/types/api/recipes/add_recipe_to_project.py +42 -0
  185. uncountable/types/api/recipes/add_time_series_data.py +64 -0
  186. uncountable/types/api/recipes/archive_recipes.py +14 -7
  187. uncountable/types/api/recipes/associate_recipe_as_input.py +16 -8
  188. uncountable/types/api/recipes/associate_recipe_as_lot.py +14 -7
  189. uncountable/types/api/recipes/clear_recipe_outputs.py +42 -0
  190. uncountable/types/api/recipes/create_mix_order.py +44 -0
  191. uncountable/types/api/recipes/create_recipe.py +21 -14
  192. uncountable/types/api/recipes/create_recipes.py +25 -13
  193. uncountable/types/api/recipes/disassociate_recipe_as_input.py +14 -7
  194. uncountable/types/api/recipes/edit_recipe_inputs.py +208 -19
  195. uncountable/types/api/recipes/get_column_calculation_values.py +57 -0
  196. uncountable/types/api/recipes/get_curve.py +15 -9
  197. uncountable/types/api/recipes/get_recipe_calculations.py +17 -11
  198. uncountable/types/api/recipes/get_recipe_links.py +14 -8
  199. uncountable/types/api/recipes/get_recipe_names.py +16 -7
  200. uncountable/types/api/recipes/get_recipe_output_metadata.py +16 -10
  201. uncountable/types/api/recipes/get_recipes_data.py +96 -45
  202. uncountable/types/api/recipes/lock_recipes.py +64 -0
  203. uncountable/types/api/recipes/remove_recipe_from_project.py +42 -0
  204. uncountable/types/api/recipes/set_recipe_inputs.py +19 -13
  205. uncountable/types/api/recipes/set_recipe_metadata.py +14 -7
  206. uncountable/types/api/recipes/set_recipe_output_annotations.py +114 -0
  207. uncountable/types/api/recipes/set_recipe_output_file.py +55 -0
  208. uncountable/types/api/recipes/set_recipe_outputs.py +40 -15
  209. uncountable/types/api/recipes/set_recipe_tags.py +30 -13
  210. uncountable/types/api/recipes/set_recipe_total.py +59 -0
  211. uncountable/types/api/recipes/unarchive_recipes.py +41 -0
  212. uncountable/types/api/recipes/unlock_recipes.py +51 -0
  213. uncountable/types/api/runsheet/__init__.py +1 -0
  214. uncountable/types/api/runsheet/complete_async_upload.py +41 -0
  215. uncountable/types/api/triggers/run_trigger.py +15 -8
  216. uncountable/types/api/uploader/__init__.py +1 -0
  217. uncountable/types/api/uploader/complete_async_parse.py +46 -0
  218. uncountable/types/api/uploader/invoke_uploader.py +46 -0
  219. uncountable/types/api/user/__init__.py +1 -0
  220. uncountable/types/api/user/get_current_user_info.py +40 -0
  221. uncountable/types/async_batch.py +8 -52
  222. uncountable/types/async_batch_processor.py +694 -18
  223. uncountable/types/async_batch_t.py +108 -0
  224. uncountable/types/async_jobs.py +8 -0
  225. uncountable/types/async_jobs_t.py +52 -0
  226. uncountable/types/auth_retrieval.py +11 -0
  227. uncountable/types/auth_retrieval_t.py +75 -0
  228. uncountable/types/base.py +5 -80
  229. uncountable/types/base_t.py +87 -0
  230. uncountable/types/calculations.py +3 -19
  231. uncountable/types/calculations_t.py +26 -0
  232. uncountable/types/chemical_structure.py +3 -23
  233. uncountable/types/chemical_structure_t.py +28 -0
  234. uncountable/types/client_base.py +1170 -88
  235. uncountable/types/client_config.py +8 -0
  236. uncountable/types/client_config_t.py +36 -0
  237. uncountable/types/curves.py +5 -43
  238. uncountable/types/curves_t.py +50 -0
  239. uncountable/types/data.py +12 -0
  240. uncountable/types/data_t.py +103 -0
  241. uncountable/types/entity.py +8 -270
  242. uncountable/types/entity_t.py +446 -0
  243. uncountable/types/experiment_groups.py +3 -19
  244. uncountable/types/experiment_groups_t.py +26 -0
  245. uncountable/types/exports.py +8 -0
  246. uncountable/types/exports_t.py +34 -0
  247. uncountable/types/field_values.py +25 -61
  248. uncountable/types/field_values_t.py +302 -0
  249. uncountable/types/fields.py +3 -20
  250. uncountable/types/fields_t.py +27 -0
  251. uncountable/types/generic_upload.py +14 -0
  252. uncountable/types/generic_upload_t.py +119 -0
  253. uncountable/types/id_source.py +7 -45
  254. uncountable/types/id_source_t.py +68 -0
  255. uncountable/types/identifier.py +6 -50
  256. uncountable/types/identifier_t.py +62 -0
  257. uncountable/types/input_attributes.py +3 -25
  258. uncountable/types/input_attributes_t.py +29 -0
  259. uncountable/types/inputs.py +6 -57
  260. uncountable/types/inputs_t.py +82 -0
  261. uncountable/types/integration_server.py +8 -0
  262. uncountable/types/integration_server_t.py +46 -0
  263. uncountable/types/integration_session.py +10 -0
  264. uncountable/types/integration_session_t.py +60 -0
  265. uncountable/types/integrations.py +10 -0
  266. uncountable/types/integrations_t.py +62 -0
  267. uncountable/types/job_definition.py +28 -0
  268. uncountable/types/job_definition_t.py +285 -0
  269. uncountable/types/listing.py +9 -0
  270. uncountable/types/listing_t.py +51 -0
  271. uncountable/types/notices.py +8 -0
  272. uncountable/types/notices_t.py +37 -0
  273. uncountable/types/notifications.py +11 -0
  274. uncountable/types/notifications_t.py +74 -0
  275. uncountable/types/outputs.py +3 -22
  276. uncountable/types/outputs_t.py +29 -0
  277. uncountable/types/overrides.py +9 -0
  278. uncountable/types/overrides_t.py +49 -0
  279. uncountable/types/permissions.py +3 -42
  280. uncountable/types/permissions_t.py +45 -0
  281. uncountable/types/phases.py +3 -19
  282. uncountable/types/phases_t.py +26 -0
  283. uncountable/types/post_base.py +3 -26
  284. uncountable/types/post_base_t.py +29 -0
  285. uncountable/types/queued_job.py +17 -0
  286. uncountable/types/queued_job_t.py +140 -0
  287. uncountable/types/recipe_identifiers.py +7 -58
  288. uncountable/types/recipe_identifiers_t.py +75 -0
  289. uncountable/types/recipe_inputs.py +4 -26
  290. uncountable/types/recipe_inputs_t.py +29 -0
  291. uncountable/types/recipe_links.py +4 -46
  292. uncountable/types/recipe_links_t.py +53 -0
  293. uncountable/types/recipe_metadata.py +5 -48
  294. uncountable/types/recipe_metadata_t.py +57 -0
  295. uncountable/types/recipe_output_metadata.py +3 -20
  296. uncountable/types/recipe_output_metadata_t.py +27 -0
  297. uncountable/types/recipe_tags.py +3 -19
  298. uncountable/types/recipe_tags_t.py +26 -0
  299. uncountable/types/recipe_workflow_steps.py +9 -73
  300. uncountable/types/recipe_workflow_steps_t.py +95 -0
  301. uncountable/types/recipes.py +7 -0
  302. uncountable/types/recipes_t.py +25 -0
  303. uncountable/types/response.py +3 -21
  304. uncountable/types/response_t.py +26 -0
  305. uncountable/types/secret_retrieval.py +11 -0
  306. uncountable/types/secret_retrieval_t.py +75 -0
  307. uncountable/types/sockets.py +20 -0
  308. uncountable/types/sockets_t.py +169 -0
  309. uncountable/types/structured_filters.py +25 -0
  310. uncountable/types/structured_filters_t.py +248 -0
  311. uncountable/types/units.py +3 -19
  312. uncountable/types/units_t.py +26 -0
  313. uncountable/types/uploader.py +24 -0
  314. uncountable/types/uploader_t.py +222 -0
  315. uncountable/types/users.py +3 -20
  316. uncountable/types/users_t.py +27 -0
  317. uncountable/types/webhook_job.py +9 -0
  318. uncountable/types/webhook_job_t.py +48 -0
  319. uncountable/types/workflows.py +4 -28
  320. uncountable/types/workflows_t.py +38 -0
  321. uncountablepythonsdk-0.0.131.dist-info/METADATA +64 -0
  322. uncountablepythonsdk-0.0.131.dist-info/RECORD +363 -0
  323. {UncountablePythonSDK-0.0.24.dist-info → uncountablepythonsdk-0.0.131.dist-info}/WHEEL +1 -1
  324. {UncountablePythonSDK-0.0.24.dist-info → uncountablepythonsdk-0.0.131.dist-info}/top_level.txt +0 -1
  325. UncountablePythonSDK-0.0.24.dist-info/METADATA +0 -47
  326. UncountablePythonSDK-0.0.24.dist-info/RECORD +0 -216
  327. docs/quickstart.md +0 -19
  328. examples/recipe-import/importer.py +0 -39
  329. type_spec/external/api/batch/execute_batch.yaml +0 -56
  330. type_spec/external/api/batch/execute_batch_load_async.yaml +0 -18
  331. type_spec/external/api/chemical/convert_chemical_formats.yaml +0 -33
  332. type_spec/external/api/entity/create_entities.yaml +0 -45
  333. type_spec/external/api/entity/create_entity.yaml +0 -51
  334. type_spec/external/api/entity/get_entities_data.yaml +0 -29
  335. type_spec/external/api/entity/list_entities.yaml +0 -52
  336. type_spec/external/api/entity/resolve_entity_ids.yaml +0 -29
  337. type_spec/external/api/entity/set_values.yaml +0 -18
  338. type_spec/external/api/entity/transition_entity_phase.yaml +0 -44
  339. type_spec/external/api/id_source/list_id_source.yaml +0 -35
  340. type_spec/external/api/id_source/match_id_source.yaml +0 -32
  341. type_spec/external/api/input_groups/get_input_group_names.yaml +0 -29
  342. type_spec/external/api/inputs/create_inputs.yaml +0 -48
  343. type_spec/external/api/inputs/get_input_data.yaml +0 -95
  344. type_spec/external/api/inputs/get_input_names.yaml +0 -38
  345. type_spec/external/api/inputs/get_inputs_data.yaml +0 -82
  346. type_spec/external/api/inputs/set_input_attribute_values.yaml +0 -33
  347. type_spec/external/api/outputs/get_output_data.yaml +0 -92
  348. type_spec/external/api/outputs/get_output_names.yaml +0 -35
  349. type_spec/external/api/outputs/resolve_output_conditions.yaml +0 -50
  350. type_spec/external/api/permissions/set_core_permissions.yaml +0 -69
  351. type_spec/external/api/project/get_projects.yaml +0 -42
  352. type_spec/external/api/project/get_projects_data.yaml +0 -50
  353. type_spec/external/api/recipe_links/create_recipe_link.yaml +0 -25
  354. type_spec/external/api/recipe_metadata/get_recipe_metadata_data.yaml +0 -41
  355. type_spec/external/api/recipes/archive_recipes.yaml +0 -20
  356. type_spec/external/api/recipes/associate_recipe_as_input.yaml +0 -19
  357. type_spec/external/api/recipes/associate_recipe_as_lot.yaml +0 -19
  358. type_spec/external/api/recipes/create_recipe.yaml +0 -39
  359. type_spec/external/api/recipes/create_recipes.yaml +0 -47
  360. type_spec/external/api/recipes/disassociate_recipe_as_input.yaml +0 -16
  361. type_spec/external/api/recipes/edit_recipe_inputs.yaml +0 -85
  362. type_spec/external/api/recipes/get_curve.yaml +0 -21
  363. type_spec/external/api/recipes/get_recipe_calculations.yaml +0 -39
  364. type_spec/external/api/recipes/get_recipe_links.yaml +0 -26
  365. type_spec/external/api/recipes/get_recipe_names.yaml +0 -29
  366. type_spec/external/api/recipes/get_recipe_output_metadata.yaml +0 -36
  367. type_spec/external/api/recipes/get_recipes_data.yaml +0 -244
  368. type_spec/external/api/recipes/set_recipe_inputs.yaml +0 -42
  369. type_spec/external/api/recipes/set_recipe_metadata.yaml +0 -20
  370. type_spec/external/api/recipes/set_recipe_outputs.yaml +0 -52
  371. type_spec/external/api/recipes/set_recipe_tags.yaml +0 -62
  372. type_spec/external/api/triggers/run_trigger.yaml +0 -18
  373. uncountable/integration/types.py +0 -89
@@ -0,0 +1,8 @@
1
+ # ruff: noqa: E402 Q003
2
+ # fmt: off
3
+ # isort: skip_file
4
+ # DO NOT MODIFY -- This file is generated by type_spec
5
+ # Kept only for SDK backwards compatibility
6
+ from .client_config_t import ClientConfigOptions as ClientConfigOptions
7
+ from .client_config_t import RequestOptions as RequestOptions
8
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,36 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # ruff: noqa: E402 Q003
3
+ # fmt: off
4
+ # isort: skip_file
5
+ from __future__ import annotations
6
+ import typing # noqa: F401
7
+ import datetime # noqa: F401
8
+ from decimal import Decimal # noqa: F401
9
+ import dataclasses
10
+ from pkgs.serialization import serial_class
11
+ from . import base_t
12
+
13
+ __all__: list[str] = [
14
+ "ClientConfigOptions",
15
+ "RequestOptions",
16
+ ]
17
+
18
+
19
+ # DO NOT MODIFY -- This file is generated by type_spec
20
+ @serial_class(
21
+ named_type_path="sdk.client_config.ClientConfigOptions",
22
+ )
23
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
24
+ class ClientConfigOptions:
25
+ allow_insecure_tls: bool = False
26
+ extra_headers: dict[str, str] | None = None
27
+
28
+
29
+ # DO NOT MODIFY -- This file is generated by type_spec
30
+ @serial_class(
31
+ named_type_path="sdk.client_config.RequestOptions",
32
+ )
33
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
34
+ class RequestOptions:
35
+ timeout_secs: int | None = None
36
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,47 +1,9 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
- # flake8: noqa: F821
3
- # ruff: noqa: E402
1
+ # ruff: noqa: E402 Q003
4
2
  # fmt: off
5
3
  # isort: skip_file
6
- from __future__ import annotations
7
- import typing # noqa: F401
8
- import datetime # noqa: F401
9
- from decimal import Decimal # noqa: F401
10
- from pkgs.strenum_compat import StrEnum
11
- from dataclasses import dataclass
12
- from pkgs.serialization import serial_class
13
- from . import base as base_t
14
-
15
- __all__: list[str] = [
16
- "Curve",
17
- "CurveAxisType",
18
- "CurveValue",
19
- ]
20
-
21
-
22
- # DO NOT MODIFY -- This file is generated by type_spec
23
- class CurveAxisType(StrEnum):
24
- NUMERIC = "numeric"
25
- TIMESTAMP = "timestamp"
26
-
27
-
28
- # DO NOT MODIFY -- This file is generated by type_spec
29
- @dataclass(kw_only=True)
30
- class Curve:
31
- id: base_t.ObjectId
32
- x_type: typing.Union[typing.Literal[CurveAxisType.NUMERIC], typing.Literal[CurveAxisType.TIMESTAMP]]
33
- x_values: list[CurveValue]
34
- y_type: typing.Union[typing.Literal[CurveAxisType.NUMERIC]]
35
- y_values: list[CurveValue]
36
-
37
-
38
4
  # DO NOT MODIFY -- This file is generated by type_spec
39
- @serial_class(
40
- to_string_values={"quantity"},
41
- )
42
- @dataclass(kw_only=True)
43
- class CurveValue:
44
- index: int
45
- quantity: typing.Optional[Decimal] = None
46
- quantity_timestamp: typing.Optional[datetime.datetime] = None
5
+ # Kept only for SDK backwards compatibility
6
+ from .curves_t import CurveAxisType as CurveAxisType
7
+ from .curves_t import Curve as Curve
8
+ from .curves_t import CurveValue as CurveValue
47
9
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,50 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # ruff: noqa: E402 Q003
3
+ # fmt: off
4
+ # isort: skip_file
5
+ from __future__ import annotations
6
+ import typing # noqa: F401
7
+ import datetime # noqa: F401
8
+ from decimal import Decimal # noqa: F401
9
+ from enum import StrEnum
10
+ import dataclasses
11
+ from pkgs.serialization import serial_class
12
+ from . import base_t
13
+
14
+ __all__: list[str] = [
15
+ "Curve",
16
+ "CurveAxisType",
17
+ "CurveValue",
18
+ ]
19
+
20
+
21
+ # DO NOT MODIFY -- This file is generated by type_spec
22
+ class CurveAxisType(StrEnum):
23
+ NUMERIC = "numeric"
24
+ TIMESTAMP = "timestamp"
25
+
26
+
27
+ # DO NOT MODIFY -- This file is generated by type_spec
28
+ @serial_class(
29
+ named_type_path="sdk.curves.Curve",
30
+ )
31
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
32
+ class Curve:
33
+ id: base_t.ObjectId
34
+ x_type: typing.Literal[CurveAxisType.NUMERIC] | typing.Literal[CurveAxisType.TIMESTAMP]
35
+ x_values: list[CurveValue]
36
+ y_type: typing.Union[typing.Literal[CurveAxisType.NUMERIC]]
37
+ y_values: list[CurveValue]
38
+
39
+
40
+ # DO NOT MODIFY -- This file is generated by type_spec
41
+ @serial_class(
42
+ named_type_path="sdk.curves.CurveValue",
43
+ to_string_values={"quantity"},
44
+ )
45
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
46
+ class CurveValue:
47
+ index: int
48
+ quantity: Decimal | None = None
49
+ quantity_timestamp: datetime.datetime | None = None
50
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,12 @@
1
+ # ruff: noqa: E402 Q003
2
+ # fmt: off
3
+ # isort: skip_file
4
+ # DO NOT MODIFY -- This file is generated by type_spec
5
+ # Kept only for SDK backwards compatibility
6
+ from .data_t import ColorFormat as ColorFormat
7
+ from .data_t import RgbColor as RgbColor
8
+ from .data_t import CielabColor as CielabColor
9
+ from .data_t import XyzColor as XyzColor
10
+ from .data_t import LChColor as LChColor
11
+ from .data_t import SupportedColorFormatColor as SupportedColorFormatColor
12
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,103 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # ruff: noqa: E402 Q003
3
+ # fmt: off
4
+ # isort: skip_file
5
+ from __future__ import annotations
6
+ import typing # noqa: F401
7
+ import datetime # noqa: F401
8
+ from decimal import Decimal # noqa: F401
9
+ from enum import StrEnum
10
+ import dataclasses
11
+ from pkgs.serialization import serial_class
12
+ from pkgs.serialization import serial_union_annotation
13
+ from . import base_t
14
+
15
+ __all__: list[str] = [
16
+ "CielabColor",
17
+ "ColorFormat",
18
+ "LChColor",
19
+ "RgbColor",
20
+ "SupportedColorFormatColor",
21
+ "XyzColor",
22
+ ]
23
+
24
+
25
+ # DO NOT MODIFY -- This file is generated by type_spec
26
+ class ColorFormat(StrEnum):
27
+ RGB = "rgb"
28
+ LAB = "lab"
29
+ XYZ = "xyz"
30
+ LCH = "lch"
31
+
32
+
33
+ # DO NOT MODIFY -- This file is generated by type_spec
34
+ @serial_class(
35
+ named_type_path="sdk.data.RgbColor",
36
+ unconverted_keys={"B", "G", "R", "type"},
37
+ parse_require={"type"},
38
+ )
39
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
40
+ class RgbColor:
41
+ type: typing.Literal[ColorFormat.RGB] = ColorFormat.RGB
42
+ R: Decimal
43
+ G: Decimal
44
+ B: Decimal
45
+
46
+
47
+ # DO NOT MODIFY -- This file is generated by type_spec
48
+ @serial_class(
49
+ named_type_path="sdk.data.CielabColor",
50
+ unconverted_keys={"L", "a", "b", "type"},
51
+ parse_require={"type"},
52
+ )
53
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
54
+ class CielabColor:
55
+ type: typing.Literal[ColorFormat.LAB] = ColorFormat.LAB
56
+ L: Decimal
57
+ a: Decimal
58
+ b: Decimal
59
+
60
+
61
+ # DO NOT MODIFY -- This file is generated by type_spec
62
+ @serial_class(
63
+ named_type_path="sdk.data.XyzColor",
64
+ unconverted_keys={"X", "Y", "Z", "type"},
65
+ parse_require={"type"},
66
+ )
67
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
68
+ class XyzColor:
69
+ type: typing.Literal[ColorFormat.XYZ] = ColorFormat.XYZ
70
+ X: Decimal
71
+ Y: Decimal
72
+ Z: Decimal
73
+
74
+
75
+ # DO NOT MODIFY -- This file is generated by type_spec
76
+ @serial_class(
77
+ named_type_path="sdk.data.LChColor",
78
+ unconverted_keys={"C", "L", "h", "type"},
79
+ parse_require={"type"},
80
+ )
81
+ @dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
82
+ class LChColor:
83
+ type: typing.Literal[ColorFormat.LCH] = ColorFormat.LCH
84
+ L: Decimal
85
+ C: Decimal
86
+ h: Decimal
87
+
88
+
89
+ # DO NOT MODIFY -- This file is generated by type_spec
90
+ SupportedColorFormatColor = typing.Annotated[
91
+ RgbColor | CielabColor | XyzColor | LChColor,
92
+ serial_union_annotation(
93
+ named_type_path="sdk.data.SupportedColorFormatColor",
94
+ discriminator="type",
95
+ discriminator_map={
96
+ "rgb": RgbColor,
97
+ "lab": CielabColor,
98
+ "xyz": XyzColor,
99
+ "lch": LChColor,
100
+ },
101
+ ),
102
+ ]
103
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,274 +1,12 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
- # flake8: noqa: F821
3
- # ruff: noqa: E402
1
+ # ruff: noqa: E402 Q003
4
2
  # fmt: off
5
3
  # isort: skip_file
6
- from __future__ import annotations
7
- import typing # noqa: F401
8
- import datetime # noqa: F401
9
- from decimal import Decimal # noqa: F401
10
- from pkgs.strenum_compat import StrEnum
11
- from dataclasses import dataclass
12
- from pkgs.serialization import serial_string_enum
13
- from . import base as base_t
14
-
15
- __all__: list[str] = [
16
- "Entity",
17
- "EntityType",
18
- ]
19
-
20
-
21
- # DO NOT MODIFY -- This file is generated by type_spec
22
- @serial_string_enum(
23
- labels={
24
- "analytical_method": "Analytical Method",
25
- "analytical_method_category": "Analytical Method Category",
26
- "annotation_type": "Annotation Type",
27
- "approval": "Approval",
28
- "calculation": "Calculation",
29
- "calendar": "Calendar",
30
- "calendar_event": "Calendar Event",
31
- "certification": "Certification",
32
- "comment": "Comment",
33
- "comment_thread": "Comment Thread",
34
- "condition_parameter": "Condition Parameter",
35
- "condition_parameter_mat_family": "Condition Parameter Material Family",
36
- "constraint": "Constraint",
37
- "constraint_set": "Constraint Set",
38
- "curve_settings": "Curve Settings",
39
- "custom_entity": "Custom Entity",
40
- "doe_run": "Suggest Experiments",
41
- "entities_viewed": "Entities Viewed",
42
- "entity_field": "Field",
43
- "entity_field_audit_log": "Entity Field Audit Log",
44
- "entity_phase_event": "Entity Phase Event",
45
- "entity_tag": "Entity Tag",
46
- "equipment": "Equipment",
47
- "equipment_type": "Equipment Type",
48
- "experiment_group": "Experiment Group",
49
- "experiment_group_type": "Experiment Group Type",
50
- "favorite_link": "Favorite Link",
51
- "field_option_set": "Field Option Set",
52
- "file_folder": "File Folder",
53
- "file_folder_membership": "File Folder Membership",
54
- "goal": "Goal",
55
- "ingredient": "Ingredient",
56
- "ingredient_attribute": "Ingredient Attribute",
57
- "ingredient_attribute_category": "Ingredient Attribute Category",
58
- "ingredient_category": "Ingredient Category",
59
- "ingredient_category_all": "Ingredient Category",
60
- "ingredient_lot": "Ingredient Lot",
61
- "ingredient_role": "Ingredient Role",
62
- "ingredient_tag": "Ingredient Subcategory",
63
- "input_group": "Input Group",
64
- "inv_local_locations": "Inventory Location",
65
- "inventory_amount": "Inventory Amount",
66
- "lab_location": "Lab Location",
67
- "lab_request": "Lab Request",
68
- "license": "License",
69
- "maintenance_schedule": "Maintenance Schedule",
70
- "material_family": "Material Family",
71
- "ml_job": "Batch Processing Job",
72
- "naming_scheme": "Naming Scheme",
73
- "naming_counter": "Naming Counter",
74
- "notebook": "Notebook",
75
- "notebook_cell": "Notebook Cell",
76
- "output": "Output",
77
- "output_calculation_entity_mapping": "Output Calculation Entity Mapping",
78
- "output_category_all": "Output Category",
79
- "output_condition": "Output Condition",
80
- "output_default_condition": "Output Default Condition",
81
- "output_condition_parameter": "Output Condition Parameter",
82
- "output_condition_parameter_analytical_method_category": "Output Condition Parameter Analytical Method Category",
83
- "output_condition_parameter_analytical_method": "Output Condition Parameter Analytical Method",
84
- "output_group": "Output Group",
85
- "recipe_output_metadata": "Recipe Output Metadata",
86
- "permission": "Permission",
87
- "phase_workflow": "Phase Workflow",
88
- "predictive_model": "Predictive Model",
89
- "product": "Product",
90
- "project": "Project",
91
- "recipe": "Experiment",
92
- "recipe_calculation": "Recipe Calculation",
93
- "recipe_permission_view": "Recipe Permission View",
94
- "recipe_project": "Recipe Project",
95
- "recipe_check": "Experiment Check",
96
- "recipe_export": "Recipe Export",
97
- "recipe_ingredients_compounded": "Recipe Ingredients Compounded",
98
- "recipe_ingredients_compounded_calculation": "Recipe Ingredients Compounded Caclulation",
99
- "recipe_step": "Recipe Step",
100
- "recipe_tag": "Recipe Tag",
101
- "recipe_metadata": "Experiment Metadata",
102
- "review": "Review",
103
- "review_entity_user_status": "Review Entity User Status",
104
- "review_user": "Review User",
105
- "rlw_phase": "Phase",
106
- "rlw_trigger_set": "Trigger Set",
107
- "safety_data_sheet": "Safety Data Sheet",
108
- "scheduled_notification": "Scheduled Notification",
109
- "specs": "Spec",
110
- "split_template": "Split Template",
111
- "structured_loading_user_config": "List Config",
112
- "task": "Task",
113
- "task_board": "Task Board",
114
- "template": "Template",
115
- "timesheet_entry": "Timesheet Entry",
116
- "training_run": "Analyze Experiment",
117
- "training_set": "Training Set",
118
- "time_series": "Time Series",
119
- "units": "Units",
120
- "user_favorite": "User Favorite",
121
- "user": "User",
122
- "user_certification": "User Certification",
123
- "user_group": "User Group",
124
- "user_list_set": "User List Set",
125
- "webhook": "Webhook",
126
- "webhook_event": "Webhook Event",
127
- "workflow": "Workflow",
128
- "workflow_step": "Workflow Step",
129
- "workflow_variant": "Workflow Variant",
130
- "platform_notification": "Platform Notification",
131
- "inventory_location_type": "Inventory Location Type",
132
- "entity_definition": "Entity Definition",
133
- "phase_transition": "Phase Transition",
134
- "public_data_entity_link": "Public Data Entity Link",
135
- "public_data_sourced_output": "ChemQuery Property",
136
- "public_data_sourced_project": "ChemQuery Category",
137
- "public_data_sourced_recipe": "ChemQuery Product",
138
- "public_data_sourced_recipe_project": "ChemQuery Product Category",
139
- "public_data_sourced_recipe_metadata": "ChemQuery Product Information",
140
- "public_data_sourced_units": "ChemQuery Units",
141
- "public_data_sourced_condition_parameter": "ChemQuery Condition Parameter",
142
- "public_data_sourced_company": "ChemQuery Company",
143
- "uploader": "Uploader",
144
- },
145
- )
146
- class EntityType(StrEnum):
147
- ANALYTICAL_METHOD = "analytical_method"
148
- ANALYTICAL_METHOD_CATEGORY = "analytical_method_category"
149
- ANNOTATION_TYPE = "annotation_type"
150
- APPROVAL = "approval"
151
- CALCULATION = "calculation"
152
- CALENDAR = "calendar"
153
- CALENDAR_EVENT = "calendar_event"
154
- CERTIFICATION = "certification"
155
- COMMENT = "comment"
156
- COMMENT_THREAD = "comment_thread"
157
- CONDITION_PARAMETER = "condition_parameter"
158
- CONDITION_PARAMETER_MAT_FAMILY = "condition_parameter_mat_family"
159
- CONSTRAINT = "constraint"
160
- CONSTRAINT_SET = "constraint_set"
161
- CURVE_SETTINGS = "curve_settings"
162
- CUSTOM_ENTITY = "custom_entity"
163
- DOE_RUN = "doe_run"
164
- ENTITIES_VIEWED = "entities_viewed"
165
- ENTITY_FIELD = "entity_field"
166
- ENTITY_FIELD_AUDIT_LOG = "entity_field_audit_log"
167
- ENTITY_PHASE_EVENT = "entity_phase_event"
168
- ENTITY_TAG = "entity_tag"
169
- EQUIPMENT = "equipment"
170
- EQUIPMENT_TYPE = "equipment_type"
171
- EXPERIMENT_GROUP = "experiment_group"
172
- EXPERIMENT_GROUP_TYPE = "experiment_group_type"
173
- FAVORITE_LINK = "favorite_link"
174
- FIELD_OPTION_SET = "field_option_set"
175
- FILE_FOLDER = "file_folder"
176
- FILE_FOLDER_MEMBERSHIP = "file_folder_membership"
177
- GOAL = "goal"
178
- INGREDIENT = "ingredient"
179
- INGREDIENT_ATTRIBUTE = "ingredient_attribute"
180
- INGREDIENT_ATTRIBUTE_CATEGORY = "ingredient_attribute_category"
181
- INGREDIENT_CATEGORY = "ingredient_category"
182
- INGREDIENT_CATEGORY_ALL = "ingredient_category_all"
183
- INGREDIENT_LOT = "ingredient_lot"
184
- INGREDIENT_ROLE = "ingredient_role"
185
- INGREDIENT_TAG = "ingredient_tag"
186
- INPUT_GROUP = "input_group"
187
- INV_LOCAL_LOCATIONS = "inv_local_locations"
188
- INVENTORY_AMOUNT = "inventory_amount"
189
- LAB_LOCATION = "lab_location"
190
- LAB_REQUEST = "lab_request"
191
- LICENSE = "license"
192
- MAINTENANCE_SCHEDULE = "maintenance_schedule"
193
- MATERIAL_FAMILY = "material_family"
194
- ML_JOB = "ml_job"
195
- NAMING_SCHEME = "naming_scheme"
196
- NAMING_COUNTER = "naming_counter"
197
- NOTEBOOK = "notebook"
198
- NOTEBOOK_CELL = "notebook_cell"
199
- OUTPUT = "output"
200
- OUTPUT_CALCULATION_ENTITY_MAPPING = "output_calculation_entity_mapping"
201
- OUTPUT_CATEGORY_ALL = "output_category_all"
202
- OUTPUT_CONDITION = "output_condition"
203
- OUTPUT_DEFAULT_CONDITION = "output_default_condition"
204
- OUTPUT_CONDITION_PARAMETER = "output_condition_parameter"
205
- OUTPUT_CONDITION_PARAMETER_ANALYTICAL_METHOD_CATEGORY = "output_condition_parameter_analytical_method_category"
206
- OUTPUT_CONDITION_PARAMETER_ANALYTICAL_METHOD = "output_condition_parameter_analytical_method"
207
- OUTPUT_GROUP = "output_group"
208
- RECIPE_OUTPUT_METADATA = "recipe_output_metadata"
209
- PERMISSION = "permission"
210
- PHASE_WORKFLOW = "phase_workflow"
211
- PREDICTIVE_MODEL = "predictive_model"
212
- PRODUCT = "product"
213
- PROJECT = "project"
214
- RECIPE = "recipe"
215
- RECIPE_CALCULATION = "recipe_calculation"
216
- RECIPE_PERMISSION_VIEW = "recipe_permission_view"
217
- RECIPE_PROJECT = "recipe_project"
218
- RECIPE_CHECK = "recipe_check"
219
- RECIPE_EXPORT = "recipe_export"
220
- RECIPE_INGREDIENTS_COMPOUNDED = "recipe_ingredients_compounded"
221
- RECIPE_INGREDIENTS_COMPOUNDED_CALCULATION = "recipe_ingredients_compounded_calculation"
222
- RECIPE_STEP = "recipe_step"
223
- RECIPE_TAG = "recipe_tag"
224
- RECIPE_METADATA = "recipe_metadata"
225
- REVIEW = "review"
226
- REVIEW_ENTITY_USER_STATUS = "review_entity_user_status"
227
- REVIEW_USER = "review_user"
228
- RLW_PHASE = "rlw_phase"
229
- RLW_TRIGGER_SET = "rlw_trigger_set"
230
- SAFETY_DATA_SHEET = "safety_data_sheet"
231
- SCHEDULED_NOTIFICATION = "scheduled_notification"
232
- SPECS = "specs"
233
- SPLIT_TEMPLATE = "split_template"
234
- STRUCTURED_LOADING_USER_CONFIG = "structured_loading_user_config"
235
- TASK = "task"
236
- TASK_BOARD = "task_board"
237
- TEMPLATE = "template"
238
- TIMESHEET_ENTRY = "timesheet_entry"
239
- TRAINING_RUN = "training_run"
240
- TRAINING_SET = "training_set"
241
- TIME_SERIES = "time_series"
242
- UNITS = "units"
243
- USER_FAVORITE = "user_favorite"
244
- USER = "user"
245
- USER_CERTIFICATION = "user_certification"
246
- USER_GROUP = "user_group"
247
- USER_LIST_SET = "user_list_set"
248
- WEBHOOK = "webhook"
249
- WEBHOOK_EVENT = "webhook_event"
250
- WORKFLOW = "workflow"
251
- WORKFLOW_STEP = "workflow_step"
252
- WORKFLOW_VARIANT = "workflow_variant"
253
- PLATFORM_NOTIFICATION = "platform_notification"
254
- INVENTORY_LOCATION_TYPE = "inventory_location_type"
255
- ENTITY_DEFINITION = "entity_definition"
256
- PHASE_TRANSITION = "phase_transition"
257
- PUBLIC_DATA_ENTITY_LINK = "public_data_entity_link"
258
- PUBLIC_DATA_SOURCED_OUTPUT = "public_data_sourced_output"
259
- PUBLIC_DATA_SOURCED_PROJECT = "public_data_sourced_project"
260
- PUBLIC_DATA_SOURCED_RECIPE = "public_data_sourced_recipe"
261
- PUBLIC_DATA_SOURCED_RECIPE_PROJECT = "public_data_sourced_recipe_project"
262
- PUBLIC_DATA_SOURCED_RECIPE_METADATA = "public_data_sourced_recipe_metadata"
263
- PUBLIC_DATA_SOURCED_UNITS = "public_data_sourced_units"
264
- PUBLIC_DATA_SOURCED_CONDITION_PARAMETER = "public_data_sourced_condition_parameter"
265
- PUBLIC_DATA_SOURCED_COMPANY = "public_data_sourced_company"
266
- UPLOADER = "uploader"
267
-
268
-
269
4
  # DO NOT MODIFY -- This file is generated by type_spec
270
- @dataclass(kw_only=True)
271
- class Entity:
272
- id: base_t.ObjectId
273
- type: EntityType
5
+ # Kept only for SDK backwards compatibility
6
+ from .entity_t import EntityType as EntityType
7
+ from .entity_t import LimitedEntityType as LimitedEntityType
8
+ from .entity_t import EntityPermissionType as EntityPermissionType
9
+ from .entity_t import GrantableEntityPermissionType as GrantableEntityPermissionType
10
+ from .entity_t import Entity as Entity
11
+ from .entity_t import EntityIdentifier as EntityIdentifier
274
12
  # DO NOT MODIFY -- This file is generated by type_spec