arctrl 3.0.0a3__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 +18 -0
- arctrl/py/CWL/__init__.py +0 -0
- arctrl/py/CWL/cwltypes.py +150 -0
- arctrl/py/CWL/decode.py +973 -0
- arctrl/py/CWL/encode.py +1 -0
- arctrl/py/CWL/inputs.py +88 -0
- arctrl/py/CWL/outputs.py +85 -0
- arctrl/py/CWL/requirements.py +77 -0
- arctrl/py/CWL/tool_description.py +103 -0
- arctrl/py/CWL/workflow_description.py +104 -0
- arctrl/py/CWL/workflow_steps.py +113 -0
- arctrl/py/Contract/__init__.py +0 -0
- arctrl/py/Contract/arc.py +60 -0
- arctrl/py/Contract/arc_assay.py +125 -0
- arctrl/py/Contract/arc_investigation.py +88 -0
- arctrl/py/Contract/arc_run.py +125 -0
- arctrl/py/Contract/arc_study.py +126 -0
- arctrl/py/Contract/arc_workflow.py +125 -0
- arctrl/py/Contract/contract.py +153 -0
- arctrl/py/Contract/datamap.py +372 -0
- arctrl/py/Contract/git.py +118 -0
- arctrl/py/Contract/validation_packages_config.py +107 -0
- arctrl/py/ContractIO/__init__.py +0 -0
- arctrl/py/ContractIO/contract_io.py +344 -0
- arctrl/py/ContractIO/file_system_helper.py +264 -0
- arctrl/py/Core/Helper/__init__.py +0 -0
- arctrl/py/Core/Helper/collections_.py +438 -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 +248 -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 +1264 -0
- arctrl/py/Core/Table/arc_table_aux.py +575 -0
- arctrl/py/Core/Table/arc_tables.py +591 -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 +5064 -0
- arctrl/py/Core/comment.py +128 -0
- arctrl/py/Core/comment_list.py +127 -0
- arctrl/py/Core/conversion.py +1313 -0
- arctrl/py/Core/data.py +245 -0
- arctrl/py/Core/data_context.py +157 -0
- arctrl/py/Core/data_file.py +112 -0
- arctrl/py/Core/data_map.py +225 -0
- arctrl/py/Core/identifier_setters.py +31 -0
- arctrl/py/Core/iproperty_value.py +36 -0
- arctrl/py/Core/ontology_annotation.py +299 -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 +5 -0
- arctrl/py/FileSystem/default_gitignore.py +5 -0
- arctrl/py/FileSystem/file_system.py +58 -0
- arctrl/py/FileSystem/file_system_tree.py +426 -0
- arctrl/py/FileSystem/path.py +64 -0
- arctrl/py/Json/DataMap/__init__.py +0 -0
- arctrl/py/Json/DataMap/data_context.py +101 -0
- arctrl/py/Json/DataMap/data_map.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 +79 -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 +79 -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 +133 -0
- arctrl/py/Json/ROCrate/ldgraph.py +111 -0
- arctrl/py/Json/ROCrate/ldnode.py +290 -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 +393 -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 +155 -0
- arctrl/py/Json/encode.py +92 -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/string_table.py +76 -0
- arctrl/py/Json/study.py +793 -0
- arctrl/py/JsonIO/DataMap/__init__.py +0 -0
- arctrl/py/JsonIO/DataMap/data_map.py +53 -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 +121 -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 +85 -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/decode.py +9 -0
- arctrl/py/JsonIO/encode.py +1 -0
- arctrl/py/JsonIO/investigation.py +113 -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/study.py +114 -0
- arctrl/py/ROCrate/Generic/__init__.py +0 -0
- arctrl/py/ROCrate/Generic/comment.py +131 -0
- arctrl/py/ROCrate/Generic/dataset.py +817 -0
- arctrl/py/ROCrate/Generic/defined_term.py +131 -0
- arctrl/py/ROCrate/Generic/file.py +237 -0
- arctrl/py/ROCrate/Generic/lab_process.py +324 -0
- arctrl/py/ROCrate/Generic/lab_protocol.py +338 -0
- arctrl/py/ROCrate/Generic/organization.py +83 -0
- arctrl/py/ROCrate/Generic/person.py +484 -0
- arctrl/py/ROCrate/Generic/postal_address.py +195 -0
- arctrl/py/ROCrate/Generic/property_value.py +696 -0
- arctrl/py/ROCrate/Generic/sample.py +202 -0
- arctrl/py/ROCrate/Generic/scholarly_article.py +229 -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/__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 +362 -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 +193 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +210 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
- arctrl/py/Spreadsheet/DataMapTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/DataMapTable/data_map_column.py +114 -0
- arctrl/py/Spreadsheet/DataMapTable/data_map_header.py +618 -0
- arctrl/py/Spreadsheet/DataMapTable/data_map_table.py +119 -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 +508 -0
- arctrl/py/Spreadsheet/Metadata/study.py +312 -0
- arctrl/py/Spreadsheet/Metadata/workflow.py +151 -0
- arctrl/py/Spreadsheet/__init__.py +0 -0
- arctrl/py/Spreadsheet/arc_assay.py +233 -0
- arctrl/py/Spreadsheet/arc_investigation.py +418 -0
- arctrl/py/Spreadsheet/arc_run.py +190 -0
- arctrl/py/Spreadsheet/arc_study.py +144 -0
- arctrl/py/Spreadsheet/arc_workflow.py +176 -0
- arctrl/py/Spreadsheet/assembly_info.py +1 -0
- arctrl/py/Spreadsheet/collection_aux.py +167 -0
- arctrl/py/Spreadsheet/data_map.py +44 -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/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 +1400 -0
- arctrl/py/column_index.py +280 -0
- arctrl/py/conversion.py +2184 -0
- arctrl/py/cross_async.py +76 -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 +338 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +469 -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 +464 -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 +57 -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 +217 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +47 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +186 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +90 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +78 -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 +393 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +127 -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 +218 -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 +180 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +600 -0
- arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +330 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +63 -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 +53 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +40 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +54 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
- arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_core/decode.py +1588 -0
- arctrl/py/fable_modules/thoth_json_core/encode.py +261 -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/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 +665 -0
- arctrl/py/fable_modules/yamlicious/regex.py +21 -0
- arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +256 -0
- arctrl/py/fable_modules/yamlicious/writer.py +175 -0
- arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
- arctrl/py/json.py +213 -0
- arctrl/py/rocrate_io.py +72 -0
- arctrl/py/template_web.py +23 -0
- arctrl/py/xlsx.py +148 -0
- arctrl/rocrate.py +21 -0
- arctrl-3.0.0a3.dist-info/LICENSE +21 -0
- arctrl-3.0.0a3.dist-info/METADATA +119 -0
- arctrl-3.0.0a3.dist-info/RECORD +456 -0
- arctrl-3.0.0a3.dist-info/WHEEL +4 -0
arctrl/py/json.py
ADDED
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from .Core.arc_types import (ArcAssay, ArcStudy, ArcInvestigation)
|
|
4
|
+
from .Core.ontology_annotation import OntologyAnnotation
|
|
5
|
+
from .arc import ARC
|
|
6
|
+
from .JsonIO.assay import (ARCtrl_ArcAssay__ArcAssay_fromJsonString_Static_Z721C83C5, ARCtrl_ArcAssay__ArcAssay_fromCompressedJsonString_Static_Z721C83C5, ARCtrl_ArcAssay__ArcAssay_fromISAJsonString_Static_Z721C83C5, ARCtrl_ArcAssay__ArcAssay_fromROCrateJsonString_Static_Z721C83C5, ARCtrl_ArcAssay__ArcAssay_toJsonString_Static_71136F3F, ARCtrl_ArcAssay__ArcAssay_toCompressedJsonString_Static_71136F3F, ARCtrl_ArcAssay__ArcAssay_toISAJsonString_Static_Z3B036AA, ARCtrl_ArcAssay__ArcAssay_toROCrateJsonString_Static_5CABCA47)
|
|
7
|
+
from .JsonIO.investigation import (ARCtrl_ArcInvestigation__ArcInvestigation_fromJsonString_Static_Z721C83C5, ARCtrl_ArcInvestigation__ArcInvestigation_fromCompressedJsonString_Static_Z721C83C5, ARCtrl_ArcInvestigation__ArcInvestigation_fromISAJsonString_Static_Z721C83C5, ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateJsonString_Static_Z721C83C5, ARCtrl_ArcInvestigation__ArcInvestigation_toJsonString_Static_71136F3F, ARCtrl_ArcInvestigation__ArcInvestigation_toCompressedJsonString_Static_71136F3F, ARCtrl_ArcInvestigation__ArcInvestigation_toISAJsonString_Static_Z3B036AA, ARCtrl_ArcInvestigation__ArcInvestigation_toROCrateJsonString_Static_71136F3F)
|
|
8
|
+
from .JsonIO.ontology_annotation import (ARCtrl_OntologyAnnotation__OntologyAnnotation_fromJsonString_Static_Z721C83C5, ARCtrl_OntologyAnnotation__OntologyAnnotation_fromISAJsonString_Static_Z721C83C5, ARCtrl_OntologyAnnotation__OntologyAnnotation_fromROCrateJsonString_Static_Z721C83C5, ARCtrl_OntologyAnnotation__OntologyAnnotation_toJsonString_Static_71136F3F, ARCtrl_OntologyAnnotation__OntologyAnnotation_toISAJsonString_Static_71136F3F, ARCtrl_OntologyAnnotation__OntologyAnnotation_toROCrateJsonString_Static_71136F3F)
|
|
9
|
+
from .JsonIO.study import (ARCtrl_ArcStudy__ArcStudy_fromJsonString_Static_Z721C83C5, ARCtrl_ArcStudy__ArcStudy_fromCompressedJsonString_Static_Z721C83C5, ARCtrl_ArcStudy__ArcStudy_fromISAJsonString_Static_Z721C83C5, ARCtrl_ArcStudy__ArcStudy_fromROCrateJsonString_Static_Z721C83C5, ARCtrl_ArcStudy__ArcStudy_toJsonString_Static_71136F3F, ARCtrl_ArcStudy__ArcStudy_toCompressedJsonString_Static_71136F3F, ARCtrl_ArcStudy__ArcStudy_toISAJsonString_Static_Z3FD920F1, ARCtrl_ArcStudy__ArcStudy_toROCrateJsonString_Static_3BA23086)
|
|
10
|
+
from .fable_modules.fable_library.list import FSharpList
|
|
11
|
+
from .fable_modules.fable_library.reflection import (TypeInfo, class_type)
|
|
12
|
+
|
|
13
|
+
def _expr3761() -> TypeInfo:
|
|
14
|
+
return class_type("ARCtrl.JsonHelper.OntologyAnnotationJson", None, JsonHelper_OntologyAnnotationJson)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class JsonHelper_OntologyAnnotationJson:
|
|
18
|
+
def __init__(self, __unit: None=None) -> None:
|
|
19
|
+
pass
|
|
20
|
+
|
|
21
|
+
def from_json_string(self, s: str) -> OntologyAnnotation:
|
|
22
|
+
return ARCtrl_OntologyAnnotation__OntologyAnnotation_fromJsonString_Static_Z721C83C5(s)
|
|
23
|
+
|
|
24
|
+
def from_isajson_string(self, s: str) -> OntologyAnnotation:
|
|
25
|
+
return ARCtrl_OntologyAnnotation__OntologyAnnotation_fromISAJsonString_Static_Z721C83C5(s)
|
|
26
|
+
|
|
27
|
+
def from_rocrate_json_string(self, s: str) -> OntologyAnnotation:
|
|
28
|
+
return ARCtrl_OntologyAnnotation__OntologyAnnotation_fromROCrateJsonString_Static_Z721C83C5(s)
|
|
29
|
+
|
|
30
|
+
def to_json_string(self, oa: OntologyAnnotation, spaces: int | None=None) -> str:
|
|
31
|
+
return ARCtrl_OntologyAnnotation__OntologyAnnotation_toJsonString_Static_71136F3F(spaces)(oa)
|
|
32
|
+
|
|
33
|
+
def to_isajson_string(self, oa: OntologyAnnotation, spaces: int | None=None) -> str:
|
|
34
|
+
return ARCtrl_OntologyAnnotation__OntologyAnnotation_toISAJsonString_Static_71136F3F(spaces)(oa)
|
|
35
|
+
|
|
36
|
+
def to_rocrate_json_string(self, oa: OntologyAnnotation, spaces: int | None=None) -> str:
|
|
37
|
+
return ARCtrl_OntologyAnnotation__OntologyAnnotation_toROCrateJsonString_Static_71136F3F(spaces)(oa)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
JsonHelper_OntologyAnnotationJson_reflection = _expr3761
|
|
41
|
+
|
|
42
|
+
def JsonHelper_OntologyAnnotationJson__ctor(__unit: None=None) -> JsonHelper_OntologyAnnotationJson:
|
|
43
|
+
return JsonHelper_OntologyAnnotationJson(__unit)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
def _expr3762() -> TypeInfo:
|
|
47
|
+
return class_type("ARCtrl.JsonHelper.AssayJson", None, JsonHelper_AssayJson)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
class JsonHelper_AssayJson:
|
|
51
|
+
def __init__(self, __unit: None=None) -> None:
|
|
52
|
+
pass
|
|
53
|
+
|
|
54
|
+
def from_json_string(self, s: str) -> ArcAssay:
|
|
55
|
+
return ARCtrl_ArcAssay__ArcAssay_fromJsonString_Static_Z721C83C5(s)
|
|
56
|
+
|
|
57
|
+
def from_compressed_json_string(self, s: str) -> ArcAssay:
|
|
58
|
+
return ARCtrl_ArcAssay__ArcAssay_fromCompressedJsonString_Static_Z721C83C5(s)
|
|
59
|
+
|
|
60
|
+
def from_isajson_string(self, s: str) -> ArcAssay:
|
|
61
|
+
return ARCtrl_ArcAssay__ArcAssay_fromISAJsonString_Static_Z721C83C5(s)
|
|
62
|
+
|
|
63
|
+
def from_rocrate_json_string(self, s: str) -> ArcAssay:
|
|
64
|
+
return ARCtrl_ArcAssay__ArcAssay_fromROCrateJsonString_Static_Z721C83C5(s)
|
|
65
|
+
|
|
66
|
+
def to_json_string(self, assay: ArcAssay, spaces: int | None=None) -> str:
|
|
67
|
+
return ARCtrl_ArcAssay__ArcAssay_toJsonString_Static_71136F3F(spaces)(assay)
|
|
68
|
+
|
|
69
|
+
def to_compressed_json_string(self, assay: ArcAssay, spaces: int | None=None) -> str:
|
|
70
|
+
return ARCtrl_ArcAssay__ArcAssay_toCompressedJsonString_Static_71136F3F(spaces)(assay)
|
|
71
|
+
|
|
72
|
+
def to_isajson_string(self, assay: ArcAssay, spaces: int | None=None, use_idreferencing: bool | None=None) -> str:
|
|
73
|
+
return ARCtrl_ArcAssay__ArcAssay_toISAJsonString_Static_Z3B036AA(spaces, use_idreferencing)(assay)
|
|
74
|
+
|
|
75
|
+
def to_rocrate_json_string(self, assay: ArcAssay, study_name: str, spaces: int | None=None) -> str:
|
|
76
|
+
return ARCtrl_ArcAssay__ArcAssay_toROCrateJsonString_Static_5CABCA47(study_name, spaces)(assay)
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
JsonHelper_AssayJson_reflection = _expr3762
|
|
80
|
+
|
|
81
|
+
def JsonHelper_AssayJson__ctor(__unit: None=None) -> JsonHelper_AssayJson:
|
|
82
|
+
return JsonHelper_AssayJson(__unit)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def _expr3763() -> TypeInfo:
|
|
86
|
+
return class_type("ARCtrl.JsonHelper.StudyJson", None, JsonHelper_StudyJson)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
class JsonHelper_StudyJson:
|
|
90
|
+
def __init__(self, __unit: None=None) -> None:
|
|
91
|
+
pass
|
|
92
|
+
|
|
93
|
+
def from_json_string(self, s: str) -> ArcStudy:
|
|
94
|
+
return ARCtrl_ArcStudy__ArcStudy_fromJsonString_Static_Z721C83C5(s)
|
|
95
|
+
|
|
96
|
+
def from_compressed_json_string(self, s: str) -> ArcStudy:
|
|
97
|
+
return ARCtrl_ArcStudy__ArcStudy_fromCompressedJsonString_Static_Z721C83C5(s)
|
|
98
|
+
|
|
99
|
+
def from_isajson_string(self, s: str) -> tuple[ArcStudy, FSharpList[ArcAssay]]:
|
|
100
|
+
return ARCtrl_ArcStudy__ArcStudy_fromISAJsonString_Static_Z721C83C5(s)
|
|
101
|
+
|
|
102
|
+
def from_rocrate_json_string(self, s: str) -> tuple[ArcStudy, FSharpList[ArcAssay]]:
|
|
103
|
+
return ARCtrl_ArcStudy__ArcStudy_fromROCrateJsonString_Static_Z721C83C5(s)
|
|
104
|
+
|
|
105
|
+
def to_json_string(self, study: ArcStudy, spaces: int | None=None) -> str:
|
|
106
|
+
return ARCtrl_ArcStudy__ArcStudy_toJsonString_Static_71136F3F(spaces)(study)
|
|
107
|
+
|
|
108
|
+
def to_compressed_json_string(self, study: ArcStudy, spaces: int | None=None) -> str:
|
|
109
|
+
return ARCtrl_ArcStudy__ArcStudy_toCompressedJsonString_Static_71136F3F(spaces)(study)
|
|
110
|
+
|
|
111
|
+
def to_isajson_string(self, study: ArcStudy, assays: FSharpList[ArcAssay] | None=None, spaces: int | None=None, use_idreferencing: bool | None=None) -> str:
|
|
112
|
+
return ARCtrl_ArcStudy__ArcStudy_toISAJsonString_Static_Z3FD920F1(assays, spaces, use_idreferencing)(study)
|
|
113
|
+
|
|
114
|
+
def to_rocrate_json_string(self, study: ArcStudy, assays: FSharpList[ArcAssay] | None=None, spaces: int | None=None) -> str:
|
|
115
|
+
return ARCtrl_ArcStudy__ArcStudy_toROCrateJsonString_Static_3BA23086(assays, spaces)(study)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
JsonHelper_StudyJson_reflection = _expr3763
|
|
119
|
+
|
|
120
|
+
def JsonHelper_StudyJson__ctor(__unit: None=None) -> JsonHelper_StudyJson:
|
|
121
|
+
return JsonHelper_StudyJson(__unit)
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
def _expr3764() -> TypeInfo:
|
|
125
|
+
return class_type("ARCtrl.JsonHelper.InvestigationJson", None, JsonHelper_InvestigationJson)
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
class JsonHelper_InvestigationJson:
|
|
129
|
+
def __init__(self, __unit: None=None) -> None:
|
|
130
|
+
pass
|
|
131
|
+
|
|
132
|
+
def from_json_string(self, s: str) -> ArcInvestigation:
|
|
133
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromJsonString_Static_Z721C83C5(s)
|
|
134
|
+
|
|
135
|
+
def from_compressed_json_string(self, s: str) -> ArcInvestigation:
|
|
136
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromCompressedJsonString_Static_Z721C83C5(s)
|
|
137
|
+
|
|
138
|
+
def from_isajson_string(self, s: str) -> ArcInvestigation:
|
|
139
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromISAJsonString_Static_Z721C83C5(s)
|
|
140
|
+
|
|
141
|
+
def from_rocrate_json_string(self, s: str) -> ArcInvestigation:
|
|
142
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateJsonString_Static_Z721C83C5(s)
|
|
143
|
+
|
|
144
|
+
def to_json_string(self, investigation: ArcInvestigation, spaces: int | None=None) -> str:
|
|
145
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_toJsonString_Static_71136F3F(spaces)(investigation)
|
|
146
|
+
|
|
147
|
+
def to_compressed_json_string(self, investigation: ArcInvestigation, spaces: int | None=None) -> str:
|
|
148
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_toCompressedJsonString_Static_71136F3F(spaces)(investigation)
|
|
149
|
+
|
|
150
|
+
def to_isajson_string(self, investigation: ArcInvestigation, spaces: int | None=None, use_idreferencing: bool | None=None) -> str:
|
|
151
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_toISAJsonString_Static_Z3B036AA(spaces, use_idreferencing)(investigation)
|
|
152
|
+
|
|
153
|
+
def to_rocrate_json_string(self, investigation: ArcInvestigation, spaces: int | None=None) -> str:
|
|
154
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_toROCrateJsonString_Static_71136F3F(spaces)(investigation)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
JsonHelper_InvestigationJson_reflection = _expr3764
|
|
158
|
+
|
|
159
|
+
def JsonHelper_InvestigationJson__ctor(__unit: None=None) -> JsonHelper_InvestigationJson:
|
|
160
|
+
return JsonHelper_InvestigationJson(__unit)
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
def _expr3765() -> TypeInfo:
|
|
164
|
+
return class_type("ARCtrl.JsonHelper.ARCJson", None, JsonHelper_ARCJson)
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
class JsonHelper_ARCJson:
|
|
168
|
+
def __init__(self, __unit: None=None) -> None:
|
|
169
|
+
pass
|
|
170
|
+
|
|
171
|
+
def from_rocrate_json_string(self, s: str) -> ARC:
|
|
172
|
+
return ARC.from_rocrate_json_string(s)
|
|
173
|
+
|
|
174
|
+
def to_rocrate_json_string(self, spaces: int | None=None) -> Callable[[ARC], str]:
|
|
175
|
+
return ARC.to_rocrate_json_string(spaces)
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
JsonHelper_ARCJson_reflection = _expr3765
|
|
179
|
+
|
|
180
|
+
def JsonHelper_ARCJson__ctor(__unit: None=None) -> JsonHelper_ARCJson:
|
|
181
|
+
return JsonHelper_ARCJson(__unit)
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
def _expr3766() -> TypeInfo:
|
|
185
|
+
return class_type("ARCtrl.JsonController", None, JsonController)
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
class JsonController:
|
|
189
|
+
@staticmethod
|
|
190
|
+
def OntologyAnnotation() -> JsonHelper_OntologyAnnotationJson:
|
|
191
|
+
return JsonHelper_OntologyAnnotationJson()
|
|
192
|
+
|
|
193
|
+
@staticmethod
|
|
194
|
+
def Assay() -> JsonHelper_AssayJson:
|
|
195
|
+
return JsonHelper_AssayJson()
|
|
196
|
+
|
|
197
|
+
@staticmethod
|
|
198
|
+
def Study() -> JsonHelper_StudyJson:
|
|
199
|
+
return JsonHelper_StudyJson()
|
|
200
|
+
|
|
201
|
+
@staticmethod
|
|
202
|
+
def Investigation() -> JsonHelper_InvestigationJson:
|
|
203
|
+
return JsonHelper_InvestigationJson()
|
|
204
|
+
|
|
205
|
+
@staticmethod
|
|
206
|
+
def ARC() -> JsonHelper_ARCJson:
|
|
207
|
+
return JsonHelper_ARCJson()
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
JsonController_reflection = _expr3766
|
|
211
|
+
|
|
212
|
+
__all__ = ["JsonHelper_OntologyAnnotationJson_reflection", "JsonHelper_AssayJson_reflection", "JsonHelper_StudyJson_reflection", "JsonHelper_InvestigationJson_reflection", "JsonHelper_ARCJson_reflection", "JsonController_reflection"]
|
|
213
|
+
|
arctrl/py/rocrate_io.py
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import Any
|
|
3
|
+
from .Core.arc_types import ArcInvestigation
|
|
4
|
+
from .Json.ROCrate.ldgraph import (encoder, decoder)
|
|
5
|
+
from .Json.ROCrate.ldnode import decoder as decoder_1
|
|
6
|
+
from .ROCrate.Generic.dataset import LDDataset
|
|
7
|
+
from .ROCrate.ldcontext import LDContext
|
|
8
|
+
from .ROCrate.ldobject import (LDNode, LDRef, LDGraph)
|
|
9
|
+
from .ROCrate.rocrate_context import (init_v1_1, init_bioschemas_context)
|
|
10
|
+
from .conversion import (ARCtrl_ArcInvestigation__ArcInvestigation_ToROCrateInvestigation, ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateInvestigation_Static_Z6839B9E8)
|
|
11
|
+
from .fable_modules.fable_library.date import now
|
|
12
|
+
from .fable_modules.fable_library.option import value
|
|
13
|
+
from .fable_modules.fable_library.reflection import (TypeInfo, class_type)
|
|
14
|
+
from .fable_modules.fable_library.seq import exactly_one
|
|
15
|
+
from .fable_modules.thoth_json_core.decode import map
|
|
16
|
+
from .fable_modules.thoth_json_core.types import (IEncodable, Decoder_1)
|
|
17
|
+
|
|
18
|
+
def _expr3578() -> TypeInfo:
|
|
19
|
+
return class_type("ARCtrl.Json.ARC.ROCrate", None, ROCrate)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class ROCrate:
|
|
23
|
+
...
|
|
24
|
+
|
|
25
|
+
ROCrate_reflection = _expr3578
|
|
26
|
+
|
|
27
|
+
def ROCrate_getDefaultLicense(__unit: None=None) -> str:
|
|
28
|
+
return "ALL RIGHTS RESERVED BY THE AUTHORS"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def ROCrate_get_metadataFileDescriptor(__unit: None=None) -> LDNode:
|
|
32
|
+
node: LDNode = LDNode("ro-crate-metadata.json", ["http://schema.org/CreativeWork"])
|
|
33
|
+
node.SetProperty("http://purl.org/dc/terms/conformsTo", LDRef("https://w3id.org/ro/crate/1.1"))
|
|
34
|
+
node.SetProperty("http://schema.org/about", LDRef("./"))
|
|
35
|
+
return node
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def ROCrate_encoder_8A8D439(isa: ArcInvestigation, license: Any | None=None) -> IEncodable:
|
|
39
|
+
license_2: Any = ROCrate_getDefaultLicense() if (license is None) else value(license)
|
|
40
|
+
isa_1: LDNode = ARCtrl_ArcInvestigation__ArcInvestigation_ToROCrateInvestigation(isa)
|
|
41
|
+
LDDataset.set_sddate_published_as_date_time(isa_1, now())
|
|
42
|
+
LDDataset.set_license_as_creative_work(isa_1, license_2)
|
|
43
|
+
graph: LDGraph = isa_1.Flatten()
|
|
44
|
+
context: LDContext = LDContext(None, [init_v1_1(), init_bioschemas_context()])
|
|
45
|
+
graph.SetContext(context)
|
|
46
|
+
graph.AddNode(ROCrate_get_metadataFileDescriptor())
|
|
47
|
+
graph.Compact_InPlace()
|
|
48
|
+
return encoder(graph)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def ROCrate_get_decoder(__unit: None=None) -> Decoder_1[ArcInvestigation]:
|
|
52
|
+
def ctor(graph: LDGraph) -> ArcInvestigation:
|
|
53
|
+
match_value: LDNode | None = graph.TryGetNode("./")
|
|
54
|
+
if match_value is None:
|
|
55
|
+
raise Exception("RO-Crate graph did not contain root data Entity")
|
|
56
|
+
|
|
57
|
+
else:
|
|
58
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateInvestigation_Static_Z6839B9E8(match_value, graph, graph.TryGetContext())
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
return map(ctor, decoder)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
def ROCrate_get_decoderDeprecated(__unit: None=None) -> Decoder_1[ArcInvestigation]:
|
|
65
|
+
def ctor(ldnode: LDNode) -> ArcInvestigation:
|
|
66
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateInvestigation_Static_Z6839B9E8(exactly_one(LDDataset.get_abouts(ldnode)), None, init_v1_1())
|
|
67
|
+
|
|
68
|
+
return map(ctor, decoder_1)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
__all__ = ["ROCrate_reflection", "ROCrate_getDefaultLicense", "ROCrate_get_metadataFileDescriptor", "ROCrate_encoder_8A8D439", "ROCrate_get_decoder", "ROCrate_get_decoderDeprecated"]
|
|
72
|
+
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import Any
|
|
3
|
+
from .Core.template import Template
|
|
4
|
+
from .JsonIO.Table.templates import Templates_fromJsonString
|
|
5
|
+
from .fable_modules.fable_library.async_builder import (singleton, Async)
|
|
6
|
+
from .fable_modules.fable_library.option import default_arg
|
|
7
|
+
from .fable_modules.fable_library.types import Array
|
|
8
|
+
from .WebRequest.web_request import download_file
|
|
9
|
+
|
|
10
|
+
def get_templates(url: str | None=None) -> Async[Array[Template]]:
|
|
11
|
+
url_1: str = default_arg(url, "https://github.com/nfdi4plants/Swate-templates/releases/download/latest/templates_v2.0.0.json")
|
|
12
|
+
def _arrow3626(__unit: None=None, url: Any=url) -> Async[Array[Template]]:
|
|
13
|
+
def _arrow3625(_arg: str) -> Async[Array[Template]]:
|
|
14
|
+
map_result: Array[Template] = Templates_fromJsonString(_arg)
|
|
15
|
+
return singleton.Return(map_result)
|
|
16
|
+
|
|
17
|
+
return singleton.Bind(download_file(url_1), _arrow3625)
|
|
18
|
+
|
|
19
|
+
return singleton.Delay(_arrow3626)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
__all__ = ["get_templates"]
|
|
23
|
+
|
arctrl/py/xlsx.py
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from .Core.arc_types import (ArcAssay, ArcStudy, ArcInvestigation)
|
|
3
|
+
from .Core.data_map import DataMap
|
|
4
|
+
from .Spreadsheet.arc_assay import (ARCtrl_ArcAssay__ArcAssay_fromFsWorkbook_Static_32154C9D, ARCtrl_ArcAssay__ArcAssay_toFsWorkbook_Static_Z2508BE4F)
|
|
5
|
+
from .Spreadsheet.arc_investigation import (ARCtrl_ArcInvestigation__ArcInvestigation_fromFsWorkbook_Static_32154C9D, ARCtrl_ArcInvestigation__ArcInvestigation_toFsWorkbook_Static_Z720BD3FF)
|
|
6
|
+
from .Spreadsheet.arc_study import (ARCtrl_ArcStudy__ArcStudy_fromFsWorkbook_Static_32154C9D, ARCtrl_ArcStudy__ArcStudy_toFsWorkbook_Static_Z4CEFA522)
|
|
7
|
+
from .Spreadsheet.data_map import (from_fs_workbook, to_fs_workbook)
|
|
8
|
+
from .fable_modules.fable_library.list import (FSharpList, of_seq)
|
|
9
|
+
from .fable_modules.fable_library.option import map
|
|
10
|
+
from .fable_modules.fable_library.reflection import (TypeInfo, class_type)
|
|
11
|
+
from .fable_modules.fable_library.types import Array
|
|
12
|
+
from .fable_modules.fs_spreadsheet.fs_workbook import FsWorkbook
|
|
13
|
+
from .fable_modules.fs_spreadsheet_py.fs_extension import (FsSpreadsheet_FsWorkbook__FsWorkbook_fromXlsxFile_Static_Z721C83C5, FsSpreadsheet_FsWorkbook__FsWorkbook_toXlsxFile_Static)
|
|
14
|
+
|
|
15
|
+
def _expr3767() -> TypeInfo:
|
|
16
|
+
return class_type("ARCtrl.XlsxHelper.DatamapXlsx", None, XlsxHelper_DatamapXlsx)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class XlsxHelper_DatamapXlsx:
|
|
20
|
+
def __init__(self, __unit: None=None) -> None:
|
|
21
|
+
pass
|
|
22
|
+
|
|
23
|
+
def from_fs_workbook(self, fswb: FsWorkbook) -> DataMap:
|
|
24
|
+
return from_fs_workbook(fswb)
|
|
25
|
+
|
|
26
|
+
def to_fs_workbook(self, datamap: DataMap) -> FsWorkbook:
|
|
27
|
+
return to_fs_workbook(datamap)
|
|
28
|
+
|
|
29
|
+
def from_xlsx_file(self, path: str) -> DataMap:
|
|
30
|
+
return from_fs_workbook(FsSpreadsheet_FsWorkbook__FsWorkbook_fromXlsxFile_Static_Z721C83C5(path))
|
|
31
|
+
|
|
32
|
+
def to_xlsx_file(self, path: str, datamap: DataMap) -> None:
|
|
33
|
+
FsSpreadsheet_FsWorkbook__FsWorkbook_toXlsxFile_Static(path, to_fs_workbook(datamap))
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
XlsxHelper_DatamapXlsx_reflection = _expr3767
|
|
37
|
+
|
|
38
|
+
def XlsxHelper_DatamapXlsx__ctor(__unit: None=None) -> XlsxHelper_DatamapXlsx:
|
|
39
|
+
return XlsxHelper_DatamapXlsx(__unit)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def _expr3768() -> TypeInfo:
|
|
43
|
+
return class_type("ARCtrl.XlsxHelper.AssayXlsx", None, XlsxHelper_AssayXlsx)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
class XlsxHelper_AssayXlsx:
|
|
47
|
+
def __init__(self, __unit: None=None) -> None:
|
|
48
|
+
pass
|
|
49
|
+
|
|
50
|
+
def from_fs_workbook(self, fswb: FsWorkbook) -> ArcAssay:
|
|
51
|
+
return ARCtrl_ArcAssay__ArcAssay_fromFsWorkbook_Static_32154C9D(fswb)
|
|
52
|
+
|
|
53
|
+
def to_fs_workbook(self, assay: ArcAssay) -> FsWorkbook:
|
|
54
|
+
return ARCtrl_ArcAssay__ArcAssay_toFsWorkbook_Static_Z2508BE4F(assay)
|
|
55
|
+
|
|
56
|
+
def from_xlsx_file(self, path: str) -> ArcAssay:
|
|
57
|
+
return ARCtrl_ArcAssay__ArcAssay_fromFsWorkbook_Static_32154C9D(FsSpreadsheet_FsWorkbook__FsWorkbook_fromXlsxFile_Static_Z721C83C5(path))
|
|
58
|
+
|
|
59
|
+
def to_xlsx_file(self, path: str, assay: ArcAssay) -> None:
|
|
60
|
+
FsSpreadsheet_FsWorkbook__FsWorkbook_toXlsxFile_Static(path, ARCtrl_ArcAssay__ArcAssay_toFsWorkbook_Static_Z2508BE4F(assay))
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
XlsxHelper_AssayXlsx_reflection = _expr3768
|
|
64
|
+
|
|
65
|
+
def XlsxHelper_AssayXlsx__ctor(__unit: None=None) -> XlsxHelper_AssayXlsx:
|
|
66
|
+
return XlsxHelper_AssayXlsx(__unit)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def _expr3769() -> TypeInfo:
|
|
70
|
+
return class_type("ARCtrl.XlsxHelper.StudyXlsx", None, XlsxHelper_StudyXlsx)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
class XlsxHelper_StudyXlsx:
|
|
74
|
+
def __init__(self, __unit: None=None) -> None:
|
|
75
|
+
pass
|
|
76
|
+
|
|
77
|
+
def from_fs_workbook(self, fswb: FsWorkbook) -> tuple[ArcStudy, FSharpList[ArcAssay]]:
|
|
78
|
+
return ARCtrl_ArcStudy__ArcStudy_fromFsWorkbook_Static_32154C9D(fswb)
|
|
79
|
+
|
|
80
|
+
def to_fs_workbook(self, study: ArcStudy, assays: Array[ArcAssay] | None=None) -> FsWorkbook:
|
|
81
|
+
return ARCtrl_ArcStudy__ArcStudy_toFsWorkbook_Static_Z4CEFA522(study, map(of_seq, assays))
|
|
82
|
+
|
|
83
|
+
def from_xlsx_file(self, path: str) -> tuple[ArcStudy, FSharpList[ArcAssay]]:
|
|
84
|
+
return ARCtrl_ArcStudy__ArcStudy_fromFsWorkbook_Static_32154C9D(FsSpreadsheet_FsWorkbook__FsWorkbook_fromXlsxFile_Static_Z721C83C5(path))
|
|
85
|
+
|
|
86
|
+
def to_xlsx_file(self, path: str, study: ArcStudy, assays: Array[ArcAssay] | None=None) -> None:
|
|
87
|
+
FsSpreadsheet_FsWorkbook__FsWorkbook_toXlsxFile_Static(path, ARCtrl_ArcStudy__ArcStudy_toFsWorkbook_Static_Z4CEFA522(study, map(of_seq, assays)))
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
XlsxHelper_StudyXlsx_reflection = _expr3769
|
|
91
|
+
|
|
92
|
+
def XlsxHelper_StudyXlsx__ctor(__unit: None=None) -> XlsxHelper_StudyXlsx:
|
|
93
|
+
return XlsxHelper_StudyXlsx(__unit)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def _expr3770() -> TypeInfo:
|
|
97
|
+
return class_type("ARCtrl.XlsxHelper.InvestigationXlsx", None, XlsxHelper_InvestigationXlsx)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class XlsxHelper_InvestigationXlsx:
|
|
101
|
+
def __init__(self, __unit: None=None) -> None:
|
|
102
|
+
pass
|
|
103
|
+
|
|
104
|
+
def from_fs_workbook(self, fswb: FsWorkbook) -> ArcInvestigation:
|
|
105
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromFsWorkbook_Static_32154C9D(fswb)
|
|
106
|
+
|
|
107
|
+
def to_fs_workbook(self, investigation: ArcInvestigation) -> FsWorkbook:
|
|
108
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_toFsWorkbook_Static_Z720BD3FF(investigation)
|
|
109
|
+
|
|
110
|
+
def from_xlsx_file(self, path: str) -> ArcInvestigation:
|
|
111
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromFsWorkbook_Static_32154C9D(FsSpreadsheet_FsWorkbook__FsWorkbook_fromXlsxFile_Static_Z721C83C5(path))
|
|
112
|
+
|
|
113
|
+
def to_xlsx_file(self, path: str, investigation: ArcInvestigation) -> None:
|
|
114
|
+
FsSpreadsheet_FsWorkbook__FsWorkbook_toXlsxFile_Static(path, ARCtrl_ArcInvestigation__ArcInvestigation_toFsWorkbook_Static_Z720BD3FF(investigation))
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
XlsxHelper_InvestigationXlsx_reflection = _expr3770
|
|
118
|
+
|
|
119
|
+
def XlsxHelper_InvestigationXlsx__ctor(__unit: None=None) -> XlsxHelper_InvestigationXlsx:
|
|
120
|
+
return XlsxHelper_InvestigationXlsx(__unit)
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
def _expr3771() -> TypeInfo:
|
|
124
|
+
return class_type("ARCtrl.XlsxController", None, XlsxController)
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
class XlsxController:
|
|
128
|
+
@staticmethod
|
|
129
|
+
def Datamap() -> XlsxHelper_DatamapXlsx:
|
|
130
|
+
return XlsxHelper_DatamapXlsx()
|
|
131
|
+
|
|
132
|
+
@staticmethod
|
|
133
|
+
def Assay() -> XlsxHelper_AssayXlsx:
|
|
134
|
+
return XlsxHelper_AssayXlsx()
|
|
135
|
+
|
|
136
|
+
@staticmethod
|
|
137
|
+
def Study() -> XlsxHelper_StudyXlsx:
|
|
138
|
+
return XlsxHelper_StudyXlsx()
|
|
139
|
+
|
|
140
|
+
@staticmethod
|
|
141
|
+
def Investigation() -> XlsxHelper_InvestigationXlsx:
|
|
142
|
+
return XlsxHelper_InvestigationXlsx()
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
XlsxController_reflection = _expr3771
|
|
146
|
+
|
|
147
|
+
__all__ = ["XlsxHelper_DatamapXlsx_reflection", "XlsxHelper_AssayXlsx_reflection", "XlsxHelper_StudyXlsx_reflection", "XlsxHelper_InvestigationXlsx_reflection", "XlsxController_reflection"]
|
|
148
|
+
|
arctrl/rocrate.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import Any
|
|
4
|
+
from .py.ROCrate.ldobject import LDGraph, LDNode, LDValue, LDRef
|
|
5
|
+
from .py.ROCrate.ldcontext import LDContext
|
|
6
|
+
from .py.ROCrate.rocrate_context import init_v1_1, init_v1_2draft, init_bioschemas_context
|
|
7
|
+
from .py.ROCrate.Generic.comment import LDComment
|
|
8
|
+
from .py.ROCrate.Generic.defined_term import LDDefinedTerm
|
|
9
|
+
from .py.ROCrate.Generic.file import LDFile
|
|
10
|
+
from .py.ROCrate.Generic.lab_process import LDLabProcess
|
|
11
|
+
from .py.ROCrate.Generic.lab_protocol import LDLabProtocol
|
|
12
|
+
from .py.ROCrate.Generic.organization import LDOrganization
|
|
13
|
+
from .py.ROCrate.Generic.person import LDPerson
|
|
14
|
+
from .py.ROCrate.Generic.postal_address import LDPostalAddress
|
|
15
|
+
from .py.ROCrate.Generic.property_value import LDPropertyValue
|
|
16
|
+
from .py.ROCrate.Generic.sample import LDSample
|
|
17
|
+
from .py.ROCrate.Generic.scholarly_article import LDScholarlyArticle
|
|
18
|
+
from .py.ROCrate.Generic.dataset import LDDataset
|
|
19
|
+
from .py.JsonIO.ldobject import LDGraphExtensions_PyJsInterop as LDGraphIO
|
|
20
|
+
from .py.JsonIO.ldobject import LDNodeExtensions_PyJsInterop as LDNodeIO
|
|
21
|
+
from .py.conversion import TypeExtensions_Conversion as Conversion
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2021 DataPLANT
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: arctrl
|
|
3
|
+
Version: 3.0.0a3
|
|
4
|
+
Summary: Library for management of Annotated Research Contexts (ARCs) using an in-memory representation and runtimer agnostic contract systems.
|
|
5
|
+
Keywords: arc,annotated research context,isa,research data,multi platform
|
|
6
|
+
Author: Heinrich Lukas Weil
|
|
7
|
+
Author-email: weil@rptu.de
|
|
8
|
+
Maintainer: Florian Wetzels
|
|
9
|
+
Requires-Python: >=3.11
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Requires-Dist: openpyxl (>=3.1.5,<4)
|
|
15
|
+
Requires-Dist: requests (>=2.28.1,<3.0.0)
|
|
16
|
+
Project-URL: Repository, https://github.com/nfdi4plants/ARCtrl
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
# ARCtrl
|
|
23
|
+
|
|
24
|
+
> **ARCtrl** the easy way to read, manipulate and write ARCs in __.NET__, __JavaScript__ and __Python__! ❤️
|
|
25
|
+
|
|
26
|
+
| Version | Downloads |
|
|
27
|
+
| :--------|-----------:|
|
|
28
|
+
|<a href="https://www.nuget.org/packages/ARCtrl/"><img alt="Nuget" src="https://img.shields.io/nuget/v/ARCtrl?logo=nuget&color=%234fb3d9"></a>|<a href="https://www.nuget.org/packages/ARCtrl/"><img alt="Nuget" src="https://img.shields.io/nuget/dt/ARCtrl?color=%234FB3D9"></a>|
|
|
29
|
+
|<a href="https://www.npmjs.com/package/@nfdi4plants/arctrl"><img alt="NPM" src="https://img.shields.io/npm/v/%40nfdi4plants/arctrl?logo=npm&color=%234fb3d9"></a>|<a href="https://www.npmjs.com/package/@nfdi4plants/arctrl"><img alt="NPM" src="https://img.shields.io/npm/dt/%40nfdi4plants%2Farctrl?color=%234fb3d9"></a>|
|
|
30
|
+
|<a href="https://pypi.org/project/ARCtrl/"><img alt="PyPI" src="https://img.shields.io/pypi/v/arctrl?logo=pypi&color=%234fb3d9"></a>|<a href="https://pypi.org/project/ARCtrl/"><img alt="PyPI" src="https://img.shields.io/pepy/dt/arctrl?color=%234fb3d9"></a>|
|
|
31
|
+
|
|
32
|
+
## Install
|
|
33
|
+
|
|
34
|
+
#### .NET
|
|
35
|
+
|
|
36
|
+
```fsharp
|
|
37
|
+
#r "nuget: ARCtrl"
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
<PackageReference Include="ARCtrl" Version="1.1.0" />
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
#### JavaScript
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
npm i @nfdi4plants/arctrl
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
#### Python
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
pip install arctrl
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Docs
|
|
57
|
+
|
|
58
|
+
Documentation can be found [here](https://nfdi4plants.github.io/nfdi4plants.knowledgebase/arctrl/)
|
|
59
|
+
|
|
60
|
+
## Development
|
|
61
|
+
|
|
62
|
+
#### Requirements
|
|
63
|
+
|
|
64
|
+
- [nodejs and npm](https://nodejs.org/en/download)
|
|
65
|
+
- verify with `node --version` (Tested with v18.16.1)
|
|
66
|
+
- verify with `npm --version` (Tested with v9.2.0)
|
|
67
|
+
- [.NET SDK](https://dotnet.microsoft.com/en-us/download)
|
|
68
|
+
- verify with `dotnet --version` (Tested with 7.0.306)
|
|
69
|
+
- [Python](https://www.python.org/downloads/)
|
|
70
|
+
- verify with `py --version` (Tested with 3.12.2, known to work only for >=3.11)
|
|
71
|
+
|
|
72
|
+
#### Local Setup
|
|
73
|
+
|
|
74
|
+
On windows you can use the `setup.cmd` to run the following steps automatically!
|
|
75
|
+
|
|
76
|
+
1. Setup dotnet tools
|
|
77
|
+
|
|
78
|
+
`dotnet tool restore`
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
2. Install NPM dependencies
|
|
82
|
+
|
|
83
|
+
`npm install`
|
|
84
|
+
|
|
85
|
+
3. Setup python environment
|
|
86
|
+
|
|
87
|
+
`py -m venv .venv`
|
|
88
|
+
|
|
89
|
+
4. Install [uv](https://docs.astral.sh/uv/) and dependencies
|
|
90
|
+
|
|
91
|
+
1. `.\.venv\Scripts\python.exe -m pip install -U pip setuptools`
|
|
92
|
+
2. `.\.venv\Scripts\python.exe -m pip install uv`
|
|
93
|
+
3. `.\.venv\Scripts\python.exe -m uv pip install -r pyproject.toml --group dev`
|
|
94
|
+
|
|
95
|
+
Verify correct setup with `./build.cmd runtests` ✨
|
|
96
|
+
|
|
97
|
+
## Branding
|
|
98
|
+
|
|
99
|
+
Feel free to reference `ARCtrl` on slides or elsewhere using our logos:
|
|
100
|
+
|
|
101
|
+
|Square | Horizontal | Vertical |
|
|
102
|
+
| - | - | - |
|
|
103
|
+
|  |  |  |
|
|
104
|
+
|
|
105
|
+
## Performance
|
|
106
|
+
|
|
107
|
+
Measured on 13th Gen Intel(R) Core(TM) i7-13800H
|
|
108
|
+
|
|
109
|
+
| Name | Description | FSharp Time (ms) | JavaScript Time (ms) | Python Time (ms) |
|
|
110
|
+
| --- | --- | --- | --- | --- |
|
|
111
|
+
| Table_GetHashCode | From a table with 1 column and 10000 rows, retrieve the Hash Code | 5 | 21 | 226 |
|
|
112
|
+
| Table_AddRows | Add 10000 rows to a table with 4 columns. | 15 | 22 | 289 |
|
|
113
|
+
| Table_fillMissingCells | For a table 6 columns and 20000 rows, where each row has one missing value, fill those values with default values. | 49 | 108 | 4813 |
|
|
114
|
+
| Table_ToJson | Serialize a table with 5 columns and 10000 rows to json. | 1099 | 481 | 6833 |
|
|
115
|
+
| Table_ToCompressedJson | Serialize a table with 5 columns and 10000 rows to compressed json. | 261 | 2266 | 717334 |
|
|
116
|
+
| Assay_toJson | Parse an assay with one table with 10000 rows and 6 columns to json | 915 | 2459 | 28799 |
|
|
117
|
+
| Study_FromWorkbook | Parse a workbook with one study with 10000 rows and 6 columns to an ArcStudy | 97 | 87 | 1249 |
|
|
118
|
+
| Investigation_ToWorkbook_ManyStudies | Parse an investigation with 1500 studies to a workbook | 621 | 379 | 9974 |
|
|
119
|
+
|