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,266 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import Any
|
|
3
|
+
from ..fable_modules.fable_library.array_ import (filter, map_indexed, append, last)
|
|
4
|
+
from ..fable_modules.fable_library.char import is_letter
|
|
5
|
+
from ..fable_modules.fable_library.list import (of_array, FSharpList)
|
|
6
|
+
from ..fable_modules.fable_library.string_ import (split as split_1, starts_with_exact, substring, ends_with_exact, join, trim_end, trim_start, trim)
|
|
7
|
+
from ..fable_modules.fable_library.types import Array
|
|
8
|
+
|
|
9
|
+
seperators: Array[str] = ["/", "\\"]
|
|
10
|
+
|
|
11
|
+
alternative_licensefile_names: FSharpList[str] = of_array(["LICENSE.txt", "LICENSE.md", "LICENSE.rst"])
|
|
12
|
+
|
|
13
|
+
def split(path: str) -> Array[str]:
|
|
14
|
+
def predicate(p: str, path: Any=path) -> bool:
|
|
15
|
+
if p != "":
|
|
16
|
+
return p != "."
|
|
17
|
+
|
|
18
|
+
else:
|
|
19
|
+
return False
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
return filter(predicate, split_1(path, seperators, None, 3))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def has_leading_separator(path: str) -> bool:
|
|
26
|
+
if len(path) > 0:
|
|
27
|
+
if path[0] == "/":
|
|
28
|
+
return True
|
|
29
|
+
|
|
30
|
+
else:
|
|
31
|
+
return path[0] == "\\"
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
else:
|
|
35
|
+
return False
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def is_unc_path(path: str) -> bool:
|
|
40
|
+
if starts_with_exact(path, "//"):
|
|
41
|
+
return True
|
|
42
|
+
|
|
43
|
+
else:
|
|
44
|
+
return starts_with_exact(path, "\\\\")
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def try_get_drive_prefix(path: str) -> str | None:
|
|
49
|
+
if (True if (path[2] == "/") else (path[2] == "\\")) if ((path[1] == ":") if (is_letter(path[0]) if (len(path) > 2) else False) else False) else False:
|
|
50
|
+
return substring(path, 0, 2)
|
|
51
|
+
|
|
52
|
+
else:
|
|
53
|
+
return None
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
def split_with_prefix(path: str) -> tuple[str | None, Array[str]]:
|
|
58
|
+
trimmed: str = path.strip()
|
|
59
|
+
match_value: str | None = try_get_drive_prefix(trimmed)
|
|
60
|
+
if match_value is None:
|
|
61
|
+
if is_unc_path(trimmed):
|
|
62
|
+
return ("//", split(trimmed))
|
|
63
|
+
|
|
64
|
+
elif has_leading_separator(trimmed):
|
|
65
|
+
return ("/", split(trimmed))
|
|
66
|
+
|
|
67
|
+
else:
|
|
68
|
+
return (None, split(trimmed))
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
else:
|
|
72
|
+
return (match_value, split(substring(trimmed, 2)))
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
def normalize_root_prefix(prefix: str) -> str:
|
|
77
|
+
if prefix == "//":
|
|
78
|
+
return "//"
|
|
79
|
+
|
|
80
|
+
elif ends_with_exact(prefix, ":"):
|
|
81
|
+
return ("" + prefix) + "/"
|
|
82
|
+
|
|
83
|
+
else:
|
|
84
|
+
return "/"
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def build_path_from_prefix_and_segments(prefix_opt: str | None, segments: Array[str]) -> str:
|
|
89
|
+
if len(segments) == 0:
|
|
90
|
+
if prefix_opt is None:
|
|
91
|
+
return ""
|
|
92
|
+
|
|
93
|
+
else:
|
|
94
|
+
return normalize_root_prefix(prefix_opt)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
else:
|
|
98
|
+
combined: str = join("/", segments)
|
|
99
|
+
(pattern_matching_result, prefix_3, prefix_4) = (None, None, None)
|
|
100
|
+
if prefix_opt is None:
|
|
101
|
+
pattern_matching_result = 4
|
|
102
|
+
|
|
103
|
+
elif prefix_opt == "//":
|
|
104
|
+
pattern_matching_result = 0
|
|
105
|
+
|
|
106
|
+
elif prefix_opt == "/":
|
|
107
|
+
if ends_with_exact(prefix_opt, ":"):
|
|
108
|
+
pattern_matching_result = 1
|
|
109
|
+
prefix_3 = prefix_opt
|
|
110
|
+
|
|
111
|
+
else:
|
|
112
|
+
pattern_matching_result = 2
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
elif ends_with_exact(prefix_opt, ":"):
|
|
116
|
+
pattern_matching_result = 1
|
|
117
|
+
prefix_3 = prefix_opt
|
|
118
|
+
|
|
119
|
+
else:
|
|
120
|
+
pattern_matching_result = 3
|
|
121
|
+
prefix_4 = prefix_opt
|
|
122
|
+
|
|
123
|
+
if pattern_matching_result == 0:
|
|
124
|
+
return ("//" + combined) + ""
|
|
125
|
+
|
|
126
|
+
elif pattern_matching_result == 1:
|
|
127
|
+
return ((("" + prefix_3) + "/") + combined) + ""
|
|
128
|
+
|
|
129
|
+
elif pattern_matching_result == 2:
|
|
130
|
+
return ("/" + combined) + ""
|
|
131
|
+
|
|
132
|
+
elif pattern_matching_result == 3:
|
|
133
|
+
return ((("" + prefix_4) + "/") + combined) + ""
|
|
134
|
+
|
|
135
|
+
elif pattern_matching_result == 4:
|
|
136
|
+
return combined
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
def combine(path1: str, path2: str) -> str:
|
|
142
|
+
return (trim_end(path1, *seperators) + "/") + trim_start(path2, *seperators)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
def combine_many(paths: Array[str]) -> str:
|
|
146
|
+
def mapping(i: int, p: str, paths: Any=paths) -> str:
|
|
147
|
+
if i == 0:
|
|
148
|
+
return trim_end(p, *seperators)
|
|
149
|
+
|
|
150
|
+
elif i == (len(paths) - 1):
|
|
151
|
+
return trim_start(p, *seperators)
|
|
152
|
+
|
|
153
|
+
else:
|
|
154
|
+
return trim(p, *seperators)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
return join("/", map_indexed(mapping, paths, None))
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
def normalize_segments(segments: Array[str]) -> Array[str]:
|
|
161
|
+
resolved: Array[str] = []
|
|
162
|
+
for idx in range(0, (len(segments) - 1) + 1, 1):
|
|
163
|
+
raw_segment: str = segments[idx]
|
|
164
|
+
segment: str = raw_segment.strip()
|
|
165
|
+
if True if (segment == "") else (segment == "."):
|
|
166
|
+
pass
|
|
167
|
+
|
|
168
|
+
elif segment == "..":
|
|
169
|
+
if (resolved[len(resolved) - 1] != "..") if (len(resolved) > 0) else False:
|
|
170
|
+
resolved.pop(len(resolved) - 1)
|
|
171
|
+
|
|
172
|
+
else:
|
|
173
|
+
(resolved.append(segment))
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
else:
|
|
177
|
+
(resolved.append(segment))
|
|
178
|
+
|
|
179
|
+
return resolved[:]
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
def normalize(path: str) -> str:
|
|
183
|
+
trimmed_path: str = path.strip()
|
|
184
|
+
pattern_input: tuple[str | None, Array[str]] = split_with_prefix(trimmed_path)
|
|
185
|
+
prefix_opt: str | None = pattern_input[0]
|
|
186
|
+
normalized_segments: Array[str] = normalize_segments(pattern_input[1])
|
|
187
|
+
if len(normalized_segments) == 0:
|
|
188
|
+
if prefix_opt is None:
|
|
189
|
+
return trimmed_path
|
|
190
|
+
|
|
191
|
+
else:
|
|
192
|
+
return normalize_root_prefix(prefix_opt)
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
else:
|
|
196
|
+
return build_path_from_prefix_and_segments(prefix_opt, normalized_segments)
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
def normalize_path_key(path: str) -> str:
|
|
201
|
+
normalized: str = normalize(path)
|
|
202
|
+
if normalized == "":
|
|
203
|
+
return path.strip()
|
|
204
|
+
|
|
205
|
+
else:
|
|
206
|
+
trimmed_leading_separators: str = trim_start(normalized, *seperators)
|
|
207
|
+
if trimmed_leading_separators == "":
|
|
208
|
+
return normalized
|
|
209
|
+
|
|
210
|
+
else:
|
|
211
|
+
return trimmed_leading_separators
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
def resolve_path_from_file(file_path: str, path: str) -> str:
|
|
217
|
+
trimmed_path: str = path.strip()
|
|
218
|
+
pattern_input: tuple[str | None, Array[str]] = split_with_prefix(trimmed_path)
|
|
219
|
+
if pattern_input[0] is not None:
|
|
220
|
+
return normalize(trimmed_path)
|
|
221
|
+
|
|
222
|
+
else:
|
|
223
|
+
pattern_input_1: tuple[str | None, Array[str]] = split_with_prefix(file_path)
|
|
224
|
+
file_prefix_opt: str | None = pattern_input_1[0]
|
|
225
|
+
file_path_segments: Array[str] = pattern_input_1[1]
|
|
226
|
+
resolved_segments: Array[str] = normalize_segments(append([] if (len(file_path_segments) <= 1) else file_path_segments[0:(len(file_path_segments) - 2) + 1], pattern_input[1], None))
|
|
227
|
+
if len(resolved_segments) == 0:
|
|
228
|
+
if file_prefix_opt is None:
|
|
229
|
+
return trimmed_path
|
|
230
|
+
|
|
231
|
+
else:
|
|
232
|
+
return normalize_root_prefix(file_prefix_opt)
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
else:
|
|
236
|
+
return build_path_from_prefix_and_segments(file_prefix_opt, resolved_segments)
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
def get_file_name(path: str) -> str:
|
|
242
|
+
return last(split(path))
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
def is_file(file_name: str, path: str) -> bool:
|
|
246
|
+
return get_file_name(path) == file_name
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
def get_assay_folder_path(assay_identifier: str) -> str:
|
|
250
|
+
return combine("assays", assay_identifier)
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
def get_study_folder_path(study_identifier: str) -> str:
|
|
254
|
+
return combine("studies", study_identifier)
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
def get_workflow_folder_path(workflow_identifier: str) -> str:
|
|
258
|
+
return combine("workflows", workflow_identifier)
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
def get_run_folder_path(run_identifier: str) -> str:
|
|
262
|
+
return combine("runs", run_identifier)
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
__all__ = ["seperators", "alternative_licensefile_names", "split", "has_leading_separator", "is_unc_path", "try_get_drive_prefix", "split_with_prefix", "normalize_root_prefix", "build_path_from_prefix_and_segments", "combine", "combine_many", "normalize_segments", "normalize", "normalize_path_key", "resolve_path_from_file", "get_file_name", "is_file", "get_assay_folder_path", "get_study_folder_path", "get_workflow_folder_path", "get_run_folder_path"]
|
|
266
|
+
|
|
File without changes
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import (Any, TypeVar)
|
|
3
|
+
from ...fable_modules.fable_library.list import (choose, of_array, FSharpList)
|
|
4
|
+
from ...fable_modules.fable_library.option import map
|
|
5
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
6
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
7
|
+
from ...fable_modules.thoth_json_core.decode import (object, IRequiredGetter, IOptionalGetter, string, IGetters)
|
|
8
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
|
|
9
|
+
from ...Core.data import Data
|
|
10
|
+
from ...Core.data_context import (DataContext__get_Explication, DataContext__get_Unit, DataContext__get_ObjectType, DataContext__get_Description, DataContext__get_GeneratedBy, DataContext__get_Label, DataContext, DataContext__ctor_Z780A8A2A)
|
|
11
|
+
from ...Core.ontology_annotation import OntologyAnnotation
|
|
12
|
+
from ..data import (encoder as encoder_1, decoder as decoder_1)
|
|
13
|
+
from ..encode import try_include
|
|
14
|
+
from ..ontology_annotation import (OntologyAnnotation_encoder, OntologyAnnotation_decoder)
|
|
15
|
+
|
|
16
|
+
__A_ = TypeVar("__A_")
|
|
17
|
+
|
|
18
|
+
def encoder(dc: DataContext) -> IEncodable:
|
|
19
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], dc: Any=dc) -> tuple[str, IEncodable] | None:
|
|
20
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
21
|
+
return (tupled_arg[0], v_1)
|
|
22
|
+
|
|
23
|
+
return map(mapping, tupled_arg[1])
|
|
24
|
+
|
|
25
|
+
def _arrow3443(oa: OntologyAnnotation, dc: Any=dc) -> IEncodable:
|
|
26
|
+
return OntologyAnnotation_encoder(oa)
|
|
27
|
+
|
|
28
|
+
def _arrow3444(oa_1: OntologyAnnotation, dc: Any=dc) -> IEncodable:
|
|
29
|
+
return OntologyAnnotation_encoder(oa_1)
|
|
30
|
+
|
|
31
|
+
def _arrow3445(oa_2: OntologyAnnotation, dc: Any=dc) -> IEncodable:
|
|
32
|
+
return OntologyAnnotation_encoder(oa_2)
|
|
33
|
+
|
|
34
|
+
def _arrow3447(value: str, dc: Any=dc) -> IEncodable:
|
|
35
|
+
class ObjectExpr3446(IEncodable):
|
|
36
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
37
|
+
return helpers.encode_string(value)
|
|
38
|
+
|
|
39
|
+
return ObjectExpr3446()
|
|
40
|
+
|
|
41
|
+
def _arrow3449(value_2: str, dc: Any=dc) -> IEncodable:
|
|
42
|
+
class ObjectExpr3448(IEncodable):
|
|
43
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
|
|
44
|
+
return helpers_1.encode_string(value_2)
|
|
45
|
+
|
|
46
|
+
return ObjectExpr3448()
|
|
47
|
+
|
|
48
|
+
def _arrow3451(value_4: str, dc: Any=dc) -> IEncodable:
|
|
49
|
+
class ObjectExpr3450(IEncodable):
|
|
50
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
|
|
51
|
+
return helpers_2.encode_string(value_4)
|
|
52
|
+
|
|
53
|
+
return ObjectExpr3450()
|
|
54
|
+
|
|
55
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("data", encoder_1(dc)), try_include("explication", _arrow3443, DataContext__get_Explication(dc)), try_include("unit", _arrow3444, DataContext__get_Unit(dc)), try_include("objectType", _arrow3445, DataContext__get_ObjectType(dc)), try_include("description", _arrow3447, DataContext__get_Description(dc)), try_include("generatedBy", _arrow3449, DataContext__get_GeneratedBy(dc)), try_include("label", _arrow3451, DataContext__get_Label(dc))]))
|
|
56
|
+
class ObjectExpr3452(IEncodable):
|
|
57
|
+
def Encode(self, helpers_3: IEncoderHelpers_1[Any], dc: Any=dc) -> Any:
|
|
58
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
59
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_3))
|
|
60
|
+
|
|
61
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
62
|
+
return helpers_3.encode_object(arg)
|
|
63
|
+
|
|
64
|
+
return ObjectExpr3452()
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def _arrow3463(get: IGetters) -> DataContext:
|
|
68
|
+
data: Data
|
|
69
|
+
object_arg: IRequiredGetter = get.Required
|
|
70
|
+
data = object_arg.Field("data", decoder_1)
|
|
71
|
+
def _arrow3453(__unit: None=None) -> OntologyAnnotation | None:
|
|
72
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
73
|
+
return object_arg_1.Field("explication", OntologyAnnotation_decoder)
|
|
74
|
+
|
|
75
|
+
def _arrow3454(__unit: None=None) -> OntologyAnnotation | None:
|
|
76
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
77
|
+
return object_arg_2.Field("unit", OntologyAnnotation_decoder)
|
|
78
|
+
|
|
79
|
+
def _arrow3455(__unit: None=None) -> OntologyAnnotation | None:
|
|
80
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
81
|
+
return object_arg_3.Field("objectType", OntologyAnnotation_decoder)
|
|
82
|
+
|
|
83
|
+
def _arrow3456(__unit: None=None) -> str | None:
|
|
84
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
85
|
+
return object_arg_4.Field("label", string)
|
|
86
|
+
|
|
87
|
+
def _arrow3461(__unit: None=None) -> str | None:
|
|
88
|
+
object_arg_5: IOptionalGetter = get.Optional
|
|
89
|
+
return object_arg_5.Field("description", string)
|
|
90
|
+
|
|
91
|
+
def _arrow3462(__unit: None=None) -> str | None:
|
|
92
|
+
object_arg_6: IOptionalGetter = get.Optional
|
|
93
|
+
return object_arg_6.Field("generatedBy", string)
|
|
94
|
+
|
|
95
|
+
return DataContext__ctor_Z780A8A2A(data.ID, data.Name, data.DataType, data.Format, data.SelectorFormat, _arrow3453(), _arrow3454(), _arrow3455(), _arrow3456(), _arrow3461(), _arrow3462(), data.Comments)
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
decoder: Decoder_1[DataContext] = object(_arrow3463)
|
|
99
|
+
|
|
100
|
+
__all__ = ["encoder", "decoder"]
|
|
101
|
+
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import (Any, TypeVar)
|
|
3
|
+
from ...fable_modules.fable_library.seq import map
|
|
4
|
+
from ...fable_modules.fable_library.types import Array
|
|
5
|
+
from ...fable_modules.fable_library.util import (to_enumerable, IEnumerable_1)
|
|
6
|
+
from ...fable_modules.thoth_json_core.decode import (object, resize_array, IRequiredGetter, IGetters)
|
|
7
|
+
from ...fable_modules.thoth_json_core.encode import seq
|
|
8
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
|
|
9
|
+
from ...Core.data_context import DataContext
|
|
10
|
+
from ...Core.datamap import Datamap
|
|
11
|
+
from ...Core.ontology_annotation import OntologyAnnotation
|
|
12
|
+
from ...Core.Table.composite_cell import CompositeCell
|
|
13
|
+
from .data_context import (encoder as encoder_1, decoder as decoder_1)
|
|
14
|
+
|
|
15
|
+
__A_ = TypeVar("__A_")
|
|
16
|
+
|
|
17
|
+
def encoder(dm: Datamap) -> IEncodable:
|
|
18
|
+
def mapping(dc: DataContext, dm: Any=dm) -> IEncodable:
|
|
19
|
+
return encoder_1(dc)
|
|
20
|
+
|
|
21
|
+
values_1: IEnumerable_1[tuple[str, IEncodable]] = to_enumerable([("dataContexts", seq(map(mapping, dm.DataContexts)))])
|
|
22
|
+
class ObjectExpr3503(IEncodable):
|
|
23
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any], dm: Any=dm) -> Any:
|
|
24
|
+
def mapping_1(tupled_arg: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
25
|
+
return (tupled_arg[0], tupled_arg[1].Encode(helpers))
|
|
26
|
+
|
|
27
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map(mapping_1, values_1)
|
|
28
|
+
return helpers.encode_object(arg)
|
|
29
|
+
|
|
30
|
+
return ObjectExpr3503()
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def _arrow3507(get: IGetters) -> Datamap:
|
|
34
|
+
def _arrow3506(__unit: None=None) -> Array[DataContext]:
|
|
35
|
+
arg_1: Decoder_1[Array[DataContext]] = resize_array(decoder_1)
|
|
36
|
+
object_arg: IRequiredGetter = get.Required
|
|
37
|
+
return object_arg.Field("dataContexts", arg_1)
|
|
38
|
+
|
|
39
|
+
return Datamap(_arrow3506())
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
decoder: Decoder_1[Datamap] = object(_arrow3507)
|
|
43
|
+
|
|
44
|
+
def encoder_compressed(string_table: Any, oa_table: Any, cell_table: Any, dm: Datamap) -> IEncodable:
|
|
45
|
+
return encoder(dm)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def decoder_compressed(string_table: Array[str], oa_table: Array[OntologyAnnotation], cell_table: Array[CompositeCell]) -> Decoder_1[Datamap]:
|
|
49
|
+
return decoder
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
__all__ = ["encoder", "decoder", "encoder_compressed", "decoder_compressed"]
|
|
53
|
+
|
|
File without changes
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import (Any, TypeVar)
|
|
3
|
+
from ...fable_modules.fable_library.list import (FSharpList, choose, of_array)
|
|
4
|
+
from ...fable_modules.fable_library.option import map
|
|
5
|
+
from ...fable_modules.fable_library.seq import map as map_1
|
|
6
|
+
from ...fable_modules.fable_library.util import IEnumerable_1
|
|
7
|
+
from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1)
|
|
8
|
+
from ...Core.Process.material import Material
|
|
9
|
+
from ...Core.Process.process import Process
|
|
10
|
+
from ...Core.Process.process_sequence import (get_samples, get_materials)
|
|
11
|
+
from ...Core.Process.sample import Sample
|
|
12
|
+
from ..encode import try_include_list
|
|
13
|
+
from .material import ISAJson_encoder as ISAJson_encoder_1
|
|
14
|
+
from .sample import ISAJson_encoder
|
|
15
|
+
|
|
16
|
+
__A_ = TypeVar("__A_")
|
|
17
|
+
|
|
18
|
+
def encoder(id_map: Any | None, ps: FSharpList[Process]) -> IEncodable:
|
|
19
|
+
samples: FSharpList[Sample] = get_samples(ps)
|
|
20
|
+
materials: FSharpList[Material] = get_materials(ps)
|
|
21
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], id_map: Any=id_map, ps: Any=ps) -> tuple[str, IEncodable] | None:
|
|
22
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
23
|
+
return (tupled_arg[0], v_1)
|
|
24
|
+
|
|
25
|
+
return map(mapping, tupled_arg[1])
|
|
26
|
+
|
|
27
|
+
def _arrow3344(oa: Sample, id_map: Any=id_map, ps: Any=ps) -> IEncodable:
|
|
28
|
+
return ISAJson_encoder(id_map, oa)
|
|
29
|
+
|
|
30
|
+
def _arrow3345(c: Material, id_map: Any=id_map, ps: Any=ps) -> IEncodable:
|
|
31
|
+
return ISAJson_encoder_1(id_map, c)
|
|
32
|
+
|
|
33
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include_list("samples", _arrow3344, samples), try_include_list("otherMaterials", _arrow3345, materials)]))
|
|
34
|
+
class ObjectExpr3346(IEncodable):
|
|
35
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any], id_map: Any=id_map, ps: Any=ps) -> Any:
|
|
36
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
37
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers))
|
|
38
|
+
|
|
39
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
40
|
+
return helpers.encode_object(arg)
|
|
41
|
+
|
|
42
|
+
return ObjectExpr3346()
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
__all__ = ["encoder"]
|
|
46
|
+
|
|
@@ -0,0 +1,125 @@
|
|
|
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.component import (Component, Component_createAsPV, Component__get_ComponentName, Component_decomposeName_Z721C83C5)
|
|
12
|
+
from ...Core.value import Value
|
|
13
|
+
from ..decode import Decode_uri
|
|
14
|
+
from ..encode import try_include
|
|
15
|
+
from ..ontology_annotation import (OntologyAnnotation_encoder, OntologyAnnotation_decoder, OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
|
|
16
|
+
from ..property_value import (encoder as encoder_2, decoder as decoder_2, gen_id)
|
|
17
|
+
from .value import (encoder as encoder_1, decoder as decoder_1)
|
|
18
|
+
|
|
19
|
+
__A_ = TypeVar("__A_")
|
|
20
|
+
|
|
21
|
+
def encoder(value: Component) -> IEncodable:
|
|
22
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], value: Any=value) -> tuple[str, IEncodable] | None:
|
|
23
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
24
|
+
return (tupled_arg[0], v_1)
|
|
25
|
+
|
|
26
|
+
return map(mapping, tupled_arg[1])
|
|
27
|
+
|
|
28
|
+
def _arrow3136(oa: OntologyAnnotation, value: Any=value) -> IEncodable:
|
|
29
|
+
return OntologyAnnotation_encoder(oa)
|
|
30
|
+
|
|
31
|
+
def _arrow3137(value_1: Value, value: Any=value) -> IEncodable:
|
|
32
|
+
return encoder_1(None, value_1)
|
|
33
|
+
|
|
34
|
+
def _arrow3138(oa_1: OntologyAnnotation, value: Any=value) -> IEncodable:
|
|
35
|
+
return OntologyAnnotation_encoder(oa_1)
|
|
36
|
+
|
|
37
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("type", _arrow3136, value.ComponentType), try_include("value", _arrow3137, value.ComponentValue), try_include("unit", _arrow3138, value.ComponentUnit)]))
|
|
38
|
+
class ObjectExpr3139(IEncodable):
|
|
39
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any], value: Any=value) -> Any:
|
|
40
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
41
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers))
|
|
42
|
+
|
|
43
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
44
|
+
return helpers.encode_object(arg)
|
|
45
|
+
|
|
46
|
+
return ObjectExpr3139()
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def _arrow3142(get: IGetters) -> Component:
|
|
50
|
+
ComponentType: OntologyAnnotation | None
|
|
51
|
+
object_arg: IOptionalGetter = get.Optional
|
|
52
|
+
ComponentType = object_arg.Field("type", OntologyAnnotation_decoder)
|
|
53
|
+
def _arrow3140(__unit: None=None) -> Value | None:
|
|
54
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
55
|
+
return object_arg_1.Field("value", decoder_1)
|
|
56
|
+
|
|
57
|
+
def _arrow3141(__unit: None=None) -> OntologyAnnotation | None:
|
|
58
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
59
|
+
return object_arg_2.Field("unit", OntologyAnnotation_decoder)
|
|
60
|
+
|
|
61
|
+
return Component(_arrow3140(), _arrow3141(), ComponentType)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
decoder: Decoder_1[Component] = object(_arrow3142)
|
|
65
|
+
|
|
66
|
+
ROCrate_encoder: Callable[[Component], IEncodable] = encoder_2
|
|
67
|
+
|
|
68
|
+
ROCrate_decoder: Decoder_1[Component] = decoder_2(Component_createAsPV)
|
|
69
|
+
|
|
70
|
+
def ISAJson_genID(c: Component) -> str:
|
|
71
|
+
return gen_id(c)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def ISAJson_encoder(id_map: Any | None, c: Component) -> IEncodable:
|
|
75
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], id_map: Any=id_map, c: Any=c) -> tuple[str, IEncodable] | None:
|
|
76
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
77
|
+
return (tupled_arg[0], v_1)
|
|
78
|
+
|
|
79
|
+
return map(mapping, tupled_arg[1])
|
|
80
|
+
|
|
81
|
+
def _arrow3146(value: str, id_map: Any=id_map, c: Any=c) -> IEncodable:
|
|
82
|
+
class ObjectExpr3145(IEncodable):
|
|
83
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
84
|
+
return helpers.encode_string(value)
|
|
85
|
+
|
|
86
|
+
return ObjectExpr3145()
|
|
87
|
+
|
|
88
|
+
def _arrow3147(oa: OntologyAnnotation, id_map: Any=id_map, c: Any=c) -> IEncodable:
|
|
89
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa)
|
|
90
|
+
|
|
91
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("componentName", _arrow3146, Component__get_ComponentName(c)), try_include("componentType", _arrow3147, c.ComponentType)]))
|
|
92
|
+
class ObjectExpr3148(IEncodable):
|
|
93
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], id_map: Any=id_map, c: Any=c) -> Any:
|
|
94
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
95
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_1))
|
|
96
|
+
|
|
97
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
98
|
+
return helpers_1.encode_object(arg)
|
|
99
|
+
|
|
100
|
+
return ObjectExpr3148()
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def _arrow3150(get: IGetters) -> Component:
|
|
104
|
+
name: str | None
|
|
105
|
+
object_arg: IOptionalGetter = get.Optional
|
|
106
|
+
name = object_arg.Field("componentName", Decode_uri)
|
|
107
|
+
pattern_input_1: tuple[Value | None, OntologyAnnotation | None]
|
|
108
|
+
if name is None:
|
|
109
|
+
pattern_input_1 = (None, None)
|
|
110
|
+
|
|
111
|
+
else:
|
|
112
|
+
pattern_input: tuple[Value, OntologyAnnotation | None] = Component_decomposeName_Z721C83C5(name)
|
|
113
|
+
pattern_input_1 = (pattern_input[0], pattern_input[1])
|
|
114
|
+
|
|
115
|
+
def _arrow3149(__unit: None=None) -> OntologyAnnotation | None:
|
|
116
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
117
|
+
return object_arg_1.Field("componentType", OntologyAnnotation_ISAJson_decoder)
|
|
118
|
+
|
|
119
|
+
return Component(pattern_input_1[0], pattern_input_1[1], _arrow3149())
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
ISAJson_decoder: Decoder_1[Component] = object(_arrow3150)
|
|
123
|
+
|
|
124
|
+
__all__ = ["encoder", "decoder", "ROCrate_encoder", "ROCrate_decoder", "ISAJson_genID", "ISAJson_encoder", "ISAJson_decoder"]
|
|
125
|
+
|