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.
- {UncountablePythonSDK-0.0.38.dist-info → UncountablePythonSDK-0.0.40.dist-info}/METADATA +1 -1
- UncountablePythonSDK-0.0.40.dist-info/RECORD +222 -0
- {UncountablePythonSDK-0.0.38.dist-info → UncountablePythonSDK-0.0.40.dist-info}/WHEEL +1 -1
- pkgs/type_spec/emit_python.py +43 -8
- pkgs/type_spec/type_info/emit_type_info.py +1 -1
- uncountable/core/client.py +1 -1
- uncountable/types/__init__.py +32 -30
- uncountable/types/api/batch/execute_batch.py +2 -2
- uncountable/types/api/batch/execute_batch_load_async.py +3 -3
- uncountable/types/api/chemical/convert_chemical_formats.py +2 -2
- uncountable/types/api/entity/create_entities.py +4 -4
- uncountable/types/api/entity/create_entity.py +4 -4
- uncountable/types/api/entity/get_entities_data.py +4 -4
- uncountable/types/api/entity/list_entities.py +3 -3
- uncountable/types/api/entity/lock_entity.py +4 -4
- uncountable/types/api/entity/resolve_entity_ids.py +3 -3
- uncountable/types/api/entity/set_values.py +4 -4
- uncountable/types/api/entity/transition_entity_phase.py +4 -4
- uncountable/types/api/entity/unlock_entity.py +4 -4
- uncountable/types/api/equipment/__init__.py +1 -0
- uncountable/types/api/equipment/associate_equipment_input.py +37 -0
- uncountable/types/api/field_options/upsert_field_options.py +2 -2
- uncountable/types/api/id_source/list_id_source.py +3 -3
- uncountable/types/api/id_source/match_id_source.py +3 -3
- uncountable/types/api/input_groups/get_input_group_names.py +2 -2
- uncountable/types/api/inputs/create_inputs.py +4 -4
- uncountable/types/api/inputs/get_input_data.py +3 -3
- uncountable/types/api/inputs/get_input_names.py +2 -2
- uncountable/types/api/inputs/get_inputs_data.py +3 -3
- uncountable/types/api/inputs/set_input_attribute_values.py +3 -3
- uncountable/types/api/inputs/set_input_category.py +3 -3
- uncountable/types/api/inputs/set_input_subcategories.py +4 -4
- uncountable/types/api/inputs/set_intermediate_type.py +2 -2
- uncountable/types/api/material_families/update_entity_material_families.py +6 -6
- uncountable/types/api/outputs/get_output_data.py +3 -3
- uncountable/types/api/outputs/get_output_names.py +2 -2
- uncountable/types/api/outputs/resolve_output_conditions.py +2 -2
- uncountable/types/api/permissions/set_core_permissions.py +4 -4
- uncountable/types/api/project/get_projects.py +3 -3
- uncountable/types/api/project/get_projects_data.py +5 -5
- uncountable/types/api/recipe_links/create_recipe_link.py +4 -4
- uncountable/types/api/recipe_links/remove_recipe_link.py +4 -4
- uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +2 -2
- uncountable/types/api/recipes/add_recipe_to_project.py +2 -2
- uncountable/types/api/recipes/archive_recipes.py +2 -2
- uncountable/types/api/recipes/associate_recipe_as_input.py +3 -3
- uncountable/types/api/recipes/associate_recipe_as_lot.py +3 -3
- uncountable/types/api/recipes/create_recipe.py +5 -5
- uncountable/types/api/recipes/create_recipes.py +3 -3
- uncountable/types/api/recipes/disassociate_recipe_as_input.py +3 -3
- uncountable/types/api/recipes/edit_recipe_inputs.py +4 -4
- uncountable/types/api/recipes/get_curve.py +3 -3
- uncountable/types/api/recipes/get_recipe_calculations.py +3 -3
- uncountable/types/api/recipes/get_recipe_links.py +3 -3
- uncountable/types/api/recipes/get_recipe_names.py +2 -2
- uncountable/types/api/recipes/get_recipe_output_metadata.py +3 -3
- uncountable/types/api/recipes/get_recipes_data.py +8 -8
- uncountable/types/api/recipes/lock_recipes.py +2 -2
- uncountable/types/api/recipes/remove_recipe_from_project.py +2 -2
- uncountable/types/api/recipes/set_recipe_inputs.py +2 -2
- uncountable/types/api/recipes/set_recipe_metadata.py +3 -3
- uncountable/types/api/recipes/set_recipe_output_annotations.py +3 -3
- uncountable/types/api/recipes/set_recipe_outputs.py +4 -4
- uncountable/types/api/recipes/set_recipe_tags.py +3 -3
- uncountable/types/api/recipes/unarchive_recipes.py +2 -2
- uncountable/types/api/recipes/unlock_recipes.py +2 -2
- uncountable/types/api/triggers/run_trigger.py +3 -3
- uncountable/types/async_batch.py +6 -53
- uncountable/types/async_batch_processor.py +43 -7
- uncountable/types/async_batch_t.py +59 -0
- uncountable/types/base.py +5 -79
- uncountable/types/base_t.py +85 -0
- uncountable/types/calculations.py +3 -18
- uncountable/types/calculations_t.py +23 -0
- uncountable/types/chemical_structure.py +3 -22
- uncountable/types/chemical_structure_t.py +27 -0
- uncountable/types/client_base.py +36 -13
- uncountable/types/curves.py +5 -42
- uncountable/types/curves_t.py +47 -0
- uncountable/types/entity.py +4 -269
- uncountable/types/entity_t.py +274 -0
- uncountable/types/experiment_groups.py +3 -18
- uncountable/types/experiment_groups_t.py +23 -0
- uncountable/types/field_values.py +6 -60
- uncountable/types/field_values_t.py +65 -0
- uncountable/types/fields.py +3 -19
- uncountable/types/fields_t.py +24 -0
- uncountable/types/id_source.py +7 -44
- uncountable/types/id_source_t.py +49 -0
- uncountable/types/identifier.py +6 -49
- uncountable/types/identifier_t.py +54 -0
- uncountable/types/input_attributes.py +3 -24
- uncountable/types/input_attributes_t.py +29 -0
- uncountable/types/inputs.py +5 -57
- uncountable/types/inputs_t.py +62 -0
- uncountable/types/outputs.py +3 -21
- uncountable/types/outputs_t.py +26 -0
- uncountable/types/permissions.py +3 -41
- uncountable/types/permissions_t.py +46 -0
- uncountable/types/phases.py +3 -18
- uncountable/types/phases_t.py +23 -0
- uncountable/types/post_base.py +3 -25
- uncountable/types/post_base_t.py +30 -0
- uncountable/types/recipe_identifiers.py +7 -57
- uncountable/types/recipe_identifiers_t.py +62 -0
- uncountable/types/recipe_inputs.py +4 -25
- uncountable/types/recipe_inputs_t.py +30 -0
- uncountable/types/recipe_links.py +4 -45
- uncountable/types/recipe_links_t.py +50 -0
- uncountable/types/recipe_metadata.py +5 -47
- uncountable/types/recipe_metadata_t.py +52 -0
- uncountable/types/recipe_output_metadata.py +3 -19
- uncountable/types/recipe_output_metadata_t.py +24 -0
- uncountable/types/recipe_tags.py +3 -18
- uncountable/types/recipe_tags_t.py +23 -0
- uncountable/types/recipe_workflow_steps.py +9 -83
- uncountable/types/recipe_workflow_steps_t.py +88 -0
- uncountable/types/recipes.py +3 -16
- uncountable/types/recipes_t.py +21 -0
- uncountable/types/response.py +3 -20
- uncountable/types/response_t.py +25 -0
- uncountable/types/units.py +3 -18
- uncountable/types/units_t.py +23 -0
- uncountable/types/users.py +3 -19
- uncountable/types/users_t.py +24 -0
- uncountable/types/workflows.py +4 -27
- uncountable/types/workflows_t.py +32 -0
- UncountablePythonSDK-0.0.38.dist-info/RECORD +0 -191
- {UncountablePythonSDK-0.0.38.dist-info → UncountablePythonSDK-0.0.40.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,54 @@
|
|
|
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
|
+
"IdentifierKey",
|
|
16
|
+
"IdentifierKeyBatchReference",
|
|
17
|
+
"IdentifierKeyId",
|
|
18
|
+
"IdentifierKeyRefName",
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
23
|
+
@serial_class(
|
|
24
|
+
parse_require={"type"},
|
|
25
|
+
)
|
|
26
|
+
@dataclass(kw_only=True, frozen=True, eq=True)
|
|
27
|
+
class IdentifierKeyId:
|
|
28
|
+
type: typing.Literal["id"] = "id"
|
|
29
|
+
id: base_t.ObjectId
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
33
|
+
@serial_class(
|
|
34
|
+
parse_require={"type"},
|
|
35
|
+
)
|
|
36
|
+
@dataclass(kw_only=True, frozen=True, eq=True)
|
|
37
|
+
class IdentifierKeyRefName:
|
|
38
|
+
type: typing.Literal["ref_name"] = "ref_name"
|
|
39
|
+
ref_name: str
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
43
|
+
@serial_class(
|
|
44
|
+
parse_require={"type"},
|
|
45
|
+
)
|
|
46
|
+
@dataclass(kw_only=True, frozen=True, eq=True)
|
|
47
|
+
class IdentifierKeyBatchReference:
|
|
48
|
+
type: typing.Literal["batch_reference"] = "batch_reference"
|
|
49
|
+
reference: str
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
53
|
+
IdentifierKey = typing.Union[IdentifierKeyId, IdentifierKeyBatchReference, IdentifierKeyRefName]
|
|
54
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -1,29 +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
|
-
from . import base as base_t
|
|
13
|
-
|
|
14
|
-
__all__: list[str] = [
|
|
15
|
-
"InputAttributeValue",
|
|
16
|
-
]
|
|
17
|
-
|
|
18
|
-
|
|
19
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
to_string_values={"quantity_dec"},
|
|
23
|
-
)
|
|
24
|
-
@dataclass(kw_only=True)
|
|
25
|
-
class InputAttributeValue:
|
|
26
|
-
attribute_id: base_t.ObjectId
|
|
27
|
-
quantity_dec: typing.Optional[Decimal] = None
|
|
28
|
-
quantity_json: typing.Optional[base_t.JsonValue] = None
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .input_attributes_t import InputAttributeValue as InputAttributeValue
|
|
29
8
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
"InputAttributeValue",
|
|
16
|
+
]
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@serial_class(
|
|
21
|
+
unconverted_values={"quantity_json"},
|
|
22
|
+
to_string_values={"quantity_dec"},
|
|
23
|
+
)
|
|
24
|
+
@dataclass(kw_only=True)
|
|
25
|
+
class InputAttributeValue:
|
|
26
|
+
attribute_id: base_t.ObjectId
|
|
27
|
+
quantity_dec: typing.Optional[Decimal] = None
|
|
28
|
+
quantity_json: typing.Optional[base_t.JsonValue] = None
|
|
29
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/inputs.py
CHANGED
|
@@ -1,62 +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 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
|
-
"IngredientQuantityType",
|
|
17
|
-
"IngredientType",
|
|
18
|
-
"SimpleInput",
|
|
19
|
-
]
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
# DO NOT MODIFY -- This file is generated by type_spec
|
|
23
|
-
@serial_string_enum(
|
|
24
|
-
labels={
|
|
25
|
-
"numeric": "Numeric",
|
|
26
|
-
"recipe": "Experiment Component",
|
|
27
|
-
"date": "Date",
|
|
28
|
-
"categorical": "Categorical",
|
|
29
|
-
"timestamp": "Timestamp",
|
|
30
|
-
"text": "Text",
|
|
31
|
-
"curve": "Curve",
|
|
32
|
-
"files": "Attachments",
|
|
33
|
-
},
|
|
34
|
-
)
|
|
35
|
-
class IngredientQuantityType(StrEnum):
|
|
36
|
-
NUMERIC = "numeric"
|
|
37
|
-
RECIPE = "recipe"
|
|
38
|
-
DATE = "date"
|
|
39
|
-
CATEGORICAL = "categorical"
|
|
40
|
-
TIMESTAMP = "timestamp"
|
|
41
|
-
TEXT = "text"
|
|
42
|
-
CURVE = "curve"
|
|
43
|
-
FILES = "files"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
# DO NOT MODIFY -- This file is generated by type_spec
|
|
47
|
-
class IngredientType(StrEnum):
|
|
48
|
-
INGREDIENT = "ingredient"
|
|
49
|
-
PROCESS_PARAMETER = "process_parameter"
|
|
50
|
-
EQUIPMENT = "equipment"
|
|
51
|
-
|
|
52
|
-
|
|
53
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
name: str
|
|
59
|
-
is_parameter: bool
|
|
60
|
-
intermediate_recipe_id: typing.Optional[base_t.ObjectId]
|
|
61
|
-
input_type: str
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .inputs_t import IngredientQuantityType as IngredientQuantityType
|
|
8
|
+
from .inputs_t import IngredientType as IngredientType
|
|
9
|
+
from .inputs_t import SimpleInput as SimpleInput
|
|
62
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
|
+
# 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
|
+
"IngredientQuantityType",
|
|
17
|
+
"IngredientType",
|
|
18
|
+
"SimpleInput",
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
23
|
+
@serial_string_enum(
|
|
24
|
+
labels={
|
|
25
|
+
"numeric": "Numeric",
|
|
26
|
+
"recipe": "Experiment Component",
|
|
27
|
+
"date": "Date",
|
|
28
|
+
"categorical": "Categorical",
|
|
29
|
+
"timestamp": "Timestamp",
|
|
30
|
+
"text": "Text",
|
|
31
|
+
"curve": "Curve",
|
|
32
|
+
"files": "Attachments",
|
|
33
|
+
},
|
|
34
|
+
)
|
|
35
|
+
class IngredientQuantityType(StrEnum):
|
|
36
|
+
NUMERIC = "numeric"
|
|
37
|
+
RECIPE = "recipe"
|
|
38
|
+
DATE = "date"
|
|
39
|
+
CATEGORICAL = "categorical"
|
|
40
|
+
TIMESTAMP = "timestamp"
|
|
41
|
+
TEXT = "text"
|
|
42
|
+
CURVE = "curve"
|
|
43
|
+
FILES = "files"
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
47
|
+
class IngredientType(StrEnum):
|
|
48
|
+
INGREDIENT = "ingredient"
|
|
49
|
+
PROCESS_PARAMETER = "process_parameter"
|
|
50
|
+
EQUIPMENT = "equipment"
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
54
|
+
@dataclass(kw_only=True)
|
|
55
|
+
class SimpleInput:
|
|
56
|
+
input_id: base_t.ObjectId
|
|
57
|
+
quantity_type: IngredientQuantityType
|
|
58
|
+
name: str
|
|
59
|
+
is_parameter: bool
|
|
60
|
+
intermediate_recipe_id: typing.Optional[base_t.ObjectId]
|
|
61
|
+
input_type: str
|
|
62
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/outputs.py
CHANGED
|
@@ -1,26 +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
|
-
from . import units as units_t
|
|
13
|
-
|
|
14
|
-
__all__: list[str] = [
|
|
15
|
-
"SimpleOutput",
|
|
16
|
-
]
|
|
17
|
-
|
|
18
|
-
|
|
19
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
output_id: base_t.ObjectId
|
|
23
|
-
name: str
|
|
24
|
-
unit: typing.Optional[units_t.SimpleUnit]
|
|
25
|
-
quantity_type: str
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .outputs_t import SimpleOutput as SimpleOutput
|
|
26
8
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -0,0 +1,26 @@
|
|
|
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
|
+
from . import units_t
|
|
13
|
+
|
|
14
|
+
__all__: list[str] = [
|
|
15
|
+
"SimpleOutput",
|
|
16
|
+
]
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@dataclass(kw_only=True)
|
|
21
|
+
class SimpleOutput:
|
|
22
|
+
output_id: base_t.ObjectId
|
|
23
|
+
name: str
|
|
24
|
+
unit: typing.Optional[units_t.SimpleUnit]
|
|
25
|
+
quantity_type: str
|
|
26
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/permissions.py
CHANGED
|
@@ -1,46 +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 pkgs.strenum_compat import StrEnum
|
|
11
|
-
from pkgs.serialization import serial_string_enum
|
|
12
|
-
|
|
13
|
-
__all__: list[str] = [
|
|
14
|
-
"CorePermissionType",
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
|
|
18
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"admin_rights": "Admin Rights",
|
|
22
|
-
"read_ingredients": "View Ingredients",
|
|
23
|
-
"read_recipe_all": "View Entire Recipe",
|
|
24
|
-
"read_recipe_outputs": "View Recipe Outputs",
|
|
25
|
-
"view_material_family": "View Material Family",
|
|
26
|
-
"write_ingredients": "Modify Ingredients",
|
|
27
|
-
"write_outputs": "Modify Outputs",
|
|
28
|
-
"write_recipe_all": "Modify Entire Recipe",
|
|
29
|
-
"write_recipe_ingredients": "Modify Recipe Inputs",
|
|
30
|
-
"write_recipe_outputs": "Modify Recipe Outputs",
|
|
31
|
-
"add_recipe": "Create Experiments",
|
|
32
|
-
},
|
|
33
|
-
)
|
|
34
|
-
class CorePermissionType(StrEnum):
|
|
35
|
-
ADMIN_RIGHTS = "admin_rights"
|
|
36
|
-
READ_INGREDIENTS = "read_ingredients"
|
|
37
|
-
READ_RECIPE_ALL = "read_recipe_all"
|
|
38
|
-
READ_RECIPE_OUTPUTS = "read_recipe_outputs"
|
|
39
|
-
VIEW_MATERIAL_FAMILY = "view_material_family"
|
|
40
|
-
WRITE_INGREDIENTS = "write_ingredients"
|
|
41
|
-
WRITE_OUTPUTS = "write_outputs"
|
|
42
|
-
WRITE_RECIPE_ALL = "write_recipe_all"
|
|
43
|
-
WRITE_RECIPE_INGREDIENTS = "write_recipe_ingredients"
|
|
44
|
-
WRITE_RECIPE_OUTPUTS = "write_recipe_outputs"
|
|
45
|
-
ADD_RECIPE = "add_recipe"
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .permissions_t import CorePermissionType as CorePermissionType
|
|
46
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
|
+
# 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 pkgs.serialization import serial_string_enum
|
|
12
|
+
|
|
13
|
+
__all__: list[str] = [
|
|
14
|
+
"CorePermissionType",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
19
|
+
@serial_string_enum(
|
|
20
|
+
labels={
|
|
21
|
+
"admin_rights": "Admin Rights",
|
|
22
|
+
"read_ingredients": "View Ingredients",
|
|
23
|
+
"read_recipe_all": "View Entire Recipe",
|
|
24
|
+
"read_recipe_outputs": "View Recipe Outputs",
|
|
25
|
+
"view_material_family": "View Material Family",
|
|
26
|
+
"write_ingredients": "Modify Ingredients",
|
|
27
|
+
"write_outputs": "Modify Outputs",
|
|
28
|
+
"write_recipe_all": "Modify Entire Recipe",
|
|
29
|
+
"write_recipe_ingredients": "Modify Recipe Inputs",
|
|
30
|
+
"write_recipe_outputs": "Modify Recipe Outputs",
|
|
31
|
+
"add_recipe": "Create Experiments",
|
|
32
|
+
},
|
|
33
|
+
)
|
|
34
|
+
class CorePermissionType(StrEnum):
|
|
35
|
+
ADMIN_RIGHTS = "admin_rights"
|
|
36
|
+
READ_INGREDIENTS = "read_ingredients"
|
|
37
|
+
READ_RECIPE_ALL = "read_recipe_all"
|
|
38
|
+
READ_RECIPE_OUTPUTS = "read_recipe_outputs"
|
|
39
|
+
VIEW_MATERIAL_FAMILY = "view_material_family"
|
|
40
|
+
WRITE_INGREDIENTS = "write_ingredients"
|
|
41
|
+
WRITE_OUTPUTS = "write_outputs"
|
|
42
|
+
WRITE_RECIPE_ALL = "write_recipe_all"
|
|
43
|
+
WRITE_RECIPE_INGREDIENTS = "write_recipe_ingredients"
|
|
44
|
+
WRITE_RECIPE_OUTPUTS = "write_recipe_outputs"
|
|
45
|
+
ADD_RECIPE = "add_recipe"
|
|
46
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/phases.py
CHANGED
|
@@ -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
|
-
"Phase",
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
|
|
18
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
id: base_t.ObjectId
|
|
22
|
-
name: str
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .phases_t import Phase as Phase
|
|
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
|
+
"Phase",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
19
|
+
@dataclass(kw_only=True)
|
|
20
|
+
class Phase:
|
|
21
|
+
id: base_t.ObjectId
|
|
22
|
+
name: str
|
|
23
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
uncountable/types/post_base.py
CHANGED
|
@@ -1,30 +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 pkgs.strenum_compat import StrEnum
|
|
11
|
-
from pkgs.serialization import serial_string_enum
|
|
12
|
-
|
|
13
|
-
__all__: list[str] = [
|
|
14
|
-
"UpdateType",
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
|
|
18
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"append": "Append values",
|
|
22
|
-
"override": "Wipe existing and replace",
|
|
23
|
-
"remove": "Remove values",
|
|
24
|
-
},
|
|
25
|
-
)
|
|
26
|
-
class UpdateType(StrEnum):
|
|
27
|
-
APPEND = "append"
|
|
28
|
-
OVERRIDE = "override"
|
|
29
|
-
REMOVE = "remove"
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .post_base_t import UpdateType as UpdateType
|
|
30
8
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -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
|
+
from pkgs.serialization import serial_string_enum
|
|
12
|
+
|
|
13
|
+
__all__: list[str] = [
|
|
14
|
+
"UpdateType",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
19
|
+
@serial_string_enum(
|
|
20
|
+
labels={
|
|
21
|
+
"append": "Append values",
|
|
22
|
+
"override": "Wipe existing and replace",
|
|
23
|
+
"remove": "Remove values",
|
|
24
|
+
},
|
|
25
|
+
)
|
|
26
|
+
class UpdateType(StrEnum):
|
|
27
|
+
APPEND = "append"
|
|
28
|
+
OVERRIDE = "override"
|
|
29
|
+
REMOVE = "remove"
|
|
30
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -1,62 +1,12 @@
|
|
|
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
|
-
"RecipeIdentifier",
|
|
16
|
-
"RecipeIdentifierEditableName",
|
|
17
|
-
"RecipeIdentifierMaterialFamily",
|
|
18
|
-
"RecipeIdentifierMetadata",
|
|
19
|
-
"RecipeIdentifiers",
|
|
20
|
-
]
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
# DO NOT MODIFY -- This file is generated by type_spec
|
|
24
|
-
@serial_class(
|
|
25
|
-
parse_require={"type"},
|
|
26
|
-
)
|
|
27
|
-
@dataclass(kw_only=True)
|
|
28
|
-
class RecipeIdentifierEditableName:
|
|
29
|
-
type: typing.Literal["name"] = "name"
|
|
30
|
-
editable_name: str
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
# DO NOT MODIFY -- This file is generated by type_spec
|
|
34
|
-
@serial_class(
|
|
35
|
-
to_string_values={"quantity_dec"},
|
|
36
|
-
parse_require={"type"},
|
|
37
|
-
)
|
|
38
|
-
@dataclass(kw_only=True)
|
|
39
|
-
class RecipeIdentifierMetadata:
|
|
40
|
-
type: typing.Literal["metadata"] = "metadata"
|
|
41
|
-
recipe_metadata_id: base_t.ObjectId
|
|
42
|
-
quantity_dec: typing.Optional[Decimal] = None
|
|
43
|
-
quantity_json: typing.Optional[str] = None
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
# DO NOT MODIFY -- This file is generated by type_spec
|
|
47
|
-
@serial_class(
|
|
48
|
-
parse_require={"type"},
|
|
49
|
-
)
|
|
50
|
-
@dataclass(kw_only=True)
|
|
51
|
-
class RecipeIdentifierMaterialFamily:
|
|
52
|
-
type: typing.Literal["material_family_id"] = "material_family_id"
|
|
53
|
-
material_family_id: base_t.ObjectId
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
# DO NOT MODIFY -- This file is generated by type_spec
|
|
57
|
-
RecipeIdentifier = typing.Union[RecipeIdentifierEditableName, RecipeIdentifierMetadata, RecipeIdentifierMaterialFamily]
|
|
58
|
-
|
|
59
|
-
|
|
60
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
61
|
-
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .recipe_identifiers_t import RecipeIdentifierEditableName as RecipeIdentifierEditableName
|
|
8
|
+
from .recipe_identifiers_t import RecipeIdentifierMetadata as RecipeIdentifierMetadata
|
|
9
|
+
from .recipe_identifiers_t import RecipeIdentifierMaterialFamily as RecipeIdentifierMaterialFamily
|
|
10
|
+
from .recipe_identifiers_t import RecipeIdentifier as RecipeIdentifier
|
|
11
|
+
from .recipe_identifiers_t import RecipeIdentifiers as RecipeIdentifiers
|
|
62
12
|
# 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
|
+
# 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
|
+
"RecipeIdentifier",
|
|
16
|
+
"RecipeIdentifierEditableName",
|
|
17
|
+
"RecipeIdentifierMaterialFamily",
|
|
18
|
+
"RecipeIdentifierMetadata",
|
|
19
|
+
"RecipeIdentifiers",
|
|
20
|
+
]
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
24
|
+
@serial_class(
|
|
25
|
+
parse_require={"type"},
|
|
26
|
+
)
|
|
27
|
+
@dataclass(kw_only=True)
|
|
28
|
+
class RecipeIdentifierEditableName:
|
|
29
|
+
type: typing.Literal["name"] = "name"
|
|
30
|
+
editable_name: str
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
34
|
+
@serial_class(
|
|
35
|
+
to_string_values={"quantity_dec"},
|
|
36
|
+
parse_require={"type"},
|
|
37
|
+
)
|
|
38
|
+
@dataclass(kw_only=True)
|
|
39
|
+
class RecipeIdentifierMetadata:
|
|
40
|
+
type: typing.Literal["metadata"] = "metadata"
|
|
41
|
+
recipe_metadata_id: base_t.ObjectId
|
|
42
|
+
quantity_dec: typing.Optional[Decimal] = None
|
|
43
|
+
quantity_json: typing.Optional[str] = None
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
47
|
+
@serial_class(
|
|
48
|
+
parse_require={"type"},
|
|
49
|
+
)
|
|
50
|
+
@dataclass(kw_only=True)
|
|
51
|
+
class RecipeIdentifierMaterialFamily:
|
|
52
|
+
type: typing.Literal["material_family_id"] = "material_family_id"
|
|
53
|
+
material_family_id: base_t.ObjectId
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
57
|
+
RecipeIdentifier = typing.Union[RecipeIdentifierEditableName, RecipeIdentifierMetadata, RecipeIdentifierMaterialFamily]
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
61
|
+
RecipeIdentifiers = list[RecipeIdentifier]
|
|
62
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -1,30 +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
|
-
|
|
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
5
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
MOLES = "moles"
|
|
29
|
-
VOLUME = "volume"
|
|
6
|
+
# Kept only for SDK backwards compatibility
|
|
7
|
+
from .recipe_inputs_t import InputValueType as InputValueType
|
|
8
|
+
from .recipe_inputs_t import QuantityBasis as QuantityBasis
|
|
30
9
|
# DO NOT MODIFY -- This file is generated by type_spec
|