arctrl 3.0.0__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.
- arctrl/__init__.py +23 -0
- arctrl/cwl.py +12 -0
- arctrl/py/CWL/__init__.py +0 -0
- arctrl/py/CWL/cwlprocessing_unit.py +221 -0
- arctrl/py/CWL/cwltypes.py +364 -0
- arctrl/py/CWL/decode.py +3532 -0
- arctrl/py/CWL/encode.py +1905 -0
- arctrl/py/CWL/expression_tool_description.py +192 -0
- arctrl/py/CWL/hash_helpers.py +60 -0
- arctrl/py/CWL/inputs.py +122 -0
- arctrl/py/CWL/operation_description.py +169 -0
- arctrl/py/CWL/outputs.py +171 -0
- arctrl/py/CWL/parameter_reference.py +74 -0
- arctrl/py/CWL/requirements.py +350 -0
- arctrl/py/CWL/tool_description.py +192 -0
- arctrl/py/CWL/workflow_description.py +181 -0
- arctrl/py/CWL/workflow_steps.py +354 -0
- arctrl/py/Contract/__init__.py +0 -0
- arctrl/py/Contract/arc.py +89 -0
- arctrl/py/Contract/arc_assay.py +125 -0
- arctrl/py/Contract/arc_investigation.py +88 -0
- arctrl/py/Contract/arc_run.py +291 -0
- arctrl/py/Contract/arc_study.py +126 -0
- arctrl/py/Contract/arc_workflow.py +213 -0
- arctrl/py/Contract/contract.py +153 -0
- arctrl/py/Contract/datamap.py +396 -0
- arctrl/py/Contract/git.py +116 -0
- arctrl/py/Contract/license.py +58 -0
- arctrl/py/Contract/validation_packages_config.py +107 -0
- arctrl/py/ContractIO/__init__.py +0 -0
- arctrl/py/ContractIO/contract_io.py +350 -0
- arctrl/py/ContractIO/file_system_helper.py +264 -0
- arctrl/py/Conversion/__init__.py +0 -0
- arctrl/py/Conversion/assay.py +151 -0
- arctrl/py/Conversion/basic.py +559 -0
- arctrl/py/Conversion/column_index.py +91 -0
- arctrl/py/Conversion/datamap.py +36 -0
- arctrl/py/Conversion/date_time.py +32 -0
- arctrl/py/Conversion/investigation.py +171 -0
- arctrl/py/Conversion/person.py +148 -0
- arctrl/py/Conversion/process.py +828 -0
- arctrl/py/Conversion/run.py +367 -0
- arctrl/py/Conversion/scholarly_article.py +163 -0
- arctrl/py/Conversion/study.py +99 -0
- arctrl/py/Conversion/table.py +229 -0
- arctrl/py/Conversion/workflow.py +680 -0
- arctrl/py/Core/Helper/__init__.py +0 -0
- arctrl/py/Core/Helper/collections_.py +512 -0
- arctrl/py/Core/Helper/date_time.py +26 -0
- arctrl/py/Core/Helper/hash_codes.py +60 -0
- arctrl/py/Core/Helper/identifier.py +290 -0
- arctrl/py/Core/Helper/orcid.py +42 -0
- arctrl/py/Core/Helper/printer.py +13 -0
- arctrl/py/Core/Helper/regex.py +554 -0
- arctrl/py/Core/Helper/sem_ver.py +71 -0
- arctrl/py/Core/Helper/url.py +148 -0
- arctrl/py/Core/Process/__init__.py +0 -0
- arctrl/py/Core/Process/column_index.py +280 -0
- arctrl/py/Core/Process/component.py +200 -0
- arctrl/py/Core/Process/factor.py +151 -0
- arctrl/py/Core/Process/factor_value.py +182 -0
- arctrl/py/Core/Process/material.py +74 -0
- arctrl/py/Core/Process/material_attribute.py +95 -0
- arctrl/py/Core/Process/material_attribute_value.py +184 -0
- arctrl/py/Core/Process/material_type.py +45 -0
- arctrl/py/Core/Process/process.py +477 -0
- arctrl/py/Core/Process/process_input.py +265 -0
- arctrl/py/Core/Process/process_output.py +235 -0
- arctrl/py/Core/Process/process_parameter_value.py +200 -0
- arctrl/py/Core/Process/process_sequence.py +435 -0
- arctrl/py/Core/Process/protocol.py +175 -0
- arctrl/py/Core/Process/protocol_parameter.py +98 -0
- arctrl/py/Core/Process/sample.py +82 -0
- arctrl/py/Core/Process/source.py +62 -0
- arctrl/py/Core/Table/__init__.py +0 -0
- arctrl/py/Core/Table/arc_table.py +1206 -0
- arctrl/py/Core/Table/arc_table_aux.py +1308 -0
- arctrl/py/Core/Table/arc_tables.py +574 -0
- arctrl/py/Core/Table/composite_cell.py +319 -0
- arctrl/py/Core/Table/composite_column.py +73 -0
- arctrl/py/Core/Table/composite_header.py +739 -0
- arctrl/py/Core/__init__.py +0 -0
- arctrl/py/Core/arc_types.py +5312 -0
- arctrl/py/Core/comment.py +128 -0
- arctrl/py/Core/comment_list.py +127 -0
- arctrl/py/Core/conversion.py +1375 -0
- arctrl/py/Core/data.py +247 -0
- arctrl/py/Core/data_context.py +157 -0
- arctrl/py/Core/data_file.py +112 -0
- arctrl/py/Core/datamap.py +217 -0
- arctrl/py/Core/identifier_setters.py +43 -0
- arctrl/py/Core/iproperty_value.py +36 -0
- arctrl/py/Core/ontology_annotation.py +298 -0
- arctrl/py/Core/ontology_source_reference.py +114 -0
- arctrl/py/Core/person.py +259 -0
- arctrl/py/Core/publication.py +161 -0
- arctrl/py/Core/template.py +231 -0
- arctrl/py/Core/templates.py +148 -0
- arctrl/py/Core/uri.py +11 -0
- arctrl/py/Core/value.py +188 -0
- arctrl/py/FileSystem/__init__.py +0 -0
- arctrl/py/FileSystem/commit.py +21 -0
- arctrl/py/FileSystem/default_gitattributes.py +1 -0
- arctrl/py/FileSystem/default_gitignore.py +1 -0
- arctrl/py/FileSystem/default_license.py +1 -0
- arctrl/py/FileSystem/file_system.py +58 -0
- arctrl/py/FileSystem/file_system_tree.py +483 -0
- arctrl/py/FileSystem/path.py +266 -0
- arctrl/py/Json/Datamap/__init__.py +0 -0
- arctrl/py/Json/Datamap/data_context.py +101 -0
- arctrl/py/Json/Datamap/datamap.py +53 -0
- arctrl/py/Json/Process/__init__.py +0 -0
- arctrl/py/Json/Process/assay_materials.py +46 -0
- arctrl/py/Json/Process/component.py +125 -0
- arctrl/py/Json/Process/factor.py +107 -0
- arctrl/py/Json/Process/factor_value.py +101 -0
- arctrl/py/Json/Process/material.py +226 -0
- arctrl/py/Json/Process/material_attribute.py +79 -0
- arctrl/py/Json/Process/material_attribute_value.py +101 -0
- arctrl/py/Json/Process/material_type.py +53 -0
- arctrl/py/Json/Process/process.py +296 -0
- arctrl/py/Json/Process/process_input.py +83 -0
- arctrl/py/Json/Process/process_output.py +67 -0
- arctrl/py/Json/Process/process_parameter_value.py +81 -0
- arctrl/py/Json/Process/protocol.py +354 -0
- arctrl/py/Json/Process/protocol_parameter.py +91 -0
- arctrl/py/Json/Process/sample.py +277 -0
- arctrl/py/Json/Process/source.py +214 -0
- arctrl/py/Json/Process/study_materials.py +52 -0
- arctrl/py/Json/Process/value.py +56 -0
- arctrl/py/Json/ROCrate/__init__.py +0 -0
- arctrl/py/Json/ROCrate/ldcontext.py +143 -0
- arctrl/py/Json/ROCrate/ldgraph.py +117 -0
- arctrl/py/Json/ROCrate/ldnode.py +304 -0
- arctrl/py/Json/ROCrate/ldref.py +44 -0
- arctrl/py/Json/ROCrate/ldvalue.py +102 -0
- arctrl/py/Json/Table/__init__.py +0 -0
- arctrl/py/Json/Table/arc_table.py +375 -0
- arctrl/py/Json/Table/cell_table.py +83 -0
- arctrl/py/Json/Table/composite_cell.py +136 -0
- arctrl/py/Json/Table/composite_header.py +67 -0
- arctrl/py/Json/Table/iotype.py +24 -0
- arctrl/py/Json/Table/oatable.py +82 -0
- arctrl/py/Json/Table/templates.py +281 -0
- arctrl/py/Json/__init__.py +0 -0
- arctrl/py/Json/assay.py +600 -0
- arctrl/py/Json/comment.py +206 -0
- arctrl/py/Json/context/rocrate/__init__.py +0 -0
- arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
- arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
- arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
- arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
- arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
- arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
- arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
- arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
- arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
- arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
- arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
- arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
- arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
- arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
- arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
- arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
- arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
- arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
- arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
- arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
- arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
- arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
- arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
- arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
- arctrl/py/Json/converter_options.py +23 -0
- arctrl/py/Json/data.py +356 -0
- arctrl/py/Json/data_file.py +63 -0
- arctrl/py/Json/decode.py +271 -0
- arctrl/py/Json/encode.py +140 -0
- arctrl/py/Json/idtable.py +44 -0
- arctrl/py/Json/investigation.py +695 -0
- arctrl/py/Json/ontology_annotation.py +404 -0
- arctrl/py/Json/ontology_source_reference.py +255 -0
- arctrl/py/Json/person.py +658 -0
- arctrl/py/Json/property_value.py +359 -0
- arctrl/py/Json/publication.py +279 -0
- arctrl/py/Json/run.py +275 -0
- arctrl/py/Json/string_table.py +87 -0
- arctrl/py/Json/study.py +793 -0
- arctrl/py/Json/workflow.py +307 -0
- arctrl/py/JsonIO/Process/__init__.py +0 -0
- arctrl/py/JsonIO/Process/component.py +60 -0
- arctrl/py/JsonIO/Process/factor.py +36 -0
- arctrl/py/JsonIO/Process/factor_value.py +38 -0
- arctrl/py/JsonIO/Process/material.py +60 -0
- arctrl/py/JsonIO/Process/material_attribute.py +38 -0
- arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
- arctrl/py/JsonIO/Process/material_type.py +36 -0
- arctrl/py/JsonIO/Process/process.py +60 -0
- arctrl/py/JsonIO/Process/process_input.py +38 -0
- arctrl/py/JsonIO/Process/process_output.py +60 -0
- arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
- arctrl/py/JsonIO/Process/process_sequence.py +71 -0
- arctrl/py/JsonIO/Process/protocol.py +60 -0
- arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
- arctrl/py/JsonIO/Process/sample.py +60 -0
- arctrl/py/JsonIO/Process/source.py +60 -0
- arctrl/py/JsonIO/Process/study_materials.py +52 -0
- arctrl/py/JsonIO/Process/value.py +32 -0
- arctrl/py/JsonIO/Table/__init__.py +0 -0
- arctrl/py/JsonIO/Table/arc_table.py +103 -0
- arctrl/py/JsonIO/Table/composite_cell.py +36 -0
- arctrl/py/JsonIO/Table/composite_header.py +36 -0
- arctrl/py/JsonIO/Table/compression.py +67 -0
- arctrl/py/JsonIO/Table/iotype.py +36 -0
- arctrl/py/JsonIO/Table/templates.py +113 -0
- arctrl/py/JsonIO/__init__.py +0 -0
- arctrl/py/JsonIO/assay.py +113 -0
- arctrl/py/JsonIO/comment.py +80 -0
- arctrl/py/JsonIO/data.py +60 -0
- arctrl/py/JsonIO/data_file.py +58 -0
- arctrl/py/JsonIO/datamap.py +36 -0
- arctrl/py/JsonIO/decode.py +9 -0
- arctrl/py/JsonIO/encode.py +1 -0
- arctrl/py/JsonIO/investigation.py +91 -0
- arctrl/py/JsonIO/ldobject.py +106 -0
- arctrl/py/JsonIO/ontology_annotation.py +80 -0
- arctrl/py/JsonIO/ontology_source_reference.py +80 -0
- arctrl/py/JsonIO/person.py +82 -0
- arctrl/py/JsonIO/publication.py +82 -0
- arctrl/py/JsonIO/run.py +68 -0
- arctrl/py/JsonIO/study.py +114 -0
- arctrl/py/JsonIO/workflow.py +68 -0
- arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
- arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
- arctrl/py/ROCrate/ISAProfile/data.py +65 -0
- arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
- arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
- arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
- arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
- arctrl/py/ROCrate/ISAProfile/person.py +72 -0
- arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
- arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
- arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
- arctrl/py/ROCrate/ISAProfile/study.py +74 -0
- arctrl/py/ROCrate/LDTypes/__init__.py +0 -0
- arctrl/py/ROCrate/LDTypes/comment.py +131 -0
- arctrl/py/ROCrate/LDTypes/computational_workflow.py +455 -0
- arctrl/py/ROCrate/LDTypes/computer_language.py +269 -0
- arctrl/py/ROCrate/LDTypes/create_action.py +303 -0
- arctrl/py/ROCrate/LDTypes/creative_work.py +566 -0
- arctrl/py/ROCrate/LDTypes/dataset.py +943 -0
- arctrl/py/ROCrate/LDTypes/defined_term.py +131 -0
- arctrl/py/ROCrate/LDTypes/file.py +281 -0
- arctrl/py/ROCrate/LDTypes/formal_parameter.py +431 -0
- arctrl/py/ROCrate/LDTypes/lab_process.py +352 -0
- arctrl/py/ROCrate/LDTypes/lab_protocol.py +395 -0
- arctrl/py/ROCrate/LDTypes/organization.py +83 -0
- arctrl/py/ROCrate/LDTypes/person.py +484 -0
- arctrl/py/ROCrate/LDTypes/postal_address.py +195 -0
- arctrl/py/ROCrate/LDTypes/property_value.py +952 -0
- arctrl/py/ROCrate/LDTypes/sample.py +202 -0
- arctrl/py/ROCrate/LDTypes/scholarly_article.py +229 -0
- arctrl/py/ROCrate/LDTypes/software_source_code.py +310 -0
- arctrl/py/ROCrate/LDTypes/workflow_invocation.py +48 -0
- arctrl/py/ROCrate/LDTypes/workflow_protocol.py +52 -0
- arctrl/py/ROCrate/__init__.py +0 -0
- arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
- arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
- arctrl/py/ROCrate/helper.py +8 -0
- arctrl/py/ROCrate/ldcontext.py +406 -0
- arctrl/py/ROCrate/ldobject.py +1247 -0
- arctrl/py/ROCrate/rocrate_context.py +51 -0
- arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +203 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +305 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
- arctrl/py/Spreadsheet/DatamapTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/DatamapTable/datamap_column.py +114 -0
- arctrl/py/Spreadsheet/DatamapTable/datamap_header.py +621 -0
- arctrl/py/Spreadsheet/DatamapTable/datamap_table.py +118 -0
- arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
- arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
- arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
- arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
- arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
- arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
- arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
- arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
- arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
- arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
- arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
- arctrl/py/Spreadsheet/Metadata/run.py +122 -0
- arctrl/py/Spreadsheet/Metadata/sparse_table.py +499 -0
- arctrl/py/Spreadsheet/Metadata/study.py +312 -0
- arctrl/py/Spreadsheet/Metadata/workflow.py +159 -0
- arctrl/py/Spreadsheet/__init__.py +0 -0
- arctrl/py/Spreadsheet/arc_assay.py +233 -0
- arctrl/py/Spreadsheet/arc_investigation.py +435 -0
- arctrl/py/Spreadsheet/arc_run.py +190 -0
- arctrl/py/Spreadsheet/arc_study.py +144 -0
- arctrl/py/Spreadsheet/arc_workflow.py +177 -0
- arctrl/py/Spreadsheet/assembly_info.py +1 -0
- arctrl/py/Spreadsheet/collection_aux.py +167 -0
- arctrl/py/Spreadsheet/datamap.py +43 -0
- arctrl/py/Spreadsheet/template.py +460 -0
- arctrl/py/ValidationPackages/__init__.py +0 -0
- arctrl/py/ValidationPackages/validation_package.py +82 -0
- arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
- arctrl/py/WebRequest/__init__.py +0 -0
- arctrl/py/WebRequest/web_request.py +9 -0
- arctrl/py/WebRequest/web_request_py.py +135 -0
- arctrl/py/WorkflowGraph/__init__.py +0 -0
- arctrl/py/WorkflowGraph/adapters.py +141 -0
- arctrl/py/WorkflowGraph/build_options.py +45 -0
- arctrl/py/WorkflowGraph/builder.py +720 -0
- arctrl/py/WorkflowGraph/graph_types.py +260 -0
- arctrl/py/WorkflowGraph/query_helpers.py +76 -0
- arctrl/py/WorkflowGraph/reference_parsing.py +59 -0
- arctrl/py/WorkflowGraph/visualization_siren.py +574 -0
- arctrl/py/WorkflowGraph/workflow_graph.py +119 -0
- arctrl/py/Yaml/__init__.py +0 -0
- arctrl/py/Yaml/decode.py +1 -0
- arctrl/py/Yaml/encode.py +10 -0
- arctrl/py/Yaml/validation_package.py +77 -0
- arctrl/py/Yaml/validation_packages_config.py +86 -0
- arctrl/py/__init__.py +0 -0
- arctrl/py/arc.py +1891 -0
- arctrl/py/column_index.py +280 -0
- arctrl/py/conversion.py +142 -0
- arctrl/py/cross_async.py +76 -0
- arctrl/py/cwlrun_resolver.py +228 -0
- arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
- arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
- arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
- arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
- arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
- arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
- arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
- arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
- arctrl/py/fable_modules/fable_library/__init__.py +0 -0
- arctrl/py/fable_modules/fable_library/array_.py +1528 -0
- arctrl/py/fable_modules/fable_library/async_.py +377 -0
- arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
- arctrl/py/fable_modules/fable_library/big_int.py +330 -0
- arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
- arctrl/py/fable_modules/fable_library/boolean.py +26 -0
- arctrl/py/fable_modules/fable_library/char.py +237 -0
- arctrl/py/fable_modules/fable_library/choice.py +212 -0
- arctrl/py/fable_modules/fable_library/date.py +779 -0
- arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
- arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
- arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
- arctrl/py/fable_modules/fable_library/double.py +87 -0
- arctrl/py/fable_modules/fable_library/encoding.py +41 -0
- arctrl/py/fable_modules/fable_library/event.py +206 -0
- arctrl/py/fable_modules/fable_library/file.py +107 -0
- arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
- arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
- arctrl/py/fable_modules/fable_library/global_.py +63 -0
- arctrl/py/fable_modules/fable_library/guid.py +41 -0
- arctrl/py/fable_modules/fable_library/int32.py +73 -0
- arctrl/py/fable_modules/fable_library/list.py +1788 -0
- arctrl/py/fable_modules/fable_library/long.py +240 -0
- arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
- arctrl/py/fable_modules/fable_library/map.py +1854 -0
- arctrl/py/fable_modules/fable_library/map_util.py +148 -0
- arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
- arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
- arctrl/py/fable_modules/fable_library/native.py +45 -0
- arctrl/py/fable_modules/fable_library/numeric.py +46 -0
- arctrl/py/fable_modules/fable_library/observable.py +222 -0
- arctrl/py/fable_modules/fable_library/option.py +128 -0
- arctrl/py/fable_modules/fable_library/path.py +62 -0
- arctrl/py/fable_modules/fable_library/range.py +117 -0
- arctrl/py/fable_modules/fable_library/reflection.py +463 -0
- arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
- arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
- arctrl/py/fable_modules/fable_library/result.py +212 -0
- arctrl/py/fable_modules/fable_library/seq.py +1979 -0
- arctrl/py/fable_modules/fable_library/seq2.py +221 -0
- arctrl/py/fable_modules/fable_library/set.py +2414 -0
- arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
- arctrl/py/fable_modules/fable_library/string_.py +573 -0
- arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
- arctrl/py/fable_modules/fable_library/system_text.py +237 -0
- arctrl/py/fable_modules/fable_library/task.py +116 -0
- arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
- arctrl/py/fable_modules/fable_library/thread.py +5 -0
- arctrl/py/fable_modules/fable_library/time_span.py +283 -0
- arctrl/py/fable_modules/fable_library/timer.py +24 -0
- arctrl/py/fable_modules/fable_library/types.py +401 -0
- arctrl/py/fable_modules/fable_library/uri.py +109 -0
- arctrl/py/fable_modules/fable_library/util.py +2735 -0
- arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
- arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
- arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
- arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
- arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
- arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
- arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
- arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
- arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
- arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +340 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +466 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +463 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +54 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +216 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +43 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +190 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +92 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +77 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +461 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +117 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
- arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +236 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +192 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +610 -0
- arctrl/py/fable_modules/fs_spreadsheet/hash_codes.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +329 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/table.py +54 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +41 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +52 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
- arctrl/py/fable_modules/siren/__init__.py +0 -0
- arctrl/py/fable_modules/siren/config.py +1038 -0
- arctrl/py/fable_modules/siren/formatting.py +1121 -0
- arctrl/py/fable_modules/siren/siren.py +1941 -0
- arctrl/py/fable_modules/siren/siren_types.py +1229 -0
- arctrl/py/fable_modules/siren/theme_variables.py +517 -0
- arctrl/py/fable_modules/siren/util.py +37 -0
- arctrl/py/fable_modules/siren/yaml.py +101 -0
- arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_core/decode.py +1614 -0
- arctrl/py/fable_modules/thoth_json_core/encode.py +305 -0
- arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
- arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
- arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
- arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
- arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
- arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
- arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
- arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
- arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
- arctrl/py/fable_modules/yamlicious/encode.py +84 -0
- arctrl/py/fable_modules/yamlicious/flow_to_block.py +994 -0
- arctrl/py/fable_modules/yamlicious/library.py +10 -0
- arctrl/py/fable_modules/yamlicious/persil.py +57 -0
- arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
- arctrl/py/fable_modules/yamlicious/reader.py +739 -0
- arctrl/py/fable_modules/yamlicious/regex.py +29 -0
- arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +265 -0
- arctrl/py/fable_modules/yamlicious/writer.py +175 -0
- arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
- arctrl/py/json.py +389 -0
- arctrl/py/license.py +169 -0
- arctrl/py/rocrate_io.py +242 -0
- arctrl/py/template_web.py +23 -0
- arctrl/py/xlsx.py +212 -0
- arctrl/py/yaml.py +79 -0
- arctrl/rocrate.py +21 -0
- arctrl-3.0.0.dist-info/METADATA +157 -0
- arctrl-3.0.0.dist-info/RECORD +511 -0
- arctrl-3.0.0.dist-info/WHEEL +4 -0
- arctrl-3.0.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ...fable_modules.fable_library.list import (choose, of_array, FSharpList)
|
|
5
|
+
from ...fable_modules.fable_library.option import (map, default_arg)
|
|
6
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
7
|
+
from ...fable_modules.fable_library.types import Array
|
|
8
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
9
|
+
from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, string, resize_array, IGetters)
|
|
10
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
|
|
11
|
+
from ...Core.comment import Comment
|
|
12
|
+
from ...Core.ontology_annotation import OntologyAnnotation
|
|
13
|
+
from ...Core.Process.factor import Factor
|
|
14
|
+
from ..comment import (ISAJson_encoder, ISAJson_decoder)
|
|
15
|
+
from ..encode import (try_include, try_include_seq)
|
|
16
|
+
from ..idtable import encode
|
|
17
|
+
from ..ontology_annotation import (OntologyAnnotation_ROCrate_genID, OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
|
|
18
|
+
|
|
19
|
+
__A_ = TypeVar("__A_")
|
|
20
|
+
|
|
21
|
+
def gen_id(f: Factor) -> str:
|
|
22
|
+
match_value: str | None = f.Name
|
|
23
|
+
if match_value is None:
|
|
24
|
+
match_value_1: OntologyAnnotation | None = f.FactorType
|
|
25
|
+
if match_value_1 is None:
|
|
26
|
+
return "#EmptyFactor"
|
|
27
|
+
|
|
28
|
+
else:
|
|
29
|
+
return ("#Factor/" + OntologyAnnotation_ROCrate_genID(match_value_1)) + ""
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
else:
|
|
33
|
+
return ("#Factor/" + match_value) + ""
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def encoder(id_map: Any | None, value: Factor) -> IEncodable:
|
|
38
|
+
def f_1(value_1: Factor, id_map: Any=id_map, value: Any=value) -> IEncodable:
|
|
39
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], value_1: Any=value_1) -> tuple[str, IEncodable] | None:
|
|
40
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
41
|
+
return (tupled_arg[0], v_1)
|
|
42
|
+
|
|
43
|
+
return map(mapping, tupled_arg[1])
|
|
44
|
+
|
|
45
|
+
def _arrow2960(value_2: str, value_1: Any=value_1) -> IEncodable:
|
|
46
|
+
class ObjectExpr2959(IEncodable):
|
|
47
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
48
|
+
return helpers.encode_string(value_2)
|
|
49
|
+
|
|
50
|
+
return ObjectExpr2959()
|
|
51
|
+
|
|
52
|
+
def _arrow2964(value_4: str, value_1: Any=value_1) -> IEncodable:
|
|
53
|
+
class ObjectExpr2963(IEncodable):
|
|
54
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
|
|
55
|
+
return helpers_1.encode_string(value_4)
|
|
56
|
+
|
|
57
|
+
return ObjectExpr2963()
|
|
58
|
+
|
|
59
|
+
def _arrow2965(oa: OntologyAnnotation, value_1: Any=value_1) -> IEncodable:
|
|
60
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa)
|
|
61
|
+
|
|
62
|
+
def _arrow2968(comment: Comment, value_1: Any=value_1) -> IEncodable:
|
|
63
|
+
return ISAJson_encoder(id_map, comment)
|
|
64
|
+
|
|
65
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow2960, gen_id(value_1)), try_include("factorName", _arrow2964, value_1.Name), try_include("factorType", _arrow2965, value_1.FactorType), try_include_seq("comments", _arrow2968, default_arg(value_1.Comments, []))]))
|
|
66
|
+
class ObjectExpr2971(IEncodable):
|
|
67
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any], value_1: Any=value_1) -> Any:
|
|
68
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
69
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_2))
|
|
70
|
+
|
|
71
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
72
|
+
return helpers_2.encode_object(arg)
|
|
73
|
+
|
|
74
|
+
return ObjectExpr2971()
|
|
75
|
+
|
|
76
|
+
if id_map is not None:
|
|
77
|
+
def _arrow2975(f_2: Factor, id_map: Any=id_map, value: Any=value) -> str:
|
|
78
|
+
return gen_id(f_2)
|
|
79
|
+
|
|
80
|
+
return encode(_arrow2975, f_1, value, id_map)
|
|
81
|
+
|
|
82
|
+
else:
|
|
83
|
+
return f_1(value)
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
def _arrow2983(get: IGetters) -> Factor:
|
|
88
|
+
def _arrow2978(__unit: None=None) -> str | None:
|
|
89
|
+
object_arg: IOptionalGetter = get.Optional
|
|
90
|
+
return object_arg.Field("factorName", string)
|
|
91
|
+
|
|
92
|
+
def _arrow2979(__unit: None=None) -> OntologyAnnotation | None:
|
|
93
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
94
|
+
return object_arg_1.Field("factorType", OntologyAnnotation_ISAJson_decoder)
|
|
95
|
+
|
|
96
|
+
def _arrow2982(__unit: None=None) -> Array[Comment] | None:
|
|
97
|
+
arg_5: Decoder_1[Array[Comment]] = resize_array(ISAJson_decoder)
|
|
98
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
99
|
+
return object_arg_2.Field("comments", arg_5)
|
|
100
|
+
|
|
101
|
+
return Factor(_arrow2978(), _arrow2979(), _arrow2982())
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
decoder: Decoder_1[Factor] = object(_arrow2983)
|
|
105
|
+
|
|
106
|
+
__all__ = ["gen_id", "encoder", "decoder"]
|
|
107
|
+
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ...fable_modules.fable_library.list import (choose, of_array, FSharpList)
|
|
5
|
+
from ...fable_modules.fable_library.option import map
|
|
6
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
7
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
8
|
+
from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, IGetters)
|
|
9
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, Decoder_1, IEncoderHelpers_1)
|
|
10
|
+
from ...Core.ontology_annotation import OntologyAnnotation
|
|
11
|
+
from ...Core.Process.factor import Factor
|
|
12
|
+
from ...Core.Process.factor_value import (FactorValue, FactorValue_createAsPV)
|
|
13
|
+
from ...Core.value import Value as Value_1
|
|
14
|
+
from ..decode import Decode_uri
|
|
15
|
+
from ..encode import try_include
|
|
16
|
+
from ..idtable import encode
|
|
17
|
+
from ..ontology_annotation import (OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
|
|
18
|
+
from ..property_value import (encoder, decoder, gen_id)
|
|
19
|
+
from .factor import (encoder as encoder_1, decoder as decoder_1)
|
|
20
|
+
from .value import (encoder as encoder_2, decoder as decoder_2)
|
|
21
|
+
|
|
22
|
+
__A_ = TypeVar("__A_")
|
|
23
|
+
|
|
24
|
+
ROCrate_encoder: Callable[[FactorValue], IEncodable] = encoder
|
|
25
|
+
|
|
26
|
+
ROCrate_decoder: Decoder_1[FactorValue] = decoder(FactorValue_createAsPV)
|
|
27
|
+
|
|
28
|
+
def ISAJson_genID(fv: FactorValue) -> str:
|
|
29
|
+
return gen_id(fv)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def ISAJson_encoder(id_map: Any | None, fv: FactorValue) -> IEncodable:
|
|
33
|
+
def f(fv_1: FactorValue, id_map: Any=id_map, fv: Any=fv) -> IEncodable:
|
|
34
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], fv_1: Any=fv_1) -> tuple[str, IEncodable] | None:
|
|
35
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
36
|
+
return (tupled_arg[0], v_1)
|
|
37
|
+
|
|
38
|
+
return map(mapping, tupled_arg[1])
|
|
39
|
+
|
|
40
|
+
def _arrow3061(value: str, fv_1: Any=fv_1) -> IEncodable:
|
|
41
|
+
class ObjectExpr3059(IEncodable):
|
|
42
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
43
|
+
return helpers.encode_string(value)
|
|
44
|
+
|
|
45
|
+
return ObjectExpr3059()
|
|
46
|
+
|
|
47
|
+
def _arrow3062(value_2: Factor, fv_1: Any=fv_1) -> IEncodable:
|
|
48
|
+
return encoder_1(id_map, value_2)
|
|
49
|
+
|
|
50
|
+
def _arrow3063(value_3: Value_1, fv_1: Any=fv_1) -> IEncodable:
|
|
51
|
+
return encoder_2(id_map, value_3)
|
|
52
|
+
|
|
53
|
+
def _arrow3065(oa: OntologyAnnotation, fv_1: Any=fv_1) -> IEncodable:
|
|
54
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa)
|
|
55
|
+
|
|
56
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow3061, ISAJson_genID(fv_1)), try_include("category", _arrow3062, fv_1.Category), try_include("value", _arrow3063, fv_1.Value), try_include("unit", _arrow3065, fv_1.Unit)]))
|
|
57
|
+
class ObjectExpr3068(IEncodable):
|
|
58
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], fv_1: Any=fv_1) -> Any:
|
|
59
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
60
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_1))
|
|
61
|
+
|
|
62
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
63
|
+
return helpers_1.encode_object(arg)
|
|
64
|
+
|
|
65
|
+
return ObjectExpr3068()
|
|
66
|
+
|
|
67
|
+
if id_map is not None:
|
|
68
|
+
def _arrow3070(fv_3: FactorValue, id_map: Any=id_map, fv: Any=fv) -> str:
|
|
69
|
+
return ISAJson_genID(fv_3)
|
|
70
|
+
|
|
71
|
+
return encode(_arrow3070, f, fv, id_map)
|
|
72
|
+
|
|
73
|
+
else:
|
|
74
|
+
return f(fv)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
def _arrow3076(get: IGetters) -> FactorValue:
|
|
79
|
+
def _arrow3071(__unit: None=None) -> str | None:
|
|
80
|
+
object_arg: IOptionalGetter = get.Optional
|
|
81
|
+
return object_arg.Field("@id", Decode_uri)
|
|
82
|
+
|
|
83
|
+
def _arrow3072(__unit: None=None) -> Factor | None:
|
|
84
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
85
|
+
return object_arg_1.Field("category", decoder_1)
|
|
86
|
+
|
|
87
|
+
def _arrow3074(__unit: None=None) -> Value_1 | None:
|
|
88
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
89
|
+
return object_arg_2.Field("value", decoder_2)
|
|
90
|
+
|
|
91
|
+
def _arrow3075(__unit: None=None) -> OntologyAnnotation | None:
|
|
92
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
93
|
+
return object_arg_3.Field("unit", OntologyAnnotation_ISAJson_decoder)
|
|
94
|
+
|
|
95
|
+
return FactorValue(_arrow3071(), _arrow3072(), _arrow3074(), _arrow3075())
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
ISAJson_decoder: Decoder_1[FactorValue] = object(_arrow3076)
|
|
99
|
+
|
|
100
|
+
__all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_genID", "ISAJson_encoder", "ISAJson_decoder"]
|
|
101
|
+
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ...fable_modules.fable_library.list import (choose, singleton, of_array, FSharpList)
|
|
5
|
+
from ...fable_modules.fable_library.option import map
|
|
6
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
7
|
+
from ...fable_modules.fable_library.string_ import replace
|
|
8
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
9
|
+
from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, IRequiredGetter, unit, string, list_1 as list_1_2, IGetters)
|
|
10
|
+
from ...fable_modules.thoth_json_core.encode import list_1 as list_1_1
|
|
11
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
|
|
12
|
+
from ...Core.Process.material import Material
|
|
13
|
+
from ...Core.Process.material_attribute_value import MaterialAttributeValue
|
|
14
|
+
from ...Core.Process.material_type import MaterialType
|
|
15
|
+
from ..context.rocrate.isa_material_context import context_jsonvalue
|
|
16
|
+
from ..decode import (Decode_uri, Decode_objectNoAdditionalProperties)
|
|
17
|
+
from ..encode import (try_include, try_include_list_opt)
|
|
18
|
+
from ..idtable import encode
|
|
19
|
+
from .material_attribute_value import (ROCrate_encoder as ROCrate_encoder_2, ROCrate_decoder as ROCrate_decoder_2, ISAJson_encoder as ISAJson_encoder_2, ISAJson_decoder as ISAJson_decoder_2)
|
|
20
|
+
from .material_type import (ROCrate_encoder as ROCrate_encoder_1, ROCrate_decoder as ROCrate_decoder_1, ISAJson_encoder as ISAJson_encoder_1, ISAJson_decoder as ISAJson_decoder_1)
|
|
21
|
+
|
|
22
|
+
__A_ = TypeVar("__A_")
|
|
23
|
+
|
|
24
|
+
def ROCrate_genID(m: Material) -> str:
|
|
25
|
+
match_value: str | None = m.ID
|
|
26
|
+
if match_value is None:
|
|
27
|
+
match_value_1: str | None = m.Name
|
|
28
|
+
if match_value_1 is None:
|
|
29
|
+
return "#EmptyMaterial"
|
|
30
|
+
|
|
31
|
+
else:
|
|
32
|
+
return "#Material_" + replace(match_value_1, " ", "_")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
else:
|
|
36
|
+
return match_value
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def ROCrate_encoder(oa: Material) -> IEncodable:
|
|
41
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], oa: Any=oa) -> tuple[str, IEncodable] | None:
|
|
42
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
43
|
+
return (tupled_arg[0], v_1)
|
|
44
|
+
|
|
45
|
+
return map(mapping, tupled_arg[1])
|
|
46
|
+
|
|
47
|
+
def _arrow3224(__unit: None=None, oa: Any=oa) -> IEncodable:
|
|
48
|
+
value: str = ROCrate_genID(oa)
|
|
49
|
+
class ObjectExpr3223(IEncodable):
|
|
50
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
51
|
+
return helpers.encode_string(value)
|
|
52
|
+
|
|
53
|
+
return ObjectExpr3223()
|
|
54
|
+
|
|
55
|
+
class ObjectExpr3225(IEncodable):
|
|
56
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
|
|
57
|
+
return helpers_1.encode_string("Material")
|
|
58
|
+
|
|
59
|
+
class ObjectExpr3226(IEncodable):
|
|
60
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
|
|
61
|
+
return helpers_2.encode_string("Material")
|
|
62
|
+
|
|
63
|
+
def _arrow3228(value_3: str, oa: Any=oa) -> IEncodable:
|
|
64
|
+
class ObjectExpr3227(IEncodable):
|
|
65
|
+
def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
|
|
66
|
+
return helpers_3.encode_string(value_3)
|
|
67
|
+
|
|
68
|
+
return ObjectExpr3227()
|
|
69
|
+
|
|
70
|
+
def _arrow3229(value_5: MaterialType, oa: Any=oa) -> IEncodable:
|
|
71
|
+
return ROCrate_encoder_1(value_5)
|
|
72
|
+
|
|
73
|
+
def _arrow3230(oa_1: Material, oa: Any=oa) -> IEncodable:
|
|
74
|
+
return ROCrate_encoder(oa_1)
|
|
75
|
+
|
|
76
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow3224()), ("@type", list_1_1(singleton(ObjectExpr3225()))), ("additionalType", ObjectExpr3226()), try_include("name", _arrow3228, oa.Name), try_include("type", _arrow3229, oa.MaterialType), try_include_list_opt("characteristics", ROCrate_encoder_2, oa.Characteristics), try_include_list_opt("derivesFrom", _arrow3230, oa.DerivesFrom), ("@context", context_jsonvalue)]))
|
|
77
|
+
class ObjectExpr3231(IEncodable):
|
|
78
|
+
def Encode(self, helpers_4: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
|
|
79
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
80
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
|
|
81
|
+
|
|
82
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
83
|
+
return helpers_4.encode_object(arg)
|
|
84
|
+
|
|
85
|
+
return ObjectExpr3231()
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def _arrow3238(__unit: None=None) -> Decoder_1[Material]:
|
|
89
|
+
def decode(__unit: None=None) -> Decoder_1[Material]:
|
|
90
|
+
def _arrow3237(get: IGetters) -> Material:
|
|
91
|
+
match_value: str | None
|
|
92
|
+
object_arg: IOptionalGetter = get.Optional
|
|
93
|
+
match_value = object_arg.Field("additionalType", Decode_uri)
|
|
94
|
+
(pattern_matching_result,) = (None,)
|
|
95
|
+
if match_value is None:
|
|
96
|
+
pattern_matching_result = 0
|
|
97
|
+
|
|
98
|
+
elif match_value == "Material":
|
|
99
|
+
pattern_matching_result = 0
|
|
100
|
+
|
|
101
|
+
else:
|
|
102
|
+
pattern_matching_result = 1
|
|
103
|
+
|
|
104
|
+
if pattern_matching_result == 1:
|
|
105
|
+
object_arg_1: IRequiredGetter = get.Required
|
|
106
|
+
object_arg_1.Field("FailBecauseNotSample", unit)
|
|
107
|
+
|
|
108
|
+
def _arrow3232(__unit: None=None) -> str | None:
|
|
109
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
110
|
+
return object_arg_2.Field("@id", Decode_uri)
|
|
111
|
+
|
|
112
|
+
def _arrow3233(__unit: None=None) -> str | None:
|
|
113
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
114
|
+
return object_arg_3.Field("name", string)
|
|
115
|
+
|
|
116
|
+
def _arrow3234(__unit: None=None) -> MaterialType | None:
|
|
117
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
118
|
+
return object_arg_4.Field("type", ROCrate_decoder_1)
|
|
119
|
+
|
|
120
|
+
def _arrow3235(__unit: None=None) -> FSharpList[MaterialAttributeValue] | None:
|
|
121
|
+
arg_11: Decoder_1[FSharpList[MaterialAttributeValue]] = list_1_2(ROCrate_decoder_2)
|
|
122
|
+
object_arg_5: IOptionalGetter = get.Optional
|
|
123
|
+
return object_arg_5.Field("characteristics", arg_11)
|
|
124
|
+
|
|
125
|
+
def _arrow3236(__unit: None=None) -> FSharpList[Material] | None:
|
|
126
|
+
arg_13: Decoder_1[FSharpList[Material]] = list_1_2(decode(None))
|
|
127
|
+
object_arg_6: IOptionalGetter = get.Optional
|
|
128
|
+
return object_arg_6.Field("derivesFrom", arg_13)
|
|
129
|
+
|
|
130
|
+
return Material(_arrow3232(), _arrow3233(), _arrow3234(), _arrow3235(), _arrow3236())
|
|
131
|
+
|
|
132
|
+
return object(_arrow3237)
|
|
133
|
+
|
|
134
|
+
return decode(None)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
ROCrate_decoder: Decoder_1[Material] = _arrow3238()
|
|
138
|
+
|
|
139
|
+
def ISAJson_encoder(id_map: Any | None, c: Material) -> IEncodable:
|
|
140
|
+
def f(oa: Material, id_map: Any=id_map, c: Any=c) -> IEncodable:
|
|
141
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], oa: Any=oa) -> tuple[str, IEncodable] | None:
|
|
142
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
143
|
+
return (tupled_arg[0], v_1)
|
|
144
|
+
|
|
145
|
+
return map(mapping, tupled_arg[1])
|
|
146
|
+
|
|
147
|
+
def _arrow3242(value: str, oa: Any=oa) -> IEncodable:
|
|
148
|
+
class ObjectExpr3241(IEncodable):
|
|
149
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
150
|
+
return helpers.encode_string(value)
|
|
151
|
+
|
|
152
|
+
return ObjectExpr3241()
|
|
153
|
+
|
|
154
|
+
def _arrow3244(value_2: str, oa: Any=oa) -> IEncodable:
|
|
155
|
+
class ObjectExpr3243(IEncodable):
|
|
156
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
|
|
157
|
+
return helpers_1.encode_string(value_2)
|
|
158
|
+
|
|
159
|
+
return ObjectExpr3243()
|
|
160
|
+
|
|
161
|
+
def _arrow3245(oa_1: MaterialAttributeValue, oa: Any=oa) -> IEncodable:
|
|
162
|
+
return ISAJson_encoder_2(id_map, oa_1)
|
|
163
|
+
|
|
164
|
+
def _arrow3246(c_1: Material, oa: Any=oa) -> IEncodable:
|
|
165
|
+
return ISAJson_encoder(id_map, c_1)
|
|
166
|
+
|
|
167
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow3242, ROCrate_genID(oa)), try_include("name", _arrow3244, oa.Name), try_include("type", ISAJson_encoder_1, oa.MaterialType), try_include_list_opt("characteristics", _arrow3245, oa.Characteristics), try_include_list_opt("derivesFrom", _arrow3246, oa.DerivesFrom)]))
|
|
168
|
+
class ObjectExpr3247(IEncodable):
|
|
169
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
|
|
170
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
171
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_2))
|
|
172
|
+
|
|
173
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
174
|
+
return helpers_2.encode_object(arg)
|
|
175
|
+
|
|
176
|
+
return ObjectExpr3247()
|
|
177
|
+
|
|
178
|
+
if id_map is not None:
|
|
179
|
+
def _arrow3248(m_1: Material, id_map: Any=id_map, c: Any=c) -> str:
|
|
180
|
+
return ROCrate_genID(m_1)
|
|
181
|
+
|
|
182
|
+
return encode(_arrow3248, f, c, id_map)
|
|
183
|
+
|
|
184
|
+
else:
|
|
185
|
+
return f(c)
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
ISAJson_allowedFields: FSharpList[str] = of_array(["@id", "@type", "name", "type", "characteristics", "derivesFrom", "@context"])
|
|
190
|
+
|
|
191
|
+
def _arrow3255(__unit: None=None) -> Decoder_1[Material]:
|
|
192
|
+
def decode(__unit: None=None) -> Decoder_1[Material]:
|
|
193
|
+
def _arrow3254(get: IGetters) -> Material:
|
|
194
|
+
def _arrow3249(__unit: None=None) -> str | None:
|
|
195
|
+
object_arg: IOptionalGetter = get.Optional
|
|
196
|
+
return object_arg.Field("@id", Decode_uri)
|
|
197
|
+
|
|
198
|
+
def _arrow3250(__unit: None=None) -> str | None:
|
|
199
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
200
|
+
return object_arg_1.Field("name", string)
|
|
201
|
+
|
|
202
|
+
def _arrow3251(__unit: None=None) -> MaterialType | None:
|
|
203
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
204
|
+
return object_arg_2.Field("type", ISAJson_decoder_1)
|
|
205
|
+
|
|
206
|
+
def _arrow3252(__unit: None=None) -> FSharpList[MaterialAttributeValue] | None:
|
|
207
|
+
arg_7: Decoder_1[FSharpList[MaterialAttributeValue]] = list_1_2(ISAJson_decoder_2)
|
|
208
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
209
|
+
return object_arg_3.Field("characteristics", arg_7)
|
|
210
|
+
|
|
211
|
+
def _arrow3253(__unit: None=None) -> FSharpList[Material] | None:
|
|
212
|
+
arg_9: Decoder_1[FSharpList[Material]] = list_1_2(decode(None))
|
|
213
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
214
|
+
return object_arg_4.Field("derivesFrom", arg_9)
|
|
215
|
+
|
|
216
|
+
return Material(_arrow3249(), _arrow3250(), _arrow3251(), _arrow3252(), _arrow3253())
|
|
217
|
+
|
|
218
|
+
return Decode_objectNoAdditionalProperties(ISAJson_allowedFields, _arrow3254)
|
|
219
|
+
|
|
220
|
+
return decode(None)
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
ISAJson_decoder: Decoder_1[Material] = _arrow3255()
|
|
224
|
+
|
|
225
|
+
__all__ = ["ROCrate_genID", "ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_allowedFields", "ISAJson_decoder"]
|
|
226
|
+
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ...fable_modules.fable_library.list import (choose, of_array, FSharpList)
|
|
5
|
+
from ...fable_modules.fable_library.option import map
|
|
6
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
7
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
8
|
+
from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, IGetters)
|
|
9
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
|
|
10
|
+
from ...Core.ontology_annotation import OntologyAnnotation
|
|
11
|
+
from ...Core.Process.material_attribute import MaterialAttribute
|
|
12
|
+
from ..encode import try_include
|
|
13
|
+
from ..idtable import encode
|
|
14
|
+
from ..ontology_annotation import (OntologyAnnotation_ROCrate_genID, OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
|
|
15
|
+
|
|
16
|
+
__A_ = TypeVar("__A_")
|
|
17
|
+
|
|
18
|
+
def gen_id(m: MaterialAttribute) -> str:
|
|
19
|
+
match_value: OntologyAnnotation | None = m.CharacteristicType
|
|
20
|
+
if match_value is None:
|
|
21
|
+
return "#EmptyFactor"
|
|
22
|
+
|
|
23
|
+
else:
|
|
24
|
+
return ("#MaterialAttribute/" + OntologyAnnotation_ROCrate_genID(match_value)) + ""
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def encoder(id_map: Any | None, value: MaterialAttribute) -> IEncodable:
|
|
29
|
+
def f(value_1: MaterialAttribute, id_map: Any=id_map, value: Any=value) -> IEncodable:
|
|
30
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], value_1: Any=value_1) -> tuple[str, IEncodable] | None:
|
|
31
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
32
|
+
return (tupled_arg[0], v_1)
|
|
33
|
+
|
|
34
|
+
return map(mapping, tupled_arg[1])
|
|
35
|
+
|
|
36
|
+
def _arrow3129(value_2: str, value_1: Any=value_1) -> IEncodable:
|
|
37
|
+
class ObjectExpr3128(IEncodable):
|
|
38
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
39
|
+
return helpers.encode_string(value_2)
|
|
40
|
+
|
|
41
|
+
return ObjectExpr3128()
|
|
42
|
+
|
|
43
|
+
def _arrow3130(oa: OntologyAnnotation, value_1: Any=value_1) -> IEncodable:
|
|
44
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa)
|
|
45
|
+
|
|
46
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow3129, gen_id(value_1)), try_include("characteristicType", _arrow3130, value_1.CharacteristicType)]))
|
|
47
|
+
class ObjectExpr3131(IEncodable):
|
|
48
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], value_1: Any=value_1) -> Any:
|
|
49
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
50
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_1))
|
|
51
|
+
|
|
52
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
53
|
+
return helpers_1.encode_object(arg)
|
|
54
|
+
|
|
55
|
+
return ObjectExpr3131()
|
|
56
|
+
|
|
57
|
+
if id_map is not None:
|
|
58
|
+
def _arrow3132(m_1: MaterialAttribute, id_map: Any=id_map, value: Any=value) -> str:
|
|
59
|
+
return gen_id(m_1)
|
|
60
|
+
|
|
61
|
+
return encode(_arrow3132, f, value, id_map)
|
|
62
|
+
|
|
63
|
+
else:
|
|
64
|
+
return f(value)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def _arrow3134(get: IGetters) -> MaterialAttribute:
|
|
69
|
+
def _arrow3133(__unit: None=None) -> OntologyAnnotation | None:
|
|
70
|
+
object_arg: IOptionalGetter = get.Optional
|
|
71
|
+
return object_arg.Field("characteristicType", OntologyAnnotation_ISAJson_decoder)
|
|
72
|
+
|
|
73
|
+
return MaterialAttribute(None, _arrow3133())
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
decoder: Decoder_1[MaterialAttribute] = object(_arrow3134)
|
|
77
|
+
|
|
78
|
+
__all__ = ["gen_id", "encoder", "decoder"]
|
|
79
|
+
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ...fable_modules.fable_library.list import (choose, of_array, FSharpList)
|
|
5
|
+
from ...fable_modules.fable_library.option import map
|
|
6
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
7
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
8
|
+
from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, IGetters)
|
|
9
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, Decoder_1, IEncoderHelpers_1)
|
|
10
|
+
from ...Core.ontology_annotation import OntologyAnnotation
|
|
11
|
+
from ...Core.Process.material_attribute import MaterialAttribute
|
|
12
|
+
from ...Core.Process.material_attribute_value import (MaterialAttributeValue, MaterialAttributeValue_createAsPV)
|
|
13
|
+
from ...Core.value import Value as Value_1
|
|
14
|
+
from ..decode import Decode_uri
|
|
15
|
+
from ..encode import try_include
|
|
16
|
+
from ..idtable import encode
|
|
17
|
+
from ..ontology_annotation import (OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
|
|
18
|
+
from ..property_value import (encoder, decoder, gen_id)
|
|
19
|
+
from .material_attribute import (encoder as encoder_1, decoder as decoder_1)
|
|
20
|
+
from .value import (encoder as encoder_2, decoder as decoder_2)
|
|
21
|
+
|
|
22
|
+
__A_ = TypeVar("__A_")
|
|
23
|
+
|
|
24
|
+
ROCrate_encoder: Callable[[MaterialAttributeValue], IEncodable] = encoder
|
|
25
|
+
|
|
26
|
+
ROCrate_decoder: Decoder_1[MaterialAttributeValue] = decoder(MaterialAttributeValue_createAsPV)
|
|
27
|
+
|
|
28
|
+
def ISAJson_genID(oa: MaterialAttributeValue) -> str:
|
|
29
|
+
return gen_id(oa)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def ISAJson_encoder(id_map: Any | None, oa: MaterialAttributeValue) -> IEncodable:
|
|
33
|
+
def f(oa_1: MaterialAttributeValue, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
|
|
34
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], oa_1: Any=oa_1) -> tuple[str, IEncodable] | None:
|
|
35
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
36
|
+
return (tupled_arg[0], v_1)
|
|
37
|
+
|
|
38
|
+
return map(mapping, tupled_arg[1])
|
|
39
|
+
|
|
40
|
+
def _arrow3154(value: str, oa_1: Any=oa_1) -> IEncodable:
|
|
41
|
+
class ObjectExpr3153(IEncodable):
|
|
42
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
43
|
+
return helpers.encode_string(value)
|
|
44
|
+
|
|
45
|
+
return ObjectExpr3153()
|
|
46
|
+
|
|
47
|
+
def _arrow3155(value_2: MaterialAttribute, oa_1: Any=oa_1) -> IEncodable:
|
|
48
|
+
return encoder_1(id_map, value_2)
|
|
49
|
+
|
|
50
|
+
def _arrow3156(value_3: Value_1, oa_1: Any=oa_1) -> IEncodable:
|
|
51
|
+
return encoder_2(id_map, value_3)
|
|
52
|
+
|
|
53
|
+
def _arrow3157(oa_3: OntologyAnnotation, oa_1: Any=oa_1) -> IEncodable:
|
|
54
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa_3)
|
|
55
|
+
|
|
56
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow3154, ISAJson_genID(oa_1)), try_include("category", _arrow3155, oa_1.Category), try_include("value", _arrow3156, oa_1.Value), try_include("unit", _arrow3157, oa_1.Unit)]))
|
|
57
|
+
class ObjectExpr3158(IEncodable):
|
|
58
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], oa_1: Any=oa_1) -> Any:
|
|
59
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
60
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_1))
|
|
61
|
+
|
|
62
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
63
|
+
return helpers_1.encode_object(arg)
|
|
64
|
+
|
|
65
|
+
return ObjectExpr3158()
|
|
66
|
+
|
|
67
|
+
if id_map is not None:
|
|
68
|
+
def _arrow3159(oa_4: MaterialAttributeValue, id_map: Any=id_map, oa: Any=oa) -> str:
|
|
69
|
+
return ISAJson_genID(oa_4)
|
|
70
|
+
|
|
71
|
+
return encode(_arrow3159, f, oa, id_map)
|
|
72
|
+
|
|
73
|
+
else:
|
|
74
|
+
return f(oa)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
def _arrow3164(get: IGetters) -> MaterialAttributeValue:
|
|
79
|
+
def _arrow3160(__unit: None=None) -> str | None:
|
|
80
|
+
object_arg: IOptionalGetter = get.Optional
|
|
81
|
+
return object_arg.Field("@id", Decode_uri)
|
|
82
|
+
|
|
83
|
+
def _arrow3161(__unit: None=None) -> MaterialAttribute | None:
|
|
84
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
85
|
+
return object_arg_1.Field("category", decoder_1)
|
|
86
|
+
|
|
87
|
+
def _arrow3162(__unit: None=None) -> Value_1 | None:
|
|
88
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
89
|
+
return object_arg_2.Field("value", decoder_2)
|
|
90
|
+
|
|
91
|
+
def _arrow3163(__unit: None=None) -> OntologyAnnotation | None:
|
|
92
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
93
|
+
return object_arg_3.Field("unit", OntologyAnnotation_ISAJson_decoder)
|
|
94
|
+
|
|
95
|
+
return MaterialAttributeValue(_arrow3160(), _arrow3161(), _arrow3162(), _arrow3163())
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
ISAJson_decoder: Decoder_1[MaterialAttributeValue] = object(_arrow3164)
|
|
99
|
+
|
|
100
|
+
__all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_genID", "ISAJson_encoder", "ISAJson_decoder"]
|
|
101
|
+
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ...fable_modules.fable_library.result import FSharpResult_2
|
|
5
|
+
from ...fable_modules.thoth_json_core.decode import string
|
|
6
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1, ErrorReason_1, IDecoderHelpers_1)
|
|
7
|
+
from ...Core.Process.material_type import MaterialType
|
|
8
|
+
|
|
9
|
+
__A_ = TypeVar("__A_")
|
|
10
|
+
|
|
11
|
+
def ROCrate_encoder(value: MaterialType) -> IEncodable:
|
|
12
|
+
if value.tag == 1:
|
|
13
|
+
class ObjectExpr3123(IEncodable):
|
|
14
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], value: Any=value) -> Any:
|
|
15
|
+
return helpers_1.encode_string("Labeled Extract Name")
|
|
16
|
+
|
|
17
|
+
return ObjectExpr3123()
|
|
18
|
+
|
|
19
|
+
else:
|
|
20
|
+
class ObjectExpr3124(IEncodable):
|
|
21
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any], value: Any=value) -> Any:
|
|
22
|
+
return helpers.encode_string("Extract Name")
|
|
23
|
+
|
|
24
|
+
return ObjectExpr3124()
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class ObjectExpr3125(Decoder_1[MaterialType]):
|
|
29
|
+
def Decode(self, s: IDecoderHelpers_1[Any], json: Any) -> FSharpResult_2[MaterialType, tuple[str, ErrorReason_1[__A_]]]:
|
|
30
|
+
match_value: FSharpResult_2[str, tuple[str, ErrorReason_1[__A_]]] = string.Decode(s, json)
|
|
31
|
+
if match_value.tag == 1:
|
|
32
|
+
return FSharpResult_2(1, match_value.fields[0])
|
|
33
|
+
|
|
34
|
+
elif match_value.fields[0] == "Extract Name":
|
|
35
|
+
return FSharpResult_2(0, MaterialType(0))
|
|
36
|
+
|
|
37
|
+
elif match_value.fields[0] == "Labeled Extract Name":
|
|
38
|
+
return FSharpResult_2(0, MaterialType(1))
|
|
39
|
+
|
|
40
|
+
else:
|
|
41
|
+
s_1: str = match_value.fields[0]
|
|
42
|
+
return FSharpResult_2(1, (("Could not parse " + s_1) + "No other value than \"Extract Name\" or \"Labeled Extract Name\" allowed for materialtype", ErrorReason_1(0, s_1, json)))
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
ROCrate_decoder: Decoder_1[MaterialType] = ObjectExpr3125()
|
|
47
|
+
|
|
48
|
+
ISAJson_encoder: Callable[[MaterialType], IEncodable] = ROCrate_encoder
|
|
49
|
+
|
|
50
|
+
ISAJson_decoder: Decoder_1[MaterialType] = ROCrate_decoder
|
|
51
|
+
|
|
52
|
+
__all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
|
|
53
|
+
|