UncountablePythonSDK 0.0.38__py3-none-any.whl → 0.0.40__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 (129) hide show
  1. {UncountablePythonSDK-0.0.38.dist-info → UncountablePythonSDK-0.0.40.dist-info}/METADATA +1 -1
  2. UncountablePythonSDK-0.0.40.dist-info/RECORD +222 -0
  3. {UncountablePythonSDK-0.0.38.dist-info → UncountablePythonSDK-0.0.40.dist-info}/WHEEL +1 -1
  4. pkgs/type_spec/emit_python.py +43 -8
  5. pkgs/type_spec/type_info/emit_type_info.py +1 -1
  6. uncountable/core/client.py +1 -1
  7. uncountable/types/__init__.py +32 -30
  8. uncountable/types/api/batch/execute_batch.py +2 -2
  9. uncountable/types/api/batch/execute_batch_load_async.py +3 -3
  10. uncountable/types/api/chemical/convert_chemical_formats.py +2 -2
  11. uncountable/types/api/entity/create_entities.py +4 -4
  12. uncountable/types/api/entity/create_entity.py +4 -4
  13. uncountable/types/api/entity/get_entities_data.py +4 -4
  14. uncountable/types/api/entity/list_entities.py +3 -3
  15. uncountable/types/api/entity/lock_entity.py +4 -4
  16. uncountable/types/api/entity/resolve_entity_ids.py +3 -3
  17. uncountable/types/api/entity/set_values.py +4 -4
  18. uncountable/types/api/entity/transition_entity_phase.py +4 -4
  19. uncountable/types/api/entity/unlock_entity.py +4 -4
  20. uncountable/types/api/equipment/__init__.py +1 -0
  21. uncountable/types/api/equipment/associate_equipment_input.py +37 -0
  22. uncountable/types/api/field_options/upsert_field_options.py +2 -2
  23. uncountable/types/api/id_source/list_id_source.py +3 -3
  24. uncountable/types/api/id_source/match_id_source.py +3 -3
  25. uncountable/types/api/input_groups/get_input_group_names.py +2 -2
  26. uncountable/types/api/inputs/create_inputs.py +4 -4
  27. uncountable/types/api/inputs/get_input_data.py +3 -3
  28. uncountable/types/api/inputs/get_input_names.py +2 -2
  29. uncountable/types/api/inputs/get_inputs_data.py +3 -3
  30. uncountable/types/api/inputs/set_input_attribute_values.py +3 -3
  31. uncountable/types/api/inputs/set_input_category.py +3 -3
  32. uncountable/types/api/inputs/set_input_subcategories.py +4 -4
  33. uncountable/types/api/inputs/set_intermediate_type.py +2 -2
  34. uncountable/types/api/material_families/update_entity_material_families.py +6 -6
  35. uncountable/types/api/outputs/get_output_data.py +3 -3
  36. uncountable/types/api/outputs/get_output_names.py +2 -2
  37. uncountable/types/api/outputs/resolve_output_conditions.py +2 -2
  38. uncountable/types/api/permissions/set_core_permissions.py +4 -4
  39. uncountable/types/api/project/get_projects.py +3 -3
  40. uncountable/types/api/project/get_projects_data.py +5 -5
  41. uncountable/types/api/recipe_links/create_recipe_link.py +4 -4
  42. uncountable/types/api/recipe_links/remove_recipe_link.py +4 -4
  43. uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +2 -2
  44. uncountable/types/api/recipes/add_recipe_to_project.py +2 -2
  45. uncountable/types/api/recipes/archive_recipes.py +2 -2
  46. uncountable/types/api/recipes/associate_recipe_as_input.py +3 -3
  47. uncountable/types/api/recipes/associate_recipe_as_lot.py +3 -3
  48. uncountable/types/api/recipes/create_recipe.py +5 -5
  49. uncountable/types/api/recipes/create_recipes.py +3 -3
  50. uncountable/types/api/recipes/disassociate_recipe_as_input.py +3 -3
  51. uncountable/types/api/recipes/edit_recipe_inputs.py +4 -4
  52. uncountable/types/api/recipes/get_curve.py +3 -3
  53. uncountable/types/api/recipes/get_recipe_calculations.py +3 -3
  54. uncountable/types/api/recipes/get_recipe_links.py +3 -3
  55. uncountable/types/api/recipes/get_recipe_names.py +2 -2
  56. uncountable/types/api/recipes/get_recipe_output_metadata.py +3 -3
  57. uncountable/types/api/recipes/get_recipes_data.py +8 -8
  58. uncountable/types/api/recipes/lock_recipes.py +2 -2
  59. uncountable/types/api/recipes/remove_recipe_from_project.py +2 -2
  60. uncountable/types/api/recipes/set_recipe_inputs.py +2 -2
  61. uncountable/types/api/recipes/set_recipe_metadata.py +3 -3
  62. uncountable/types/api/recipes/set_recipe_output_annotations.py +3 -3
  63. uncountable/types/api/recipes/set_recipe_outputs.py +4 -4
  64. uncountable/types/api/recipes/set_recipe_tags.py +3 -3
  65. uncountable/types/api/recipes/unarchive_recipes.py +2 -2
  66. uncountable/types/api/recipes/unlock_recipes.py +2 -2
  67. uncountable/types/api/triggers/run_trigger.py +3 -3
  68. uncountable/types/async_batch.py +6 -53
  69. uncountable/types/async_batch_processor.py +43 -7
  70. uncountable/types/async_batch_t.py +59 -0
  71. uncountable/types/base.py +5 -79
  72. uncountable/types/base_t.py +85 -0
  73. uncountable/types/calculations.py +3 -18
  74. uncountable/types/calculations_t.py +23 -0
  75. uncountable/types/chemical_structure.py +3 -22
  76. uncountable/types/chemical_structure_t.py +27 -0
  77. uncountable/types/client_base.py +36 -13
  78. uncountable/types/curves.py +5 -42
  79. uncountable/types/curves_t.py +47 -0
  80. uncountable/types/entity.py +4 -269
  81. uncountable/types/entity_t.py +274 -0
  82. uncountable/types/experiment_groups.py +3 -18
  83. uncountable/types/experiment_groups_t.py +23 -0
  84. uncountable/types/field_values.py +6 -60
  85. uncountable/types/field_values_t.py +65 -0
  86. uncountable/types/fields.py +3 -19
  87. uncountable/types/fields_t.py +24 -0
  88. uncountable/types/id_source.py +7 -44
  89. uncountable/types/id_source_t.py +49 -0
  90. uncountable/types/identifier.py +6 -49
  91. uncountable/types/identifier_t.py +54 -0
  92. uncountable/types/input_attributes.py +3 -24
  93. uncountable/types/input_attributes_t.py +29 -0
  94. uncountable/types/inputs.py +5 -57
  95. uncountable/types/inputs_t.py +62 -0
  96. uncountable/types/outputs.py +3 -21
  97. uncountable/types/outputs_t.py +26 -0
  98. uncountable/types/permissions.py +3 -41
  99. uncountable/types/permissions_t.py +46 -0
  100. uncountable/types/phases.py +3 -18
  101. uncountable/types/phases_t.py +23 -0
  102. uncountable/types/post_base.py +3 -25
  103. uncountable/types/post_base_t.py +30 -0
  104. uncountable/types/recipe_identifiers.py +7 -57
  105. uncountable/types/recipe_identifiers_t.py +62 -0
  106. uncountable/types/recipe_inputs.py +4 -25
  107. uncountable/types/recipe_inputs_t.py +30 -0
  108. uncountable/types/recipe_links.py +4 -45
  109. uncountable/types/recipe_links_t.py +50 -0
  110. uncountable/types/recipe_metadata.py +5 -47
  111. uncountable/types/recipe_metadata_t.py +52 -0
  112. uncountable/types/recipe_output_metadata.py +3 -19
  113. uncountable/types/recipe_output_metadata_t.py +24 -0
  114. uncountable/types/recipe_tags.py +3 -18
  115. uncountable/types/recipe_tags_t.py +23 -0
  116. uncountable/types/recipe_workflow_steps.py +9 -83
  117. uncountable/types/recipe_workflow_steps_t.py +88 -0
  118. uncountable/types/recipes.py +3 -16
  119. uncountable/types/recipes_t.py +21 -0
  120. uncountable/types/response.py +3 -20
  121. uncountable/types/response_t.py +25 -0
  122. uncountable/types/units.py +3 -18
  123. uncountable/types/units_t.py +23 -0
  124. uncountable/types/users.py +3 -19
  125. uncountable/types/users_t.py +24 -0
  126. uncountable/types/workflows.py +4 -27
  127. uncountable/types/workflows_t.py +32 -0
  128. UncountablePythonSDK-0.0.38.dist-info/RECORD +0 -191
  129. {UncountablePythonSDK-0.0.38.dist-info → UncountablePythonSDK-0.0.40.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,30 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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
+
12
+ __all__: list[str] = [
13
+ "InputValueType",
14
+ "QuantityBasis",
15
+ ]
16
+
17
+
18
+ # DO NOT MODIFY -- This file is generated by type_spec
19
+ class InputValueType(StrEnum):
20
+ VALUE = "value"
21
+ ACTUAL_VALUE = "actual_value"
22
+
23
+
24
+ # DO NOT MODIFY -- This file is generated by type_spec
25
+ class QuantityBasis(StrEnum):
26
+ ARBITRARY = "arbitrary"
27
+ MASS = "mass"
28
+ MOLES = "moles"
29
+ VOLUME = "volume"
30
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,50 +1,9 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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
- "RecipeLink",
17
- "RecipeLinkType",
18
- ]
19
-
20
-
21
- # DO NOT MODIFY -- This file is generated by type_spec
22
- @serial_string_enum(
23
- labels={
24
- "user_link": "Manual Link",
25
- "child": "Test Sample",
26
- "self": "Self Link",
27
- "recipe_as_output": "Analytical Sample",
28
- "control": "Control Link",
29
- "intermediate_recipe": "Used as Component Link",
30
- "previous_experiment": "Previous Sample",
31
- },
32
- )
33
- class RecipeLinkType(StrEnum):
34
- USER_LINK = "user_link"
35
- CHILD = "child"
36
- SELF = "self"
37
- RECIPE_AS_OUTPUT = "recipe_as_output"
38
- CONTROL = "control"
39
- INTERMEDIATE_RECIPE = "intermediate_recipe"
40
- PREVIOUS_EXPERIMENT = "previous_experiment"
41
-
42
-
43
5
  # DO NOT MODIFY -- This file is generated by type_spec
44
- @dataclass(kw_only=True, frozen=True, eq=True)
45
- class RecipeLink:
46
- recipe_id_from: base_t.ObjectId
47
- recipe_id_to: base_t.ObjectId
48
- link_type: str
49
- name: str
6
+ # Kept only for SDK backwards compatibility
7
+ from .recipe_links_t import RecipeLinkType as RecipeLinkType
8
+ from .recipe_links_t import RecipeLink as RecipeLink
50
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
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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_t
14
+
15
+ __all__: list[str] = [
16
+ "RecipeLink",
17
+ "RecipeLinkType",
18
+ ]
19
+
20
+
21
+ # DO NOT MODIFY -- This file is generated by type_spec
22
+ @serial_string_enum(
23
+ labels={
24
+ "user_link": "Manual Link",
25
+ "child": "Test Sample",
26
+ "self": "Self Link",
27
+ "recipe_as_output": "Analytical Sample",
28
+ "control": "Control Link",
29
+ "intermediate_recipe": "Used as Component Link",
30
+ "previous_experiment": "Previous Sample",
31
+ },
32
+ )
33
+ class RecipeLinkType(StrEnum):
34
+ USER_LINK = "user_link"
35
+ CHILD = "child"
36
+ SELF = "self"
37
+ RECIPE_AS_OUTPUT = "recipe_as_output"
38
+ CONTROL = "control"
39
+ INTERMEDIATE_RECIPE = "intermediate_recipe"
40
+ PREVIOUS_EXPERIMENT = "previous_experiment"
41
+
42
+
43
+ # DO NOT MODIFY -- This file is generated by type_spec
44
+ @dataclass(kw_only=True, frozen=True, eq=True)
45
+ class RecipeLink:
46
+ recipe_id_from: base_t.ObjectId
47
+ recipe_id_to: base_t.ObjectId
48
+ link_type: str
49
+ name: str
50
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,52 +1,10 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 dataclasses import dataclass
11
- from pkgs.serialization import serial_class
12
- from . import base as base_t
13
-
14
- __all__: list[str] = [
15
- "MetadataValue",
16
- "RecipeMetadata",
17
- "SimpleRecipeMetadataField",
18
- ]
19
-
20
-
21
- # DO NOT MODIFY -- This file is generated by type_spec
22
- @serial_class(
23
- unconverted_values={"value_json"},
24
- to_string_values={"value_numeric"},
25
- )
26
- @dataclass(kw_only=True)
27
- class MetadataValue:
28
- metadata_id: base_t.ObjectId
29
- value_numeric: typing.Optional[Decimal] = None
30
- value_str: typing.Optional[str] = None
31
- value_json: typing.Optional[base_t.JsonValue] = None
32
-
33
-
34
- # DO NOT MODIFY -- This file is generated by type_spec
35
- @dataclass(kw_only=True)
36
- class SimpleRecipeMetadataField:
37
- metadata_id: base_t.ObjectId
38
- name: str
39
- quantity_type: str
40
-
41
-
42
5
  # DO NOT MODIFY -- This file is generated by type_spec
43
- @serial_class(
44
- unconverted_values={"quantity_json"},
45
- to_string_values={"quantity_dec"},
46
- )
47
- @dataclass(kw_only=True)
48
- class RecipeMetadata:
49
- metadata_id: base_t.ObjectId
50
- quantity_dec: typing.Optional[Decimal] = None
51
- quantity_json: typing.Optional[base_t.JsonValue] = None
6
+ # Kept only for SDK backwards compatibility
7
+ from .recipe_metadata_t import MetadataValue as MetadataValue
8
+ from .recipe_metadata_t import SimpleRecipeMetadataField as SimpleRecipeMetadataField
9
+ from .recipe_metadata_t import RecipeMetadata as RecipeMetadata
52
10
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,52 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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 dataclasses import dataclass
11
+ from pkgs.serialization import serial_class
12
+ from . import base_t
13
+
14
+ __all__: list[str] = [
15
+ "MetadataValue",
16
+ "RecipeMetadata",
17
+ "SimpleRecipeMetadataField",
18
+ ]
19
+
20
+
21
+ # DO NOT MODIFY -- This file is generated by type_spec
22
+ @serial_class(
23
+ unconverted_values={"value_json"},
24
+ to_string_values={"value_numeric"},
25
+ )
26
+ @dataclass(kw_only=True)
27
+ class MetadataValue:
28
+ metadata_id: base_t.ObjectId
29
+ value_numeric: typing.Optional[Decimal] = None
30
+ value_str: typing.Optional[str] = None
31
+ value_json: typing.Optional[base_t.JsonValue] = None
32
+
33
+
34
+ # DO NOT MODIFY -- This file is generated by type_spec
35
+ @dataclass(kw_only=True)
36
+ class SimpleRecipeMetadataField:
37
+ metadata_id: base_t.ObjectId
38
+ name: str
39
+ quantity_type: str
40
+
41
+
42
+ # DO NOT MODIFY -- This file is generated by type_spec
43
+ @serial_class(
44
+ unconverted_values={"quantity_json"},
45
+ to_string_values={"quantity_dec"},
46
+ )
47
+ @dataclass(kw_only=True)
48
+ class RecipeMetadata:
49
+ metadata_id: base_t.ObjectId
50
+ quantity_dec: typing.Optional[Decimal] = None
51
+ quantity_json: typing.Optional[base_t.JsonValue] = None
52
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,24 +1,8 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 dataclasses import dataclass
11
- from . import base as base_t
12
-
13
- __all__: list[str] = [
14
- "RecipeOutputMetadataField",
15
- ]
16
-
17
-
18
5
  # DO NOT MODIFY -- This file is generated by type_spec
19
- @dataclass(kw_only=True)
20
- class RecipeOutputMetadataField:
21
- id: base_t.ObjectId
22
- name: str
23
- quantity_type: str
6
+ # Kept only for SDK backwards compatibility
7
+ from .recipe_output_metadata_t import RecipeOutputMetadataField as RecipeOutputMetadataField
24
8
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,24 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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 dataclasses import dataclass
11
+ from . import base_t
12
+
13
+ __all__: list[str] = [
14
+ "RecipeOutputMetadataField",
15
+ ]
16
+
17
+
18
+ # DO NOT MODIFY -- This file is generated by type_spec
19
+ @dataclass(kw_only=True)
20
+ class RecipeOutputMetadataField:
21
+ id: base_t.ObjectId
22
+ name: str
23
+ quantity_type: str
24
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,23 +1,8 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 dataclasses import dataclass
11
- from . import base as base_t
12
-
13
- __all__: list[str] = [
14
- "SimpleRecipeTag",
15
- ]
16
-
17
-
18
5
  # DO NOT MODIFY -- This file is generated by type_spec
19
- @dataclass(kw_only=True)
20
- class SimpleRecipeTag:
21
- recipe_tag_id: base_t.ObjectId
22
- name: str
6
+ # Kept only for SDK backwards compatibility
7
+ from .recipe_tags_t import SimpleRecipeTag as SimpleRecipeTag
23
8
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,23 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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 dataclasses import dataclass
11
+ from . import base_t
12
+
13
+ __all__: list[str] = [
14
+ "SimpleRecipeTag",
15
+ ]
16
+
17
+
18
+ # DO NOT MODIFY -- This file is generated by type_spec
19
+ @dataclass(kw_only=True)
20
+ class SimpleRecipeTag:
21
+ recipe_tag_id: base_t.ObjectId
22
+ name: str
23
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,88 +1,14 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 pkgs.serialization import serial_union_annotation
14
- from . import identifier as identifier_t
15
-
16
- __all__: list[str] = [
17
- "RecipeWorkflowStepIdentifier",
18
- "RecipeWorkflowStepIdentifierBase",
19
- "RecipeWorkflowStepIdentifierDefault",
20
- "RecipeWorkflowStepIdentifierKey",
21
- "RecipeWorkflowStepIdentifierType",
22
- "RecipeWorkflowStepIdentifierWorkflowStep",
23
- "RecipeWorkflowStepPosition",
24
- ]
25
-
26
-
27
- # DO NOT MODIFY -- This file is generated by type_spec
28
- class RecipeWorkflowStepIdentifierType(StrEnum):
29
- IDENTIFIER_KEY = "identifier_key"
30
- DEFAULT = "default"
31
- WORKFLOW_STEP = "workflow_step"
32
-
33
-
34
- # DO NOT MODIFY -- This file is generated by type_spec
35
- @dataclass(kw_only=True)
36
- class RecipeWorkflowStepIdentifierBase:
37
- type: RecipeWorkflowStepIdentifierType
38
-
39
-
40
- # DO NOT MODIFY -- This file is generated by type_spec
41
- @serial_class(
42
- parse_require={"type"},
43
- )
44
- @dataclass(kw_only=True)
45
- class RecipeWorkflowStepIdentifierDefault(RecipeWorkflowStepIdentifierBase):
46
- type: typing.Literal[RecipeWorkflowStepIdentifierType.DEFAULT] = RecipeWorkflowStepIdentifierType.DEFAULT
47
-
48
-
49
- # DO NOT MODIFY -- This file is generated by type_spec
50
- class RecipeWorkflowStepPosition(StrEnum):
51
- FIRST = "first"
52
- LAST = "last"
53
-
54
-
55
- # DO NOT MODIFY -- This file is generated by type_spec
56
- @serial_class(
57
- parse_require={"type"},
58
- )
59
- @dataclass(kw_only=True)
60
- class RecipeWorkflowStepIdentifierWorkflowStep(RecipeWorkflowStepIdentifierBase):
61
- type: typing.Literal[RecipeWorkflowStepIdentifierType.WORKFLOW_STEP] = RecipeWorkflowStepIdentifierType.WORKFLOW_STEP
62
- workflow_step_key: identifier_t.IdentifierKey
63
- position: RecipeWorkflowStepPosition = RecipeWorkflowStepPosition.FIRST
64
-
65
-
66
- # DO NOT MODIFY -- This file is generated by type_spec
67
- @serial_class(
68
- parse_require={"type"},
69
- )
70
- @dataclass(kw_only=True)
71
- class RecipeWorkflowStepIdentifierKey:
72
- type: typing.Literal[RecipeWorkflowStepIdentifierType.IDENTIFIER_KEY] = RecipeWorkflowStepIdentifierType.IDENTIFIER_KEY
73
- recipe_workflow_step_key: identifier_t.IdentifierKey
74
-
75
-
76
5
  # DO NOT MODIFY -- This file is generated by type_spec
77
- RecipeWorkflowStepIdentifier = typing.Annotated[
78
- typing.Union[RecipeWorkflowStepIdentifierDefault, RecipeWorkflowStepIdentifierWorkflowStep, RecipeWorkflowStepIdentifierKey],
79
- serial_union_annotation(
80
- discriminator="type",
81
- discriminator_map={
82
- "default": RecipeWorkflowStepIdentifierDefault,
83
- "workflow_step": RecipeWorkflowStepIdentifierWorkflowStep,
84
- "identifier_key": RecipeWorkflowStepIdentifierKey,
85
- },
86
- ),
87
- ]
6
+ # Kept only for SDK backwards compatibility
7
+ from .recipe_workflow_steps_t import RecipeWorkflowStepIdentifierType as RecipeWorkflowStepIdentifierType
8
+ from .recipe_workflow_steps_t import RecipeWorkflowStepIdentifierBase as RecipeWorkflowStepIdentifierBase
9
+ from .recipe_workflow_steps_t import RecipeWorkflowStepIdentifierDefault as RecipeWorkflowStepIdentifierDefault
10
+ from .recipe_workflow_steps_t import RecipeWorkflowStepPosition as RecipeWorkflowStepPosition
11
+ from .recipe_workflow_steps_t import RecipeWorkflowStepIdentifierWorkflowStep as RecipeWorkflowStepIdentifierWorkflowStep
12
+ from .recipe_workflow_steps_t import RecipeWorkflowStepIdentifierKey as RecipeWorkflowStepIdentifierKey
13
+ from .recipe_workflow_steps_t import RecipeWorkflowStepIdentifier as RecipeWorkflowStepIdentifier
88
14
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,88 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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 pkgs.serialization import serial_union_annotation
14
+ from . import identifier_t
15
+
16
+ __all__: list[str] = [
17
+ "RecipeWorkflowStepIdentifier",
18
+ "RecipeWorkflowStepIdentifierBase",
19
+ "RecipeWorkflowStepIdentifierDefault",
20
+ "RecipeWorkflowStepIdentifierKey",
21
+ "RecipeWorkflowStepIdentifierType",
22
+ "RecipeWorkflowStepIdentifierWorkflowStep",
23
+ "RecipeWorkflowStepPosition",
24
+ ]
25
+
26
+
27
+ # DO NOT MODIFY -- This file is generated by type_spec
28
+ class RecipeWorkflowStepIdentifierType(StrEnum):
29
+ IDENTIFIER_KEY = "identifier_key"
30
+ DEFAULT = "default"
31
+ WORKFLOW_STEP = "workflow_step"
32
+
33
+
34
+ # DO NOT MODIFY -- This file is generated by type_spec
35
+ @dataclass(kw_only=True)
36
+ class RecipeWorkflowStepIdentifierBase:
37
+ type: RecipeWorkflowStepIdentifierType
38
+
39
+
40
+ # DO NOT MODIFY -- This file is generated by type_spec
41
+ @serial_class(
42
+ parse_require={"type"},
43
+ )
44
+ @dataclass(kw_only=True)
45
+ class RecipeWorkflowStepIdentifierDefault(RecipeWorkflowStepIdentifierBase):
46
+ type: typing.Literal[RecipeWorkflowStepIdentifierType.DEFAULT] = RecipeWorkflowStepIdentifierType.DEFAULT
47
+
48
+
49
+ # DO NOT MODIFY -- This file is generated by type_spec
50
+ class RecipeWorkflowStepPosition(StrEnum):
51
+ FIRST = "first"
52
+ LAST = "last"
53
+
54
+
55
+ # DO NOT MODIFY -- This file is generated by type_spec
56
+ @serial_class(
57
+ parse_require={"type"},
58
+ )
59
+ @dataclass(kw_only=True)
60
+ class RecipeWorkflowStepIdentifierWorkflowStep(RecipeWorkflowStepIdentifierBase):
61
+ type: typing.Literal[RecipeWorkflowStepIdentifierType.WORKFLOW_STEP] = RecipeWorkflowStepIdentifierType.WORKFLOW_STEP
62
+ workflow_step_key: identifier_t.IdentifierKey
63
+ position: RecipeWorkflowStepPosition = RecipeWorkflowStepPosition.FIRST
64
+
65
+
66
+ # DO NOT MODIFY -- This file is generated by type_spec
67
+ @serial_class(
68
+ parse_require={"type"},
69
+ )
70
+ @dataclass(kw_only=True)
71
+ class RecipeWorkflowStepIdentifierKey:
72
+ type: typing.Literal[RecipeWorkflowStepIdentifierType.IDENTIFIER_KEY] = RecipeWorkflowStepIdentifierType.IDENTIFIER_KEY
73
+ recipe_workflow_step_key: identifier_t.IdentifierKey
74
+
75
+
76
+ # DO NOT MODIFY -- This file is generated by type_spec
77
+ RecipeWorkflowStepIdentifier = typing.Annotated[
78
+ typing.Union[RecipeWorkflowStepIdentifierDefault, RecipeWorkflowStepIdentifierWorkflowStep, RecipeWorkflowStepIdentifierKey],
79
+ serial_union_annotation(
80
+ discriminator="type",
81
+ discriminator_map={
82
+ "default": RecipeWorkflowStepIdentifierDefault,
83
+ "workflow_step": RecipeWorkflowStepIdentifierWorkflowStep,
84
+ "identifier_key": RecipeWorkflowStepIdentifierKey,
85
+ },
86
+ ),
87
+ ]
88
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,21 +1,8 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 dataclasses import dataclass
11
-
12
- __all__: list[str] = [
13
- "RecipeAttributeFormatting",
14
- ]
15
-
16
-
17
5
  # DO NOT MODIFY -- This file is generated by type_spec
18
- @dataclass(kw_only=True)
19
- class RecipeAttributeFormatting:
20
- background_color: str
6
+ # Kept only for SDK backwards compatibility
7
+ from .recipes_t import RecipeAttributeFormatting as RecipeAttributeFormatting
21
8
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,21 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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 dataclasses import dataclass
11
+
12
+ __all__: list[str] = [
13
+ "RecipeAttributeFormatting",
14
+ ]
15
+
16
+
17
+ # DO NOT MODIFY -- This file is generated by type_spec
18
+ @dataclass(kw_only=True)
19
+ class RecipeAttributeFormatting:
20
+ background_color: str
21
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,25 +1,8 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 dataclasses import dataclass
11
- from pkgs.serialization import serial_class
12
-
13
- __all__: list[str] = [
14
- "Response",
15
- ]
16
-
17
-
18
5
  # DO NOT MODIFY -- This file is generated by type_spec
19
- @serial_class(
20
- parse_require={"status"},
21
- )
22
- @dataclass(kw_only=True)
23
- class Response:
24
- status: typing.Literal["ok"] = "ok"
6
+ # Kept only for SDK backwards compatibility
7
+ from .response_t import Response as Response
25
8
  # DO NOT MODIFY -- This file is generated by type_spec
@@ -0,0 +1,25 @@
1
+ # DO NOT MODIFY -- This file is generated by type_spec
2
+ # flake8: noqa: F821
3
+ # ruff: noqa: E402 Q003
4
+ # fmt: off
5
+ # 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 dataclasses import dataclass
11
+ from pkgs.serialization import serial_class
12
+
13
+ __all__: list[str] = [
14
+ "Response",
15
+ ]
16
+
17
+
18
+ # DO NOT MODIFY -- This file is generated by type_spec
19
+ @serial_class(
20
+ parse_require={"status"},
21
+ )
22
+ @dataclass(kw_only=True)
23
+ class Response:
24
+ status: typing.Literal["ok"] = "ok"
25
+ # DO NOT MODIFY -- This file is generated by type_spec
@@ -1,23 +1,8 @@
1
- # DO NOT MODIFY -- This file is generated by type_spec
2
1
  # flake8: noqa: F821
3
- # ruff: noqa: E402
2
+ # ruff: noqa: E402 Q003
4
3
  # fmt: off
5
4
  # 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 dataclasses import dataclass
11
- from . import base as base_t
12
-
13
- __all__: list[str] = [
14
- "SimpleUnit",
15
- ]
16
-
17
-
18
5
  # DO NOT MODIFY -- This file is generated by type_spec
19
- @dataclass(kw_only=True)
20
- class SimpleUnit:
21
- unit_id: base_t.ObjectId
22
- name: str
6
+ # Kept only for SDK backwards compatibility
7
+ from .units_t import SimpleUnit as SimpleUnit
23
8
  # DO NOT MODIFY -- This file is generated by type_spec