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.
Files changed (456) hide show
  1. arctrl/__init__.py +18 -0
  2. arctrl/py/CWL/__init__.py +0 -0
  3. arctrl/py/CWL/cwltypes.py +150 -0
  4. arctrl/py/CWL/decode.py +973 -0
  5. arctrl/py/CWL/encode.py +1 -0
  6. arctrl/py/CWL/inputs.py +88 -0
  7. arctrl/py/CWL/outputs.py +85 -0
  8. arctrl/py/CWL/requirements.py +77 -0
  9. arctrl/py/CWL/tool_description.py +103 -0
  10. arctrl/py/CWL/workflow_description.py +104 -0
  11. arctrl/py/CWL/workflow_steps.py +113 -0
  12. arctrl/py/Contract/__init__.py +0 -0
  13. arctrl/py/Contract/arc.py +60 -0
  14. arctrl/py/Contract/arc_assay.py +125 -0
  15. arctrl/py/Contract/arc_investigation.py +88 -0
  16. arctrl/py/Contract/arc_run.py +125 -0
  17. arctrl/py/Contract/arc_study.py +126 -0
  18. arctrl/py/Contract/arc_workflow.py +125 -0
  19. arctrl/py/Contract/contract.py +153 -0
  20. arctrl/py/Contract/datamap.py +372 -0
  21. arctrl/py/Contract/git.py +118 -0
  22. arctrl/py/Contract/validation_packages_config.py +107 -0
  23. arctrl/py/ContractIO/__init__.py +0 -0
  24. arctrl/py/ContractIO/contract_io.py +344 -0
  25. arctrl/py/ContractIO/file_system_helper.py +264 -0
  26. arctrl/py/Core/Helper/__init__.py +0 -0
  27. arctrl/py/Core/Helper/collections_.py +438 -0
  28. arctrl/py/Core/Helper/date_time.py +26 -0
  29. arctrl/py/Core/Helper/hash_codes.py +60 -0
  30. arctrl/py/Core/Helper/identifier.py +248 -0
  31. arctrl/py/Core/Helper/orcid.py +42 -0
  32. arctrl/py/Core/Helper/printer.py +13 -0
  33. arctrl/py/Core/Helper/regex.py +554 -0
  34. arctrl/py/Core/Helper/sem_ver.py +71 -0
  35. arctrl/py/Core/Helper/url.py +148 -0
  36. arctrl/py/Core/Process/__init__.py +0 -0
  37. arctrl/py/Core/Process/column_index.py +280 -0
  38. arctrl/py/Core/Process/component.py +200 -0
  39. arctrl/py/Core/Process/factor.py +151 -0
  40. arctrl/py/Core/Process/factor_value.py +182 -0
  41. arctrl/py/Core/Process/material.py +74 -0
  42. arctrl/py/Core/Process/material_attribute.py +95 -0
  43. arctrl/py/Core/Process/material_attribute_value.py +184 -0
  44. arctrl/py/Core/Process/material_type.py +45 -0
  45. arctrl/py/Core/Process/process.py +477 -0
  46. arctrl/py/Core/Process/process_input.py +265 -0
  47. arctrl/py/Core/Process/process_output.py +235 -0
  48. arctrl/py/Core/Process/process_parameter_value.py +200 -0
  49. arctrl/py/Core/Process/process_sequence.py +435 -0
  50. arctrl/py/Core/Process/protocol.py +175 -0
  51. arctrl/py/Core/Process/protocol_parameter.py +98 -0
  52. arctrl/py/Core/Process/sample.py +82 -0
  53. arctrl/py/Core/Process/source.py +62 -0
  54. arctrl/py/Core/Table/__init__.py +0 -0
  55. arctrl/py/Core/Table/arc_table.py +1264 -0
  56. arctrl/py/Core/Table/arc_table_aux.py +575 -0
  57. arctrl/py/Core/Table/arc_tables.py +591 -0
  58. arctrl/py/Core/Table/composite_cell.py +319 -0
  59. arctrl/py/Core/Table/composite_column.py +73 -0
  60. arctrl/py/Core/Table/composite_header.py +739 -0
  61. arctrl/py/Core/__init__.py +0 -0
  62. arctrl/py/Core/arc_types.py +5064 -0
  63. arctrl/py/Core/comment.py +128 -0
  64. arctrl/py/Core/comment_list.py +127 -0
  65. arctrl/py/Core/conversion.py +1313 -0
  66. arctrl/py/Core/data.py +245 -0
  67. arctrl/py/Core/data_context.py +157 -0
  68. arctrl/py/Core/data_file.py +112 -0
  69. arctrl/py/Core/data_map.py +225 -0
  70. arctrl/py/Core/identifier_setters.py +31 -0
  71. arctrl/py/Core/iproperty_value.py +36 -0
  72. arctrl/py/Core/ontology_annotation.py +299 -0
  73. arctrl/py/Core/ontology_source_reference.py +114 -0
  74. arctrl/py/Core/person.py +259 -0
  75. arctrl/py/Core/publication.py +161 -0
  76. arctrl/py/Core/template.py +231 -0
  77. arctrl/py/Core/templates.py +148 -0
  78. arctrl/py/Core/uri.py +11 -0
  79. arctrl/py/Core/value.py +188 -0
  80. arctrl/py/FileSystem/__init__.py +0 -0
  81. arctrl/py/FileSystem/commit.py +21 -0
  82. arctrl/py/FileSystem/default_gitattributes.py +5 -0
  83. arctrl/py/FileSystem/default_gitignore.py +5 -0
  84. arctrl/py/FileSystem/file_system.py +58 -0
  85. arctrl/py/FileSystem/file_system_tree.py +426 -0
  86. arctrl/py/FileSystem/path.py +64 -0
  87. arctrl/py/Json/DataMap/__init__.py +0 -0
  88. arctrl/py/Json/DataMap/data_context.py +101 -0
  89. arctrl/py/Json/DataMap/data_map.py +53 -0
  90. arctrl/py/Json/Process/__init__.py +0 -0
  91. arctrl/py/Json/Process/assay_materials.py +46 -0
  92. arctrl/py/Json/Process/component.py +79 -0
  93. arctrl/py/Json/Process/factor.py +107 -0
  94. arctrl/py/Json/Process/factor_value.py +101 -0
  95. arctrl/py/Json/Process/material.py +226 -0
  96. arctrl/py/Json/Process/material_attribute.py +79 -0
  97. arctrl/py/Json/Process/material_attribute_value.py +101 -0
  98. arctrl/py/Json/Process/material_type.py +53 -0
  99. arctrl/py/Json/Process/process.py +296 -0
  100. arctrl/py/Json/Process/process_input.py +83 -0
  101. arctrl/py/Json/Process/process_output.py +67 -0
  102. arctrl/py/Json/Process/process_parameter_value.py +81 -0
  103. arctrl/py/Json/Process/protocol.py +354 -0
  104. arctrl/py/Json/Process/protocol_parameter.py +79 -0
  105. arctrl/py/Json/Process/sample.py +277 -0
  106. arctrl/py/Json/Process/source.py +214 -0
  107. arctrl/py/Json/Process/study_materials.py +52 -0
  108. arctrl/py/Json/Process/value.py +56 -0
  109. arctrl/py/Json/ROCrate/__init__.py +0 -0
  110. arctrl/py/Json/ROCrate/ldcontext.py +133 -0
  111. arctrl/py/Json/ROCrate/ldgraph.py +111 -0
  112. arctrl/py/Json/ROCrate/ldnode.py +290 -0
  113. arctrl/py/Json/ROCrate/ldref.py +44 -0
  114. arctrl/py/Json/ROCrate/ldvalue.py +102 -0
  115. arctrl/py/Json/Table/__init__.py +0 -0
  116. arctrl/py/Json/Table/arc_table.py +393 -0
  117. arctrl/py/Json/Table/cell_table.py +83 -0
  118. arctrl/py/Json/Table/composite_cell.py +136 -0
  119. arctrl/py/Json/Table/composite_header.py +67 -0
  120. arctrl/py/Json/Table/iotype.py +24 -0
  121. arctrl/py/Json/Table/oatable.py +82 -0
  122. arctrl/py/Json/Table/templates.py +281 -0
  123. arctrl/py/Json/__init__.py +0 -0
  124. arctrl/py/Json/assay.py +600 -0
  125. arctrl/py/Json/comment.py +206 -0
  126. arctrl/py/Json/context/rocrate/__init__.py +0 -0
  127. arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
  128. arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
  129. arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
  130. arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
  131. arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
  132. arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
  133. arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
  134. arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
  135. arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
  136. arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
  137. arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
  138. arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
  139. arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
  140. arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
  141. arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
  142. arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
  143. arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
  144. arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
  145. arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
  146. arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
  147. arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
  148. arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
  149. arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
  150. arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
  151. arctrl/py/Json/converter_options.py +23 -0
  152. arctrl/py/Json/data.py +356 -0
  153. arctrl/py/Json/data_file.py +63 -0
  154. arctrl/py/Json/decode.py +155 -0
  155. arctrl/py/Json/encode.py +92 -0
  156. arctrl/py/Json/idtable.py +44 -0
  157. arctrl/py/Json/investigation.py +695 -0
  158. arctrl/py/Json/ontology_annotation.py +404 -0
  159. arctrl/py/Json/ontology_source_reference.py +255 -0
  160. arctrl/py/Json/person.py +658 -0
  161. arctrl/py/Json/property_value.py +359 -0
  162. arctrl/py/Json/publication.py +279 -0
  163. arctrl/py/Json/string_table.py +76 -0
  164. arctrl/py/Json/study.py +793 -0
  165. arctrl/py/JsonIO/DataMap/__init__.py +0 -0
  166. arctrl/py/JsonIO/DataMap/data_map.py +53 -0
  167. arctrl/py/JsonIO/Process/__init__.py +0 -0
  168. arctrl/py/JsonIO/Process/component.py +60 -0
  169. arctrl/py/JsonIO/Process/factor.py +36 -0
  170. arctrl/py/JsonIO/Process/factor_value.py +38 -0
  171. arctrl/py/JsonIO/Process/material.py +60 -0
  172. arctrl/py/JsonIO/Process/material_attribute.py +38 -0
  173. arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
  174. arctrl/py/JsonIO/Process/material_type.py +36 -0
  175. arctrl/py/JsonIO/Process/process.py +60 -0
  176. arctrl/py/JsonIO/Process/process_input.py +38 -0
  177. arctrl/py/JsonIO/Process/process_output.py +60 -0
  178. arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
  179. arctrl/py/JsonIO/Process/process_sequence.py +71 -0
  180. arctrl/py/JsonIO/Process/protocol.py +60 -0
  181. arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
  182. arctrl/py/JsonIO/Process/sample.py +60 -0
  183. arctrl/py/JsonIO/Process/source.py +60 -0
  184. arctrl/py/JsonIO/Process/study_materials.py +52 -0
  185. arctrl/py/JsonIO/Process/value.py +32 -0
  186. arctrl/py/JsonIO/Table/__init__.py +0 -0
  187. arctrl/py/JsonIO/Table/arc_table.py +121 -0
  188. arctrl/py/JsonIO/Table/composite_cell.py +36 -0
  189. arctrl/py/JsonIO/Table/composite_header.py +36 -0
  190. arctrl/py/JsonIO/Table/compression.py +85 -0
  191. arctrl/py/JsonIO/Table/iotype.py +36 -0
  192. arctrl/py/JsonIO/Table/templates.py +113 -0
  193. arctrl/py/JsonIO/__init__.py +0 -0
  194. arctrl/py/JsonIO/assay.py +113 -0
  195. arctrl/py/JsonIO/comment.py +80 -0
  196. arctrl/py/JsonIO/data.py +60 -0
  197. arctrl/py/JsonIO/data_file.py +58 -0
  198. arctrl/py/JsonIO/decode.py +9 -0
  199. arctrl/py/JsonIO/encode.py +1 -0
  200. arctrl/py/JsonIO/investigation.py +113 -0
  201. arctrl/py/JsonIO/ldobject.py +106 -0
  202. arctrl/py/JsonIO/ontology_annotation.py +80 -0
  203. arctrl/py/JsonIO/ontology_source_reference.py +80 -0
  204. arctrl/py/JsonIO/person.py +82 -0
  205. arctrl/py/JsonIO/publication.py +82 -0
  206. arctrl/py/JsonIO/study.py +114 -0
  207. arctrl/py/ROCrate/Generic/__init__.py +0 -0
  208. arctrl/py/ROCrate/Generic/comment.py +131 -0
  209. arctrl/py/ROCrate/Generic/dataset.py +817 -0
  210. arctrl/py/ROCrate/Generic/defined_term.py +131 -0
  211. arctrl/py/ROCrate/Generic/file.py +237 -0
  212. arctrl/py/ROCrate/Generic/lab_process.py +324 -0
  213. arctrl/py/ROCrate/Generic/lab_protocol.py +338 -0
  214. arctrl/py/ROCrate/Generic/organization.py +83 -0
  215. arctrl/py/ROCrate/Generic/person.py +484 -0
  216. arctrl/py/ROCrate/Generic/postal_address.py +195 -0
  217. arctrl/py/ROCrate/Generic/property_value.py +696 -0
  218. arctrl/py/ROCrate/Generic/sample.py +202 -0
  219. arctrl/py/ROCrate/Generic/scholarly_article.py +229 -0
  220. arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
  221. arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
  222. arctrl/py/ROCrate/ISAProfile/data.py +65 -0
  223. arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
  224. arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
  225. arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
  226. arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
  227. arctrl/py/ROCrate/ISAProfile/person.py +72 -0
  228. arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
  229. arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
  230. arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
  231. arctrl/py/ROCrate/ISAProfile/study.py +74 -0
  232. arctrl/py/ROCrate/__init__.py +0 -0
  233. arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
  234. arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
  235. arctrl/py/ROCrate/helper.py +8 -0
  236. arctrl/py/ROCrate/ldcontext.py +362 -0
  237. arctrl/py/ROCrate/ldobject.py +1247 -0
  238. arctrl/py/ROCrate/rocrate_context.py +51 -0
  239. arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
  240. arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +193 -0
  241. arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
  242. arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +210 -0
  243. arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
  244. arctrl/py/Spreadsheet/DataMapTable/__init__.py +0 -0
  245. arctrl/py/Spreadsheet/DataMapTable/data_map_column.py +114 -0
  246. arctrl/py/Spreadsheet/DataMapTable/data_map_header.py +618 -0
  247. arctrl/py/Spreadsheet/DataMapTable/data_map_table.py +119 -0
  248. arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
  249. arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
  250. arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
  251. arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
  252. arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
  253. arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
  254. arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
  255. arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
  256. arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
  257. arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
  258. arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
  259. arctrl/py/Spreadsheet/Metadata/run.py +122 -0
  260. arctrl/py/Spreadsheet/Metadata/sparse_table.py +508 -0
  261. arctrl/py/Spreadsheet/Metadata/study.py +312 -0
  262. arctrl/py/Spreadsheet/Metadata/workflow.py +151 -0
  263. arctrl/py/Spreadsheet/__init__.py +0 -0
  264. arctrl/py/Spreadsheet/arc_assay.py +233 -0
  265. arctrl/py/Spreadsheet/arc_investigation.py +418 -0
  266. arctrl/py/Spreadsheet/arc_run.py +190 -0
  267. arctrl/py/Spreadsheet/arc_study.py +144 -0
  268. arctrl/py/Spreadsheet/arc_workflow.py +176 -0
  269. arctrl/py/Spreadsheet/assembly_info.py +1 -0
  270. arctrl/py/Spreadsheet/collection_aux.py +167 -0
  271. arctrl/py/Spreadsheet/data_map.py +44 -0
  272. arctrl/py/Spreadsheet/template.py +460 -0
  273. arctrl/py/ValidationPackages/__init__.py +0 -0
  274. arctrl/py/ValidationPackages/validation_package.py +82 -0
  275. arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
  276. arctrl/py/WebRequest/__init__.py +0 -0
  277. arctrl/py/WebRequest/web_request.py +9 -0
  278. arctrl/py/WebRequest/web_request_py.py +135 -0
  279. arctrl/py/Yaml/__init__.py +0 -0
  280. arctrl/py/Yaml/decode.py +1 -0
  281. arctrl/py/Yaml/encode.py +10 -0
  282. arctrl/py/Yaml/validation_package.py +77 -0
  283. arctrl/py/Yaml/validation_packages_config.py +86 -0
  284. arctrl/py/__init__.py +0 -0
  285. arctrl/py/arc.py +1400 -0
  286. arctrl/py/column_index.py +280 -0
  287. arctrl/py/conversion.py +2184 -0
  288. arctrl/py/cross_async.py +76 -0
  289. arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
  290. arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
  291. arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
  292. arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
  293. arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
  294. arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
  295. arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
  296. arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
  297. arctrl/py/fable_modules/fable_library/__init__.py +0 -0
  298. arctrl/py/fable_modules/fable_library/array_.py +1528 -0
  299. arctrl/py/fable_modules/fable_library/async_.py +377 -0
  300. arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
  301. arctrl/py/fable_modules/fable_library/big_int.py +330 -0
  302. arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
  303. arctrl/py/fable_modules/fable_library/boolean.py +26 -0
  304. arctrl/py/fable_modules/fable_library/char.py +237 -0
  305. arctrl/py/fable_modules/fable_library/choice.py +212 -0
  306. arctrl/py/fable_modules/fable_library/date.py +779 -0
  307. arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
  308. arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
  309. arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
  310. arctrl/py/fable_modules/fable_library/double.py +87 -0
  311. arctrl/py/fable_modules/fable_library/encoding.py +41 -0
  312. arctrl/py/fable_modules/fable_library/event.py +206 -0
  313. arctrl/py/fable_modules/fable_library/file.py +107 -0
  314. arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
  315. arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
  316. arctrl/py/fable_modules/fable_library/global_.py +63 -0
  317. arctrl/py/fable_modules/fable_library/guid.py +41 -0
  318. arctrl/py/fable_modules/fable_library/int32.py +73 -0
  319. arctrl/py/fable_modules/fable_library/list.py +1788 -0
  320. arctrl/py/fable_modules/fable_library/long.py +240 -0
  321. arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
  322. arctrl/py/fable_modules/fable_library/map.py +1854 -0
  323. arctrl/py/fable_modules/fable_library/map_util.py +148 -0
  324. arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
  325. arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
  326. arctrl/py/fable_modules/fable_library/native.py +45 -0
  327. arctrl/py/fable_modules/fable_library/numeric.py +46 -0
  328. arctrl/py/fable_modules/fable_library/observable.py +222 -0
  329. arctrl/py/fable_modules/fable_library/option.py +128 -0
  330. arctrl/py/fable_modules/fable_library/path.py +62 -0
  331. arctrl/py/fable_modules/fable_library/range.py +117 -0
  332. arctrl/py/fable_modules/fable_library/reflection.py +463 -0
  333. arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
  334. arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
  335. arctrl/py/fable_modules/fable_library/result.py +212 -0
  336. arctrl/py/fable_modules/fable_library/seq.py +1979 -0
  337. arctrl/py/fable_modules/fable_library/seq2.py +221 -0
  338. arctrl/py/fable_modules/fable_library/set.py +2414 -0
  339. arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
  340. arctrl/py/fable_modules/fable_library/string_.py +573 -0
  341. arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
  342. arctrl/py/fable_modules/fable_library/system_text.py +237 -0
  343. arctrl/py/fable_modules/fable_library/task.py +116 -0
  344. arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
  345. arctrl/py/fable_modules/fable_library/thread.py +5 -0
  346. arctrl/py/fable_modules/fable_library/time_span.py +283 -0
  347. arctrl/py/fable_modules/fable_library/timer.py +24 -0
  348. arctrl/py/fable_modules/fable_library/types.py +401 -0
  349. arctrl/py/fable_modules/fable_library/uri.py +109 -0
  350. arctrl/py/fable_modules/fable_library/util.py +2735 -0
  351. arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
  352. arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
  353. arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
  354. arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
  355. arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
  356. arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
  357. arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
  358. arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
  359. arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
  360. arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
  361. arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
  362. arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
  363. arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
  364. arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
  365. arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
  366. arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
  367. arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
  368. arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
  369. arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
  370. arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
  371. arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
  372. arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
  373. arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
  374. arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
  375. arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
  376. arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
  377. arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
  378. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +338 -0
  379. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +469 -0
  380. arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
  381. arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
  382. arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
  383. arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
  384. arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
  385. arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
  386. arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
  387. arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
  388. arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
  389. arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +464 -0
  390. arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
  391. arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
  392. arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
  393. arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
  394. arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
  395. arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
  396. arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +57 -0
  397. arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
  398. arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
  399. arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +217 -0
  400. arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
  401. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +47 -0
  402. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +186 -0
  403. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +90 -0
  404. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +78 -0
  405. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
  406. arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
  407. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +393 -0
  408. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +127 -0
  409. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
  410. arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
  411. arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +218 -0
  412. arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
  413. arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
  414. arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +180 -0
  415. arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +600 -0
  416. arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +330 -0
  417. arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
  418. arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +63 -0
  419. arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
  420. arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
  421. arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
  422. arctrl/py/fable_modules/fs_spreadsheet_py/table.py +53 -0
  423. arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +40 -0
  424. arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +54 -0
  425. arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
  426. arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
  427. arctrl/py/fable_modules/thoth_json_core/decode.py +1588 -0
  428. arctrl/py/fable_modules/thoth_json_core/encode.py +261 -0
  429. arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
  430. arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
  431. arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
  432. arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
  433. arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
  434. arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
  435. arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
  436. arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
  437. arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
  438. arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
  439. arctrl/py/fable_modules/yamlicious/encode.py +84 -0
  440. arctrl/py/fable_modules/yamlicious/library.py +10 -0
  441. arctrl/py/fable_modules/yamlicious/persil.py +57 -0
  442. arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
  443. arctrl/py/fable_modules/yamlicious/reader.py +665 -0
  444. arctrl/py/fable_modules/yamlicious/regex.py +21 -0
  445. arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +256 -0
  446. arctrl/py/fable_modules/yamlicious/writer.py +175 -0
  447. arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
  448. arctrl/py/json.py +213 -0
  449. arctrl/py/rocrate_io.py +72 -0
  450. arctrl/py/template_web.py +23 -0
  451. arctrl/py/xlsx.py +148 -0
  452. arctrl/rocrate.py +21 -0
  453. arctrl-3.0.0a3.dist-info/LICENSE +21 -0
  454. arctrl-3.0.0a3.dist-info/METADATA +119 -0
  455. arctrl-3.0.0a3.dist-info/RECORD +456 -0
  456. arctrl-3.0.0a3.dist-info/WHEEL +4 -0
@@ -0,0 +1,127 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_library.reflection import (TypeInfo, class_type)
4
+ from ...fable_library.seq import skip
5
+ from ...fable_library.string_ import (to_fail, printf)
6
+ from ...fable_library.util import (equals, IEnumerable_1)
7
+ from ..Cells.fs_cell import FsCell
8
+ from ..Cells.fs_cells_collection import FsCellsCollection
9
+ from ..fs_address import (FsAddress__ctor_Z37302880, FsAddress__get_RowNumber)
10
+ from ..Ranges.fs_range_address import (FsRangeAddress__ctor_7E77A4A0, FsRangeAddress__get_FirstAddress, FsRangeAddress__get_LastAddress)
11
+ from ..Ranges.fs_range_base import FsRangeBase__get_RangeAddress
12
+ from ..Ranges.fs_range_column import (FsRangeColumn, FsRangeColumn__ctor_6A2513BC, FsRangeColumn__FirstCell_Z2740B3CA, FsRangeColumn__Copy, FsRangeColumn__Cells_Z2740B3CA)
13
+
14
+ def _expr193() -> TypeInfo:
15
+ return class_type("FsSpreadsheet.FsTableField", None, FsTableField)
16
+
17
+
18
+ class FsTableField:
19
+ def __init__(self, name: str, index: int, column: FsRangeColumn, totals_row_label: Any=None, totals_row_function: Any=None) -> None:
20
+ self._totalsRowsFunction: Any = totals_row_function
21
+ self._totalsRowLabel: Any = totals_row_label
22
+ self._column: FsRangeColumn = column
23
+ self._index: int = index or 0
24
+ self._name: str = name
25
+ self._Column: FsRangeColumn = self._column
26
+
27
+
28
+ FsTableField_reflection = _expr193
29
+
30
+ def FsTableField__ctor_726EFFB(name: str, index: int, column: FsRangeColumn, totals_row_label: Any=None, totals_row_function: Any=None) -> FsTableField:
31
+ return FsTableField(name, index, column, totals_row_label, totals_row_function)
32
+
33
+
34
+ def FsTableField__ctor(__unit: None=None) -> FsTableField:
35
+ return FsTableField__ctor_726EFFB("", 0, None, None, None)
36
+
37
+
38
+ def FsTableField__ctor_Z721C83C5(name: str) -> FsTableField:
39
+ return FsTableField__ctor_726EFFB(name, 0, None, None, None)
40
+
41
+
42
+ def FsTableField__ctor_Z18115A39(name: str, index: int) -> FsTableField:
43
+ return FsTableField__ctor_726EFFB(name, index, None, None, None)
44
+
45
+
46
+ def FsTableField__ctor_6547009B(name: str, index: int, column: FsRangeColumn) -> FsTableField:
47
+ return FsTableField__ctor_726EFFB(name, index, column, None, None)
48
+
49
+
50
+ def FsTableField__get_Column(__: FsTableField) -> FsRangeColumn:
51
+ return __._Column
52
+
53
+
54
+ def FsTableField__set_Column_Z7F7BA1C4(__: FsTableField, v: FsRangeColumn) -> None:
55
+ __._Column = v
56
+
57
+
58
+ def FsTableField__get_Index(this: FsTableField) -> int:
59
+ return this._index
60
+
61
+
62
+ def FsTableField__set_Index_Z524259A4(this: FsTableField, index: int) -> None:
63
+ if index == this._index:
64
+ pass
65
+
66
+ else:
67
+ this._index = index or 0
68
+ if equals(this._column, None):
69
+ pass
70
+
71
+ else:
72
+ ind_diff: int = (index - this._index) or 0
73
+ FsTableField__set_Column_Z7F7BA1C4(this, FsRangeColumn__ctor_6A2513BC(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(FsTableField__get_Column(this)))), this._index + ind_diff), FsAddress__ctor_Z37302880(FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(FsTableField__get_Column(this)))), this._index + ind_diff))))
74
+
75
+
76
+
77
+
78
+ def FsTableField__get_Name(this: FsTableField) -> str:
79
+ return this._name
80
+
81
+
82
+ def FsTableField__SetName_103577A7(this: FsTableField, name: str, cells_collection: FsCellsCollection, show_header_row: bool) -> None:
83
+ this._name = name
84
+ if show_header_row:
85
+ FsRangeColumn__FirstCell_Z2740B3CA(FsTableField__get_Column(this), cells_collection).SetValueAs(name)
86
+
87
+
88
+
89
+ def FsTableField_setName(name: str, cells_collection: FsCellsCollection, show_header_row: bool, table_field: FsTableField) -> FsTableField:
90
+ FsTableField__SetName_103577A7(table_field, name, cells_collection, show_header_row)
91
+ return table_field
92
+
93
+
94
+ def FsTableField__Copy(this: FsTableField) -> FsTableField:
95
+ col: FsRangeColumn = FsRangeColumn__Copy(FsTableField__get_Column(this))
96
+ ind: int = FsTableField__get_Index(this) or 0
97
+ return FsTableField__ctor_726EFFB(FsTableField__get_Name(this), ind, col, None, None)
98
+
99
+
100
+ def FsTableField_copy_Z5343F797(table_field: FsTableField) -> FsTableField:
101
+ return FsTableField__Copy(table_field)
102
+
103
+
104
+ def FsTableField__HeaderCell_10EBE01C(this: FsTableField, cells_collection: FsCellsCollection, show_header_row: bool) -> FsCell:
105
+ if not show_header_row:
106
+ arg: str = this._name
107
+ return to_fail(printf("tried to get header cell of table field \"%s\" even though showHeaderRow is set to zero"))(arg)
108
+
109
+ else:
110
+ return FsRangeColumn__FirstCell_Z2740B3CA(FsTableField__get_Column(this), cells_collection)
111
+
112
+
113
+
114
+ def FsTableField_getHeaderCell(cells_collection: FsCellsCollection, show_header_row: bool, table_field: FsTableField) -> FsCell:
115
+ return FsTableField__HeaderCell_10EBE01C(table_field, cells_collection, show_header_row)
116
+
117
+
118
+ def FsTableField__DataCells_Z2740B3CA(this: FsTableField, cells_collection: FsCellsCollection) -> IEnumerable_1[FsCell]:
119
+ return skip(1, FsRangeColumn__Cells_Z2740B3CA(FsTableField__get_Column(this), cells_collection))
120
+
121
+
122
+ def FsTableField_getDataCells(cells_collection: FsCellsCollection, table_field: FsTableField) -> IEnumerable_1[FsCell]:
123
+ return FsTableField__DataCells_Z2740B3CA(table_field, cells_collection)
124
+
125
+
126
+ __all__ = ["FsTableField_reflection", "FsTableField__ctor", "FsTableField__ctor_Z721C83C5", "FsTableField__ctor_Z18115A39", "FsTableField__ctor_6547009B", "FsTableField__get_Column", "FsTableField__set_Column_Z7F7BA1C4", "FsTableField__get_Index", "FsTableField__set_Index_Z524259A4", "FsTableField__get_Name", "FsTableField__SetName_103577A7", "FsTableField_setName", "FsTableField__Copy", "FsTableField_copy_Z5343F797", "FsTableField__HeaderCell_10EBE01C", "FsTableField_getHeaderCell", "FsTableField__DataCells_Z2740B3CA", "FsTableField_getDataCells"]
127
+
@@ -0,0 +1,23 @@
1
+ from __future__ import annotations
2
+ from ...fable_library.reflection import (TypeInfo, class_type)
3
+ from ..Ranges.fs_range_address import FsRangeAddress
4
+ from ..Ranges.fs_range_row import (FsRangeRow, FsRangeRow_reflection)
5
+
6
+ def _expr192() -> TypeInfo:
7
+ return class_type("FsSpreadsheet.FsTableRow", None, FsTableRow, FsRangeRow_reflection())
8
+
9
+
10
+ class FsTableRow(FsRangeRow):
11
+ def __init__(self, range_address: FsRangeAddress) -> None:
12
+ super().__init__(range_address)
13
+ pass
14
+
15
+
16
+ FsTableRow_reflection = _expr192
17
+
18
+ def FsTableRow__ctor_6A2513BC(range_address: FsRangeAddress) -> FsTableRow:
19
+ return FsTableRow(range_address)
20
+
21
+
22
+ __all__ = ["FsTableRow_reflection"]
23
+
File without changes
@@ -0,0 +1,218 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from math import pow
4
+ from typing import Any
5
+ from ..fable_library.char import (char_code_at, is_letter, is_digit)
6
+ from ..fable_library.int32 import parse
7
+ from ..fable_library.long import (op_addition, from_integer, to_int)
8
+ from ..fable_library.reflection import (TypeInfo, class_type)
9
+ from ..fable_library.reg_exp import create
10
+ from ..fable_library.seq import iterate
11
+ from ..fable_library.string_ import (to_text, printf, to_fail)
12
+ from ..fable_library.system_text import (StringBuilder__ctor, StringBuilder__Append_244C7CD6)
13
+ from ..fable_library.types import (uint32, to_string, int64)
14
+ from ..fable_library.util import ignore
15
+
16
+ CellReference_indexRegex: Any = create("([A-Z]*)(\\d*)")
17
+
18
+ def CellReference_colAdressToIndex(column_adress: str) -> uint32:
19
+ length: int = len(column_adress) or 0
20
+ sum: uint32 = uint32(0)
21
+ for i in range(0, (length - 1) + 1, 1):
22
+ c_1: str
23
+ c: str = column_adress[(length - 1) - i]
24
+ c_1 = c.upper()
25
+ factor: uint32
26
+ value: float = pow(26.0, i)
27
+ factor = int(value+0x100000000 if value < 0 else value)
28
+ sum = sum + (((int(char_code_at(c_1, 0)+0x100000000 if char_code_at(c_1, 0) < 0 else char_code_at(c_1, 0))) - uint32(64)) * factor)
29
+ return sum
30
+
31
+
32
+ def CellReference_indexToColAdress(i: uint32) -> str:
33
+ def loop(index_mut: uint32, acc_mut: str, i: Any=i) -> str:
34
+ while True:
35
+ (index, acc) = (index_mut, acc_mut)
36
+ if index == uint32(0):
37
+ return acc
38
+
39
+ else:
40
+ mod26: uint32 = (index - uint32(1)) % uint32(26)
41
+ index_mut = (index - uint32(1)) // uint32(26)
42
+ acc_mut = chr((int(char_code_at("A", 0)+0x100000000 if char_code_at("A", 0) < 0 else char_code_at("A", 0))) + mod26) + acc
43
+ continue
44
+
45
+ break
46
+
47
+ return loop(i, "")
48
+
49
+
50
+ def CellReference_ofIndices(column: uint32, row: uint32) -> str:
51
+ arg: str = CellReference_indexToColAdress(column)
52
+ return to_text(printf("%s%i"))(arg)(row)
53
+
54
+
55
+ def CellReference_toIndices(reference: str) -> tuple[uint32, uint32]:
56
+ char_part: Any = StringBuilder__ctor()
57
+ num_part: Any = StringBuilder__ctor()
58
+ def action(c: str, reference: Any=reference) -> None:
59
+ if is_letter(c):
60
+ ignore(StringBuilder__Append_244C7CD6(char_part, c))
61
+
62
+ elif is_digit(c):
63
+ ignore(StringBuilder__Append_244C7CD6(num_part, c))
64
+
65
+ else:
66
+ to_fail(printf("Reference %s does not match Excel A1-style"))(reference)
67
+
68
+
69
+ iterate(action, reference)
70
+ return (CellReference_colAdressToIndex(to_string(char_part)), parse(to_string(num_part), 511, True, 32))
71
+
72
+
73
+ def CellReference_toColIndex(reference: str) -> uint32:
74
+ return CellReference_toIndices(reference)[0]
75
+
76
+
77
+ def CellReference_toRowIndex(reference: str) -> uint32:
78
+ return CellReference_toIndices(reference)[1]
79
+
80
+
81
+ def CellReference_setColIndex(col_i: uint32, reference: str) -> str:
82
+ return CellReference_ofIndices(col_i, CellReference_toIndices(reference)[1])
83
+
84
+
85
+ def CellReference_setRowIndex(row_i: uint32, reference: str) -> str:
86
+ return CellReference_ofIndices(CellReference_toIndices(reference)[0], row_i)
87
+
88
+
89
+ def CellReference_moveHorizontal(amount: int, reference: str) -> str:
90
+ tupled_arg_1: tuple[uint32, uint32]
91
+ tupled_arg: tuple[uint32, uint32] = CellReference_toIndices(reference)
92
+ def _arrow62(__unit: None=None, amount: Any=amount, reference: Any=reference) -> uint32:
93
+ value: int64 = op_addition(from_integer(tupled_arg[0], False, 6), from_integer(amount, False, 2))
94
+ return int(to_int(value)+0x100000000 if to_int(value) < 0 else to_int(value))
95
+
96
+ tupled_arg_1 = (_arrow62(), tupled_arg[1])
97
+ return CellReference_ofIndices(tupled_arg_1[0], tupled_arg_1[1])
98
+
99
+
100
+ def CellReference_moveVertical(amount: int, reference: str) -> str:
101
+ tupled_arg_1: tuple[uint32, uint32]
102
+ tupled_arg: tuple[uint32, uint32] = CellReference_toIndices(reference)
103
+ def _arrow63(__unit: None=None, amount: Any=amount, reference: Any=reference) -> uint32:
104
+ value: int64 = op_addition(from_integer(tupled_arg[1], False, 6), from_integer(amount, False, 2))
105
+ return int(to_int(value)+0x100000000 if to_int(value) < 0 else to_int(value))
106
+
107
+ tupled_arg_1 = (tupled_arg[0], _arrow63())
108
+ return CellReference_ofIndices(tupled_arg_1[0], tupled_arg_1[1])
109
+
110
+
111
+ def _expr64() -> TypeInfo:
112
+ return class_type("FsSpreadsheet.FsAddress", None, FsAddress)
113
+
114
+
115
+ class FsAddress:
116
+ def __init__(self, row_number: int, column_number: int, fixed_row: bool, fixed_column: bool) -> None:
117
+ self._fixedRow: bool = fixed_row
118
+ self._fixedColumn: bool = fixed_column
119
+ self._rowNumber: int = row_number or 0
120
+ self._columnNumber: int = column_number or 0
121
+ self._trimmedAddress: str = ""
122
+
123
+
124
+ FsAddress_reflection = _expr64
125
+
126
+ def FsAddress__ctor_Z4C746FC0(row_number: int, column_number: int, fixed_row: bool, fixed_column: bool) -> FsAddress:
127
+ return FsAddress(row_number, column_number, fixed_row, fixed_column)
128
+
129
+
130
+ def FsAddress__ctor_Z668C30D9(row_number: int, column_letter: str, fixed_row: bool, fixed_column: bool) -> FsAddress:
131
+ return FsAddress__ctor_Z4C746FC0(row_number, int(CellReference_colAdressToIndex(column_letter)), fixed_row, fixed_column)
132
+
133
+
134
+ def FsAddress__ctor_Z37302880(row_number: int, column_number: int) -> FsAddress:
135
+ return FsAddress__ctor_Z4C746FC0(row_number, column_number, False, False)
136
+
137
+
138
+ def FsAddress__ctor_Z721C83C5(cell_address_string: str) -> FsAddress:
139
+ pattern_input: tuple[uint32, uint32] = CellReference_toIndices(cell_address_string)
140
+ return FsAddress__ctor_Z37302880(int(pattern_input[1]), int(pattern_input[0]))
141
+
142
+
143
+ def FsAddress__get_ColumnNumber(self_1: FsAddress) -> int:
144
+ return self_1._columnNumber
145
+
146
+
147
+ def FsAddress__set_ColumnNumber_Z524259A4(self_1: FsAddress, col_i: int) -> None:
148
+ self_1._columnNumber = col_i or 0
149
+
150
+
151
+ def FsAddress__get_RowNumber(self_1: FsAddress) -> int:
152
+ return self_1._rowNumber
153
+
154
+
155
+ def FsAddress__set_RowNumber_Z524259A4(self_1: FsAddress, row_i: int) -> None:
156
+ self_1._rowNumber = row_i or 0
157
+
158
+
159
+ def FsAddress__get_Address(self_1: FsAddress) -> str:
160
+ return CellReference_ofIndices(int(self_1._columnNumber+0x100000000 if self_1._columnNumber < 0 else self_1._columnNumber), int(self_1._rowNumber+0x100000000 if self_1._rowNumber < 0 else self_1._rowNumber))
161
+
162
+
163
+ def FsAddress__set_Address_Z721C83C5(self_1: FsAddress, address: str) -> None:
164
+ pattern_input: tuple[uint32, uint32] = CellReference_toIndices(address)
165
+ self_1._rowNumber = int(pattern_input[1]) or 0
166
+ self_1._columnNumber = int(pattern_input[0]) or 0
167
+
168
+
169
+ def FsAddress__get_FixedRow(self_1: FsAddress) -> bool:
170
+ return False
171
+
172
+
173
+ def FsAddress__get_FixedColumn(self_1: FsAddress) -> bool:
174
+ return False
175
+
176
+
177
+ def FsAddress__Copy(this: FsAddress) -> FsAddress:
178
+ col_no: int = FsAddress__get_ColumnNumber(this) or 0
179
+ return FsAddress__ctor_Z4C746FC0(FsAddress__get_RowNumber(this), col_no, FsAddress__get_FixedRow(this), FsAddress__get_FixedColumn(this))
180
+
181
+
182
+ def FsAddress_copy_6D30B323(address: FsAddress) -> FsAddress:
183
+ return FsAddress__Copy(address)
184
+
185
+
186
+ def FsAddress__UpdateIndices_Z37302880(self_1: FsAddress, row_index: int, col_index: int) -> None:
187
+ self_1._columnNumber = col_index or 0
188
+ self_1._rowNumber = row_index or 0
189
+
190
+
191
+ def FsAddress_updateIndices(row_index: int, col_index: int, address: FsAddress) -> FsAddress:
192
+ FsAddress__UpdateIndices_Z37302880(address, row_index, col_index)
193
+ return address
194
+
195
+
196
+ def FsAddress__ToIndices(self_1: FsAddress) -> tuple[int, int]:
197
+ return (self_1._rowNumber, self_1._columnNumber)
198
+
199
+
200
+ def FsAddress_toIndices_6D30B323(address: FsAddress) -> tuple[int, int]:
201
+ return FsAddress__ToIndices(address)
202
+
203
+
204
+ def FsAddress__Compare_6D30B323(self_1: FsAddress, address: FsAddress) -> bool:
205
+ if (FsAddress__get_FixedColumn(self_1) == FsAddress__get_FixedColumn(address)) if ((FsAddress__get_RowNumber(self_1) == FsAddress__get_RowNumber(address)) if ((FsAddress__get_ColumnNumber(self_1) == FsAddress__get_ColumnNumber(address)) if (FsAddress__get_Address(self_1) == FsAddress__get_Address(address)) else False) else False) else False:
206
+ return FsAddress__get_FixedRow(self_1) == FsAddress__get_FixedRow(address)
207
+
208
+ else:
209
+ return False
210
+
211
+
212
+
213
+ def FsAddress_compare(address1: FsAddress, address2: FsAddress) -> bool:
214
+ return FsAddress__Compare_6D30B323(address1, address2)
215
+
216
+
217
+ __all__ = ["CellReference_indexRegex", "CellReference_colAdressToIndex", "CellReference_indexToColAdress", "CellReference_ofIndices", "CellReference_toIndices", "CellReference_toColIndex", "CellReference_toRowIndex", "CellReference_setColIndex", "CellReference_setRowIndex", "CellReference_moveHorizontal", "CellReference_moveVertical", "FsAddress_reflection", "FsAddress__ctor_Z668C30D9", "FsAddress__ctor_Z37302880", "FsAddress__ctor_Z721C83C5", "FsAddress__get_ColumnNumber", "FsAddress__set_ColumnNumber_Z524259A4", "FsAddress__get_RowNumber", "FsAddress__set_RowNumber_Z524259A4", "FsAddress__get_Address", "FsAddress__set_Address_Z721C83C5", "FsAddress__get_FixedRow", "FsAddress__get_FixedColumn", "FsAddress__Copy", "FsAddress_copy_6D30B323", "FsAddress__UpdateIndices_Z37302880", "FsAddress_updateIndices", "FsAddress__ToIndices", "FsAddress_toIndices_6D30B323", "FsAddress__Compare_6D30B323", "FsAddress_compare"]
218
+
@@ -0,0 +1,172 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import Any
4
+ from ..fable_library.reflection import (TypeInfo, class_type)
5
+ from ..fable_library.seq import (length, min_by, max_by, map, exists)
6
+ from ..fable_library.util import (IEnumerable_1, compare_primitives, ignore, get_enumerator, IEnumerator, to_iterator)
7
+ from .Cells.fs_cell import FsCell
8
+ from .Cells.fs_cells_collection import (FsCellsCollection__ctor, FsCellsCollection__GetCellsInColumn_Z524259A4, FsCellsCollection, FsCellsCollection__Add_Z21F271A4)
9
+ from .fs_address import (FsAddress__ctor_Z37302880, FsAddress__get_RowNumber, FsAddress__get_ColumnNumber, FsAddress__set_ColumnNumber_Z524259A4)
10
+ from .Ranges.fs_range_address import (FsRangeAddress__ctor_7E77A4A0, FsRangeAddress__get_FirstAddress, FsRangeAddress__get_LastAddress, FsRangeAddress__Copy, FsRangeAddress)
11
+ from .Ranges.fs_range_base import (FsRangeBase__Cells_Z2740B3CA, FsRangeBase__get_RangeAddress, FsRangeBase__Cell_Z3407A44B, FsRangeBase, FsRangeBase_reflection)
12
+
13
+ def _expr191() -> TypeInfo:
14
+ return class_type("FsSpreadsheet.FsColumn", None, FsColumn, FsRangeBase_reflection())
15
+
16
+
17
+ class FsColumn(FsRangeBase):
18
+ def __init__(self, range_address: FsRangeAddress, cells: FsCellsCollection) -> None:
19
+ super().__init__(range_address)
20
+ self.cells_004018: FsCellsCollection = cells
21
+
22
+ @staticmethod
23
+ def empty(__unit: None=None) -> FsColumn:
24
+ return FsColumn(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(0, 0), FsAddress__ctor_Z37302880(0, 0)), FsCellsCollection__ctor())
25
+
26
+ @staticmethod
27
+ def create_at(index: int, cells: FsCellsCollection) -> FsColumn:
28
+ def get_index_by(f: Callable[[Callable[[FsCell], int], IEnumerable_1[FsCell]], FsCell]) -> int:
29
+ if length(FsCellsCollection__GetCellsInColumn_Z524259A4(cells, index)) == 0:
30
+ return 1
31
+
32
+ else:
33
+ def _arrow184(c: FsCell, f: Any=f) -> int:
34
+ return FsAddress__get_RowNumber(c.Address)
35
+
36
+ return FsAddress__get_RowNumber(f(_arrow184)(FsCellsCollection__GetCellsInColumn_Z524259A4(cells, index)).Address)
37
+
38
+
39
+ def _arrow187(projection: Callable[[FsCell], int]) -> Callable[[IEnumerable_1[FsCell]], FsCell]:
40
+ def _arrow186(source_1: IEnumerable_1[FsCell]) -> FsCell:
41
+ class ObjectExpr185:
42
+ @property
43
+ def Compare(self) -> Callable[[int, int], int]:
44
+ return compare_primitives
45
+
46
+ return min_by(projection, source_1, ObjectExpr185())
47
+
48
+ return _arrow186
49
+
50
+ min_row_index: int = get_index_by(_arrow187) or 0
51
+ def _arrow190(projection_1: Callable[[FsCell], int]) -> Callable[[IEnumerable_1[FsCell]], FsCell]:
52
+ def _arrow189(source_2: IEnumerable_1[FsCell]) -> FsCell:
53
+ class ObjectExpr188:
54
+ @property
55
+ def Compare(self) -> Callable[[int, int], int]:
56
+ return compare_primitives
57
+
58
+ return max_by(projection_1, source_2, ObjectExpr188())
59
+
60
+ return _arrow189
61
+
62
+ max_row_index: int = get_index_by(_arrow190) or 0
63
+ return FsColumn(FsRangeAddress__ctor_7E77A4A0(FsAddress__ctor_Z37302880(min_row_index, index), FsAddress__ctor_Z37302880(max_row_index, index)), cells)
64
+
65
+ @property
66
+ def Cells(self, __unit: None=None) -> IEnumerable_1[FsCell]:
67
+ this: FsColumn = self
68
+ return FsRangeBase__Cells_Z2740B3CA(this, this.cells_004018)
69
+
70
+ @property
71
+ def Index(self, __unit: None=None) -> int:
72
+ this: FsColumn = self
73
+ return FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)))
74
+
75
+ @Index.setter
76
+ def Index(self, i: int) -> None:
77
+ this: FsColumn = self
78
+ FsAddress__set_ColumnNumber_Z524259A4(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)), i)
79
+ FsAddress__set_ColumnNumber_Z524259A4(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this)), i)
80
+
81
+ @property
82
+ def MinRowIndex(self, __unit: None=None) -> int:
83
+ this: FsColumn = self
84
+ return FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this)))
85
+
86
+ @property
87
+ def MaxRowIndex(self, __unit: None=None) -> int:
88
+ this: FsColumn = self
89
+ return FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this)))
90
+
91
+ def Copy(self, __unit: None=None) -> FsColumn:
92
+ this: FsColumn = self
93
+ ra: FsRangeAddress = FsRangeAddress__Copy(FsRangeBase__get_RangeAddress(this))
94
+ def mapping(c: FsCell) -> FsCell:
95
+ return c.Copy()
96
+
97
+ cells: IEnumerable_1[FsCell] = map(mapping, this.Cells)
98
+ fcc: FsCellsCollection = FsCellsCollection__ctor()
99
+ FsCellsCollection__Add_Z21F271A4(fcc, cells)
100
+ return FsColumn(ra, fcc)
101
+
102
+ @staticmethod
103
+ def copy(column: FsColumn) -> FsColumn:
104
+ return column.Copy()
105
+
106
+ @staticmethod
107
+ def get_index(column: FsColumn) -> int:
108
+ return column.Index
109
+
110
+ def HasCellAt(self, row_index: int) -> bool:
111
+ this: FsColumn = self
112
+ def predicate(c: FsCell) -> bool:
113
+ return c.RowNumber == row_index
114
+
115
+ return exists(predicate, this.Cells)
116
+
117
+ @staticmethod
118
+ def has_cell_at(row_index: int, column: FsColumn) -> bool:
119
+ return column.HasCellAt(row_index)
120
+
121
+ def Item(self, row_index: int) -> FsCell:
122
+ this: FsColumn = self
123
+ return FsRangeBase__Cell_Z3407A44B(this, FsAddress__ctor_Z37302880(row_index, 1), this.cells_004018)
124
+
125
+ @staticmethod
126
+ def item(row_index: int, column: FsColumn) -> FsCell:
127
+ return column.Item(row_index)
128
+
129
+ def TryItem(self, row_index: int) -> FsCell | None:
130
+ this: FsColumn = self
131
+ return this.Item(row_index) if this.HasCellAt(row_index) else None
132
+
133
+ @staticmethod
134
+ def try_item(row_index: int, column: FsColumn) -> FsCell | None:
135
+ return column.TryItem(row_index)
136
+
137
+ def ToDenseColumn(self, __unit: None=None) -> None:
138
+ this: FsColumn = self
139
+ for i in range(this.MinRowIndex, this.MaxRowIndex + 1, 1):
140
+ ignore(this.Item(i))
141
+
142
+ @staticmethod
143
+ def to_dense_column(column: FsColumn) -> FsColumn:
144
+ column.ToDenseColumn()
145
+ return column
146
+
147
+ @staticmethod
148
+ def create_dense_column_of(column: FsColumn) -> FsColumn:
149
+ new_column: FsColumn = column.Copy()
150
+ new_column.ToDenseColumn()
151
+ return new_column
152
+
153
+ def GetEnumerator(self, __unit: None=None) -> IEnumerator[FsCell]:
154
+ this: FsColumn = self
155
+ return get_enumerator(this.Cells)
156
+
157
+ def __iter__(self) -> IEnumerator[FsCell]:
158
+ return to_iterator(self.GetEnumerator())
159
+
160
+ def System_Collections_IEnumerable_GetEnumerator(self, __unit: None=None) -> IEnumerator[Any]:
161
+ this: FsColumn = self
162
+ return get_enumerator(this)
163
+
164
+
165
+ FsColumn_reflection = _expr191
166
+
167
+ def FsColumn__ctor_7678C70A(range_address: FsRangeAddress, cells: FsCellsCollection) -> FsColumn:
168
+ return FsColumn(range_address, cells)
169
+
170
+
171
+ __all__ = ["FsColumn_reflection"]
172
+