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
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import Any
|
|
3
|
+
from ...fable_library.reflection import (TypeInfo, class_type)
|
|
4
|
+
from ...fable_library.string_ import (to_fail, printf)
|
|
5
|
+
from ...fable_library.util import (equals, ignore, IEnumerable_1)
|
|
6
|
+
from ..Cells.fs_cell import FsCell
|
|
7
|
+
from ..Cells.fs_cells_collection import (FsCellsCollection__get_MaxRowNumber, FsCellsCollection__get_MaxColumnNumber, FsCellsCollection__TryGetCell_Z37302880, FsCellsCollection__Add_2E78CE33, FsCellsCollection, FsCellsCollection__GetCells_7E77A4A0)
|
|
8
|
+
from ..fs_address import (FsAddress, FsAddress__get_RowNumber, FsAddress__get_ColumnNumber, FsAddress__ctor_Z4C746FC0, FsAddress__get_FixedRow, FsAddress__get_FixedColumn)
|
|
9
|
+
from .fs_range_address import (FsRangeAddress, FsRangeAddress__Extend_6D30B323, FsRangeAddress__get_FirstAddress, FsRangeAddress__get_LastAddress)
|
|
10
|
+
|
|
11
|
+
def _expr160() -> TypeInfo:
|
|
12
|
+
return class_type("FsSpreadsheet.FsRangeBase", None, FsRangeBase)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class FsRangeBase:
|
|
16
|
+
def __init__(self, range_address: FsRangeAddress) -> None:
|
|
17
|
+
self._sortRows: Any = None
|
|
18
|
+
self._sortColumns: Any = None
|
|
19
|
+
self._rangeAddress: FsRangeAddress = range_address
|
|
20
|
+
_id: int
|
|
21
|
+
FsRangeBase.IdCounter = (FsRangeBase.IdCounter + 1) or 0
|
|
22
|
+
_id = FsRangeBase.IdCounter
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
FsRangeBase_reflection = _expr160
|
|
26
|
+
|
|
27
|
+
def FsRangeBase__ctor_6A2513BC(range_address: FsRangeAddress) -> FsRangeBase:
|
|
28
|
+
return FsRangeBase(range_address)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def FsRangeBase__cctor(__unit: None=None) -> None:
|
|
32
|
+
FsRangeBase.IdCounter = 0
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
FsRangeBase__cctor()
|
|
36
|
+
|
|
37
|
+
def FsRangeBase__Extend_6D30B323(this: FsRangeBase, address: FsAddress) -> None:
|
|
38
|
+
FsRangeAddress__Extend_6D30B323(this._rangeAddress, address)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def FsRangeBase__get_RangeAddress(this: FsRangeBase) -> FsRangeAddress:
|
|
42
|
+
return this._rangeAddress
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
def FsRangeBase__set_RangeAddress_6A2513BC(this: FsRangeBase, range_adress: FsRangeAddress) -> None:
|
|
46
|
+
if not equals(range_adress, this._rangeAddress):
|
|
47
|
+
old_address: FsRangeAddress = this._rangeAddress
|
|
48
|
+
this._rangeAddress = range_adress
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
def FsRangeBase__Cell_Z3407A44B(this: FsRangeBase, cell_address_in_range: FsAddress, cells: FsCellsCollection) -> FsCell:
|
|
53
|
+
abs_row: int = ((FsAddress__get_RowNumber(cell_address_in_range) + FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)))) - 1) or 0
|
|
54
|
+
abs_column: int = ((FsAddress__get_ColumnNumber(cell_address_in_range) + FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)))) - 1) or 0
|
|
55
|
+
if True if (abs_row <= 0) else (abs_row > 1048576):
|
|
56
|
+
arg: int = FsCellsCollection__get_MaxRowNumber(cells) or 0
|
|
57
|
+
to_fail(printf("Row number must be between 1 and %i"))(arg)
|
|
58
|
+
|
|
59
|
+
if True if (abs_column <= 0) else (abs_column > 16384):
|
|
60
|
+
arg_1: int = FsCellsCollection__get_MaxColumnNumber(cells) or 0
|
|
61
|
+
to_fail(printf("Column number must be between 1 and %i"))(arg_1)
|
|
62
|
+
|
|
63
|
+
cell: FsCell | None = FsCellsCollection__TryGetCell_Z37302880(cells, abs_row, abs_column)
|
|
64
|
+
if cell is None:
|
|
65
|
+
absolute_address: FsAddress = FsAddress__ctor_Z4C746FC0(abs_row, abs_column, FsAddress__get_FixedRow(cell_address_in_range), FsAddress__get_FixedColumn(cell_address_in_range))
|
|
66
|
+
new_cell: FsCell = FsCell.create_empty_with_adress(absolute_address)
|
|
67
|
+
FsRangeBase__Extend_6D30B323(this, absolute_address)
|
|
68
|
+
value: None = FsCellsCollection__Add_2E78CE33(cells, abs_row, abs_column, new_cell)
|
|
69
|
+
ignore(None)
|
|
70
|
+
return new_cell
|
|
71
|
+
|
|
72
|
+
else:
|
|
73
|
+
return cell
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
def FsRangeBase__Cells_Z2740B3CA(this: FsRangeBase, cells: FsCellsCollection) -> IEnumerable_1[FsCell]:
|
|
78
|
+
return FsCellsCollection__GetCells_7E77A4A0(cells, FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)), FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this)))
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
def FsRangeBase__ColumnCount(this: FsRangeBase) -> int:
|
|
82
|
+
return (FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(this._rangeAddress)) - FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(this._rangeAddress))) + 1
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def FsRangeBase__RowCount(this: FsRangeBase) -> int:
|
|
86
|
+
return (FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(this._rangeAddress)) - FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(this._rangeAddress))) + 1
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
__all__ = ["FsRangeBase_reflection", "FsRangeBase__Extend_6D30B323", "FsRangeBase__get_RangeAddress", "FsRangeBase__set_RangeAddress_6A2513BC", "FsRangeBase__Cell_Z3407A44B", "FsRangeBase__Cells_Z2740B3CA", "FsRangeBase__ColumnCount", "FsRangeBase__RowCount"]
|
|
90
|
+
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import Any
|
|
3
|
+
from ...fable_library.list import FSharpList
|
|
4
|
+
from ...fable_library.range import range_big_int
|
|
5
|
+
from ...fable_library.reflection import (TypeInfo, class_type)
|
|
6
|
+
from ...fable_library.seq import (to_list, map)
|
|
7
|
+
from ...fable_library.util import IEnumerable_1
|
|
8
|
+
from ..Cells.fs_cell import FsCell
|
|
9
|
+
from ..Cells.fs_cells_collection import FsCellsCollection
|
|
10
|
+
from ..fs_address import (FsAddress__ctor_Z37302880, FsAddress__get_ColumnNumber, FsAddress__set_ColumnNumber_Z524259A4, FsAddress__get_RowNumber)
|
|
11
|
+
from .fs_range_address import (FsRangeAddress, FsRangeAddress__ctor_7E77A4A0, FsRangeAddress__get_FirstAddress, FsRangeAddress__get_LastAddress, FsRangeAddress__Copy)
|
|
12
|
+
from .fs_range_base import (FsRangeBase, FsRangeBase_reflection, FsRangeBase__get_RangeAddress, FsRangeBase__Cell_Z3407A44B, FsRangeBase__Cells_Z2740B3CA)
|
|
13
|
+
|
|
14
|
+
def _expr174() -> TypeInfo:
|
|
15
|
+
return class_type("FsSpreadsheet.FsRangeColumn", None, FsRangeColumn, FsRangeBase_reflection())
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class FsRangeColumn(FsRangeBase):
|
|
19
|
+
def __init__(self, range_address: FsRangeAddress) -> None:
|
|
20
|
+
super().__init__(range_address)
|
|
21
|
+
pass
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
FsRangeColumn_reflection = _expr174
|
|
25
|
+
|
|
26
|
+
def FsRangeColumn__ctor_6A2513BC(range_address: FsRangeAddress) -> FsRangeColumn:
|
|
27
|
+
return FsRangeColumn(range_address)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def FsRangeColumn__ctor_Z524259A4(index: int) -> FsRangeColumn:
|
|
31
|
+
return FsRangeColumn__ctor_6A2513BC(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(0, index), FsAddress__ctor_Z37302880(0, index)))
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def FsRangeColumn__get_Index(self_1: FsRangeColumn) -> int:
|
|
35
|
+
return FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self_1)))
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def FsRangeColumn__set_Index_Z524259A4(self_1: FsRangeColumn, i: int) -> None:
|
|
39
|
+
FsAddress__set_ColumnNumber_Z524259A4(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self_1)), i)
|
|
40
|
+
FsAddress__set_ColumnNumber_Z524259A4(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(self_1)), i)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def FsRangeColumn__Cell_Z4232C216(self_1: FsRangeColumn, row_index: int, cells_collection: FsCellsCollection) -> FsCell:
|
|
44
|
+
return FsRangeBase__Cell_Z3407A44B(self_1, FsAddress__ctor_Z37302880((row_index - FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self_1)))) + 1, 1), cells_collection)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def FsRangeColumn__FirstCell_Z2740B3CA(self_1: FsRangeColumn, cells: FsCellsCollection) -> FsCell:
|
|
48
|
+
return FsRangeBase__Cell_Z3407A44B(self_1, FsAddress__ctor_Z37302880(1, 1), cells)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def FsRangeColumn__Cells_Z2740B3CA(self_1: FsRangeColumn, cells_collection: FsCellsCollection) -> IEnumerable_1[FsCell]:
|
|
52
|
+
return FsRangeBase__Cells_Z2740B3CA(self_1, cells_collection)
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
def FsRangeColumn_fromRangeAddress_6A2513BC(range_address: FsRangeAddress) -> FsRangeColumn:
|
|
56
|
+
return FsRangeColumn__ctor_6A2513BC(range_address)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def FsRangeColumn__Copy(self_1: FsRangeColumn) -> FsRangeColumn:
|
|
60
|
+
return FsRangeColumn__ctor_6A2513BC(FsRangeAddress__Copy(FsRangeBase__get_RangeAddress(self_1)))
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
def FsRangeColumn_copy_Z7F7BA1C4(range_column: FsRangeColumn) -> FsRangeColumn:
|
|
64
|
+
return FsRangeColumn__Copy(range_column)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def FsSpreadsheet_FsRangeAddress__FsRangeAddress_toRangeColumns_Static_6A2513BC(range_address: FsRangeAddress) -> IEnumerable_1[FsRangeColumn]:
|
|
68
|
+
columns: FSharpList[int] = to_list(range_big_int(FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(range_address)), 1, FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(range_address))))
|
|
69
|
+
fst_row: int = FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(range_address)) or 0
|
|
70
|
+
lst_row: int = FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(range_address)) or 0
|
|
71
|
+
def mapping(c: int, range_address: Any=range_address) -> FsRangeColumn:
|
|
72
|
+
return FsRangeColumn__ctor_6A2513BC(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(fst_row, c), FsAddress__ctor_Z37302880(lst_row, c)))
|
|
73
|
+
|
|
74
|
+
return map(mapping, columns)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
__all__ = ["FsRangeColumn_reflection", "FsRangeColumn__ctor_Z524259A4", "FsRangeColumn__get_Index", "FsRangeColumn__set_Index_Z524259A4", "FsRangeColumn__Cell_Z4232C216", "FsRangeColumn__FirstCell_Z2740B3CA", "FsRangeColumn__Cells_Z2740B3CA", "FsRangeColumn_fromRangeAddress_6A2513BC", "FsRangeColumn__Copy", "FsRangeColumn_copy_Z7F7BA1C4", "FsSpreadsheet_FsRangeAddress__FsRangeAddress_toRangeColumns_Static_6A2513BC"]
|
|
78
|
+
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from ...fable_library.reflection import (TypeInfo, class_type)
|
|
3
|
+
from ...fable_library.util import IEnumerable_1
|
|
4
|
+
from ..Cells.fs_cell import FsCell
|
|
5
|
+
from ..Cells.fs_cells_collection import FsCellsCollection
|
|
6
|
+
from ..fs_address import (FsAddress__ctor_Z37302880, FsAddress__get_RowNumber, FsAddress__set_RowNumber_Z524259A4, FsAddress__get_ColumnNumber)
|
|
7
|
+
from .fs_range_address import (FsRangeAddress, FsRangeAddress__ctor_7E77A4A0, FsRangeAddress__get_FirstAddress, FsRangeAddress__get_LastAddress)
|
|
8
|
+
from .fs_range_base import (FsRangeBase, FsRangeBase_reflection, FsRangeBase__get_RangeAddress, FsRangeBase__Cell_Z3407A44B, FsRangeBase__Cells_Z2740B3CA)
|
|
9
|
+
|
|
10
|
+
def _expr173() -> TypeInfo:
|
|
11
|
+
return class_type("FsSpreadsheet.FsRangeRow", None, FsRangeRow, FsRangeBase_reflection())
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class FsRangeRow(FsRangeBase):
|
|
15
|
+
def __init__(self, range_address: FsRangeAddress) -> None:
|
|
16
|
+
super().__init__(range_address)
|
|
17
|
+
pass
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
FsRangeRow_reflection = _expr173
|
|
21
|
+
|
|
22
|
+
def FsRangeRow__ctor_6A2513BC(range_address: FsRangeAddress) -> FsRangeRow:
|
|
23
|
+
return FsRangeRow(range_address)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def FsRangeRow__ctor_Z524259A4(index: int) -> FsRangeRow:
|
|
27
|
+
return FsRangeRow__ctor_6A2513BC(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(index, 0), FsAddress__ctor_Z37302880(index, 0)))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def FsRangeRow__get_Index(self_1: FsRangeRow) -> int:
|
|
31
|
+
return FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self_1)))
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def FsRangeRow__set_Index_Z524259A4(self_1: FsRangeRow, i: int) -> None:
|
|
35
|
+
FsAddress__set_RowNumber_Z524259A4(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self_1)), i)
|
|
36
|
+
FsAddress__set_RowNumber_Z524259A4(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(self_1)), i)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def FsRangeRow__Cell_Z4232C216(self_1: FsRangeRow, column_index: int, cells: FsCellsCollection) -> FsCell:
|
|
40
|
+
return FsRangeBase__Cell_Z3407A44B(self_1, FsAddress__ctor_Z37302880(1, (column_index - FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self_1)))) + 1), cells)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def FsRangeRow__Cells_Z2740B3CA(self_1: FsRangeRow, cells: FsCellsCollection) -> IEnumerable_1[FsCell]:
|
|
44
|
+
return FsRangeBase__Cells_Z2740B3CA(self_1, cells)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
__all__ = ["FsRangeRow_reflection", "FsRangeRow__ctor_Z524259A4", "FsRangeRow__get_Index", "FsRangeRow__set_Index_Z524259A4", "FsRangeRow__Cell_Z4232C216", "FsRangeRow__Cells_Z2740B3CA"]
|
|
48
|
+
|
|
File without changes
|
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import Any
|
|
4
|
+
from ...fable_library.map_util import (add_to_set, add_to_dict, get_item_from_dict, remove_from_dict)
|
|
5
|
+
from ...fable_library.option import (value as value_2, default_arg)
|
|
6
|
+
from ...fable_library.range import range_big_int
|
|
7
|
+
from ...fable_library.reflection import (TypeInfo, class_type)
|
|
8
|
+
from ...fable_library.seq import (initialize, delay, collect, singleton, reduce, map, iterate_indexed, iterate, length, max, find, try_find, try_pick, choose, to_list, exists)
|
|
9
|
+
from ...fable_library.string_ import replace
|
|
10
|
+
from ...fable_library.util import (equals, IEnumerable_1, int32_to_string, ignore, compare_primitives, get_enumerator)
|
|
11
|
+
from ..Cells.fs_cell import (FsCell, DataType)
|
|
12
|
+
from ..Cells.fs_cells_collection import (FsCellsCollection, Dictionary_tryGet, FsCellsCollection__GetCellsInColumn_Z524259A4, FsCellsCollection__TryGetCell_Z37302880)
|
|
13
|
+
from ..fs_address import (FsAddress__get_RowNumber, FsAddress__ctor_Z37302880, FsAddress__get_ColumnNumber)
|
|
14
|
+
from ..fs_column import FsColumn
|
|
15
|
+
from ..fs_row import FsRow
|
|
16
|
+
from ..Ranges.fs_range import (FsRange__FirstRow, FsRange__ctor_6A2513BC)
|
|
17
|
+
from ..Ranges.fs_range_address import (FsRangeAddress__get_FirstAddress, FsRangeAddress__ctor_7E77A4A0, FsRangeAddress__get_LastAddress, FsRangeAddress__Union_6A2513BC, FsRangeAddress, FsRangeAddress__Copy)
|
|
18
|
+
from ..Ranges.fs_range_base import (FsRangeBase__get_RangeAddress, FsRangeBase__ColumnCount, FsRangeBase__set_RangeAddress_6A2513BC, FsRangeBase, FsRangeBase_reflection)
|
|
19
|
+
from ..Ranges.fs_range_column import (FsRangeColumn__ctor_Z524259A4, FsRangeColumn__ctor_6A2513BC, FsRangeColumn__get_Index, FsRangeColumn)
|
|
20
|
+
from ..Ranges.fs_range_row import FsRangeRow
|
|
21
|
+
from .fs_table_field import (FsTableField, FsTableField__get_Column, FsTableField__ctor_6547009B, FsTableField__get_Name, FsTableField__ctor_726EFFB, FsTableField__get_Index, FsTableField__HeaderCell_10EBE01C, FsTableField__ctor_Z18115A39, FsTableField__set_Index_Z524259A4)
|
|
22
|
+
|
|
23
|
+
def _expr202() -> TypeInfo:
|
|
24
|
+
return class_type("FsSpreadsheet.FsTable", None, FsTable, FsRangeBase_reflection())
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class FsTable(FsRangeBase):
|
|
28
|
+
def __init__(self, name: str, range_address: FsRangeAddress, show_totals_row: bool | None=None, show_header_row: bool | None=None) -> None:
|
|
29
|
+
super().__init__(range_address)
|
|
30
|
+
self._name: str = replace(name.strip(), " ", "_")
|
|
31
|
+
self._lastRangeAddress: FsRangeAddress = range_address
|
|
32
|
+
self._showTotalsRow: bool = default_arg(show_totals_row, False)
|
|
33
|
+
self._showHeaderRow: bool = default_arg(show_header_row, True)
|
|
34
|
+
self._fieldNames: Any = dict([])
|
|
35
|
+
self._uniqueNames: Any = set([])
|
|
36
|
+
|
|
37
|
+
@property
|
|
38
|
+
def Name(self, __unit: None=None) -> str:
|
|
39
|
+
this: FsTable = self
|
|
40
|
+
return this._name
|
|
41
|
+
|
|
42
|
+
def GetFieldNames(self, cells_collection: FsCellsCollection) -> Any:
|
|
43
|
+
this: FsTable = self
|
|
44
|
+
if equals(this._lastRangeAddress, FsRangeBase__get_RangeAddress(this)) if ((not equals(this._lastRangeAddress, None)) if (not equals(this._fieldNames, None)) else False) else False:
|
|
45
|
+
return this._fieldNames
|
|
46
|
+
|
|
47
|
+
else:
|
|
48
|
+
this._lastRangeAddress = FsRangeBase__get_RangeAddress(this)
|
|
49
|
+
return this._fieldNames
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
def GetFields(self, cells_collection: FsCellsCollection) -> IEnumerable_1[FsTableField]:
|
|
53
|
+
this: FsTable = self
|
|
54
|
+
def _arrow194(i: int) -> FsTableField:
|
|
55
|
+
return this.GetFieldAt(i, cells_collection)
|
|
56
|
+
|
|
57
|
+
return initialize(FsRangeBase__ColumnCount(this), _arrow194)
|
|
58
|
+
|
|
59
|
+
@property
|
|
60
|
+
def ShowHeaderRow(self, __unit: None=None) -> bool:
|
|
61
|
+
this: FsTable = self
|
|
62
|
+
return this._showHeaderRow
|
|
63
|
+
|
|
64
|
+
@ShowHeaderRow.setter
|
|
65
|
+
def ShowHeaderRow(self, show_header_row: bool) -> None:
|
|
66
|
+
this: FsTable = self
|
|
67
|
+
this._showHeaderRow = show_header_row
|
|
68
|
+
|
|
69
|
+
def HeadersRow(self, __unit: None=None) -> FsRangeRow:
|
|
70
|
+
this: FsTable = self
|
|
71
|
+
return None if (not this.ShowHeaderRow) else FsRange__FirstRow(FsRange__ctor_6A2513BC(FsRangeBase__get_RangeAddress(this)))
|
|
72
|
+
|
|
73
|
+
def TryGetHeaderRow(self, cells_collection: FsCellsCollection) -> FsRow | None:
|
|
74
|
+
this: FsTable = self
|
|
75
|
+
match_value: bool = this.ShowHeaderRow
|
|
76
|
+
if match_value:
|
|
77
|
+
row_index: int = FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))) or 0
|
|
78
|
+
return FsRow(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(row_index, FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)))), FsAddress__ctor_Z37302880(row_index, FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this))))), cells_collection)
|
|
79
|
+
|
|
80
|
+
else:
|
|
81
|
+
return None
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
def GetHeaderRow(self, cells_collection: FsCellsCollection) -> FsRow:
|
|
85
|
+
this: FsTable = self
|
|
86
|
+
match_value: FsRow | None = this.TryGetHeaderRow(cells_collection)
|
|
87
|
+
if match_value is None:
|
|
88
|
+
raise Exception(("Error. Unable to get header row for table \"" + this.Name) + "\" as `ShowHeaderRow` is set to `false`.")
|
|
89
|
+
|
|
90
|
+
else:
|
|
91
|
+
return match_value
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
def GetColumns(self, cells_collection: FsCellsCollection) -> IEnumerable_1[FsColumn]:
|
|
95
|
+
this: FsTable = self
|
|
96
|
+
def _arrow196(__unit: None=None) -> IEnumerable_1[FsColumn]:
|
|
97
|
+
def _arrow195(i: int) -> IEnumerable_1[FsColumn]:
|
|
98
|
+
return singleton(FsColumn(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))), i), FsAddress__ctor_Z37302880(FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this))), i)), cells_collection))
|
|
99
|
+
|
|
100
|
+
return collect(_arrow195, range_big_int(FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))), 1, FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this)))))
|
|
101
|
+
|
|
102
|
+
return delay(_arrow196)
|
|
103
|
+
|
|
104
|
+
def GetRows(self, cells_collection: FsCellsCollection) -> IEnumerable_1[FsRow]:
|
|
105
|
+
this: FsTable = self
|
|
106
|
+
def _arrow198(__unit: None=None) -> IEnumerable_1[FsRow]:
|
|
107
|
+
def _arrow197(i: int) -> IEnumerable_1[FsRow]:
|
|
108
|
+
return singleton(FsRow(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(i, FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)))), FsAddress__ctor_Z37302880(i, FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this))))), cells_collection))
|
|
109
|
+
|
|
110
|
+
return collect(_arrow197, range_big_int(FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))), 1, FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this)))))
|
|
111
|
+
|
|
112
|
+
return delay(_arrow198)
|
|
113
|
+
|
|
114
|
+
def RescanRange(self, __unit: None=None) -> None:
|
|
115
|
+
this: FsTable = self
|
|
116
|
+
def mapping(v: FsTableField) -> FsRangeAddress:
|
|
117
|
+
return FsRangeBase__get_RangeAddress(FsTableField__get_Column(v))
|
|
118
|
+
|
|
119
|
+
FsRangeBase__set_RangeAddress_6A2513BC(this, reduce(FsRangeAddress__Union_6A2513BC, map(mapping, this._fieldNames.values())))
|
|
120
|
+
|
|
121
|
+
@staticmethod
|
|
122
|
+
def rescan_range(table: FsTable) -> FsTable:
|
|
123
|
+
table.RescanRange()
|
|
124
|
+
return table
|
|
125
|
+
|
|
126
|
+
def GetUniqueName(self, original_name: str, initial_offset: int, enforce_offset: bool) -> str:
|
|
127
|
+
this: FsTable = self
|
|
128
|
+
name: str = original_name + (int32_to_string(initial_offset) if enforce_offset else "")
|
|
129
|
+
if name in this._uniqueNames:
|
|
130
|
+
i: int = initial_offset or 0
|
|
131
|
+
name = original_name + int32_to_string(i)
|
|
132
|
+
while name in this._uniqueNames:
|
|
133
|
+
i = (i + 1) or 0
|
|
134
|
+
name = original_name + int32_to_string(i)
|
|
135
|
+
|
|
136
|
+
ignore(add_to_set(name, this._uniqueNames))
|
|
137
|
+
return name
|
|
138
|
+
|
|
139
|
+
@staticmethod
|
|
140
|
+
def get_unique_names(original_name: str, initial_offset: int, enforce_offset: bool, table: FsTable) -> str:
|
|
141
|
+
return table.GetUniqueName(original_name, initial_offset, enforce_offset)
|
|
142
|
+
|
|
143
|
+
def InitFields(self, field_names: IEnumerable_1[str]) -> None:
|
|
144
|
+
this: FsTable = self
|
|
145
|
+
def action(i: int, fn: str) -> None:
|
|
146
|
+
table_field: FsTableField = FsTableField__ctor_6547009B(fn, i, FsRangeColumn__ctor_Z524259A4(i))
|
|
147
|
+
add_to_dict(this._fieldNames, fn, table_field)
|
|
148
|
+
|
|
149
|
+
iterate_indexed(action, field_names)
|
|
150
|
+
|
|
151
|
+
@staticmethod
|
|
152
|
+
def init_fields(field_names: IEnumerable_1[str], table: FsTable) -> FsTable:
|
|
153
|
+
table.InitFields(field_names)
|
|
154
|
+
return table
|
|
155
|
+
|
|
156
|
+
def AddFields(self, table_fields: IEnumerable_1[FsTableField]) -> None:
|
|
157
|
+
this: FsTable = self
|
|
158
|
+
def action(tf: FsTableField) -> None:
|
|
159
|
+
add_to_dict(this._fieldNames, FsTableField__get_Name(tf), tf)
|
|
160
|
+
|
|
161
|
+
iterate(action, table_fields)
|
|
162
|
+
|
|
163
|
+
@staticmethod
|
|
164
|
+
def add_fields(table_fields: IEnumerable_1[FsTableField], table: FsTable) -> FsTable:
|
|
165
|
+
table.AddFields(table_fields)
|
|
166
|
+
return table
|
|
167
|
+
|
|
168
|
+
def Field(self, name: str, cells_collection: FsCellsCollection) -> FsTableField:
|
|
169
|
+
this: FsTable = self
|
|
170
|
+
match_value: FsTableField | None = Dictionary_tryGet(name, this._fieldNames)
|
|
171
|
+
if match_value is None:
|
|
172
|
+
def _arrow200(__unit: None=None) -> int:
|
|
173
|
+
s: IEnumerable_1[int] = map(FsTableField__get_Index, this._fieldNames.values())
|
|
174
|
+
class ObjectExpr199:
|
|
175
|
+
@property
|
|
176
|
+
def Compare(self) -> Callable[[int, int], int]:
|
|
177
|
+
return compare_primitives
|
|
178
|
+
|
|
179
|
+
return 0 if (length(s) == 0) else max(s, ObjectExpr199())
|
|
180
|
+
|
|
181
|
+
def _arrow201(__unit: None=None) -> FsRangeAddress:
|
|
182
|
+
offset: int = len(this._fieldNames) or 0
|
|
183
|
+
return FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))), FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))) + offset), FsAddress__ctor_Z37302880(FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this))), FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))) + offset))
|
|
184
|
+
|
|
185
|
+
new_field: FsTableField = FsTableField__ctor_726EFFB(name, _arrow200() + 1, FsRangeColumn__ctor_6A2513BC(_arrow201()), None, None)
|
|
186
|
+
if this.ShowHeaderRow:
|
|
187
|
+
value: None = FsTableField__HeaderCell_10EBE01C(new_field, cells_collection, True).SetValueAs(name)
|
|
188
|
+
ignore(None)
|
|
189
|
+
|
|
190
|
+
add_to_dict(this._fieldNames, name, new_field)
|
|
191
|
+
this.RescanRange()
|
|
192
|
+
return new_field
|
|
193
|
+
|
|
194
|
+
else:
|
|
195
|
+
return match_value
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
def GetField(self, name: str, cells_collection: FsCellsCollection) -> FsTableField:
|
|
199
|
+
this: FsTable = self
|
|
200
|
+
name_1: str = replace(name, "\r\n", "\n")
|
|
201
|
+
try:
|
|
202
|
+
return get_item_from_dict(this.GetFieldNames(cells_collection), name_1)
|
|
203
|
+
|
|
204
|
+
except Exception as match_value:
|
|
205
|
+
raise Exception(("The header row doesn\'t contain field name \'" + name_1) + "\'.")
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
@staticmethod
|
|
209
|
+
def get_field(name: str, cells_collection: FsCellsCollection, table: FsTable) -> FsTableField:
|
|
210
|
+
return table.GetField(name, cells_collection)
|
|
211
|
+
|
|
212
|
+
def GetFieldAt(self, index: int, cells_collection: FsCellsCollection) -> FsTableField:
|
|
213
|
+
this: FsTable = self
|
|
214
|
+
try:
|
|
215
|
+
def predicate(ftf: FsTableField) -> bool:
|
|
216
|
+
return FsTableField__get_Index(ftf) == index
|
|
217
|
+
|
|
218
|
+
return find(predicate, this.GetFieldNames(cells_collection).values())
|
|
219
|
+
|
|
220
|
+
except Exception as match_value:
|
|
221
|
+
raise Exception(("FsTableField with index " + str(index)) + " does not exist in the FsTable.")
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
def GetFieldIndex(self, name: str, cells_collection: FsCellsCollection) -> int:
|
|
225
|
+
this: FsTable = self
|
|
226
|
+
return FsTableField__get_Index(this.GetField(name, cells_collection))
|
|
227
|
+
|
|
228
|
+
def RenameField(self, old_name: str, new_name: str) -> None:
|
|
229
|
+
this: FsTable = self
|
|
230
|
+
match_value: FsTableField | None = Dictionary_tryGet(old_name, this._fieldNames)
|
|
231
|
+
if match_value is None:
|
|
232
|
+
raise Exception("The FsTabelField does not exist in this FsTable", "oldName")
|
|
233
|
+
|
|
234
|
+
else:
|
|
235
|
+
field: FsTableField = match_value
|
|
236
|
+
ignore(remove_from_dict(this._fieldNames, old_name))
|
|
237
|
+
add_to_dict(this._fieldNames, new_name, field)
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
@staticmethod
|
|
241
|
+
def rename_field(old_name: str, new_name: str, table: FsTable) -> FsTable:
|
|
242
|
+
table.RenameField(old_name, new_name)
|
|
243
|
+
return table
|
|
244
|
+
|
|
245
|
+
def TryGetHeaderCellOfColumnAt(self, cells_collection: FsCellsCollection, col_index: int) -> FsCell | None:
|
|
246
|
+
this: FsTable = self
|
|
247
|
+
fst_row_index: int = FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))) or 0
|
|
248
|
+
def predicate(c: FsCell) -> bool:
|
|
249
|
+
return c.RowNumber == fst_row_index
|
|
250
|
+
|
|
251
|
+
return try_find(predicate, FsCellsCollection__GetCellsInColumn_Z524259A4(cells_collection, col_index))
|
|
252
|
+
|
|
253
|
+
@staticmethod
|
|
254
|
+
def try_get_header_cell_of_column_index_at(cells_collection: FsCellsCollection, col_index: int, table: FsTable) -> FsCell | None:
|
|
255
|
+
return table.TryGetHeaderCellOfColumnAt(cells_collection, col_index)
|
|
256
|
+
|
|
257
|
+
def TryGetHeaderCellOfColumn(self, cells_collection: FsCellsCollection, column: FsRangeColumn) -> FsCell | None:
|
|
258
|
+
this: FsTable = self
|
|
259
|
+
return this.TryGetHeaderCellOfColumnAt(cells_collection, FsRangeColumn__get_Index(column))
|
|
260
|
+
|
|
261
|
+
@staticmethod
|
|
262
|
+
def try_get_header_cell_of_column(cells_collection: FsCellsCollection, column: FsRangeColumn, table: FsTable) -> FsCell | None:
|
|
263
|
+
return table.TryGetHeaderCellOfColumn(cells_collection, column)
|
|
264
|
+
|
|
265
|
+
def GetHeaderCellOfColumnAt(self, cells_collection: FsCellsCollection, col_index: int) -> FsCell:
|
|
266
|
+
this: FsTable = self
|
|
267
|
+
return value_2(this.TryGetHeaderCellOfColumnAt(cells_collection, col_index))
|
|
268
|
+
|
|
269
|
+
@staticmethod
|
|
270
|
+
def get_header_cell_of_column_index_at(cells_collection: FsCellsCollection, col_index: int, table: FsTable) -> FsCell:
|
|
271
|
+
return table.GetHeaderCellOfColumnAt(cells_collection, col_index)
|
|
272
|
+
|
|
273
|
+
def GetHeaderCellOfColumn(self, cells_collection: FsCellsCollection, column: FsRangeColumn) -> FsCell:
|
|
274
|
+
this: FsTable = self
|
|
275
|
+
return value_2(this.TryGetHeaderCellOfColumn(cells_collection, column))
|
|
276
|
+
|
|
277
|
+
@staticmethod
|
|
278
|
+
def get_header_cell_of_column(cells_collection: FsCellsCollection, column: FsRangeColumn, table: FsTable) -> FsCell:
|
|
279
|
+
return table.GetHeaderCellOfColumn(cells_collection, column)
|
|
280
|
+
|
|
281
|
+
def GetHeaderCellOfTableField(self, cells_collection: FsCellsCollection, table_field: FsTableField) -> FsCell:
|
|
282
|
+
this: FsTable = self
|
|
283
|
+
return FsTableField__HeaderCell_10EBE01C(table_field, cells_collection, this.ShowHeaderRow)
|
|
284
|
+
|
|
285
|
+
@staticmethod
|
|
286
|
+
def get_header_cell_of_table_field(cells_collection: FsCellsCollection, table_field: FsTableField, table: FsTable) -> FsCell:
|
|
287
|
+
return table.GetHeaderCellOfTableField(cells_collection, table_field)
|
|
288
|
+
|
|
289
|
+
def TryGetHeaderCellOfTableFieldAt(self, cells_collection: FsCellsCollection, table_field_index: int) -> FsCell | None:
|
|
290
|
+
this: FsTable = self
|
|
291
|
+
def chooser(tf: FsTableField) -> FsCell | None:
|
|
292
|
+
if FsTableField__get_Index(tf) == table_field_index:
|
|
293
|
+
return FsTableField__HeaderCell_10EBE01C(tf, cells_collection, this.ShowHeaderRow)
|
|
294
|
+
|
|
295
|
+
else:
|
|
296
|
+
return None
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
return try_pick(chooser, this._fieldNames.values())
|
|
300
|
+
|
|
301
|
+
@staticmethod
|
|
302
|
+
def try_get_header_cell_of_table_field_index_at(cells_collection: FsCellsCollection, table_field_index: int, table: FsTable) -> FsCell | None:
|
|
303
|
+
return table.TryGetHeaderCellOfTableFieldAt(cells_collection, table_field_index)
|
|
304
|
+
|
|
305
|
+
def GetHeaderCellOfTableFieldAt(self, cells_collection: FsCellsCollection, table_field_index: int) -> FsCell:
|
|
306
|
+
this: FsTable = self
|
|
307
|
+
return value_2(this.TryGetHeaderCellOfTableFieldAt(cells_collection, table_field_index))
|
|
308
|
+
|
|
309
|
+
@staticmethod
|
|
310
|
+
def get_header_cell_of_table_field_index_at(cells_collection: FsCellsCollection, table_field_index: int, table: FsTable) -> FsCell:
|
|
311
|
+
return table.GetHeaderCellOfTableFieldAt(cells_collection, table_field_index)
|
|
312
|
+
|
|
313
|
+
def TryGetHeaderCellByFieldName(self, cells_collection: FsCellsCollection, field_name: str) -> FsCell | None:
|
|
314
|
+
this: FsTable = self
|
|
315
|
+
match_value: FsTableField | None = Dictionary_tryGet(field_name, this._fieldNames)
|
|
316
|
+
return None if (match_value is None) else FsTableField__HeaderCell_10EBE01C(match_value, cells_collection, this.ShowHeaderRow)
|
|
317
|
+
|
|
318
|
+
@staticmethod
|
|
319
|
+
def try_get_header_cell_by_field_name(cells_collection: FsCellsCollection, field_name: str, table: FsTable) -> FsCell | None:
|
|
320
|
+
return table.TryGetHeaderCellByFieldName(cells_collection, field_name)
|
|
321
|
+
|
|
322
|
+
def GetDataCellsOfColumnAt(self, cells_collection: FsCellsCollection, col_index: int) -> IEnumerable_1[FsCell]:
|
|
323
|
+
this: FsTable = self
|
|
324
|
+
def chooser(ri: int) -> FsCell | None:
|
|
325
|
+
return FsCellsCollection__TryGetCell_Z37302880(cells_collection, ri, col_index)
|
|
326
|
+
|
|
327
|
+
return choose(chooser, to_list(range_big_int(FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this))) + 1, 1, FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this))))))
|
|
328
|
+
|
|
329
|
+
@staticmethod
|
|
330
|
+
def get_data_cells_of_column_index_at(cells_collection: FsCellsCollection, col_index: int, table: FsTable) -> IEnumerable_1[FsCell]:
|
|
331
|
+
return table.GetDataCellsOfColumnAt(cells_collection, col_index)
|
|
332
|
+
|
|
333
|
+
def Copy(self, __unit: None=None) -> FsTable:
|
|
334
|
+
this: FsTable = self
|
|
335
|
+
ra: FsRangeAddress = FsRangeAddress__Copy(FsRangeBase__get_RangeAddress(this))
|
|
336
|
+
return FsTable(this.Name, ra, False, this.ShowHeaderRow)
|
|
337
|
+
|
|
338
|
+
@staticmethod
|
|
339
|
+
def copy(table: FsTable) -> FsTable:
|
|
340
|
+
return table.Copy()
|
|
341
|
+
|
|
342
|
+
def RescanFieldNames(self, cells_collection: FsCellsCollection) -> None:
|
|
343
|
+
this: FsTable = self
|
|
344
|
+
if this.ShowHeaderRow:
|
|
345
|
+
old_field_names: Any = this._fieldNames
|
|
346
|
+
this._fieldNames = dict([])
|
|
347
|
+
cell_pos: int = 0
|
|
348
|
+
with get_enumerator(this.GetHeaderRow(cells_collection)) as enumerator:
|
|
349
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
350
|
+
cell: FsCell = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
351
|
+
name: str = cell.ValueAsString()
|
|
352
|
+
match_value: FsTableField | None = Dictionary_tryGet(name, old_field_names)
|
|
353
|
+
if match_value is None:
|
|
354
|
+
if (name is None) != (name == ""):
|
|
355
|
+
name = this.GetUniqueName("Column", cell_pos + 1, True)
|
|
356
|
+
value: None = cell.SetValueAs(name)
|
|
357
|
+
ignore(None)
|
|
358
|
+
cell.DataType = DataType(0)
|
|
359
|
+
|
|
360
|
+
if name in this._fieldNames:
|
|
361
|
+
raise Exception(("The header row contains more than one field name \'" + name) + "\'.")
|
|
362
|
+
|
|
363
|
+
add_to_dict(this._fieldNames, name, FsTableField__ctor_Z18115A39(name, cell_pos))
|
|
364
|
+
cell_pos = (cell_pos + 1) or 0
|
|
365
|
+
|
|
366
|
+
else:
|
|
367
|
+
table_field: FsTableField = match_value
|
|
368
|
+
FsTableField__set_Index_Z524259A4(table_field, cell_pos)
|
|
369
|
+
add_to_dict(this._fieldNames, name, table_field)
|
|
370
|
+
cell_pos = (cell_pos + 1) or 0
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
else:
|
|
374
|
+
col_count: int = FsRangeBase__ColumnCount(this) or 0
|
|
375
|
+
for i in range(1, col_count + 1, 1):
|
|
376
|
+
def predicate(v: FsTableField) -> bool:
|
|
377
|
+
return FsTableField__get_Index(v) == (i - 1)
|
|
378
|
+
|
|
379
|
+
if not exists(predicate, this._fieldNames.values()):
|
|
380
|
+
name_1: str = "Column" + int32_to_string(i)
|
|
381
|
+
add_to_dict(this._fieldNames, name_1, FsTableField__ctor_Z18115A39(name_1, i - 1))
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
FsTable_reflection = _expr202
|
|
387
|
+
|
|
388
|
+
def FsTable__ctor_30096B47(name: str, range_address: FsRangeAddress, show_totals_row: bool | None=None, show_header_row: bool | None=None) -> FsTable:
|
|
389
|
+
return FsTable(name, range_address, show_totals_row, show_header_row)
|
|
390
|
+
|
|
391
|
+
|
|
392
|
+
__all__ = ["FsTable_reflection"]
|
|
393
|
+
|