UncountablePythonSDK 0.0.52__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.
- docs/conf.py +54 -7
- docs/index.md +107 -4
- docs/integration_examples/create_ingredient.md +43 -0
- docs/integration_examples/create_output.md +56 -0
- docs/integration_examples/index.md +6 -0
- docs/justfile +2 -2
- docs/requirements.txt +6 -4
- examples/async_batch.py +3 -3
- examples/basic_auth.py +7 -0
- examples/create_entity.py +3 -1
- examples/create_ingredient_sdk.py +34 -0
- examples/download_files.py +26 -0
- examples/edit_recipe_inputs.py +4 -2
- examples/integration-server/jobs/materials_auto/concurrent_cron.py +11 -0
- examples/integration-server/jobs/materials_auto/example_cron.py +21 -0
- examples/integration-server/jobs/materials_auto/example_http.py +47 -0
- examples/integration-server/jobs/materials_auto/example_instrument.py +100 -0
- examples/integration-server/jobs/materials_auto/example_parse.py +140 -0
- examples/integration-server/jobs/materials_auto/example_predictions.py +61 -0
- examples/integration-server/jobs/materials_auto/example_runsheet_wh.py +39 -0
- examples/integration-server/jobs/materials_auto/example_wh.py +23 -0
- examples/integration-server/jobs/materials_auto/profile.yaml +104 -0
- examples/integration-server/pyproject.toml +224 -0
- examples/invoke_uploader.py +4 -1
- examples/oauth.py +7 -0
- examples/set_recipe_metadata_file.py +40 -0
- examples/set_recipe_output_file_sdk.py +26 -0
- examples/upload_files.py +1 -2
- pkgs/argument_parser/__init__.py +9 -0
- pkgs/argument_parser/_is_namedtuple.py +3 -0
- pkgs/argument_parser/argument_parser.py +217 -70
- pkgs/filesystem_utils/__init__.py +1 -0
- pkgs/filesystem_utils/_blob_session.py +144 -0
- pkgs/filesystem_utils/_gdrive_session.py +10 -7
- pkgs/filesystem_utils/_s3_session.py +15 -13
- pkgs/filesystem_utils/_sftp_session.py +11 -7
- pkgs/filesystem_utils/file_type_utils.py +30 -10
- pkgs/py.typed +0 -0
- pkgs/serialization/__init__.py +7 -2
- pkgs/serialization/annotation.py +64 -0
- pkgs/serialization/missing_sentry.py +1 -1
- pkgs/serialization/opaque_key.py +1 -1
- pkgs/serialization/serial_alias.py +47 -0
- pkgs/serialization/serial_class.py +47 -26
- pkgs/serialization/serial_generic.py +16 -0
- pkgs/serialization/serial_union.py +17 -14
- pkgs/serialization/yaml.py +4 -1
- pkgs/serialization_util/__init__.py +6 -0
- pkgs/serialization_util/dataclasses.py +14 -0
- pkgs/serialization_util/serialization_helpers.py +15 -5
- pkgs/type_spec/actions_registry/__main__.py +0 -4
- pkgs/type_spec/actions_registry/emit_typescript.py +5 -5
- pkgs/type_spec/builder.py +354 -119
- pkgs/type_spec/builder_types.py +9 -0
- pkgs/type_spec/config.py +51 -11
- pkgs/type_spec/cross_output_links.py +99 -0
- pkgs/type_spec/emit_io_ts.py +1 -1
- pkgs/type_spec/emit_open_api.py +127 -36
- pkgs/type_spec/emit_open_api_util.py +5 -6
- pkgs/type_spec/emit_python.py +329 -121
- pkgs/type_spec/emit_typescript.py +117 -256
- pkgs/type_spec/emit_typescript_util.py +291 -2
- pkgs/type_spec/load_types.py +18 -4
- pkgs/type_spec/non_discriminated_union_exceptions.py +14 -0
- pkgs/type_spec/open_api_util.py +29 -4
- pkgs/type_spec/parts/base.py.prepart +13 -10
- pkgs/type_spec/parts/base.ts.prepart +4 -0
- pkgs/type_spec/type_info/__main__.py +3 -1
- pkgs/type_spec/type_info/emit_type_info.py +124 -29
- pkgs/type_spec/ui_entry_actions/__init__.py +4 -0
- pkgs/type_spec/ui_entry_actions/generate_ui_entry_actions.py +308 -0
- pkgs/type_spec/util.py +4 -4
- pkgs/type_spec/value_spec/__main__.py +26 -9
- pkgs/type_spec/value_spec/convert_type.py +21 -1
- pkgs/type_spec/value_spec/emit_python.py +25 -7
- pkgs/type_spec/value_spec/types.py +1 -1
- uncountable/core/async_batch.py +1 -1
- uncountable/core/client.py +142 -39
- uncountable/core/environment.py +41 -0
- uncountable/core/file_upload.py +52 -18
- uncountable/integration/cli.py +142 -0
- uncountable/integration/construct_client.py +8 -8
- uncountable/integration/cron.py +11 -37
- uncountable/integration/db/connect.py +12 -2
- uncountable/integration/db/session.py +25 -0
- uncountable/integration/entrypoint.py +8 -37
- uncountable/integration/executors/executors.py +125 -2
- uncountable/integration/executors/generic_upload_executor.py +87 -29
- uncountable/integration/executors/script_executor.py +3 -3
- uncountable/integration/http_server/__init__.py +5 -0
- uncountable/integration/http_server/types.py +69 -0
- uncountable/integration/job.py +242 -12
- uncountable/integration/queue_runner/__init__.py +0 -0
- uncountable/integration/queue_runner/command_server/__init__.py +28 -0
- uncountable/integration/queue_runner/command_server/command_client.py +133 -0
- uncountable/integration/queue_runner/command_server/command_server.py +142 -0
- uncountable/integration/queue_runner/command_server/constants.py +4 -0
- uncountable/integration/queue_runner/command_server/protocol/__init__.py +0 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server.proto +58 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.py +57 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.pyi +114 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2_grpc.py +264 -0
- uncountable/integration/queue_runner/command_server/types.py +75 -0
- uncountable/integration/queue_runner/datastore/__init__.py +3 -0
- uncountable/integration/queue_runner/datastore/datastore_sqlite.py +250 -0
- uncountable/integration/queue_runner/datastore/interface.py +29 -0
- uncountable/integration/queue_runner/datastore/model.py +24 -0
- uncountable/integration/queue_runner/job_scheduler.py +200 -0
- uncountable/integration/queue_runner/queue_runner.py +34 -0
- uncountable/integration/queue_runner/types.py +7 -0
- uncountable/integration/queue_runner/worker.py +116 -0
- uncountable/integration/scan_profiles.py +67 -0
- uncountable/integration/scheduler.py +199 -0
- uncountable/integration/secret_retrieval/retrieve_secret.py +26 -4
- uncountable/integration/server.py +94 -69
- uncountable/integration/telemetry.py +150 -34
- uncountable/integration/webhook_server/entrypoint.py +97 -0
- uncountable/types/__init__.py +78 -1
- uncountable/types/api/batch/execute_batch.py +13 -6
- uncountable/types/api/batch/execute_batch_load_async.py +9 -3
- uncountable/types/api/chemical/convert_chemical_formats.py +17 -5
- uncountable/types/api/condition_parameters/__init__.py +1 -0
- uncountable/types/api/condition_parameters/upsert_condition_match.py +72 -0
- uncountable/types/api/entity/create_entities.py +19 -7
- uncountable/types/api/entity/create_entity.py +17 -8
- uncountable/types/api/entity/create_or_update_entity.py +48 -0
- uncountable/types/api/entity/export_entities.py +59 -0
- uncountable/types/api/entity/get_entities_data.py +13 -4
- uncountable/types/api/entity/grant_entity_permissions.py +48 -0
- uncountable/types/api/entity/list_aggregate.py +79 -0
- uncountable/types/api/entity/list_entities.py +42 -10
- uncountable/types/api/entity/lock_entity.py +11 -4
- uncountable/types/api/entity/lookup_entity.py +116 -0
- uncountable/types/api/entity/resolve_entity_ids.py +15 -6
- uncountable/types/api/entity/set_entity_field_values.py +44 -0
- uncountable/types/api/entity/set_values.py +10 -3
- uncountable/types/api/entity/transition_entity_phase.py +22 -7
- uncountable/types/api/entity/unlock_entity.py +10 -3
- uncountable/types/api/equipment/associate_equipment_input.py +9 -3
- uncountable/types/api/field_options/upsert_field_options.py +17 -7
- uncountable/types/api/files/__init__.py +1 -0
- uncountable/types/api/files/download_file.py +77 -0
- uncountable/types/api/id_source/list_id_source.py +16 -7
- uncountable/types/api/id_source/match_id_source.py +14 -5
- uncountable/types/api/input_groups/get_input_group_names.py +13 -4
- uncountable/types/api/inputs/create_inputs.py +23 -9
- uncountable/types/api/inputs/get_input_data.py +30 -12
- uncountable/types/api/inputs/get_input_names.py +16 -7
- uncountable/types/api/inputs/get_inputs_data.py +25 -7
- uncountable/types/api/inputs/set_input_attribute_values.py +12 -6
- uncountable/types/api/inputs/set_input_category.py +12 -5
- uncountable/types/api/inputs/set_input_subcategories.py +10 -3
- uncountable/types/api/inputs/set_intermediate_type.py +11 -4
- uncountable/types/api/integrations/__init__.py +1 -0
- uncountable/types/api/integrations/publish_realtime_data.py +41 -0
- uncountable/types/api/integrations/push_notification.py +49 -0
- uncountable/types/api/integrations/register_sockets_token.py +41 -0
- uncountable/types/api/listing/__init__.py +1 -0
- uncountable/types/api/listing/fetch_listing.py +58 -0
- uncountable/types/api/material_families/update_entity_material_families.py +10 -4
- uncountable/types/api/notebooks/__init__.py +1 -0
- uncountable/types/api/notebooks/add_notebook_content.py +119 -0
- uncountable/types/api/outputs/get_output_data.py +28 -13
- uncountable/types/api/outputs/get_output_names.py +15 -6
- uncountable/types/api/outputs/get_output_organization.py +173 -0
- uncountable/types/api/outputs/resolve_output_conditions.py +20 -8
- uncountable/types/api/permissions/set_core_permissions.py +26 -10
- uncountable/types/api/project/get_projects.py +16 -7
- uncountable/types/api/project/get_projects_data.py +17 -8
- uncountable/types/api/recipe_links/create_recipe_link.py +12 -5
- uncountable/types/api/recipe_links/remove_recipe_link.py +11 -4
- uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +16 -7
- uncountable/types/api/recipes/add_recipe_to_project.py +10 -3
- uncountable/types/api/recipes/add_time_series_data.py +64 -0
- uncountable/types/api/recipes/archive_recipes.py +11 -4
- uncountable/types/api/recipes/associate_recipe_as_input.py +12 -5
- uncountable/types/api/recipes/associate_recipe_as_lot.py +10 -3
- uncountable/types/api/recipes/clear_recipe_outputs.py +42 -0
- uncountable/types/api/recipes/create_mix_order.py +44 -0
- uncountable/types/api/recipes/create_recipe.py +15 -9
- uncountable/types/api/recipes/create_recipes.py +21 -9
- uncountable/types/api/recipes/disassociate_recipe_as_input.py +10 -3
- uncountable/types/api/recipes/edit_recipe_inputs.py +134 -22
- uncountable/types/api/recipes/get_column_calculation_values.py +57 -0
- uncountable/types/api/recipes/get_curve.py +11 -5
- uncountable/types/api/recipes/get_recipe_calculations.py +13 -7
- uncountable/types/api/recipes/get_recipe_links.py +10 -4
- uncountable/types/api/recipes/get_recipe_names.py +13 -4
- uncountable/types/api/recipes/get_recipe_output_metadata.py +12 -6
- uncountable/types/api/recipes/get_recipes_data.py +87 -33
- uncountable/types/api/recipes/lock_recipes.py +19 -8
- uncountable/types/api/recipes/remove_recipe_from_project.py +10 -3
- uncountable/types/api/recipes/set_recipe_inputs.py +16 -10
- uncountable/types/api/recipes/set_recipe_metadata.py +10 -3
- uncountable/types/api/recipes/set_recipe_output_annotations.py +24 -12
- uncountable/types/api/recipes/set_recipe_output_file.py +55 -0
- uncountable/types/api/recipes/set_recipe_outputs.py +35 -12
- uncountable/types/api/recipes/set_recipe_tags.py +26 -9
- uncountable/types/api/recipes/set_recipe_total.py +59 -0
- uncountable/types/api/recipes/unarchive_recipes.py +10 -3
- uncountable/types/api/recipes/unlock_recipes.py +14 -6
- uncountable/types/api/runsheet/__init__.py +1 -0
- uncountable/types/api/runsheet/complete_async_upload.py +41 -0
- uncountable/types/api/triggers/run_trigger.py +11 -4
- uncountable/types/api/uploader/complete_async_parse.py +46 -0
- uncountable/types/api/uploader/invoke_uploader.py +13 -6
- uncountable/types/api/user/__init__.py +1 -0
- uncountable/types/api/user/get_current_user_info.py +40 -0
- uncountable/types/async_batch.py +2 -1
- uncountable/types/async_batch_processor.py +618 -18
- uncountable/types/async_batch_t.py +54 -7
- uncountable/types/async_jobs.py +8 -0
- uncountable/types/async_jobs_t.py +52 -0
- uncountable/types/auth_retrieval.py +11 -0
- uncountable/types/auth_retrieval_t.py +75 -0
- uncountable/types/base.py +0 -1
- uncountable/types/base_t.py +13 -11
- uncountable/types/calculations.py +0 -1
- uncountable/types/calculations_t.py +5 -2
- uncountable/types/chemical_structure.py +0 -1
- uncountable/types/chemical_structure_t.py +6 -5
- uncountable/types/client_base.py +751 -70
- uncountable/types/client_config.py +1 -1
- uncountable/types/client_config_t.py +17 -3
- uncountable/types/curves.py +0 -1
- uncountable/types/curves_t.py +10 -7
- uncountable/types/data.py +12 -0
- uncountable/types/data_t.py +103 -0
- uncountable/types/entity.py +4 -1
- uncountable/types/entity_t.py +125 -7
- uncountable/types/experiment_groups.py +0 -1
- uncountable/types/experiment_groups_t.py +5 -2
- uncountable/types/exports.py +8 -0
- uncountable/types/exports_t.py +34 -0
- uncountable/types/field_values.py +19 -1
- uncountable/types/field_values_t.py +246 -9
- uncountable/types/fields.py +0 -1
- uncountable/types/fields_t.py +5 -2
- uncountable/types/generic_upload.py +6 -1
- uncountable/types/generic_upload_t.py +88 -9
- uncountable/types/id_source.py +0 -1
- uncountable/types/id_source_t.py +26 -7
- uncountable/types/identifier.py +0 -1
- uncountable/types/identifier_t.py +13 -5
- uncountable/types/input_attributes.py +0 -1
- uncountable/types/input_attributes_t.py +4 -4
- uncountable/types/inputs.py +1 -1
- uncountable/types/inputs_t.py +24 -4
- uncountable/types/integration_server.py +8 -0
- uncountable/types/integration_server_t.py +46 -0
- uncountable/types/integration_session.py +10 -0
- uncountable/types/integration_session_t.py +60 -0
- uncountable/types/integrations.py +10 -0
- uncountable/types/integrations_t.py +62 -0
- uncountable/types/job_definition.py +4 -6
- uncountable/types/job_definition_t.py +96 -65
- uncountable/types/listing.py +9 -0
- uncountable/types/listing_t.py +51 -0
- uncountable/types/notices.py +8 -0
- uncountable/types/notices_t.py +37 -0
- uncountable/types/notifications.py +11 -0
- uncountable/types/notifications_t.py +74 -0
- uncountable/types/outputs.py +0 -1
- uncountable/types/outputs_t.py +6 -3
- uncountable/types/overrides.py +9 -0
- uncountable/types/overrides_t.py +49 -0
- uncountable/types/permissions.py +0 -1
- uncountable/types/permissions_t.py +1 -2
- uncountable/types/phases.py +0 -1
- uncountable/types/phases_t.py +5 -2
- uncountable/types/post_base.py +0 -1
- uncountable/types/post_base_t.py +1 -2
- uncountable/types/queued_job.py +17 -0
- uncountable/types/queued_job_t.py +140 -0
- uncountable/types/recipe_identifiers.py +0 -1
- uncountable/types/recipe_identifiers_t.py +21 -8
- uncountable/types/recipe_inputs.py +0 -1
- uncountable/types/recipe_inputs_t.py +1 -2
- uncountable/types/recipe_links.py +0 -1
- uncountable/types/recipe_links_t.py +7 -4
- uncountable/types/recipe_metadata.py +0 -1
- uncountable/types/recipe_metadata_t.py +14 -9
- uncountable/types/recipe_output_metadata.py +0 -1
- uncountable/types/recipe_output_metadata_t.py +5 -2
- uncountable/types/recipe_tags.py +0 -1
- uncountable/types/recipe_tags_t.py +5 -2
- uncountable/types/recipe_workflow_steps.py +0 -1
- uncountable/types/recipe_workflow_steps_t.py +14 -7
- uncountable/types/recipes.py +0 -1
- uncountable/types/recipes_t.py +6 -2
- uncountable/types/response.py +0 -1
- uncountable/types/response_t.py +3 -2
- uncountable/types/secret_retrieval.py +0 -1
- uncountable/types/secret_retrieval_t.py +13 -7
- uncountable/types/sockets.py +20 -0
- uncountable/types/sockets_t.py +169 -0
- uncountable/types/structured_filters.py +25 -0
- uncountable/types/structured_filters_t.py +248 -0
- uncountable/types/units.py +0 -1
- uncountable/types/units_t.py +5 -2
- uncountable/types/uploader.py +24 -0
- uncountable/types/uploader_t.py +222 -0
- uncountable/types/users.py +0 -1
- uncountable/types/users_t.py +5 -2
- uncountable/types/webhook_job.py +9 -0
- uncountable/types/webhook_job_t.py +48 -0
- uncountable/types/workflows.py +0 -1
- uncountable/types/workflows_t.py +10 -4
- uncountablepythonsdk-0.0.131.dist-info/METADATA +64 -0
- uncountablepythonsdk-0.0.131.dist-info/RECORD +363 -0
- {UncountablePythonSDK-0.0.52.dist-info → uncountablepythonsdk-0.0.131.dist-info}/WHEEL +1 -1
- UncountablePythonSDK-0.0.52.dist-info/METADATA +0 -56
- UncountablePythonSDK-0.0.52.dist-info/RECORD +0 -246
- docs/quickstart.md +0 -19
- uncountable/core/version.py +0 -11
- {UncountablePythonSDK-0.0.52.dist-info → uncountablepythonsdk-0.0.131.dist-info}/top_level.txt +0 -0
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
2
|
-
# flake8: noqa: F821
|
|
3
2
|
# ruff: noqa: E402 Q003
|
|
4
3
|
# fmt: off
|
|
5
4
|
# isort: skip_file
|
|
@@ -9,6 +8,7 @@ import datetime # noqa: F401
|
|
|
9
8
|
from decimal import Decimal # noqa: F401
|
|
10
9
|
import dataclasses
|
|
11
10
|
from pkgs.serialization import serial_class
|
|
11
|
+
from pkgs.serialization import serial_alias_annotation
|
|
12
12
|
from . import base_t
|
|
13
13
|
|
|
14
14
|
__all__: list[str] = [
|
|
@@ -21,9 +21,10 @@ __all__: list[str] = [
|
|
|
21
21
|
|
|
22
22
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
23
23
|
@serial_class(
|
|
24
|
+
named_type_path="sdk.identifier.IdentifierKeyId",
|
|
24
25
|
parse_require={"type"},
|
|
25
26
|
)
|
|
26
|
-
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
|
27
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True, frozen=True, eq=True) # type: ignore[literal-required]
|
|
27
28
|
class IdentifierKeyId:
|
|
28
29
|
type: typing.Literal["id"] = "id"
|
|
29
30
|
id: base_t.ObjectId
|
|
@@ -31,9 +32,10 @@ class IdentifierKeyId:
|
|
|
31
32
|
|
|
32
33
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
33
34
|
@serial_class(
|
|
35
|
+
named_type_path="sdk.identifier.IdentifierKeyRefName",
|
|
34
36
|
parse_require={"type"},
|
|
35
37
|
)
|
|
36
|
-
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
|
38
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True, frozen=True, eq=True) # type: ignore[literal-required]
|
|
37
39
|
class IdentifierKeyRefName:
|
|
38
40
|
type: typing.Literal["ref_name"] = "ref_name"
|
|
39
41
|
ref_name: str
|
|
@@ -41,14 +43,20 @@ class IdentifierKeyRefName:
|
|
|
41
43
|
|
|
42
44
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
43
45
|
@serial_class(
|
|
46
|
+
named_type_path="sdk.identifier.IdentifierKeyBatchReference",
|
|
44
47
|
parse_require={"type"},
|
|
45
48
|
)
|
|
46
|
-
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
|
49
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True, frozen=True, eq=True) # type: ignore[literal-required]
|
|
47
50
|
class IdentifierKeyBatchReference:
|
|
48
51
|
type: typing.Literal["batch_reference"] = "batch_reference"
|
|
49
52
|
reference: str
|
|
50
53
|
|
|
51
54
|
|
|
52
55
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
53
|
-
IdentifierKey = typing.
|
|
56
|
+
IdentifierKey = typing.Annotated[
|
|
57
|
+
IdentifierKeyId | IdentifierKeyBatchReference | IdentifierKeyRefName,
|
|
58
|
+
serial_alias_annotation(
|
|
59
|
+
named_type_path="sdk.identifier.IdentifierKey",
|
|
60
|
+
),
|
|
61
|
+
]
|
|
54
62
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
2
|
-
# flake8: noqa: F821
|
|
3
2
|
# ruff: noqa: E402 Q003
|
|
4
3
|
# fmt: off
|
|
5
4
|
# isort: skip_file
|
|
@@ -18,12 +17,13 @@ __all__: list[str] = [
|
|
|
18
17
|
|
|
19
18
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
19
|
@serial_class(
|
|
20
|
+
named_type_path="sdk.input_attributes.InputAttributeValue",
|
|
21
21
|
unconverted_values={"quantity_json"},
|
|
22
22
|
to_string_values={"quantity_dec"},
|
|
23
23
|
)
|
|
24
|
-
@dataclasses.dataclass(kw_only=True)
|
|
24
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
25
25
|
class InputAttributeValue:
|
|
26
26
|
attribute_id: base_t.ObjectId
|
|
27
|
-
quantity_dec:
|
|
28
|
-
quantity_json:
|
|
27
|
+
quantity_dec: Decimal | None = None
|
|
28
|
+
quantity_json: base_t.JsonValue | None = None
|
|
29
29
|
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/inputs.py
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
# flake8: noqa: F821
|
|
2
1
|
# ruff: noqa: E402 Q003
|
|
3
2
|
# fmt: off
|
|
4
3
|
# isort: skip_file
|
|
@@ -6,5 +5,6 @@
|
|
|
6
5
|
# Kept only for SDK backwards compatibility
|
|
7
6
|
from .inputs_t import IngredientQuantityType as IngredientQuantityType
|
|
8
7
|
from .inputs_t import IngredientType as IngredientType
|
|
8
|
+
from .inputs_t import IngredientBehavior as IngredientBehavior
|
|
9
9
|
from .inputs_t import SimpleInput as SimpleInput
|
|
10
10
|
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/inputs_t.py
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
2
|
-
# flake8: noqa: F821
|
|
3
2
|
# ruff: noqa: E402 Q003
|
|
4
3
|
# fmt: off
|
|
5
4
|
# isort: skip_file
|
|
@@ -7,12 +6,14 @@ from __future__ import annotations
|
|
|
7
6
|
import typing # noqa: F401
|
|
8
7
|
import datetime # noqa: F401
|
|
9
8
|
from decimal import Decimal # noqa: F401
|
|
10
|
-
from
|
|
9
|
+
from enum import StrEnum
|
|
11
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
12
12
|
from pkgs.serialization import serial_string_enum
|
|
13
13
|
from . import base_t
|
|
14
14
|
|
|
15
15
|
__all__: list[str] = [
|
|
16
|
+
"IngredientBehavior",
|
|
16
17
|
"IngredientQuantityType",
|
|
17
18
|
"IngredientType",
|
|
18
19
|
"SimpleInput",
|
|
@@ -51,12 +52,31 @@ class IngredientType(StrEnum):
|
|
|
51
52
|
|
|
52
53
|
|
|
53
54
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
54
|
-
@
|
|
55
|
+
@serial_string_enum(
|
|
56
|
+
labels={
|
|
57
|
+
"included": "Included",
|
|
58
|
+
"use_quantity": "Use Quantity",
|
|
59
|
+
"not_included": "Not Included",
|
|
60
|
+
"autofill": "Autofill",
|
|
61
|
+
},
|
|
62
|
+
)
|
|
63
|
+
class IngredientBehavior(StrEnum):
|
|
64
|
+
INCLUDED = "included"
|
|
65
|
+
USE_QUANTITY = "use_quantity"
|
|
66
|
+
NOT_INCLUDED = "not_included"
|
|
67
|
+
AUTOFILL = "autofill"
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
71
|
+
@serial_class(
|
|
72
|
+
named_type_path="sdk.inputs.SimpleInput",
|
|
73
|
+
)
|
|
74
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
55
75
|
class SimpleInput:
|
|
56
76
|
input_id: base_t.ObjectId
|
|
57
77
|
quantity_type: IngredientQuantityType
|
|
58
78
|
name: str
|
|
59
79
|
is_parameter: bool
|
|
60
|
-
intermediate_recipe_id:
|
|
80
|
+
intermediate_recipe_id: base_t.ObjectId | None
|
|
61
81
|
input_type: str
|
|
62
82
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -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 .integration_server_t import IntegrationEnvironment as IntegrationEnvironment
|
|
7
|
+
from .integration_server_t import EnvironmentConfig as EnvironmentConfig
|
|
8
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,46 @@
|
|
|
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 auth_retrieval_t
|
|
13
|
+
from . import base_t
|
|
14
|
+
from . import client_config_t
|
|
15
|
+
|
|
16
|
+
__all__: list[str] = [
|
|
17
|
+
"EnvironmentConfig",
|
|
18
|
+
"INTEGRATION_SERVER_RUN_UUID_FIELD_REF_NAME",
|
|
19
|
+
"IntegrationEnvironment",
|
|
20
|
+
]
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
24
|
+
class IntegrationEnvironment(StrEnum):
|
|
25
|
+
LOCAL = "local"
|
|
26
|
+
DEV = "dev"
|
|
27
|
+
TEST = "test"
|
|
28
|
+
PROD = "prod"
|
|
29
|
+
STG = "stg"
|
|
30
|
+
SBX = "sbx"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
34
|
+
@serial_class(
|
|
35
|
+
named_type_path="sdk.integration_server.EnvironmentConfig",
|
|
36
|
+
)
|
|
37
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
38
|
+
class EnvironmentConfig:
|
|
39
|
+
auth_retrieval: auth_retrieval_t.AuthRetrieval
|
|
40
|
+
base_url: str
|
|
41
|
+
client_options: client_config_t.ClientConfigOptions | None = None
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
45
|
+
INTEGRATION_SERVER_RUN_UUID_FIELD_REF_NAME = "unc_integration_server_run_uuid"
|
|
46
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,10 @@
|
|
|
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 .integration_session_t import IntegrationSessionType as IntegrationSessionType
|
|
7
|
+
from .integration_session_t import IntegrationSessionBase as IntegrationSessionBase
|
|
8
|
+
from .integration_session_t import IntegrationSessionInstrument as IntegrationSessionInstrument
|
|
9
|
+
from .integration_session_t import IntegrationSession as IntegrationSession
|
|
10
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,60 @@
|
|
|
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
|
+
from . import identifier_t
|
|
15
|
+
|
|
16
|
+
__all__: list[str] = [
|
|
17
|
+
"IntegrationSession",
|
|
18
|
+
"IntegrationSessionBase",
|
|
19
|
+
"IntegrationSessionInstrument",
|
|
20
|
+
"IntegrationSessionType",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
25
|
+
class IntegrationSessionType(StrEnum):
|
|
26
|
+
INSTRUMENT = "instrument"
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
30
|
+
@serial_class(
|
|
31
|
+
named_type_path="sdk.integration_session.IntegrationSessionBase",
|
|
32
|
+
)
|
|
33
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
34
|
+
class IntegrationSessionBase:
|
|
35
|
+
type: IntegrationSessionType
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
39
|
+
@serial_class(
|
|
40
|
+
named_type_path="sdk.integration_session.IntegrationSessionInstrument",
|
|
41
|
+
parse_require={"type"},
|
|
42
|
+
)
|
|
43
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
44
|
+
class IntegrationSessionInstrument(IntegrationSessionBase):
|
|
45
|
+
type: typing.Literal[IntegrationSessionType.INSTRUMENT] = IntegrationSessionType.INSTRUMENT
|
|
46
|
+
equipment_key: identifier_t.IdentifierKey
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
50
|
+
IntegrationSession = typing.Annotated[
|
|
51
|
+
typing.Union[IntegrationSessionInstrument],
|
|
52
|
+
serial_union_annotation(
|
|
53
|
+
named_type_path="sdk.integration_session.IntegrationSession",
|
|
54
|
+
discriminator="type",
|
|
55
|
+
discriminator_map={
|
|
56
|
+
"instrument": IntegrationSessionInstrument,
|
|
57
|
+
},
|
|
58
|
+
),
|
|
59
|
+
]
|
|
60
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,10 @@
|
|
|
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 .integrations_t import DataPackageType as DataPackageType
|
|
7
|
+
from .integrations_t import DataPackageBase as DataPackageBase
|
|
8
|
+
from .integrations_t import DataPackageNumericReading as DataPackageNumericReading
|
|
9
|
+
from .integrations_t import DataPackage as DataPackage
|
|
10
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,62 @@
|
|
|
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
|
+
from . import entity_t
|
|
15
|
+
|
|
16
|
+
__all__: list[str] = [
|
|
17
|
+
"DataPackage",
|
|
18
|
+
"DataPackageBase",
|
|
19
|
+
"DataPackageNumericReading",
|
|
20
|
+
"DataPackageType",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
25
|
+
class DataPackageType(StrEnum):
|
|
26
|
+
NUMERIC_READING = "numeric_reading"
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
30
|
+
@serial_class(
|
|
31
|
+
named_type_path="sdk.integrations.DataPackageBase",
|
|
32
|
+
)
|
|
33
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
34
|
+
class DataPackageBase:
|
|
35
|
+
type: DataPackageType
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
39
|
+
@serial_class(
|
|
40
|
+
named_type_path="sdk.integrations.DataPackageNumericReading",
|
|
41
|
+
to_string_values={"value"},
|
|
42
|
+
parse_require={"type"},
|
|
43
|
+
)
|
|
44
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
45
|
+
class DataPackageNumericReading(DataPackageBase):
|
|
46
|
+
type: typing.Literal[DataPackageType.NUMERIC_READING] = DataPackageType.NUMERIC_READING
|
|
47
|
+
value: Decimal
|
|
48
|
+
target_entity: entity_t.EntityIdentifier
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
52
|
+
DataPackage = typing.Annotated[
|
|
53
|
+
typing.Union[DataPackageNumericReading],
|
|
54
|
+
serial_union_annotation(
|
|
55
|
+
named_type_path="sdk.integrations.DataPackage",
|
|
56
|
+
discriminator="type",
|
|
57
|
+
discriminator_map={
|
|
58
|
+
"numeric_reading": DataPackageNumericReading,
|
|
59
|
+
},
|
|
60
|
+
),
|
|
61
|
+
]
|
|
62
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
# flake8: noqa: F821
|
|
2
1
|
# ruff: noqa: E402 Q003
|
|
3
2
|
# fmt: off
|
|
4
3
|
# isort: skip_file
|
|
@@ -6,7 +5,6 @@
|
|
|
6
5
|
# Kept only for SDK backwards compatibility
|
|
7
6
|
from .job_definition_t import JobDefinitionType as JobDefinitionType
|
|
8
7
|
from .job_definition_t import JobExecutorType as JobExecutorType
|
|
9
|
-
from .job_definition_t import AuthRetrievalType as AuthRetrievalType
|
|
10
8
|
from .job_definition_t import GenericUploadDataSourceType as GenericUploadDataSourceType
|
|
11
9
|
from .job_definition_t import JobExecutorBase as JobExecutorBase
|
|
12
10
|
from .job_definition_t import JobExecutorScript as JobExecutorScript
|
|
@@ -17,13 +15,13 @@ from .job_definition_t import GenericUploadDataSourceS3 as GenericUploadDataSour
|
|
|
17
15
|
from .job_definition_t import GenericUploadDataSource as GenericUploadDataSource
|
|
18
16
|
from .job_definition_t import JobExecutorGenericUpload as JobExecutorGenericUpload
|
|
19
17
|
from .job_definition_t import JobExecutor as JobExecutor
|
|
18
|
+
from .job_definition_t import JobLoggingSettings as JobLoggingSettings
|
|
20
19
|
from .job_definition_t import JobDefinitionBase as JobDefinitionBase
|
|
21
20
|
from .job_definition_t import CronJobDefinition as CronJobDefinition
|
|
21
|
+
from .job_definition_t import HttpJobDefinitionBase as HttpJobDefinitionBase
|
|
22
|
+
from .job_definition_t import CustomHttpJobDefinition as CustomHttpJobDefinition
|
|
23
|
+
from .job_definition_t import WebhookJobDefinition as WebhookJobDefinition
|
|
22
24
|
from .job_definition_t import JobDefinition as JobDefinition
|
|
23
|
-
from .job_definition_t import AuthRetrievalBase as AuthRetrievalBase
|
|
24
|
-
from .job_definition_t import AuthRetrievalOAuth as AuthRetrievalOAuth
|
|
25
|
-
from .job_definition_t import AuthRetrievalBasic as AuthRetrievalBasic
|
|
26
|
-
from .job_definition_t import AuthRetrieval as AuthRetrieval
|
|
27
25
|
from .job_definition_t import ProfileDefinition as ProfileDefinition
|
|
28
26
|
from .job_definition_t import ProfileMetadata as ProfileMetadata
|
|
29
27
|
from .job_definition_t import JobResult as JobResult
|