arctrl 3.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. arctrl/__init__.py +23 -0
  2. arctrl/cwl.py +12 -0
  3. arctrl/py/CWL/__init__.py +0 -0
  4. arctrl/py/CWL/cwlprocessing_unit.py +221 -0
  5. arctrl/py/CWL/cwltypes.py +364 -0
  6. arctrl/py/CWL/decode.py +3532 -0
  7. arctrl/py/CWL/encode.py +1905 -0
  8. arctrl/py/CWL/expression_tool_description.py +192 -0
  9. arctrl/py/CWL/hash_helpers.py +60 -0
  10. arctrl/py/CWL/inputs.py +122 -0
  11. arctrl/py/CWL/operation_description.py +169 -0
  12. arctrl/py/CWL/outputs.py +171 -0
  13. arctrl/py/CWL/parameter_reference.py +74 -0
  14. arctrl/py/CWL/requirements.py +350 -0
  15. arctrl/py/CWL/tool_description.py +192 -0
  16. arctrl/py/CWL/workflow_description.py +181 -0
  17. arctrl/py/CWL/workflow_steps.py +354 -0
  18. arctrl/py/Contract/__init__.py +0 -0
  19. arctrl/py/Contract/arc.py +89 -0
  20. arctrl/py/Contract/arc_assay.py +125 -0
  21. arctrl/py/Contract/arc_investigation.py +88 -0
  22. arctrl/py/Contract/arc_run.py +291 -0
  23. arctrl/py/Contract/arc_study.py +126 -0
  24. arctrl/py/Contract/arc_workflow.py +213 -0
  25. arctrl/py/Contract/contract.py +153 -0
  26. arctrl/py/Contract/datamap.py +396 -0
  27. arctrl/py/Contract/git.py +116 -0
  28. arctrl/py/Contract/license.py +58 -0
  29. arctrl/py/Contract/validation_packages_config.py +107 -0
  30. arctrl/py/ContractIO/__init__.py +0 -0
  31. arctrl/py/ContractIO/contract_io.py +350 -0
  32. arctrl/py/ContractIO/file_system_helper.py +264 -0
  33. arctrl/py/Conversion/__init__.py +0 -0
  34. arctrl/py/Conversion/assay.py +151 -0
  35. arctrl/py/Conversion/basic.py +559 -0
  36. arctrl/py/Conversion/column_index.py +91 -0
  37. arctrl/py/Conversion/datamap.py +36 -0
  38. arctrl/py/Conversion/date_time.py +32 -0
  39. arctrl/py/Conversion/investigation.py +171 -0
  40. arctrl/py/Conversion/person.py +148 -0
  41. arctrl/py/Conversion/process.py +828 -0
  42. arctrl/py/Conversion/run.py +367 -0
  43. arctrl/py/Conversion/scholarly_article.py +163 -0
  44. arctrl/py/Conversion/study.py +99 -0
  45. arctrl/py/Conversion/table.py +229 -0
  46. arctrl/py/Conversion/workflow.py +680 -0
  47. arctrl/py/Core/Helper/__init__.py +0 -0
  48. arctrl/py/Core/Helper/collections_.py +512 -0
  49. arctrl/py/Core/Helper/date_time.py +26 -0
  50. arctrl/py/Core/Helper/hash_codes.py +60 -0
  51. arctrl/py/Core/Helper/identifier.py +290 -0
  52. arctrl/py/Core/Helper/orcid.py +42 -0
  53. arctrl/py/Core/Helper/printer.py +13 -0
  54. arctrl/py/Core/Helper/regex.py +554 -0
  55. arctrl/py/Core/Helper/sem_ver.py +71 -0
  56. arctrl/py/Core/Helper/url.py +148 -0
  57. arctrl/py/Core/Process/__init__.py +0 -0
  58. arctrl/py/Core/Process/column_index.py +280 -0
  59. arctrl/py/Core/Process/component.py +200 -0
  60. arctrl/py/Core/Process/factor.py +151 -0
  61. arctrl/py/Core/Process/factor_value.py +182 -0
  62. arctrl/py/Core/Process/material.py +74 -0
  63. arctrl/py/Core/Process/material_attribute.py +95 -0
  64. arctrl/py/Core/Process/material_attribute_value.py +184 -0
  65. arctrl/py/Core/Process/material_type.py +45 -0
  66. arctrl/py/Core/Process/process.py +477 -0
  67. arctrl/py/Core/Process/process_input.py +265 -0
  68. arctrl/py/Core/Process/process_output.py +235 -0
  69. arctrl/py/Core/Process/process_parameter_value.py +200 -0
  70. arctrl/py/Core/Process/process_sequence.py +435 -0
  71. arctrl/py/Core/Process/protocol.py +175 -0
  72. arctrl/py/Core/Process/protocol_parameter.py +98 -0
  73. arctrl/py/Core/Process/sample.py +82 -0
  74. arctrl/py/Core/Process/source.py +62 -0
  75. arctrl/py/Core/Table/__init__.py +0 -0
  76. arctrl/py/Core/Table/arc_table.py +1206 -0
  77. arctrl/py/Core/Table/arc_table_aux.py +1308 -0
  78. arctrl/py/Core/Table/arc_tables.py +574 -0
  79. arctrl/py/Core/Table/composite_cell.py +319 -0
  80. arctrl/py/Core/Table/composite_column.py +73 -0
  81. arctrl/py/Core/Table/composite_header.py +739 -0
  82. arctrl/py/Core/__init__.py +0 -0
  83. arctrl/py/Core/arc_types.py +5312 -0
  84. arctrl/py/Core/comment.py +128 -0
  85. arctrl/py/Core/comment_list.py +127 -0
  86. arctrl/py/Core/conversion.py +1375 -0
  87. arctrl/py/Core/data.py +247 -0
  88. arctrl/py/Core/data_context.py +157 -0
  89. arctrl/py/Core/data_file.py +112 -0
  90. arctrl/py/Core/datamap.py +217 -0
  91. arctrl/py/Core/identifier_setters.py +43 -0
  92. arctrl/py/Core/iproperty_value.py +36 -0
  93. arctrl/py/Core/ontology_annotation.py +298 -0
  94. arctrl/py/Core/ontology_source_reference.py +114 -0
  95. arctrl/py/Core/person.py +259 -0
  96. arctrl/py/Core/publication.py +161 -0
  97. arctrl/py/Core/template.py +231 -0
  98. arctrl/py/Core/templates.py +148 -0
  99. arctrl/py/Core/uri.py +11 -0
  100. arctrl/py/Core/value.py +188 -0
  101. arctrl/py/FileSystem/__init__.py +0 -0
  102. arctrl/py/FileSystem/commit.py +21 -0
  103. arctrl/py/FileSystem/default_gitattributes.py +1 -0
  104. arctrl/py/FileSystem/default_gitignore.py +1 -0
  105. arctrl/py/FileSystem/default_license.py +1 -0
  106. arctrl/py/FileSystem/file_system.py +58 -0
  107. arctrl/py/FileSystem/file_system_tree.py +483 -0
  108. arctrl/py/FileSystem/path.py +266 -0
  109. arctrl/py/Json/Datamap/__init__.py +0 -0
  110. arctrl/py/Json/Datamap/data_context.py +101 -0
  111. arctrl/py/Json/Datamap/datamap.py +53 -0
  112. arctrl/py/Json/Process/__init__.py +0 -0
  113. arctrl/py/Json/Process/assay_materials.py +46 -0
  114. arctrl/py/Json/Process/component.py +125 -0
  115. arctrl/py/Json/Process/factor.py +107 -0
  116. arctrl/py/Json/Process/factor_value.py +101 -0
  117. arctrl/py/Json/Process/material.py +226 -0
  118. arctrl/py/Json/Process/material_attribute.py +79 -0
  119. arctrl/py/Json/Process/material_attribute_value.py +101 -0
  120. arctrl/py/Json/Process/material_type.py +53 -0
  121. arctrl/py/Json/Process/process.py +296 -0
  122. arctrl/py/Json/Process/process_input.py +83 -0
  123. arctrl/py/Json/Process/process_output.py +67 -0
  124. arctrl/py/Json/Process/process_parameter_value.py +81 -0
  125. arctrl/py/Json/Process/protocol.py +354 -0
  126. arctrl/py/Json/Process/protocol_parameter.py +91 -0
  127. arctrl/py/Json/Process/sample.py +277 -0
  128. arctrl/py/Json/Process/source.py +214 -0
  129. arctrl/py/Json/Process/study_materials.py +52 -0
  130. arctrl/py/Json/Process/value.py +56 -0
  131. arctrl/py/Json/ROCrate/__init__.py +0 -0
  132. arctrl/py/Json/ROCrate/ldcontext.py +143 -0
  133. arctrl/py/Json/ROCrate/ldgraph.py +117 -0
  134. arctrl/py/Json/ROCrate/ldnode.py +304 -0
  135. arctrl/py/Json/ROCrate/ldref.py +44 -0
  136. arctrl/py/Json/ROCrate/ldvalue.py +102 -0
  137. arctrl/py/Json/Table/__init__.py +0 -0
  138. arctrl/py/Json/Table/arc_table.py +375 -0
  139. arctrl/py/Json/Table/cell_table.py +83 -0
  140. arctrl/py/Json/Table/composite_cell.py +136 -0
  141. arctrl/py/Json/Table/composite_header.py +67 -0
  142. arctrl/py/Json/Table/iotype.py +24 -0
  143. arctrl/py/Json/Table/oatable.py +82 -0
  144. arctrl/py/Json/Table/templates.py +281 -0
  145. arctrl/py/Json/__init__.py +0 -0
  146. arctrl/py/Json/assay.py +600 -0
  147. arctrl/py/Json/comment.py +206 -0
  148. arctrl/py/Json/context/rocrate/__init__.py +0 -0
  149. arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
  150. arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
  151. arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
  152. arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
  153. arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
  154. arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
  155. arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
  156. arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
  157. arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
  158. arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
  159. arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
  160. arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
  161. arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
  162. arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
  163. arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
  164. arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
  165. arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
  166. arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
  167. arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
  168. arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
  169. arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
  170. arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
  171. arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
  172. arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
  173. arctrl/py/Json/converter_options.py +23 -0
  174. arctrl/py/Json/data.py +356 -0
  175. arctrl/py/Json/data_file.py +63 -0
  176. arctrl/py/Json/decode.py +271 -0
  177. arctrl/py/Json/encode.py +140 -0
  178. arctrl/py/Json/idtable.py +44 -0
  179. arctrl/py/Json/investigation.py +695 -0
  180. arctrl/py/Json/ontology_annotation.py +404 -0
  181. arctrl/py/Json/ontology_source_reference.py +255 -0
  182. arctrl/py/Json/person.py +658 -0
  183. arctrl/py/Json/property_value.py +359 -0
  184. arctrl/py/Json/publication.py +279 -0
  185. arctrl/py/Json/run.py +275 -0
  186. arctrl/py/Json/string_table.py +87 -0
  187. arctrl/py/Json/study.py +793 -0
  188. arctrl/py/Json/workflow.py +307 -0
  189. arctrl/py/JsonIO/Process/__init__.py +0 -0
  190. arctrl/py/JsonIO/Process/component.py +60 -0
  191. arctrl/py/JsonIO/Process/factor.py +36 -0
  192. arctrl/py/JsonIO/Process/factor_value.py +38 -0
  193. arctrl/py/JsonIO/Process/material.py +60 -0
  194. arctrl/py/JsonIO/Process/material_attribute.py +38 -0
  195. arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
  196. arctrl/py/JsonIO/Process/material_type.py +36 -0
  197. arctrl/py/JsonIO/Process/process.py +60 -0
  198. arctrl/py/JsonIO/Process/process_input.py +38 -0
  199. arctrl/py/JsonIO/Process/process_output.py +60 -0
  200. arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
  201. arctrl/py/JsonIO/Process/process_sequence.py +71 -0
  202. arctrl/py/JsonIO/Process/protocol.py +60 -0
  203. arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
  204. arctrl/py/JsonIO/Process/sample.py +60 -0
  205. arctrl/py/JsonIO/Process/source.py +60 -0
  206. arctrl/py/JsonIO/Process/study_materials.py +52 -0
  207. arctrl/py/JsonIO/Process/value.py +32 -0
  208. arctrl/py/JsonIO/Table/__init__.py +0 -0
  209. arctrl/py/JsonIO/Table/arc_table.py +103 -0
  210. arctrl/py/JsonIO/Table/composite_cell.py +36 -0
  211. arctrl/py/JsonIO/Table/composite_header.py +36 -0
  212. arctrl/py/JsonIO/Table/compression.py +67 -0
  213. arctrl/py/JsonIO/Table/iotype.py +36 -0
  214. arctrl/py/JsonIO/Table/templates.py +113 -0
  215. arctrl/py/JsonIO/__init__.py +0 -0
  216. arctrl/py/JsonIO/assay.py +113 -0
  217. arctrl/py/JsonIO/comment.py +80 -0
  218. arctrl/py/JsonIO/data.py +60 -0
  219. arctrl/py/JsonIO/data_file.py +58 -0
  220. arctrl/py/JsonIO/datamap.py +36 -0
  221. arctrl/py/JsonIO/decode.py +9 -0
  222. arctrl/py/JsonIO/encode.py +1 -0
  223. arctrl/py/JsonIO/investigation.py +91 -0
  224. arctrl/py/JsonIO/ldobject.py +106 -0
  225. arctrl/py/JsonIO/ontology_annotation.py +80 -0
  226. arctrl/py/JsonIO/ontology_source_reference.py +80 -0
  227. arctrl/py/JsonIO/person.py +82 -0
  228. arctrl/py/JsonIO/publication.py +82 -0
  229. arctrl/py/JsonIO/run.py +68 -0
  230. arctrl/py/JsonIO/study.py +114 -0
  231. arctrl/py/JsonIO/workflow.py +68 -0
  232. arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
  233. arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
  234. arctrl/py/ROCrate/ISAProfile/data.py +65 -0
  235. arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
  236. arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
  237. arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
  238. arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
  239. arctrl/py/ROCrate/ISAProfile/person.py +72 -0
  240. arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
  241. arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
  242. arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
  243. arctrl/py/ROCrate/ISAProfile/study.py +74 -0
  244. arctrl/py/ROCrate/LDTypes/__init__.py +0 -0
  245. arctrl/py/ROCrate/LDTypes/comment.py +131 -0
  246. arctrl/py/ROCrate/LDTypes/computational_workflow.py +455 -0
  247. arctrl/py/ROCrate/LDTypes/computer_language.py +269 -0
  248. arctrl/py/ROCrate/LDTypes/create_action.py +303 -0
  249. arctrl/py/ROCrate/LDTypes/creative_work.py +566 -0
  250. arctrl/py/ROCrate/LDTypes/dataset.py +943 -0
  251. arctrl/py/ROCrate/LDTypes/defined_term.py +131 -0
  252. arctrl/py/ROCrate/LDTypes/file.py +281 -0
  253. arctrl/py/ROCrate/LDTypes/formal_parameter.py +431 -0
  254. arctrl/py/ROCrate/LDTypes/lab_process.py +352 -0
  255. arctrl/py/ROCrate/LDTypes/lab_protocol.py +395 -0
  256. arctrl/py/ROCrate/LDTypes/organization.py +83 -0
  257. arctrl/py/ROCrate/LDTypes/person.py +484 -0
  258. arctrl/py/ROCrate/LDTypes/postal_address.py +195 -0
  259. arctrl/py/ROCrate/LDTypes/property_value.py +952 -0
  260. arctrl/py/ROCrate/LDTypes/sample.py +202 -0
  261. arctrl/py/ROCrate/LDTypes/scholarly_article.py +229 -0
  262. arctrl/py/ROCrate/LDTypes/software_source_code.py +310 -0
  263. arctrl/py/ROCrate/LDTypes/workflow_invocation.py +48 -0
  264. arctrl/py/ROCrate/LDTypes/workflow_protocol.py +52 -0
  265. arctrl/py/ROCrate/__init__.py +0 -0
  266. arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
  267. arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
  268. arctrl/py/ROCrate/helper.py +8 -0
  269. arctrl/py/ROCrate/ldcontext.py +406 -0
  270. arctrl/py/ROCrate/ldobject.py +1247 -0
  271. arctrl/py/ROCrate/rocrate_context.py +51 -0
  272. arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
  273. arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +203 -0
  274. arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
  275. arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +305 -0
  276. arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
  277. arctrl/py/Spreadsheet/DatamapTable/__init__.py +0 -0
  278. arctrl/py/Spreadsheet/DatamapTable/datamap_column.py +114 -0
  279. arctrl/py/Spreadsheet/DatamapTable/datamap_header.py +621 -0
  280. arctrl/py/Spreadsheet/DatamapTable/datamap_table.py +118 -0
  281. arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
  282. arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
  283. arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
  284. arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
  285. arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
  286. arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
  287. arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
  288. arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
  289. arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
  290. arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
  291. arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
  292. arctrl/py/Spreadsheet/Metadata/run.py +122 -0
  293. arctrl/py/Spreadsheet/Metadata/sparse_table.py +499 -0
  294. arctrl/py/Spreadsheet/Metadata/study.py +312 -0
  295. arctrl/py/Spreadsheet/Metadata/workflow.py +159 -0
  296. arctrl/py/Spreadsheet/__init__.py +0 -0
  297. arctrl/py/Spreadsheet/arc_assay.py +233 -0
  298. arctrl/py/Spreadsheet/arc_investigation.py +435 -0
  299. arctrl/py/Spreadsheet/arc_run.py +190 -0
  300. arctrl/py/Spreadsheet/arc_study.py +144 -0
  301. arctrl/py/Spreadsheet/arc_workflow.py +177 -0
  302. arctrl/py/Spreadsheet/assembly_info.py +1 -0
  303. arctrl/py/Spreadsheet/collection_aux.py +167 -0
  304. arctrl/py/Spreadsheet/datamap.py +43 -0
  305. arctrl/py/Spreadsheet/template.py +460 -0
  306. arctrl/py/ValidationPackages/__init__.py +0 -0
  307. arctrl/py/ValidationPackages/validation_package.py +82 -0
  308. arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
  309. arctrl/py/WebRequest/__init__.py +0 -0
  310. arctrl/py/WebRequest/web_request.py +9 -0
  311. arctrl/py/WebRequest/web_request_py.py +135 -0
  312. arctrl/py/WorkflowGraph/__init__.py +0 -0
  313. arctrl/py/WorkflowGraph/adapters.py +141 -0
  314. arctrl/py/WorkflowGraph/build_options.py +45 -0
  315. arctrl/py/WorkflowGraph/builder.py +720 -0
  316. arctrl/py/WorkflowGraph/graph_types.py +260 -0
  317. arctrl/py/WorkflowGraph/query_helpers.py +76 -0
  318. arctrl/py/WorkflowGraph/reference_parsing.py +59 -0
  319. arctrl/py/WorkflowGraph/visualization_siren.py +574 -0
  320. arctrl/py/WorkflowGraph/workflow_graph.py +119 -0
  321. arctrl/py/Yaml/__init__.py +0 -0
  322. arctrl/py/Yaml/decode.py +1 -0
  323. arctrl/py/Yaml/encode.py +10 -0
  324. arctrl/py/Yaml/validation_package.py +77 -0
  325. arctrl/py/Yaml/validation_packages_config.py +86 -0
  326. arctrl/py/__init__.py +0 -0
  327. arctrl/py/arc.py +1891 -0
  328. arctrl/py/column_index.py +280 -0
  329. arctrl/py/conversion.py +142 -0
  330. arctrl/py/cross_async.py +76 -0
  331. arctrl/py/cwlrun_resolver.py +228 -0
  332. arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
  333. arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
  334. arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
  335. arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
  336. arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
  337. arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
  338. arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
  339. arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
  340. arctrl/py/fable_modules/fable_library/__init__.py +0 -0
  341. arctrl/py/fable_modules/fable_library/array_.py +1528 -0
  342. arctrl/py/fable_modules/fable_library/async_.py +377 -0
  343. arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
  344. arctrl/py/fable_modules/fable_library/big_int.py +330 -0
  345. arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
  346. arctrl/py/fable_modules/fable_library/boolean.py +26 -0
  347. arctrl/py/fable_modules/fable_library/char.py +237 -0
  348. arctrl/py/fable_modules/fable_library/choice.py +212 -0
  349. arctrl/py/fable_modules/fable_library/date.py +779 -0
  350. arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
  351. arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
  352. arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
  353. arctrl/py/fable_modules/fable_library/double.py +87 -0
  354. arctrl/py/fable_modules/fable_library/encoding.py +41 -0
  355. arctrl/py/fable_modules/fable_library/event.py +206 -0
  356. arctrl/py/fable_modules/fable_library/file.py +107 -0
  357. arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
  358. arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
  359. arctrl/py/fable_modules/fable_library/global_.py +63 -0
  360. arctrl/py/fable_modules/fable_library/guid.py +41 -0
  361. arctrl/py/fable_modules/fable_library/int32.py +73 -0
  362. arctrl/py/fable_modules/fable_library/list.py +1788 -0
  363. arctrl/py/fable_modules/fable_library/long.py +240 -0
  364. arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
  365. arctrl/py/fable_modules/fable_library/map.py +1854 -0
  366. arctrl/py/fable_modules/fable_library/map_util.py +148 -0
  367. arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
  368. arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
  369. arctrl/py/fable_modules/fable_library/native.py +45 -0
  370. arctrl/py/fable_modules/fable_library/numeric.py +46 -0
  371. arctrl/py/fable_modules/fable_library/observable.py +222 -0
  372. arctrl/py/fable_modules/fable_library/option.py +128 -0
  373. arctrl/py/fable_modules/fable_library/path.py +62 -0
  374. arctrl/py/fable_modules/fable_library/range.py +117 -0
  375. arctrl/py/fable_modules/fable_library/reflection.py +463 -0
  376. arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
  377. arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
  378. arctrl/py/fable_modules/fable_library/result.py +212 -0
  379. arctrl/py/fable_modules/fable_library/seq.py +1979 -0
  380. arctrl/py/fable_modules/fable_library/seq2.py +221 -0
  381. arctrl/py/fable_modules/fable_library/set.py +2414 -0
  382. arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
  383. arctrl/py/fable_modules/fable_library/string_.py +573 -0
  384. arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
  385. arctrl/py/fable_modules/fable_library/system_text.py +237 -0
  386. arctrl/py/fable_modules/fable_library/task.py +116 -0
  387. arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
  388. arctrl/py/fable_modules/fable_library/thread.py +5 -0
  389. arctrl/py/fable_modules/fable_library/time_span.py +283 -0
  390. arctrl/py/fable_modules/fable_library/timer.py +24 -0
  391. arctrl/py/fable_modules/fable_library/types.py +401 -0
  392. arctrl/py/fable_modules/fable_library/uri.py +109 -0
  393. arctrl/py/fable_modules/fable_library/util.py +2735 -0
  394. arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
  395. arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
  396. arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
  397. arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
  398. arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
  399. arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
  400. arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
  401. arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
  402. arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
  403. arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
  404. arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
  405. arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
  406. arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
  407. arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
  408. arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
  409. arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
  410. arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
  411. arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
  412. arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
  413. arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
  414. arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
  415. arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
  416. arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
  417. arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
  418. arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
  419. arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
  420. arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
  421. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +340 -0
  422. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +466 -0
  423. arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
  424. arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
  425. arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
  426. arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
  427. arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
  428. arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
  429. arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
  430. arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
  431. arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
  432. arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +463 -0
  433. arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
  434. arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
  435. arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
  436. arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
  437. arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
  438. arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
  439. arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +54 -0
  440. arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
  441. arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
  442. arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +216 -0
  443. arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
  444. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +43 -0
  445. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +190 -0
  446. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +92 -0
  447. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +77 -0
  448. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
  449. arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
  450. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +461 -0
  451. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +117 -0
  452. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
  453. arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
  454. arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +236 -0
  455. arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
  456. arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
  457. arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +192 -0
  458. arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +610 -0
  459. arctrl/py/fable_modules/fs_spreadsheet/hash_codes.py +60 -0
  460. arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +329 -0
  461. arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
  462. arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +60 -0
  463. arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
  464. arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
  465. arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
  466. arctrl/py/fable_modules/fs_spreadsheet_py/table.py +54 -0
  467. arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +41 -0
  468. arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +52 -0
  469. arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
  470. arctrl/py/fable_modules/siren/__init__.py +0 -0
  471. arctrl/py/fable_modules/siren/config.py +1038 -0
  472. arctrl/py/fable_modules/siren/formatting.py +1121 -0
  473. arctrl/py/fable_modules/siren/siren.py +1941 -0
  474. arctrl/py/fable_modules/siren/siren_types.py +1229 -0
  475. arctrl/py/fable_modules/siren/theme_variables.py +517 -0
  476. arctrl/py/fable_modules/siren/util.py +37 -0
  477. arctrl/py/fable_modules/siren/yaml.py +101 -0
  478. arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
  479. arctrl/py/fable_modules/thoth_json_core/decode.py +1614 -0
  480. arctrl/py/fable_modules/thoth_json_core/encode.py +305 -0
  481. arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
  482. arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
  483. arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
  484. arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
  485. arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
  486. arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
  487. arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
  488. arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
  489. arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
  490. arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
  491. arctrl/py/fable_modules/yamlicious/encode.py +84 -0
  492. arctrl/py/fable_modules/yamlicious/flow_to_block.py +994 -0
  493. arctrl/py/fable_modules/yamlicious/library.py +10 -0
  494. arctrl/py/fable_modules/yamlicious/persil.py +57 -0
  495. arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
  496. arctrl/py/fable_modules/yamlicious/reader.py +739 -0
  497. arctrl/py/fable_modules/yamlicious/regex.py +29 -0
  498. arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +265 -0
  499. arctrl/py/fable_modules/yamlicious/writer.py +175 -0
  500. arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
  501. arctrl/py/json.py +389 -0
  502. arctrl/py/license.py +169 -0
  503. arctrl/py/rocrate_io.py +242 -0
  504. arctrl/py/template_web.py +23 -0
  505. arctrl/py/xlsx.py +212 -0
  506. arctrl/py/yaml.py +79 -0
  507. arctrl/rocrate.py +21 -0
  508. arctrl-3.0.0.dist-info/METADATA +157 -0
  509. arctrl-3.0.0.dist-info/RECORD +511 -0
  510. arctrl-3.0.0.dist-info/WHEEL +4 -0
  511. arctrl-3.0.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,132 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import Any
4
+ from ..fable_modules.fable_library.array_ import sort_by
5
+ from ..fable_modules.fable_library.option import value
6
+ from ..fable_modules.fable_library.range import range_big_int
7
+ from ..fable_modules.fable_library.reflection import (TypeInfo, class_type)
8
+ from ..fable_modules.fable_library.seq import (to_list, delay, append, singleton, empty, map, length, fold, item)
9
+ from ..fable_modules.fable_library.string_ import join
10
+ from ..fable_modules.fable_library.types import (Array, to_string)
11
+ from ..fable_modules.fable_library.util import (IEnumerable_1, compare_arrays, equals)
12
+ from ..Core.Helper.hash_codes import (box_hash_array, box_hash_option, box_hash_seq)
13
+ from .validation_package import ValidationPackage
14
+
15
+ def _expr3951() -> TypeInfo:
16
+ return class_type("ARCtrl.ValidationPackages.ValidationPackagesConfig", None, ValidationPackagesConfig)
17
+
18
+
19
+ class ValidationPackagesConfig:
20
+ def __init__(self, validation_packages: Array[ValidationPackage], arc_specification: str | None=None) -> None:
21
+ self._arc_specification: str | None = arc_specification
22
+ self._validation_packages: Array[ValidationPackage] = validation_packages
23
+
24
+ @property
25
+ def ValidationPackages(self, __unit: None=None) -> Array[ValidationPackage]:
26
+ this: ValidationPackagesConfig = self
27
+ return this._validation_packages
28
+
29
+ @ValidationPackages.setter
30
+ def ValidationPackages(self, validation_packages: Array[ValidationPackage]) -> None:
31
+ this: ValidationPackagesConfig = self
32
+ this._validation_packages = validation_packages
33
+
34
+ @property
35
+ def ARCSpecification(self, __unit: None=None) -> str | None:
36
+ this: ValidationPackagesConfig = self
37
+ return this._arc_specification
38
+
39
+ @ARCSpecification.setter
40
+ def ARCSpecification(self, arc_specification: str | None=None) -> None:
41
+ this: ValidationPackagesConfig = self
42
+ this._arc_specification = arc_specification
43
+
44
+ @staticmethod
45
+ def make(validation_packages: Array[ValidationPackage], arc_specification: str | None=None) -> ValidationPackagesConfig:
46
+ return ValidationPackagesConfig(validation_packages, arc_specification)
47
+
48
+ def Copy(self, __unit: None=None) -> ValidationPackagesConfig:
49
+ this: ValidationPackagesConfig = self
50
+ validation_packages: Array[ValidationPackage] = this.ValidationPackages
51
+ arc_specification: str | None = this.ARCSpecification
52
+ return ValidationPackagesConfig.make(validation_packages, arc_specification)
53
+
54
+ def __str__(self, __unit: None=None) -> str:
55
+ this: ValidationPackagesConfig = self
56
+ def _arrow3947(__unit: None=None) -> IEnumerable_1[str]:
57
+ def _arrow3946(__unit: None=None) -> IEnumerable_1[str]:
58
+ def _arrow3945(__unit: None=None) -> IEnumerable_1[str]:
59
+ def _arrow3944(__unit: None=None) -> IEnumerable_1[str]:
60
+ def _arrow3943(__unit: None=None) -> IEnumerable_1[str]:
61
+ def _arrow3942(__unit: None=None) -> IEnumerable_1[str]:
62
+ return singleton("}")
63
+
64
+ return append(singleton("]"), delay(_arrow3942))
65
+
66
+ return append(singleton(join((";" + "\n") + "", map(to_string, this.ValidationPackages))), delay(_arrow3943))
67
+
68
+ return append(singleton(" ValidationPackages = ["), delay(_arrow3944))
69
+
70
+ return append(singleton((" ARCSpecification = " + value(this.ARCSpecification)) + "") if (this.ARCSpecification is not None) else empty(), delay(_arrow3945))
71
+
72
+ return append(singleton("{"), delay(_arrow3946))
73
+
74
+ return join("\n", to_list(delay(_arrow3947)))
75
+
76
+ def StructurallyEquals(self, other: ValidationPackagesConfig) -> bool:
77
+ this: ValidationPackagesConfig = self
78
+ def sort(arg: Array[ValidationPackage]) -> Array[ValidationPackage]:
79
+ def projection(vp: ValidationPackage, arg: Any=arg) -> tuple[str, str | None]:
80
+ return (vp.Name, vp.Version)
81
+
82
+ class ObjectExpr3948:
83
+ @property
84
+ def Compare(self) -> Callable[[tuple[str, str | None], tuple[str, str | None]], int]:
85
+ return compare_arrays
86
+
87
+ return sort_by(projection, list(arg), ObjectExpr3948())
88
+
89
+ if equals(this.ARCSpecification, other.ARCSpecification):
90
+ a: IEnumerable_1[ValidationPackage] = sort(this.ValidationPackages)
91
+ b: IEnumerable_1[ValidationPackage] = sort(other.ValidationPackages)
92
+ def folder(acc: bool, e: bool) -> bool:
93
+ if acc:
94
+ return e
95
+
96
+ else:
97
+ return False
98
+
99
+
100
+ def _arrow3950(__unit: None=None) -> IEnumerable_1[bool]:
101
+ def _arrow3949(i: int) -> bool:
102
+ return equals(item(i, a), item(i, b))
103
+
104
+ return map(_arrow3949, range_big_int(0, 1, length(a) - 1))
105
+
106
+ return fold(folder, True, to_list(delay(_arrow3950))) if (length(a) == length(b)) else False
107
+
108
+ else:
109
+ return False
110
+
111
+
112
+ def ReferenceEquals(self, other: ValidationPackagesConfig) -> bool:
113
+ this: ValidationPackagesConfig = self
114
+ return this is other
115
+
116
+ def __eq__(self, other: Any=None) -> bool:
117
+ this: ValidationPackagesConfig = self
118
+ return this.StructurallyEquals(other) if isinstance(other, ValidationPackagesConfig) else False
119
+
120
+ def __hash__(self, __unit: None=None) -> Any:
121
+ this: ValidationPackagesConfig = self
122
+ return box_hash_array([box_hash_option(this.ARCSpecification), box_hash_seq(this.ValidationPackages)])
123
+
124
+
125
+ ValidationPackagesConfig_reflection = _expr3951
126
+
127
+ def ValidationPackagesConfig__ctor_376974AD(validation_packages: Array[ValidationPackage], arc_specification: str | None=None) -> ValidationPackagesConfig:
128
+ return ValidationPackagesConfig(validation_packages, arc_specification)
129
+
130
+
131
+ __all__ = ["ValidationPackagesConfig_reflection"]
132
+
File without changes
@@ -0,0 +1,9 @@
1
+ from ..fable_modules.fable_library.async_builder import Async
2
+ from .web_request_py import download_file as download_file_1
3
+
4
+ def download_file(url: str) -> Async[str]:
5
+ return download_file_1(url)
6
+
7
+
8
+ __all__ = ["download_file"]
9
+
@@ -0,0 +1,135 @@
1
+ from __future__ import annotations
2
+ from abc import abstractmethod
3
+ from collections.abc import Callable
4
+ from dataclasses import dataclass
5
+ import requests
6
+ from typing import (Any, Protocol)
7
+ from ..fable_modules.fable_library.async_builder import (singleton as singleton_1, Async)
8
+ from ..fable_modules.fable_library.map import of_list
9
+ from ..fable_modules.fable_library.option import map
10
+ from ..fable_modules.fable_library.reflection import (TypeInfo, int32_type, string_type, class_type, record_type)
11
+ from ..fable_modules.fable_library.seq import (to_list, delay, map as map_1, collect, singleton)
12
+ from ..fable_modules.fable_library.types import Record
13
+ from ..fable_modules.fable_library.util import (create_obj, IEnumerable_1, compare_primitives)
14
+
15
+ class InteropResponseType(Protocol):
16
+ @property
17
+ @abstractmethod
18
+ def encoding(self) -> str:
19
+ ...
20
+
21
+ @property
22
+ @abstractmethod
23
+ def headers(self) -> Any:
24
+ ...
25
+
26
+ @property
27
+ @abstractmethod
28
+ def status_code(self) -> int:
29
+ ...
30
+
31
+ @property
32
+ @abstractmethod
33
+ def text(self) -> str:
34
+ ...
35
+
36
+
37
+ def _expr4457() -> TypeInfo:
38
+ return record_type("ARCtrl.WebRequestHelpers.Py.Response", [], Response, lambda: [("status_code", int32_type), ("text", string_type), ("headers", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, string_type])), ("encoding", string_type)])
39
+
40
+
41
+ @dataclass(eq = False, repr = False, slots = True)
42
+ class Response(Record):
43
+ status_code: int
44
+ text: str
45
+ headers: Any
46
+ encoding: str
47
+
48
+ Response_reflection = _expr4457
49
+
50
+ def _expr4458() -> TypeInfo:
51
+ return class_type("ARCtrl.WebRequestHelpers.Py.Requests", None, Requests)
52
+
53
+
54
+ class Requests:
55
+ def __init__(self, __unit: None=None) -> None:
56
+ pass
57
+
58
+
59
+ Requests_reflection = _expr4458
60
+
61
+ def Requests__ctor(__unit: None=None) -> Requests:
62
+ return Requests(__unit)
63
+
64
+
65
+ def Requests_createHeadersDict_9F3777D(headers: Any | None=None) -> Any | None:
66
+ def mapping(values: Any, headers: Any=headers) -> Any:
67
+ def _arrow4460(__unit: None=None, values: Any=values) -> IEnumerable_1[tuple[str, Any]]:
68
+ def _arrow4459(pair: Any) -> tuple[str, Any]:
69
+ return (pair[0], pair[1])
70
+
71
+ return map_1(_arrow4459, values)
72
+
73
+ return create_obj(to_list(delay(_arrow4460)))
74
+
75
+ return map(mapping, headers)
76
+
77
+
78
+ def Requests_mapResponseType_Z730CA7D4(response: InteropResponseType) -> Response:
79
+ status_code: int = response.status_code or 0
80
+ text: str = response.text
81
+ encoding: str = response.text
82
+ def _arrow4462(__unit: None=None, response: Any=response) -> IEnumerable_1[tuple[str, str]]:
83
+ def _arrow4461(header_name: str) -> IEnumerable_1[tuple[str, str]]:
84
+ return singleton((header_name, response.headers[header_name]))
85
+
86
+ return collect(_arrow4461, list(response.headers.keys()))
87
+
88
+ class ObjectExpr4463:
89
+ @property
90
+ def Compare(self) -> Callable[[str, str], int]:
91
+ return compare_primitives
92
+
93
+ return Response(status_code, text, of_list(to_list(delay(_arrow4462)), ObjectExpr4463()), encoding)
94
+
95
+
96
+ def Requests_get_43A074E6(url: str, headers: Any | None=None) -> Response:
97
+ headers_dict: Any | None = Requests_createHeadersDict_9F3777D(headers)
98
+ return Requests_mapResponseType_Z730CA7D4(requests.get(url, headers=headers_dict))
99
+
100
+
101
+ def Requests_post_147AE53E(url: str, data: str | None=None, headers: Any | None=None) -> Response:
102
+ headers_dict: Any | None = Requests_createHeadersDict_9F3777D(headers)
103
+ return Requests_mapResponseType_Z730CA7D4(requests.post(url, data=data, headers=headers_dict))
104
+
105
+
106
+ def Requests_put_147AE53E(url: str, data: str | None=None, headers: Any | None=None) -> Response:
107
+ headers_dict: Any | None = Requests_createHeadersDict_9F3777D(headers)
108
+ return Requests_mapResponseType_Z730CA7D4(requests.put(url, data=data, headers=headers_dict))
109
+
110
+
111
+ def Requests_delete_147AE53E(url: str, data: str | None=None, headers: Any | None=None) -> Response:
112
+ headers_dict: Any | None = Requests_createHeadersDict_9F3777D(headers)
113
+ return Requests_mapResponseType_Z730CA7D4(requests.delete(url, data=data, headers=headers_dict))
114
+
115
+
116
+ def Requests_head_147AE53E(url: str, data: str | None=None, headers: Any | None=None) -> Response:
117
+ headers_dict: Any | None = Requests_createHeadersDict_9F3777D(headers)
118
+ return Requests_mapResponseType_Z730CA7D4(requests.head(url, data=data, headers=headers_dict))
119
+
120
+
121
+ def Requests_options_147AE53E(url: str, data: str | None=None, headers: Any | None=None) -> Response:
122
+ headers_dict: Any | None = Requests_createHeadersDict_9F3777D(headers)
123
+ return Requests_mapResponseType_Z730CA7D4(requests.head(url, data=data, headers=headers_dict))
124
+
125
+
126
+ def download_file(url: str) -> Async[str]:
127
+ def _arrow4464(__unit: None=None, url: Any=url) -> Async[str]:
128
+ response: Response = Requests_get_43A074E6(url)
129
+ return singleton_1.Return(response.text)
130
+
131
+ return singleton_1.Delay(_arrow4464)
132
+
133
+
134
+ __all__ = ["Response_reflection", "Requests_reflection", "Requests_createHeadersDict_9F3777D", "Requests_mapResponseType_Z730CA7D4", "Requests_get_43A074E6", "Requests_post_147AE53E", "Requests_put_147AE53E", "Requests_delete_147AE53E", "Requests_head_147AE53E", "Requests_options_147AE53E", "download_file"]
135
+
File without changes
@@ -0,0 +1,141 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import Any
4
+ from ..fable_modules.fable_library.map import (of_seq, empty as empty_1, is_empty, try_find)
5
+ from ..fable_modules.fable_library.result import FSharpResult_2
6
+ from ..fable_modules.fable_library.seq import (map, delay, append, collect, empty, singleton)
7
+ from ..fable_modules.fable_library.types import Array
8
+ from ..fable_modules.fable_library.util import (IEnumerable_1, compare_primitives, get_enumerator, dispose)
9
+ from ..Core.arc_types import (ArcInvestigation, ArcWorkflow, ArcRun)
10
+ from ..Core.Helper.identifier import (Workflow_cwlFileNameFromIdentifier, Run_cwlFileNameFromIdentifier)
11
+ from ..CWL.cwlprocessing_unit import CWLProcessingUnit
12
+ from ..FileSystem.path import normalize_path_key
13
+ from .builder import build_with
14
+ from .build_options import (WorkflowGraphBuildOptions, WorkflowGraphBuildOptionsModule_withRootScope, WorkflowGraphBuildOptionsModule_defaultOptions, WorkflowGraphBuildOptionsModule_withRootWorkflowFilePath, WorkflowGraphBuildOptionsModule_withTryResolveRunPath)
15
+ from .graph_types import (GraphBuildIssue_create_Z2F3B511A, GraphIssueKind, GraphBuildIssue, WorkflowGraph, WorkflowGraphIndex_create_56E060E0, WorkflowGraphIndex)
16
+
17
+ def create_cwl_lookup_from_investigation(investigation: ArcInvestigation | None=None) -> Any:
18
+ if investigation is not None:
19
+ inv: ArcInvestigation = investigation
20
+ def mapping(tupled_arg: tuple[str, CWLProcessingUnit], investigation: Any=investigation) -> tuple[str, CWLProcessingUnit]:
21
+ return (normalize_path_key(tupled_arg[0]), tupled_arg[1])
22
+
23
+ def _arrow1333(__unit: None=None, investigation: Any=investigation) -> IEnumerable_1[tuple[str, CWLProcessingUnit]]:
24
+ def _arrow1330(workflow: ArcWorkflow) -> IEnumerable_1[tuple[str, CWLProcessingUnit]]:
25
+ match_value: CWLProcessingUnit | None = workflow.CWLDescription
26
+ if match_value is None:
27
+ return empty()
28
+
29
+ else:
30
+ cwl: CWLProcessingUnit = match_value
31
+ return singleton((Workflow_cwlFileNameFromIdentifier(workflow.Identifier), cwl))
32
+
33
+
34
+ def _arrow1332(__unit: None=None) -> IEnumerable_1[tuple[str, CWLProcessingUnit]]:
35
+ def _arrow1331(run: ArcRun) -> IEnumerable_1[tuple[str, CWLProcessingUnit]]:
36
+ match_value_1: CWLProcessingUnit | None = run.CWLDescription
37
+ if match_value_1 is None:
38
+ return empty()
39
+
40
+ else:
41
+ cwl_1: CWLProcessingUnit = match_value_1
42
+ return singleton((Run_cwlFileNameFromIdentifier(run.Identifier), cwl_1))
43
+
44
+
45
+ return collect(_arrow1331, inv.Runs)
46
+
47
+ return append(collect(_arrow1330, inv.Workflows), delay(_arrow1332))
48
+
49
+ class ObjectExpr1334:
50
+ @property
51
+ def Compare(self) -> Callable[[str, str], int]:
52
+ return compare_primitives
53
+
54
+ return of_seq(map(mapping, delay(_arrow1333)), ObjectExpr1334())
55
+
56
+ else:
57
+ class ObjectExpr1335:
58
+ @property
59
+ def Compare(self) -> Callable[[str, str], int]:
60
+ return compare_primitives
61
+
62
+ return empty_1(ObjectExpr1335())
63
+
64
+
65
+
66
+ def create_resolver(lookup: Any) -> Callable[[str], CWLProcessingUnit | None] | None:
67
+ if is_empty(lookup):
68
+ return None
69
+
70
+ else:
71
+ def _arrow1336(path: str, lookup: Any=lookup) -> CWLProcessingUnit | None:
72
+ return try_find(normalize_path_key(path), lookup)
73
+
74
+ return _arrow1336
75
+
76
+
77
+
78
+ def create_missing_description_error(identifier: str, scope_type: Any) -> GraphBuildIssue:
79
+ return GraphBuildIssue_create_Z2F3B511A(GraphIssueKind(4), ((("No CWLDescription available for " + str(scope_type)) + " \'") + identifier) + "\'.", identifier)
80
+
81
+
82
+ def of_workflow(workflow: ArcWorkflow) -> FSharpResult_2[WorkflowGraph, GraphBuildIssue]:
83
+ match_value: CWLProcessingUnit | None = workflow.CWLDescription
84
+ if match_value is not None:
85
+ processing_unit: CWLProcessingUnit = match_value
86
+ def _arrow1337(__unit: None=None, workflow: Any=workflow) -> WorkflowGraphBuildOptions:
87
+ options_2: WorkflowGraphBuildOptions
88
+ options_1: WorkflowGraphBuildOptions = WorkflowGraphBuildOptionsModule_withRootScope(workflow.Identifier, WorkflowGraphBuildOptionsModule_defaultOptions)
89
+ options_2 = WorkflowGraphBuildOptionsModule_withRootWorkflowFilePath(Workflow_cwlFileNameFromIdentifier(workflow.Identifier), options_1)
90
+ return WorkflowGraphBuildOptionsModule_withTryResolveRunPath(create_resolver(create_cwl_lookup_from_investigation(workflow.Investigation)), options_2)
91
+
92
+ return FSharpResult_2(0, build_with(_arrow1337(), processing_unit))
93
+
94
+ else:
95
+ return FSharpResult_2(1, create_missing_description_error(workflow.Identifier, "workflow"))
96
+
97
+
98
+
99
+ def of_run(run: ArcRun) -> FSharpResult_2[WorkflowGraph, GraphBuildIssue]:
100
+ match_value: CWLProcessingUnit | None = run.CWLDescription
101
+ if match_value is not None:
102
+ processing_unit: CWLProcessingUnit = match_value
103
+ def _arrow1338(__unit: None=None, run: Any=run) -> WorkflowGraphBuildOptions:
104
+ options_2: WorkflowGraphBuildOptions
105
+ options_1: WorkflowGraphBuildOptions = WorkflowGraphBuildOptionsModule_withRootScope(run.Identifier, WorkflowGraphBuildOptionsModule_defaultOptions)
106
+ options_2 = WorkflowGraphBuildOptionsModule_withRootWorkflowFilePath(Run_cwlFileNameFromIdentifier(run.Identifier), options_1)
107
+ return WorkflowGraphBuildOptionsModule_withTryResolveRunPath(create_resolver(create_cwl_lookup_from_investigation(run.Investigation)), options_2)
108
+
109
+ return FSharpResult_2(0, build_with(_arrow1338(), processing_unit))
110
+
111
+ else:
112
+ return FSharpResult_2(1, create_missing_description_error(run.Identifier, "run"))
113
+
114
+
115
+
116
+ def of_investigation(investigation: ArcInvestigation) -> WorkflowGraphIndex:
117
+ workflow_graphs: Array[tuple[str, FSharpResult_2[WorkflowGraph, GraphBuildIssue]]] = []
118
+ run_graphs: Array[tuple[str, FSharpResult_2[WorkflowGraph, GraphBuildIssue]]] = []
119
+ enumerator: Any = get_enumerator(investigation.Workflows)
120
+ try:
121
+ while enumerator.System_Collections_IEnumerator_MoveNext():
122
+ workflow: ArcWorkflow = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
123
+ (workflow_graphs.append((workflow.Identifier, of_workflow(workflow))))
124
+
125
+ finally:
126
+ dispose(enumerator)
127
+
128
+ enumerator_1: Any = get_enumerator(investigation.Runs)
129
+ try:
130
+ while enumerator_1.System_Collections_IEnumerator_MoveNext():
131
+ run: ArcRun = enumerator_1.System_Collections_Generic_IEnumerator_1_get_Current()
132
+ (run_graphs.append((run.Identifier, of_run(run))))
133
+
134
+ finally:
135
+ dispose(enumerator_1)
136
+
137
+ return WorkflowGraphIndex_create_56E060E0(workflow_graphs, run_graphs)
138
+
139
+
140
+ __all__ = ["create_cwl_lookup_from_investigation", "create_resolver", "create_missing_description_error", "of_workflow", "of_run", "of_investigation"]
141
+
@@ -0,0 +1,45 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from dataclasses import dataclass
4
+ from ..fable_modules.fable_library.reflection import (TypeInfo, string_type, option_type, lambda_type, bool_type, record_type)
5
+ from ..fable_modules.fable_library.types import Record
6
+ from ..CWL.cwlprocessing_unit import (CWLProcessingUnit, CWLProcessingUnit_reflection)
7
+
8
+ def _expr1328() -> TypeInfo:
9
+ return record_type("ARCtrl.WorkflowGraph.WorkflowGraphBuildOptions", [], WorkflowGraphBuildOptions, lambda: [("RootScope", string_type), ("RootWorkflowFilePath", option_type(string_type)), ("TryResolveRunPath", option_type(lambda_type(string_type, option_type(CWLProcessingUnit_reflection())))), ("StrictUnresolvedRunReferences", bool_type), ("ExpandNestedWorkflows", bool_type)])
10
+
11
+
12
+ @dataclass(eq = False, repr = False, slots = True)
13
+ class WorkflowGraphBuildOptions(Record):
14
+ RootScope: str
15
+ RootWorkflowFilePath: str | None
16
+ TryResolveRunPath: Callable[[str], CWLProcessingUnit | None] | None
17
+ StrictUnresolvedRunReferences: bool
18
+ ExpandNestedWorkflows: bool
19
+
20
+ WorkflowGraphBuildOptions_reflection = _expr1328
21
+
22
+ WorkflowGraphBuildOptionsModule_defaultOptions: WorkflowGraphBuildOptions = WorkflowGraphBuildOptions("root", None, None, False, True)
23
+
24
+ def WorkflowGraphBuildOptionsModule_withRootScope(root_scope: str, options: WorkflowGraphBuildOptions) -> WorkflowGraphBuildOptions:
25
+ return WorkflowGraphBuildOptions(root_scope, options.RootWorkflowFilePath, options.TryResolveRunPath, options.StrictUnresolvedRunReferences, options.ExpandNestedWorkflows)
26
+
27
+
28
+ def WorkflowGraphBuildOptionsModule_withRootWorkflowFilePath(root_workflow_file_path: str | None, options: WorkflowGraphBuildOptions) -> WorkflowGraphBuildOptions:
29
+ return WorkflowGraphBuildOptions(options.RootScope, root_workflow_file_path, options.TryResolveRunPath, options.StrictUnresolvedRunReferences, options.ExpandNestedWorkflows)
30
+
31
+
32
+ def WorkflowGraphBuildOptionsModule_withTryResolveRunPath(try_resolve_run_path: Callable[[str], CWLProcessingUnit | None] | None, options: WorkflowGraphBuildOptions) -> WorkflowGraphBuildOptions:
33
+ return WorkflowGraphBuildOptions(options.RootScope, options.RootWorkflowFilePath, try_resolve_run_path, options.StrictUnresolvedRunReferences, options.ExpandNestedWorkflows)
34
+
35
+
36
+ def WorkflowGraphBuildOptionsModule_withStrictUnresolvedRunReferences(strict: bool, options: WorkflowGraphBuildOptions) -> WorkflowGraphBuildOptions:
37
+ return WorkflowGraphBuildOptions(options.RootScope, options.RootWorkflowFilePath, options.TryResolveRunPath, strict, options.ExpandNestedWorkflows)
38
+
39
+
40
+ def WorkflowGraphBuildOptionsModule_withExpandNestedWorkflows(expand_nested_workflows: bool, options: WorkflowGraphBuildOptions) -> WorkflowGraphBuildOptions:
41
+ return WorkflowGraphBuildOptions(options.RootScope, options.RootWorkflowFilePath, options.TryResolveRunPath, options.StrictUnresolvedRunReferences, expand_nested_workflows)
42
+
43
+
44
+ __all__ = ["WorkflowGraphBuildOptions_reflection", "WorkflowGraphBuildOptionsModule_defaultOptions", "WorkflowGraphBuildOptionsModule_withRootScope", "WorkflowGraphBuildOptionsModule_withRootWorkflowFilePath", "WorkflowGraphBuildOptionsModule_withTryResolveRunPath", "WorkflowGraphBuildOptionsModule_withStrictUnresolvedRunReferences", "WorkflowGraphBuildOptionsModule_withExpandNestedWorkflows"]
45
+