UncountablePythonSDK 0.0.83__py3-none-any.whl → 0.0.132__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/basic_auth.py +7 -0
- examples/create_ingredient_sdk.py +34 -0
- examples/download_files.py +26 -0
- examples/integration-server/jobs/materials_auto/concurrent_cron.py +11 -0
- examples/integration-server/jobs/materials_auto/example_cron.py +3 -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 +17 -9
- examples/integration-server/jobs/materials_auto/profile.yaml +61 -0
- examples/integration-server/pyproject.toml +10 -10
- examples/oauth.py +7 -0
- examples/set_recipe_metadata_file.py +1 -1
- examples/upload_files.py +1 -2
- pkgs/argument_parser/__init__.py +8 -0
- pkgs/argument_parser/_is_namedtuple.py +3 -0
- pkgs/argument_parser/argument_parser.py +196 -63
- pkgs/filesystem_utils/__init__.py +1 -0
- pkgs/filesystem_utils/_blob_session.py +144 -0
- pkgs/filesystem_utils/_gdrive_session.py +5 -5
- pkgs/filesystem_utils/_s3_session.py +2 -1
- pkgs/filesystem_utils/_sftp_session.py +6 -3
- pkgs/filesystem_utils/file_type_utils.py +30 -10
- 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 +40 -48
- pkgs/serialization/serial_generic.py +16 -0
- pkgs/serialization/serial_union.py +16 -16
- 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 +2 -4
- pkgs/type_spec/builder.py +248 -70
- pkgs/type_spec/builder_types.py +9 -0
- pkgs/type_spec/config.py +40 -7
- pkgs/type_spec/cross_output_links.py +99 -0
- pkgs/type_spec/emit_open_api.py +121 -34
- pkgs/type_spec/emit_open_api_util.py +5 -5
- pkgs/type_spec/emit_python.py +277 -86
- pkgs/type_spec/emit_typescript.py +102 -29
- pkgs/type_spec/emit_typescript_util.py +66 -10
- pkgs/type_spec/load_types.py +16 -3
- 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 +11 -8
- 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 +115 -22
- 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 +3 -3
- pkgs/type_spec/value_spec/__main__.py +26 -9
- pkgs/type_spec/value_spec/convert_type.py +18 -0
- pkgs/type_spec/value_spec/emit_python.py +13 -3
- pkgs/type_spec/value_spec/types.py +1 -1
- uncountable/core/async_batch.py +1 -1
- uncountable/core/client.py +133 -34
- uncountable/core/environment.py +3 -3
- uncountable/core/file_upload.py +39 -15
- uncountable/integration/cli.py +116 -23
- uncountable/integration/construct_client.py +3 -3
- uncountable/integration/executors/executors.py +12 -2
- uncountable/integration/executors/generic_upload_executor.py +66 -14
- uncountable/integration/http_server/__init__.py +5 -0
- uncountable/integration/http_server/types.py +69 -0
- uncountable/integration/job.py +192 -7
- uncountable/integration/queue_runner/command_server/__init__.py +4 -0
- uncountable/integration/queue_runner/command_server/command_client.py +65 -0
- uncountable/integration/queue_runner/command_server/command_server.py +83 -5
- uncountable/integration/queue_runner/command_server/constants.py +4 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server.proto +36 -0
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.py +28 -11
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.pyi +77 -1
- uncountable/integration/queue_runner/command_server/protocol/command_server_pb2_grpc.py +135 -0
- uncountable/integration/queue_runner/command_server/types.py +25 -2
- uncountable/integration/queue_runner/datastore/datastore_sqlite.py +168 -11
- uncountable/integration/queue_runner/datastore/interface.py +10 -0
- uncountable/integration/queue_runner/datastore/model.py +8 -1
- uncountable/integration/queue_runner/job_scheduler.py +63 -23
- uncountable/integration/queue_runner/queue_runner.py +10 -2
- uncountable/integration/queue_runner/worker.py +3 -5
- uncountable/integration/scan_profiles.py +1 -1
- uncountable/integration/scheduler.py +74 -25
- uncountable/integration/secret_retrieval/retrieve_secret.py +1 -1
- uncountable/integration/server.py +42 -12
- uncountable/integration/telemetry.py +63 -10
- uncountable/integration/webhook_server/entrypoint.py +39 -112
- uncountable/types/__init__.py +58 -1
- uncountable/types/api/batch/execute_batch.py +5 -6
- uncountable/types/api/batch/execute_batch_load_async.py +2 -3
- uncountable/types/api/chemical/convert_chemical_formats.py +10 -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 +7 -7
- uncountable/types/api/entity/create_entity.py +8 -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 +3 -4
- uncountable/types/api/entity/grant_entity_permissions.py +6 -6
- uncountable/types/api/entity/list_aggregate.py +79 -0
- uncountable/types/api/entity/list_entities.py +34 -10
- uncountable/types/api/entity/lock_entity.py +4 -4
- uncountable/types/api/entity/lookup_entity.py +116 -0
- uncountable/types/api/entity/resolve_entity_ids.py +5 -6
- uncountable/types/api/entity/set_entity_field_values.py +44 -0
- uncountable/types/api/entity/set_values.py +3 -3
- uncountable/types/api/entity/transition_entity_phase.py +14 -7
- uncountable/types/api/entity/unlock_entity.py +3 -3
- uncountable/types/api/equipment/associate_equipment_input.py +2 -3
- uncountable/types/api/field_options/upsert_field_options.py +7 -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 +6 -7
- uncountable/types/api/id_source/match_id_source.py +4 -5
- uncountable/types/api/input_groups/get_input_group_names.py +3 -4
- uncountable/types/api/inputs/create_inputs.py +10 -9
- uncountable/types/api/inputs/get_input_data.py +11 -12
- uncountable/types/api/inputs/get_input_names.py +6 -7
- uncountable/types/api/inputs/get_inputs_data.py +6 -7
- uncountable/types/api/inputs/set_input_attribute_values.py +5 -6
- uncountable/types/api/inputs/set_input_category.py +5 -5
- uncountable/types/api/inputs/set_input_subcategories.py +3 -3
- uncountable/types/api/inputs/set_intermediate_type.py +4 -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 +3 -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 +12 -13
- uncountable/types/api/outputs/get_output_names.py +5 -6
- uncountable/types/api/outputs/get_output_organization.py +173 -0
- uncountable/types/api/outputs/resolve_output_conditions.py +7 -8
- uncountable/types/api/permissions/set_core_permissions.py +16 -10
- uncountable/types/api/project/get_projects.py +6 -7
- uncountable/types/api/project/get_projects_data.py +7 -8
- uncountable/types/api/recipe_links/create_recipe_link.py +5 -5
- uncountable/types/api/recipe_links/remove_recipe_link.py +4 -4
- uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +6 -7
- uncountable/types/api/recipes/add_recipe_to_project.py +3 -3
- uncountable/types/api/recipes/add_time_series_data.py +64 -0
- uncountable/types/api/recipes/archive_recipes.py +4 -4
- uncountable/types/api/recipes/associate_recipe_as_input.py +5 -5
- uncountable/types/api/recipes/associate_recipe_as_lot.py +3 -3
- uncountable/types/api/recipes/clear_recipe_outputs.py +3 -3
- uncountable/types/api/recipes/create_mix_order.py +44 -0
- uncountable/types/api/recipes/create_recipe.py +8 -9
- uncountable/types/api/recipes/create_recipes.py +8 -9
- uncountable/types/api/recipes/disassociate_recipe_as_input.py +3 -3
- uncountable/types/api/recipes/edit_recipe_inputs.py +101 -24
- uncountable/types/api/recipes/get_column_calculation_values.py +4 -5
- uncountable/types/api/recipes/get_curve.py +4 -5
- uncountable/types/api/recipes/get_recipe_calculations.py +6 -7
- uncountable/types/api/recipes/get_recipe_links.py +3 -4
- uncountable/types/api/recipes/get_recipe_names.py +3 -4
- uncountable/types/api/recipes/get_recipe_output_metadata.py +5 -6
- uncountable/types/api/recipes/get_recipes_data.py +62 -34
- uncountable/types/api/recipes/lock_recipes.py +9 -8
- uncountable/types/api/recipes/remove_recipe_from_project.py +3 -3
- uncountable/types/api/recipes/set_recipe_inputs.py +9 -10
- uncountable/types/api/recipes/set_recipe_metadata.py +3 -3
- uncountable/types/api/recipes/set_recipe_output_annotations.py +11 -12
- uncountable/types/api/recipes/set_recipe_output_file.py +5 -6
- uncountable/types/api/recipes/set_recipe_outputs.py +24 -13
- uncountable/types/api/recipes/set_recipe_tags.py +14 -9
- uncountable/types/api/recipes/set_recipe_total.py +59 -0
- uncountable/types/api/recipes/unarchive_recipes.py +3 -3
- uncountable/types/api/recipes/unlock_recipes.py +7 -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 +4 -4
- uncountable/types/api/uploader/complete_async_parse.py +46 -0
- uncountable/types/api/uploader/invoke_uploader.py +4 -5
- uncountable/types/api/user/__init__.py +1 -0
- uncountable/types/api/user/get_current_user_info.py +40 -0
- uncountable/types/async_batch.py +1 -1
- uncountable/types/async_batch_processor.py +506 -23
- uncountable/types/async_batch_t.py +35 -8
- uncountable/types/async_jobs.py +0 -1
- uncountable/types/async_jobs_t.py +1 -2
- uncountable/types/auth_retrieval.py +0 -1
- uncountable/types/auth_retrieval_t.py +6 -6
- uncountable/types/base.py +0 -1
- uncountable/types/base_t.py +11 -9
- uncountable/types/calculations.py +0 -1
- uncountable/types/calculations_t.py +1 -2
- uncountable/types/chemical_structure.py +0 -1
- uncountable/types/chemical_structure_t.py +5 -5
- uncountable/types/client_base.py +614 -69
- uncountable/types/client_config.py +1 -1
- uncountable/types/client_config_t.py +13 -3
- uncountable/types/curves.py +0 -1
- uncountable/types/curves_t.py +6 -7
- uncountable/types/data.py +12 -0
- uncountable/types/data_t.py +103 -0
- uncountable/types/entity.py +1 -1
- uncountable/types/entity_t.py +90 -10
- uncountable/types/experiment_groups.py +0 -1
- uncountable/types/experiment_groups_t.py +1 -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 +242 -9
- uncountable/types/fields.py +0 -1
- uncountable/types/fields_t.py +1 -2
- uncountable/types/generic_upload.py +0 -1
- uncountable/types/generic_upload_t.py +14 -14
- uncountable/types/id_source.py +0 -1
- uncountable/types/id_source_t.py +13 -7
- uncountable/types/identifier.py +0 -1
- uncountable/types/identifier_t.py +10 -5
- uncountable/types/input_attributes.py +0 -1
- uncountable/types/input_attributes_t.py +3 -4
- uncountable/types/inputs.py +0 -1
- uncountable/types/inputs_t.py +3 -4
- uncountable/types/integration_server.py +0 -1
- uncountable/types/integration_server_t.py +13 -4
- 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 +2 -1
- uncountable/types/job_definition_t.py +57 -32
- 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 +2 -3
- uncountable/types/overrides.py +0 -1
- uncountable/types/overrides_t.py +10 -4
- uncountable/types/permissions.py +0 -1
- uncountable/types/permissions_t.py +1 -2
- uncountable/types/phases.py +0 -1
- uncountable/types/phases_t.py +1 -2
- uncountable/types/post_base.py +0 -1
- uncountable/types/post_base_t.py +1 -2
- uncountable/types/queued_job.py +2 -1
- uncountable/types/queued_job_t.py +29 -12
- uncountable/types/recipe_identifiers.py +0 -1
- uncountable/types/recipe_identifiers_t.py +18 -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 +3 -4
- uncountable/types/recipe_metadata.py +0 -1
- uncountable/types/recipe_metadata_t.py +9 -10
- uncountable/types/recipe_output_metadata.py +0 -1
- uncountable/types/recipe_output_metadata_t.py +1 -2
- uncountable/types/recipe_tags.py +0 -1
- uncountable/types/recipe_tags_t.py +1 -2
- uncountable/types/recipe_workflow_steps.py +0 -1
- uncountable/types/recipe_workflow_steps_t.py +7 -7
- uncountable/types/recipes.py +0 -1
- uncountable/types/recipes_t.py +2 -2
- uncountable/types/response.py +0 -1
- uncountable/types/response_t.py +2 -2
- uncountable/types/secret_retrieval.py +0 -1
- uncountable/types/secret_retrieval_t.py +7 -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 +1 -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 +1 -2
- uncountable/types/webhook_job.py +1 -1
- uncountable/types/webhook_job_t.py +14 -3
- uncountable/types/workflows.py +0 -1
- uncountable/types/workflows_t.py +3 -4
- uncountablepythonsdk-0.0.132.dist-info/METADATA +64 -0
- uncountablepythonsdk-0.0.132.dist-info/RECORD +363 -0
- {UncountablePythonSDK-0.0.83.dist-info → uncountablepythonsdk-0.0.132.dist-info}/WHEEL +1 -1
- UncountablePythonSDK-0.0.83.dist-info/METADATA +0 -60
- UncountablePythonSDK-0.0.83.dist-info/RECORD +0 -292
- docs/quickstart.md +0 -19
- {UncountablePythonSDK-0.0.83.dist-info → uncountablepythonsdk-0.0.132.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
|
|
@@ -31,20 +30,20 @@ ENDPOINT_PATH = "api/external/inputs/external_get_input_data"
|
|
|
31
30
|
@serial_class(
|
|
32
31
|
named_type_path="sdk.api.inputs.get_input_data.Arguments",
|
|
33
32
|
)
|
|
34
|
-
@dataclasses.dataclass(kw_only=True)
|
|
33
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
35
34
|
class Arguments:
|
|
36
35
|
material_family_id: base_t.ObjectId
|
|
37
|
-
input_ids:
|
|
38
|
-
is_parameter:
|
|
39
|
-
offset:
|
|
40
|
-
limit:
|
|
36
|
+
input_ids: list[base_t.ObjectId] | None
|
|
37
|
+
is_parameter: bool | None
|
|
38
|
+
offset: int | None = None
|
|
39
|
+
limit: int | None = None
|
|
41
40
|
|
|
42
41
|
|
|
43
42
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
44
43
|
@serial_class(
|
|
45
44
|
named_type_path="sdk.api.inputs.get_input_data.SimpleInputAttr",
|
|
46
45
|
)
|
|
47
|
-
@dataclasses.dataclass(kw_only=True)
|
|
46
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
48
47
|
class SimpleInputAttr:
|
|
49
48
|
attribute_id: base_t.ObjectId
|
|
50
49
|
name: str
|
|
@@ -55,7 +54,7 @@ class SimpleInputAttr:
|
|
|
55
54
|
@serial_class(
|
|
56
55
|
named_type_path="sdk.api.inputs.get_input_data.SimpleInputGlobalCategory",
|
|
57
56
|
)
|
|
58
|
-
@dataclasses.dataclass(kw_only=True)
|
|
57
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
59
58
|
class SimpleInputGlobalCategory:
|
|
60
59
|
category_id: base_t.ObjectId
|
|
61
60
|
name: str
|
|
@@ -65,7 +64,7 @@ class SimpleInputGlobalCategory:
|
|
|
65
64
|
@serial_class(
|
|
66
65
|
named_type_path="sdk.api.inputs.get_input_data.SimpleInputSubcategory",
|
|
67
66
|
)
|
|
68
|
-
@dataclasses.dataclass(kw_only=True)
|
|
67
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
69
68
|
class SimpleInputSubcategory:
|
|
70
69
|
subcategory_id: base_t.ObjectId
|
|
71
70
|
name: str
|
|
@@ -75,14 +74,14 @@ class SimpleInputSubcategory:
|
|
|
75
74
|
@serial_class(
|
|
76
75
|
named_type_path="sdk.api.inputs.get_input_data.FullInput",
|
|
77
76
|
)
|
|
78
|
-
@dataclasses.dataclass(kw_only=True)
|
|
77
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
79
78
|
class FullInput:
|
|
80
79
|
input_id: base_t.ObjectId
|
|
81
80
|
name: str
|
|
82
81
|
quantity_type: str
|
|
83
82
|
is_parameter: bool
|
|
84
83
|
attributes: list[input_attributes_t.InputAttributeValue]
|
|
85
|
-
global_category_id:
|
|
84
|
+
global_category_id: base_t.ObjectId | None
|
|
86
85
|
subcategory_ids: list[base_t.ObjectId]
|
|
87
86
|
|
|
88
87
|
|
|
@@ -90,7 +89,7 @@ class FullInput:
|
|
|
90
89
|
@serial_class(
|
|
91
90
|
named_type_path="sdk.api.inputs.get_input_data.Data",
|
|
92
91
|
)
|
|
93
|
-
@dataclasses.dataclass(kw_only=True)
|
|
92
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
94
93
|
class Data:
|
|
95
94
|
inputs: list[FullInput]
|
|
96
95
|
attrs: list[SimpleInputAttr]
|
|
@@ -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
|
|
@@ -27,19 +26,19 @@ ENDPOINT_PATH = "api/external/inputs/external_get_input_names"
|
|
|
27
26
|
@serial_class(
|
|
28
27
|
named_type_path="sdk.api.inputs.get_input_names.Arguments",
|
|
29
28
|
)
|
|
30
|
-
@dataclasses.dataclass(kw_only=True)
|
|
29
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
31
30
|
class Arguments:
|
|
32
31
|
material_family_id: base_t.ObjectId
|
|
33
|
-
is_parameter:
|
|
34
|
-
offset:
|
|
35
|
-
limit:
|
|
32
|
+
is_parameter: bool | None
|
|
33
|
+
offset: int | None = None
|
|
34
|
+
limit: int | None = None
|
|
36
35
|
|
|
37
36
|
|
|
38
37
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
39
38
|
@serial_class(
|
|
40
39
|
named_type_path="sdk.api.inputs.get_input_names.InputWithName",
|
|
41
40
|
)
|
|
42
|
-
@dataclasses.dataclass(kw_only=True)
|
|
41
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
43
42
|
class InputWithName:
|
|
44
43
|
input_id: base_t.ObjectId
|
|
45
44
|
name: str
|
|
@@ -49,7 +48,7 @@ class InputWithName:
|
|
|
49
48
|
@serial_class(
|
|
50
49
|
named_type_path="sdk.api.inputs.get_input_names.Data",
|
|
51
50
|
)
|
|
52
|
-
@dataclasses.dataclass(kw_only=True)
|
|
51
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
53
52
|
class Data:
|
|
54
53
|
inputs: list[InputWithName]
|
|
55
54
|
# 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
|
|
@@ -31,7 +30,7 @@ ENDPOINT_PATH = "api/external/inputs/external_get_inputs_data"
|
|
|
31
30
|
@serial_class(
|
|
32
31
|
named_type_path="sdk.api.inputs.get_inputs_data.Arguments",
|
|
33
32
|
)
|
|
34
|
-
@dataclasses.dataclass(kw_only=True)
|
|
33
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
35
34
|
class Arguments:
|
|
36
35
|
input_ids: list[base_t.ObjectId]
|
|
37
36
|
|
|
@@ -40,7 +39,7 @@ class Arguments:
|
|
|
40
39
|
@serial_class(
|
|
41
40
|
named_type_path="sdk.api.inputs.get_inputs_data.AttributeDetails",
|
|
42
41
|
)
|
|
43
|
-
@dataclasses.dataclass(kw_only=True)
|
|
42
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
44
43
|
class AttributeDetails:
|
|
45
44
|
attribute_id: base_t.ObjectId
|
|
46
45
|
name: str
|
|
@@ -51,7 +50,7 @@ class AttributeDetails:
|
|
|
51
50
|
@serial_class(
|
|
52
51
|
named_type_path="sdk.api.inputs.get_inputs_data.InputTag",
|
|
53
52
|
)
|
|
54
|
-
@dataclasses.dataclass(kw_only=True)
|
|
53
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
55
54
|
class InputTag:
|
|
56
55
|
tag_id: base_t.ObjectId
|
|
57
56
|
tag_name: str
|
|
@@ -61,7 +60,7 @@ class InputTag:
|
|
|
61
60
|
@serial_class(
|
|
62
61
|
named_type_path="sdk.api.inputs.get_inputs_data.InputCategory",
|
|
63
62
|
)
|
|
64
|
-
@dataclasses.dataclass(kw_only=True)
|
|
63
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
65
64
|
class InputCategory:
|
|
66
65
|
material_family_id: base_t.ObjectId
|
|
67
66
|
category_id: base_t.ObjectId
|
|
@@ -72,7 +71,7 @@ class InputCategory:
|
|
|
72
71
|
@serial_class(
|
|
73
72
|
named_type_path="sdk.api.inputs.get_inputs_data.InputDetails",
|
|
74
73
|
)
|
|
75
|
-
@dataclasses.dataclass(kw_only=True)
|
|
74
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
76
75
|
class InputDetails:
|
|
77
76
|
input_id: base_t.ObjectId
|
|
78
77
|
name: str
|
|
@@ -87,7 +86,7 @@ class InputDetails:
|
|
|
87
86
|
@serial_class(
|
|
88
87
|
named_type_path="sdk.api.inputs.get_inputs_data.Data",
|
|
89
88
|
)
|
|
90
|
-
@dataclasses.dataclass(kw_only=True)
|
|
89
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
91
90
|
class Data:
|
|
92
91
|
input_details: list[InputDetails]
|
|
93
92
|
input_attributes: list[AttributeDetails]
|
|
@@ -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
|
|
@@ -28,7 +27,7 @@ ENDPOINT_PATH = "api/external/inputs/external_set_input_attribute_values"
|
|
|
28
27
|
@serial_class(
|
|
29
28
|
named_type_path="sdk.api.inputs.set_input_attribute_values.Arguments",
|
|
30
29
|
)
|
|
31
|
-
@dataclasses.dataclass(kw_only=True)
|
|
30
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
32
31
|
class Arguments:
|
|
33
32
|
attribute_values: list[InputAttributeValue]
|
|
34
33
|
|
|
@@ -39,19 +38,19 @@ class Arguments:
|
|
|
39
38
|
unconverted_values={"quantity_json"},
|
|
40
39
|
to_string_values={"quantity_dec"},
|
|
41
40
|
)
|
|
42
|
-
@dataclasses.dataclass(kw_only=True)
|
|
41
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
43
42
|
class InputAttributeValue:
|
|
44
43
|
input_id: base_t.ObjectId
|
|
45
44
|
attribute_id: base_t.ObjectId
|
|
46
|
-
quantity_dec:
|
|
47
|
-
quantity_json:
|
|
45
|
+
quantity_dec: Decimal | None = None
|
|
46
|
+
quantity_json: base_t.JsonValue | None = None
|
|
48
47
|
|
|
49
48
|
|
|
50
49
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
51
50
|
@serial_class(
|
|
52
51
|
named_type_path="sdk.api.inputs.set_input_attribute_values.Data",
|
|
53
52
|
)
|
|
54
|
-
@dataclasses.dataclass(kw_only=True)
|
|
53
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
55
54
|
class Data(response_t.Response):
|
|
56
55
|
pass
|
|
57
56
|
# 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
|
|
@@ -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 ... import base_t
|
|
12
12
|
from ... import identifier_t
|
|
13
13
|
from ... import response_t
|
|
14
14
|
|
|
@@ -27,18 +27,18 @@ ENDPOINT_PATH = "api/external/inputs/external_set_input_category"
|
|
|
27
27
|
@serial_class(
|
|
28
28
|
named_type_path="sdk.api.inputs.set_input_category.Arguments",
|
|
29
29
|
)
|
|
30
|
-
@dataclasses.dataclass(kw_only=True)
|
|
30
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
31
31
|
class Arguments:
|
|
32
32
|
input_key: identifier_t.IdentifierKey
|
|
33
|
-
category_id:
|
|
34
|
-
material_family_ids:
|
|
33
|
+
category_id: int | None
|
|
34
|
+
material_family_ids: list[int] | None = None
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
38
38
|
@serial_class(
|
|
39
39
|
named_type_path="sdk.api.inputs.set_input_category.Data",
|
|
40
40
|
)
|
|
41
|
-
@dataclasses.dataclass(kw_only=True)
|
|
41
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
42
42
|
class Data(response_t.Response):
|
|
43
43
|
pass
|
|
44
44
|
# 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
|
|
@@ -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 ... import base_t
|
|
12
12
|
from ... import identifier_t
|
|
13
13
|
from ... import post_base_t
|
|
14
14
|
from ... import response_t
|
|
@@ -28,7 +28,7 @@ ENDPOINT_PATH = "api/external/inputs/external_set_input_subcategories"
|
|
|
28
28
|
@serial_class(
|
|
29
29
|
named_type_path="sdk.api.inputs.set_input_subcategories.Arguments",
|
|
30
30
|
)
|
|
31
|
-
@dataclasses.dataclass(kw_only=True)
|
|
31
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
32
32
|
class Arguments:
|
|
33
33
|
input_key: identifier_t.IdentifierKey
|
|
34
34
|
subcategory_ids: list[int]
|
|
@@ -39,7 +39,7 @@ class Arguments:
|
|
|
39
39
|
@serial_class(
|
|
40
40
|
named_type_path="sdk.api.inputs.set_input_subcategories.Data",
|
|
41
41
|
)
|
|
42
|
-
@dataclasses.dataclass(kw_only=True)
|
|
42
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
43
43
|
class Data(response_t.Response):
|
|
44
44
|
pass
|
|
45
45
|
# 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
|
|
@@ -7,9 +6,10 @@ 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
|
|
12
11
|
from pkgs.serialization import serial_class
|
|
12
|
+
from ... import base_t
|
|
13
13
|
from ... import identifier_t
|
|
14
14
|
|
|
15
15
|
__all__: list[str] = [
|
|
@@ -34,7 +34,7 @@ class IntermediateType(StrEnum):
|
|
|
34
34
|
@serial_class(
|
|
35
35
|
named_type_path="sdk.api.inputs.set_intermediate_type.Arguments",
|
|
36
36
|
)
|
|
37
|
-
@dataclasses.dataclass(kw_only=True)
|
|
37
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
38
38
|
class Arguments:
|
|
39
39
|
input_key: identifier_t.IdentifierKey
|
|
40
40
|
intermediate_type: IntermediateType
|
|
@@ -44,7 +44,7 @@ class Arguments:
|
|
|
44
44
|
@serial_class(
|
|
45
45
|
named_type_path="sdk.api.inputs.set_intermediate_type.Data",
|
|
46
46
|
)
|
|
47
|
-
@dataclasses.dataclass(kw_only=True)
|
|
47
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
48
48
|
class Data:
|
|
49
49
|
pass
|
|
50
50
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,41 @@
|
|
|
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
|
+
from ... import integrations_t
|
|
13
|
+
|
|
14
|
+
__all__: list[str] = [
|
|
15
|
+
"Arguments",
|
|
16
|
+
"Data",
|
|
17
|
+
"ENDPOINT_METHOD",
|
|
18
|
+
"ENDPOINT_PATH",
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
ENDPOINT_METHOD = "POST"
|
|
22
|
+
ENDPOINT_PATH = "api/external/integrations/publish_realtime_data"
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
26
|
+
@serial_class(
|
|
27
|
+
named_type_path="sdk.api.integrations.publish_realtime_data.Arguments",
|
|
28
|
+
)
|
|
29
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
30
|
+
class Arguments:
|
|
31
|
+
data_package: integrations_t.DataPackage
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
35
|
+
@serial_class(
|
|
36
|
+
named_type_path="sdk.api.integrations.publish_realtime_data.Data",
|
|
37
|
+
)
|
|
38
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
39
|
+
class Data:
|
|
40
|
+
pass
|
|
41
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,49 @@
|
|
|
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 async_batch_t
|
|
12
|
+
from ... import base_t
|
|
13
|
+
from ... import entity_t
|
|
14
|
+
from ... import notices_t
|
|
15
|
+
from ... import notifications_t
|
|
16
|
+
|
|
17
|
+
__all__: list[str] = [
|
|
18
|
+
"Arguments",
|
|
19
|
+
"Data",
|
|
20
|
+
"ENDPOINT_METHOD",
|
|
21
|
+
"ENDPOINT_PATH",
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
ENDPOINT_METHOD = "POST"
|
|
25
|
+
ENDPOINT_PATH = "api/external/integrations/push_notification"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
29
|
+
@serial_class(
|
|
30
|
+
named_type_path="sdk.api.integrations.push_notification.Arguments",
|
|
31
|
+
)
|
|
32
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
33
|
+
class Arguments:
|
|
34
|
+
notification_targets: list[notifications_t.NotificationTarget]
|
|
35
|
+
subject: str
|
|
36
|
+
message: str
|
|
37
|
+
display_notice: bool = False
|
|
38
|
+
entity: entity_t.EntityIdentifier | None = None
|
|
39
|
+
notice_configuration: notices_t.NotificationNoticeConfiguration | None = None
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
43
|
+
@serial_class(
|
|
44
|
+
named_type_path="sdk.api.integrations.push_notification.Data",
|
|
45
|
+
)
|
|
46
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
47
|
+
class Data(async_batch_t.AsyncBatchActionReturn):
|
|
48
|
+
pass
|
|
49
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,41 @@
|
|
|
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
|
+
from ... import sockets_t
|
|
13
|
+
|
|
14
|
+
__all__: list[str] = [
|
|
15
|
+
"Arguments",
|
|
16
|
+
"Data",
|
|
17
|
+
"ENDPOINT_METHOD",
|
|
18
|
+
"ENDPOINT_PATH",
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
ENDPOINT_METHOD = "POST"
|
|
22
|
+
ENDPOINT_PATH = "api/external/integrations/register_sockets_token"
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
26
|
+
@serial_class(
|
|
27
|
+
named_type_path="sdk.api.integrations.register_sockets_token.Arguments",
|
|
28
|
+
)
|
|
29
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
30
|
+
class Arguments:
|
|
31
|
+
socket_request: sockets_t.SocketTokenRequest
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
35
|
+
@serial_class(
|
|
36
|
+
named_type_path="sdk.api.integrations.register_sockets_token.Data",
|
|
37
|
+
)
|
|
38
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
39
|
+
class Data:
|
|
40
|
+
response: sockets_t.SocketTokenResponse
|
|
41
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,58 @@
|
|
|
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
|
+
from ... import entity_t
|
|
13
|
+
from ... import listing_t
|
|
14
|
+
from ... import structured_filters_t
|
|
15
|
+
|
|
16
|
+
__all__: list[str] = [
|
|
17
|
+
"Arguments",
|
|
18
|
+
"Data",
|
|
19
|
+
"ENDPOINT_METHOD",
|
|
20
|
+
"ENDPOINT_PATH",
|
|
21
|
+
"ListingRow",
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
ENDPOINT_METHOD = "POST"
|
|
25
|
+
ENDPOINT_PATH = "api/external/listing/fetch_listing"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
29
|
+
@serial_class(
|
|
30
|
+
named_type_path="sdk.api.listing.fetch_listing.Arguments",
|
|
31
|
+
)
|
|
32
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
33
|
+
class Arguments:
|
|
34
|
+
entity_type: entity_t.EntityType
|
|
35
|
+
columns: list[listing_t.ColumnIdentifier]
|
|
36
|
+
filters: structured_filters_t.FilterNode | None = None
|
|
37
|
+
limit: int | None = None
|
|
38
|
+
offset: int | None = None
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
42
|
+
@serial_class(
|
|
43
|
+
named_type_path="sdk.api.listing.fetch_listing.ListingRow",
|
|
44
|
+
unconverted_values={"column_values"},
|
|
45
|
+
)
|
|
46
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
47
|
+
class ListingRow:
|
|
48
|
+
column_values: list[base_t.JsonValue]
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
52
|
+
@serial_class(
|
|
53
|
+
named_type_path="sdk.api.listing.fetch_listing.Data",
|
|
54
|
+
)
|
|
55
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
56
|
+
class Data:
|
|
57
|
+
results: list[ListingRow]
|
|
58
|
+
# 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
|
|
@@ -30,10 +29,10 @@ ENDPOINT_PATH = "api/external/material_families/external_update_entity_material_
|
|
|
30
29
|
@serial_class(
|
|
31
30
|
named_type_path="sdk.api.material_families.update_entity_material_families.Arguments",
|
|
32
31
|
)
|
|
33
|
-
@dataclasses.dataclass(kw_only=True)
|
|
32
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
34
33
|
class Arguments:
|
|
35
34
|
entity_key: identifier_t.IdentifierKey
|
|
36
|
-
entity_type: typing.
|
|
35
|
+
entity_type: typing.Literal[entity_t.EntityType.RECIPE_METADATA] | typing.Literal[entity_t.EntityType.INGREDIENT] | typing.Literal[entity_t.EntityType.OUTPUT] | typing.Literal[entity_t.EntityType.CONDITION_PARAMETER] | typing.Literal[entity_t.EntityType.INGREDIENT_ATTRIBUTE] | typing.Literal[entity_t.EntityType.INGREDIENT_CATEGORY_ALL]
|
|
37
36
|
material_family_ids: list[base_t.ObjectId]
|
|
38
37
|
update_type: post_base_t.UpdateType
|
|
39
38
|
|
|
@@ -42,7 +41,7 @@ class Arguments:
|
|
|
42
41
|
@serial_class(
|
|
43
42
|
named_type_path="sdk.api.material_families.update_entity_material_families.Data",
|
|
44
43
|
)
|
|
45
|
-
@dataclasses.dataclass(kw_only=True)
|
|
44
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
46
45
|
class Data(response_t.Response):
|
|
47
46
|
pass
|
|
48
47
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,119 @@
|
|
|
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 pkgs.serialization import serial_string_enum
|
|
14
|
+
from ... import base_t
|
|
15
|
+
from ... import identifier_t
|
|
16
|
+
|
|
17
|
+
__all__: list[str] = [
|
|
18
|
+
"Arguments",
|
|
19
|
+
"Data",
|
|
20
|
+
"ENDPOINT_METHOD",
|
|
21
|
+
"ENDPOINT_PATH",
|
|
22
|
+
"InputContent",
|
|
23
|
+
"InputContentTextMarkdown",
|
|
24
|
+
"InputContentType",
|
|
25
|
+
"Location",
|
|
26
|
+
"LocationAppendToFirstPage",
|
|
27
|
+
"LocationType",
|
|
28
|
+
]
|
|
29
|
+
|
|
30
|
+
ENDPOINT_METHOD = "POST"
|
|
31
|
+
ENDPOINT_PATH = "api/external/notebooks/add_notebook_content"
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
35
|
+
@serial_string_enum(
|
|
36
|
+
labels={
|
|
37
|
+
"append_to_first_page": "Append To First Page",
|
|
38
|
+
},
|
|
39
|
+
)
|
|
40
|
+
class LocationType(StrEnum):
|
|
41
|
+
APPEND_TO_FIRST_PAGE = "append_to_first_page"
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
45
|
+
@serial_class(
|
|
46
|
+
named_type_path="sdk.api.notebooks.add_notebook_content.LocationAppendToFirstPage",
|
|
47
|
+
parse_require={"type"},
|
|
48
|
+
)
|
|
49
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
50
|
+
class LocationAppendToFirstPage:
|
|
51
|
+
type: typing.Literal[LocationType.APPEND_TO_FIRST_PAGE] = LocationType.APPEND_TO_FIRST_PAGE
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
55
|
+
Location = typing.Annotated[
|
|
56
|
+
typing.Union[LocationAppendToFirstPage],
|
|
57
|
+
serial_union_annotation(
|
|
58
|
+
named_type_path="sdk.api.notebooks.add_notebook_content.Location",
|
|
59
|
+
discriminator="type",
|
|
60
|
+
discriminator_map={
|
|
61
|
+
"append_to_first_page": LocationAppendToFirstPage,
|
|
62
|
+
},
|
|
63
|
+
),
|
|
64
|
+
]
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
68
|
+
@serial_string_enum(
|
|
69
|
+
labels={
|
|
70
|
+
"text_markdown": "Text Markdown",
|
|
71
|
+
},
|
|
72
|
+
)
|
|
73
|
+
class InputContentType(StrEnum):
|
|
74
|
+
TEXT_MARKDOWN = "text_markdown"
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
78
|
+
@serial_class(
|
|
79
|
+
named_type_path="sdk.api.notebooks.add_notebook_content.InputContentTextMarkdown",
|
|
80
|
+
parse_require={"type"},
|
|
81
|
+
)
|
|
82
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
83
|
+
class InputContentTextMarkdown:
|
|
84
|
+
type: typing.Literal[InputContentType.TEXT_MARKDOWN] = InputContentType.TEXT_MARKDOWN
|
|
85
|
+
text_markdown: str
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
89
|
+
InputContent = typing.Annotated[
|
|
90
|
+
typing.Union[InputContentTextMarkdown],
|
|
91
|
+
serial_union_annotation(
|
|
92
|
+
named_type_path="sdk.api.notebooks.add_notebook_content.InputContent",
|
|
93
|
+
discriminator="type",
|
|
94
|
+
discriminator_map={
|
|
95
|
+
"text_markdown": InputContentTextMarkdown,
|
|
96
|
+
},
|
|
97
|
+
),
|
|
98
|
+
]
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
102
|
+
@serial_class(
|
|
103
|
+
named_type_path="sdk.api.notebooks.add_notebook_content.Arguments",
|
|
104
|
+
)
|
|
105
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
106
|
+
class Arguments:
|
|
107
|
+
notebook_key: identifier_t.IdentifierKey
|
|
108
|
+
location: Location
|
|
109
|
+
contents: list[InputContent]
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
113
|
+
@serial_class(
|
|
114
|
+
named_type_path="sdk.api.notebooks.add_notebook_content.Data",
|
|
115
|
+
)
|
|
116
|
+
@dataclasses.dataclass(slots=base_t.ENABLE_SLOTS, kw_only=True) # type: ignore[literal-required]
|
|
117
|
+
class Data:
|
|
118
|
+
pass
|
|
119
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|