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,296 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import (Any, TypeVar)
4
+ from ...fable_modules.fable_library.list import (choose, singleton, of_array, FSharpList)
5
+ from ...fable_modules.fable_library.option import map
6
+ from ...fable_modules.fable_library.seq import map as map_1
7
+ from ...fable_modules.fable_library.string_ import replace
8
+ from ...fable_modules.fable_library.util import IEnumerable_1
9
+ from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, string, list_1 as list_1_2, IGetters)
10
+ from ...fable_modules.thoth_json_core.encode import list_1 as list_1_1
11
+ from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
12
+ from ...Core.comment import Comment
13
+ from ...Core.Process.process import Process
14
+ from ...Core.Process.process_input import ProcessInput
15
+ from ...Core.Process.process_output import ProcessOutput
16
+ from ...Core.Process.process_parameter_value import ProcessParameterValue
17
+ from ...Core.Process.protocol import Protocol
18
+ from ...Core.uri import URIModule_toString
19
+ from ..comment import (ROCrate_encoder as ROCrate_encoder_5, ROCrate_decoder as ROCrate_decoder_5, ISAJson_encoder as ISAJson_encoder_5, ISAJson_decoder as ISAJson_decoder_5)
20
+ from ..context.rocrate.isa_process_context import context_jsonvalue
21
+ from ..decode import Decode_uri
22
+ from ..encode import (try_include, try_include_list_opt)
23
+ from ..idtable import encode
24
+ from ..person import (ROCrate_encodeAuthorListString, ROCrate_decodeAuthorListString)
25
+ from .process_input import (ROCrate_encoder as ROCrate_encoder_3, ROCrate_decoder as ROCrate_decoder_3, ISAJson_encoder as ISAJson_encoder_3, ISAJson_decoder as ISAJson_decoder_3)
26
+ from .process_output import (ROCrate_encoder as ROCrate_encoder_4, ROCrate_decoder as ROCrate_decoder_4, ISAJson_encoder as ISAJson_encoder_4, ISAJson_decoder as ISAJson_decoder_4)
27
+ from .process_parameter_value import (ROCrate_encoder as ROCrate_encoder_2, ROCrate_decoder as ROCrate_decoder_2, ISAJson_encoder as ISAJson_encoder_2, ISAJson_decoder as ISAJson_decoder_2)
28
+ from .protocol import (ROCrate_encoder as ROCrate_encoder_1, ROCrate_decoder as ROCrate_decoder_1, ISAJson_encoder as ISAJson_encoder_1, ISAJson_decoder as ISAJson_decoder_1)
29
+
30
+ __A_ = TypeVar("__A_")
31
+
32
+ def ROCrate_genID(p: Process) -> str:
33
+ match_value: str | None = p.ID
34
+ if match_value is None:
35
+ match_value_1: str | None = p.Name
36
+ if match_value_1 is None:
37
+ return "#EmptyProcess"
38
+
39
+ else:
40
+ return "#Process_" + replace(match_value_1, " ", "_")
41
+
42
+
43
+ else:
44
+ return URIModule_toString(match_value)
45
+
46
+
47
+
48
+ def ROCrate_encoder(study_name: str | None, assay_name: str | None, oa: Process) -> IEncodable:
49
+ def chooser(tupled_arg: tuple[str, IEncodable | None], study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> tuple[str, IEncodable] | None:
50
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
51
+ return (tupled_arg[0], v_1)
52
+
53
+ return map(mapping, tupled_arg[1])
54
+
55
+ def _arrow3355(__unit: None=None, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
56
+ value: str = ROCrate_genID(oa)
57
+ class ObjectExpr3354(IEncodable):
58
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
59
+ return helpers.encode_string(value)
60
+
61
+ return ObjectExpr3354()
62
+
63
+ class ObjectExpr3356(IEncodable):
64
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any], study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> Any:
65
+ return helpers_1.encode_string("Process")
66
+
67
+ def _arrow3358(value_2: str, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
68
+ class ObjectExpr3357(IEncodable):
69
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
70
+ return helpers_2.encode_string(value_2)
71
+
72
+ return ObjectExpr3357()
73
+
74
+ def _arrow3359(oa_1: Protocol, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
75
+ return ROCrate_encoder_1(study_name, assay_name, oa.Name, oa_1)
76
+
77
+ def _arrow3360(author_list: str, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
78
+ return ROCrate_encodeAuthorListString(author_list)
79
+
80
+ def _arrow3362(value_4: str, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
81
+ class ObjectExpr3361(IEncodable):
82
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
83
+ return helpers_3.encode_string(value_4)
84
+
85
+ return ObjectExpr3361()
86
+
87
+ def _arrow3363(value_6: ProcessInput, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
88
+ return ROCrate_encoder_3(value_6)
89
+
90
+ def _arrow3364(value_7: ProcessOutput, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
91
+ return ROCrate_encoder_4(value_7)
92
+
93
+ def _arrow3365(comment: Comment, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
94
+ return ROCrate_encoder_5(comment)
95
+
96
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow3355()), ("@type", list_1_1(singleton(ObjectExpr3356()))), try_include("name", _arrow3358, oa.Name), try_include("executesProtocol", _arrow3359, oa.ExecutesProtocol), try_include_list_opt("parameterValues", ROCrate_encoder_2, oa.ParameterValues), try_include("performer", _arrow3360, oa.Performer), try_include("date", _arrow3362, oa.Date), try_include_list_opt("inputs", _arrow3363, oa.Inputs), try_include_list_opt("outputs", _arrow3364, oa.Outputs), try_include_list_opt("comments", _arrow3365, oa.Comments), ("@context", context_jsonvalue)]))
97
+ class ObjectExpr3366(IEncodable):
98
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any], study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> Any:
99
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
100
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
101
+
102
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
103
+ return helpers_4.encode_object(arg)
104
+
105
+ return ObjectExpr3366()
106
+
107
+
108
+ def _arrow3376(get: IGetters) -> Process:
109
+ def _arrow3367(__unit: None=None) -> str | None:
110
+ object_arg: IOptionalGetter = get.Optional
111
+ return object_arg.Field("@id", Decode_uri)
112
+
113
+ def _arrow3368(__unit: None=None) -> str | None:
114
+ object_arg_1: IOptionalGetter = get.Optional
115
+ return object_arg_1.Field("name", string)
116
+
117
+ def _arrow3369(__unit: None=None) -> Protocol | None:
118
+ object_arg_2: IOptionalGetter = get.Optional
119
+ return object_arg_2.Field("executesProtocol", ROCrate_decoder_1)
120
+
121
+ def _arrow3370(__unit: None=None) -> FSharpList[ProcessParameterValue] | None:
122
+ arg_7: Decoder_1[FSharpList[ProcessParameterValue]] = list_1_2(ROCrate_decoder_2)
123
+ object_arg_3: IOptionalGetter = get.Optional
124
+ return object_arg_3.Field("parameterValues", arg_7)
125
+
126
+ def _arrow3371(__unit: None=None) -> str | None:
127
+ object_arg_4: IOptionalGetter = get.Optional
128
+ return object_arg_4.Field("performer", ROCrate_decodeAuthorListString)
129
+
130
+ def _arrow3372(__unit: None=None) -> str | None:
131
+ object_arg_5: IOptionalGetter = get.Optional
132
+ return object_arg_5.Field("date", string)
133
+
134
+ def _arrow3373(__unit: None=None) -> FSharpList[ProcessInput] | None:
135
+ arg_13: Decoder_1[FSharpList[ProcessInput]] = list_1_2(ROCrate_decoder_3)
136
+ object_arg_6: IOptionalGetter = get.Optional
137
+ return object_arg_6.Field("inputs", arg_13)
138
+
139
+ def _arrow3374(__unit: None=None) -> FSharpList[ProcessOutput] | None:
140
+ arg_15: Decoder_1[FSharpList[ProcessOutput]] = list_1_2(ROCrate_decoder_4)
141
+ object_arg_7: IOptionalGetter = get.Optional
142
+ return object_arg_7.Field("outputs", arg_15)
143
+
144
+ def _arrow3375(__unit: None=None) -> FSharpList[Comment] | None:
145
+ arg_17: Decoder_1[FSharpList[Comment]] = list_1_2(ROCrate_decoder_5)
146
+ object_arg_8: IOptionalGetter = get.Optional
147
+ return object_arg_8.Field("comments", arg_17)
148
+
149
+ return Process(_arrow3367(), _arrow3368(), _arrow3369(), _arrow3370(), _arrow3371(), _arrow3372(), None, None, _arrow3373(), _arrow3374(), _arrow3375())
150
+
151
+
152
+ ROCrate_decoder: Decoder_1[Process] = object(_arrow3376)
153
+
154
+ def ISAJson_encoder(study_name: str | None, assay_name: str | None, id_map: Any | None, oa: Process) -> IEncodable:
155
+ def f(oa_1: Process, study_name: Any=study_name, assay_name: Any=assay_name, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
156
+ def chooser(tupled_arg: tuple[str, IEncodable | None], oa_1: Any=oa_1) -> tuple[str, IEncodable] | None:
157
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
158
+ return (tupled_arg[0], v_1)
159
+
160
+ return map(mapping, tupled_arg[1])
161
+
162
+ def _arrow3380(value: str, oa_1: Any=oa_1) -> IEncodable:
163
+ class ObjectExpr3379(IEncodable):
164
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
165
+ return helpers.encode_string(value)
166
+
167
+ return ObjectExpr3379()
168
+
169
+ def _arrow3382(value_2: str, oa_1: Any=oa_1) -> IEncodable:
170
+ class ObjectExpr3381(IEncodable):
171
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
172
+ return helpers_1.encode_string(value_2)
173
+
174
+ return ObjectExpr3381()
175
+
176
+ def _arrow3383(oa_2: Protocol, oa_1: Any=oa_1) -> IEncodable:
177
+ return ISAJson_encoder_1(study_name, assay_name, oa_1.Name, id_map, oa_2)
178
+
179
+ def _arrow3384(oa_3: ProcessParameterValue, oa_1: Any=oa_1) -> IEncodable:
180
+ return ISAJson_encoder_2(id_map, oa_3)
181
+
182
+ def _arrow3386(value_4: str, oa_1: Any=oa_1) -> IEncodable:
183
+ class ObjectExpr3385(IEncodable):
184
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
185
+ return helpers_2.encode_string(value_4)
186
+
187
+ return ObjectExpr3385()
188
+
189
+ def _arrow3388(value_6: str, oa_1: Any=oa_1) -> IEncodable:
190
+ class ObjectExpr3387(IEncodable):
191
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
192
+ return helpers_3.encode_string(value_6)
193
+
194
+ return ObjectExpr3387()
195
+
196
+ def _arrow3389(oa_4: Process, oa_1: Any=oa_1) -> IEncodable:
197
+ return ISAJson_encoder(study_name, assay_name, id_map, oa_4)
198
+
199
+ def _arrow3390(oa_5: Process, oa_1: Any=oa_1) -> IEncodable:
200
+ return ISAJson_encoder(study_name, assay_name, id_map, oa_5)
201
+
202
+ def _arrow3391(value_8: ProcessInput, oa_1: Any=oa_1) -> IEncodable:
203
+ return ISAJson_encoder_3(id_map, value_8)
204
+
205
+ def _arrow3392(value_9: ProcessOutput, oa_1: Any=oa_1) -> IEncodable:
206
+ return ISAJson_encoder_4(id_map, value_9)
207
+
208
+ def _arrow3393(comment: Comment, oa_1: Any=oa_1) -> IEncodable:
209
+ return ISAJson_encoder_5(id_map, comment)
210
+
211
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow3380, ROCrate_genID(oa_1)), try_include("name", _arrow3382, oa_1.Name), try_include("executesProtocol", _arrow3383, oa_1.ExecutesProtocol), try_include_list_opt("parameterValues", _arrow3384, oa_1.ParameterValues), try_include("performer", _arrow3386, oa_1.Performer), try_include("date", _arrow3388, oa_1.Date), try_include("previousProcess", _arrow3389, oa_1.PreviousProcess), try_include("nextProcess", _arrow3390, oa_1.NextProcess), try_include_list_opt("inputs", _arrow3391, oa_1.Inputs), try_include_list_opt("outputs", _arrow3392, oa_1.Outputs), try_include_list_opt("comments", _arrow3393, oa_1.Comments)]))
212
+ class ObjectExpr3394(IEncodable):
213
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any], oa_1: Any=oa_1) -> Any:
214
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
215
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
216
+
217
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
218
+ return helpers_4.encode_object(arg)
219
+
220
+ return ObjectExpr3394()
221
+
222
+ if id_map is not None:
223
+ def _arrow3395(p: Process, study_name: Any=study_name, assay_name: Any=assay_name, id_map: Any=id_map, oa: Any=oa) -> str:
224
+ return ROCrate_genID(p)
225
+
226
+ return encode(_arrow3395, f, oa, id_map)
227
+
228
+ else:
229
+ return f(oa)
230
+
231
+
232
+
233
+ def _arrow3408(__unit: None=None) -> Decoder_1[Process]:
234
+ def decode(__unit: None=None) -> Decoder_1[Process]:
235
+ def _arrow3407(get: IGetters) -> Process:
236
+ def _arrow3396(__unit: None=None) -> str | None:
237
+ object_arg: IOptionalGetter = get.Optional
238
+ return object_arg.Field("@id", Decode_uri)
239
+
240
+ def _arrow3397(__unit: None=None) -> str | None:
241
+ object_arg_1: IOptionalGetter = get.Optional
242
+ return object_arg_1.Field("name", string)
243
+
244
+ def _arrow3398(__unit: None=None) -> Protocol | None:
245
+ object_arg_2: IOptionalGetter = get.Optional
246
+ return object_arg_2.Field("executesProtocol", ISAJson_decoder_1)
247
+
248
+ def _arrow3399(__unit: None=None) -> FSharpList[ProcessParameterValue] | None:
249
+ arg_7: Decoder_1[FSharpList[ProcessParameterValue]] = list_1_2(ISAJson_decoder_2)
250
+ object_arg_3: IOptionalGetter = get.Optional
251
+ return object_arg_3.Field("parameterValues", arg_7)
252
+
253
+ def _arrow3400(__unit: None=None) -> str | None:
254
+ object_arg_4: IOptionalGetter = get.Optional
255
+ return object_arg_4.Field("performer", string)
256
+
257
+ def _arrow3401(__unit: None=None) -> str | None:
258
+ object_arg_5: IOptionalGetter = get.Optional
259
+ return object_arg_5.Field("date", string)
260
+
261
+ def _arrow3402(__unit: None=None) -> Process | None:
262
+ arg_13: Decoder_1[Process] = decode(None)
263
+ object_arg_6: IOptionalGetter = get.Optional
264
+ return object_arg_6.Field("previousProcess", arg_13)
265
+
266
+ def _arrow3403(__unit: None=None) -> Process | None:
267
+ arg_15: Decoder_1[Process] = decode(None)
268
+ object_arg_7: IOptionalGetter = get.Optional
269
+ return object_arg_7.Field("nextProcess", arg_15)
270
+
271
+ def _arrow3404(__unit: None=None) -> FSharpList[ProcessInput] | None:
272
+ arg_17: Decoder_1[FSharpList[ProcessInput]] = list_1_2(ISAJson_decoder_3)
273
+ object_arg_8: IOptionalGetter = get.Optional
274
+ return object_arg_8.Field("inputs", arg_17)
275
+
276
+ def _arrow3405(__unit: None=None) -> FSharpList[ProcessOutput] | None:
277
+ arg_19: Decoder_1[FSharpList[ProcessOutput]] = list_1_2(ISAJson_decoder_4)
278
+ object_arg_9: IOptionalGetter = get.Optional
279
+ return object_arg_9.Field("outputs", arg_19)
280
+
281
+ def _arrow3406(__unit: None=None) -> FSharpList[Comment] | None:
282
+ arg_21: Decoder_1[FSharpList[Comment]] = list_1_2(ISAJson_decoder_5)
283
+ object_arg_10: IOptionalGetter = get.Optional
284
+ return object_arg_10.Field("comments", arg_21)
285
+
286
+ return Process(_arrow3396(), _arrow3397(), _arrow3398(), _arrow3399(), _arrow3400(), _arrow3401(), _arrow3402(), _arrow3403(), _arrow3404(), _arrow3405(), _arrow3406())
287
+
288
+ return object(_arrow3407)
289
+
290
+ return decode(None)
291
+
292
+
293
+ ISAJson_decoder: Decoder_1[Process] = _arrow3408()
294
+
295
+ __all__ = ["ROCrate_genID", "ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
296
+
@@ -0,0 +1,83 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_modules.fable_library.list import of_array
4
+ from ...fable_modules.thoth_json_core.decode import (one_of, map)
5
+ from ...fable_modules.thoth_json_core.types import (IEncodable, Decoder_1)
6
+ from ...Core.data import Data
7
+ from ...Core.Process.material import Material
8
+ from ...Core.Process.process_input import ProcessInput
9
+ from ...Core.Process.sample import Sample
10
+ from ...Core.Process.source import Source
11
+ from ..data import (ROCrate_encoder as ROCrate_encoder_2, ROCrate_decoder as ROCrate_decoder_3, ISAJson_encoder as ISAJson_encoder_2, ISAJson_decoder as ISAJson_decoder_3)
12
+ from .material import (ROCrate_encoder as ROCrate_encoder_3, ROCrate_decoder as ROCrate_decoder_4, ISAJson_encoder as ISAJson_encoder_3, ISAJson_decoder as ISAJson_decoder_4)
13
+ from .sample import (ROCrate_encoder as ROCrate_encoder_1, ROCrate_decoder as ROCrate_decoder_1, ISAJson_encoder as ISAJson_encoder_1, ISAJson_decoder as ISAJson_decoder_2)
14
+ from .source import (ROCrate_encoder as ROCrate_encoder_4, ROCrate_decoder as ROCrate_decoder_2, ISAJson_encoder as ISAJson_encoder_4, ISAJson_decoder as ISAJson_decoder_1)
15
+
16
+ def ROCrate_encoder(value: ProcessInput) -> IEncodable:
17
+ if value.tag == 1:
18
+ return ROCrate_encoder_1(value.fields[0])
19
+
20
+ elif value.tag == 2:
21
+ return ROCrate_encoder_2(value.fields[0])
22
+
23
+ elif value.tag == 3:
24
+ return ROCrate_encoder_3(value.fields[0])
25
+
26
+ else:
27
+ return ROCrate_encoder_4(value.fields[0])
28
+
29
+
30
+
31
+ def _arrow3315(Item: Sample) -> ProcessInput:
32
+ return ProcessInput(1, Item)
33
+
34
+
35
+ def _arrow3316(Item_1: Source) -> ProcessInput:
36
+ return ProcessInput(0, Item_1)
37
+
38
+
39
+ def _arrow3319(Item_2: Data) -> ProcessInput:
40
+ return ProcessInput(2, Item_2)
41
+
42
+
43
+ def _arrow3321(Item_3: Material) -> ProcessInput:
44
+ return ProcessInput(3, Item_3)
45
+
46
+
47
+ ROCrate_decoder: Decoder_1[ProcessInput] = one_of(of_array([map(_arrow3315, ROCrate_decoder_1), map(_arrow3316, ROCrate_decoder_2), map(_arrow3319, ROCrate_decoder_3), map(_arrow3321, ROCrate_decoder_4)]))
48
+
49
+ def ISAJson_encoder(id_map: Any | None, value: ProcessInput) -> IEncodable:
50
+ if value.tag == 1:
51
+ return ISAJson_encoder_1(id_map, value.fields[0])
52
+
53
+ elif value.tag == 2:
54
+ return ISAJson_encoder_2(id_map, value.fields[0])
55
+
56
+ elif value.tag == 3:
57
+ return ISAJson_encoder_3(id_map, value.fields[0])
58
+
59
+ else:
60
+ return ISAJson_encoder_4(id_map, value.fields[0])
61
+
62
+
63
+
64
+ def _arrow3324(Item: Source) -> ProcessInput:
65
+ return ProcessInput(0, Item)
66
+
67
+
68
+ def _arrow3325(Item_1: Sample) -> ProcessInput:
69
+ return ProcessInput(1, Item_1)
70
+
71
+
72
+ def _arrow3326(Item_2: Data) -> ProcessInput:
73
+ return ProcessInput(2, Item_2)
74
+
75
+
76
+ def _arrow3328(Item_3: Material) -> ProcessInput:
77
+ return ProcessInput(3, Item_3)
78
+
79
+
80
+ ISAJson_decoder: Decoder_1[ProcessInput] = one_of(of_array([map(_arrow3324, ISAJson_decoder_1), map(_arrow3325, ISAJson_decoder_2), map(_arrow3326, ISAJson_decoder_3), map(_arrow3328, ISAJson_decoder_4)]))
81
+
82
+ __all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
83
+
@@ -0,0 +1,67 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_modules.fable_library.list import of_array
4
+ from ...fable_modules.thoth_json_core.decode import (one_of, map)
5
+ from ...fable_modules.thoth_json_core.types import (IEncodable, Decoder_1)
6
+ from ...Core.data import Data
7
+ from ...Core.Process.material import Material
8
+ from ...Core.Process.process_output import ProcessOutput
9
+ from ...Core.Process.sample import Sample
10
+ from ..data import (ROCrate_encoder as ROCrate_encoder_1, ROCrate_decoder as ROCrate_decoder_2, ISAJson_encoder as ISAJson_encoder_1, ISAJson_decoder as ISAJson_decoder_2)
11
+ from .material import (ROCrate_encoder as ROCrate_encoder_2, ROCrate_decoder as ROCrate_decoder_3, ISAJson_encoder as ISAJson_encoder_2, ISAJson_decoder as ISAJson_decoder_3)
12
+ from .sample import (ROCrate_encoder as ROCrate_encoder_3, ROCrate_decoder as ROCrate_decoder_1, ISAJson_encoder as ISAJson_encoder_3, ISAJson_decoder as ISAJson_decoder_1)
13
+
14
+ def ROCrate_encoder(value: ProcessOutput) -> IEncodable:
15
+ if value.tag == 1:
16
+ return ROCrate_encoder_1(value.fields[0])
17
+
18
+ elif value.tag == 2:
19
+ return ROCrate_encoder_2(value.fields[0])
20
+
21
+ else:
22
+ return ROCrate_encoder_3(value.fields[0])
23
+
24
+
25
+
26
+ def _arrow3336(Item: Sample) -> ProcessOutput:
27
+ return ProcessOutput(0, Item)
28
+
29
+
30
+ def _arrow3337(Item_1: Data) -> ProcessOutput:
31
+ return ProcessOutput(1, Item_1)
32
+
33
+
34
+ def _arrow3338(Item_2: Material) -> ProcessOutput:
35
+ return ProcessOutput(2, Item_2)
36
+
37
+
38
+ ROCrate_decoder: Decoder_1[ProcessOutput] = one_of(of_array([map(_arrow3336, ROCrate_decoder_1), map(_arrow3337, ROCrate_decoder_2), map(_arrow3338, ROCrate_decoder_3)]))
39
+
40
+ def ISAJson_encoder(id_map: Any | None, value: ProcessOutput) -> IEncodable:
41
+ if value.tag == 1:
42
+ return ISAJson_encoder_1(id_map, value.fields[0])
43
+
44
+ elif value.tag == 2:
45
+ return ISAJson_encoder_2(id_map, value.fields[0])
46
+
47
+ else:
48
+ return ISAJson_encoder_3(id_map, value.fields[0])
49
+
50
+
51
+
52
+ def _arrow3340(Item: Sample) -> ProcessOutput:
53
+ return ProcessOutput(0, Item)
54
+
55
+
56
+ def _arrow3341(Item_1: Data) -> ProcessOutput:
57
+ return ProcessOutput(1, Item_1)
58
+
59
+
60
+ def _arrow3342(Item_2: Material) -> ProcessOutput:
61
+ return ProcessOutput(2, Item_2)
62
+
63
+
64
+ ISAJson_decoder: Decoder_1[ProcessOutput] = one_of(of_array([map(_arrow3340, ISAJson_decoder_1), map(_arrow3341, ISAJson_decoder_2), map(_arrow3342, ISAJson_decoder_3)]))
65
+
66
+ __all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
67
+
@@ -0,0 +1,81 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import (Any, TypeVar)
4
+ from ...fable_modules.fable_library.list import (choose, of_array, FSharpList)
5
+ from ...fable_modules.fable_library.option import map
6
+ from ...fable_modules.fable_library.seq import map as map_1
7
+ from ...fable_modules.fable_library.util import IEnumerable_1
8
+ from ...fable_modules.thoth_json_core.decode import (object, IOptionalGetter, IGetters)
9
+ from ...fable_modules.thoth_json_core.types import (IEncodable, Decoder_1, IEncoderHelpers_1)
10
+ from ...Core.ontology_annotation import OntologyAnnotation
11
+ from ...Core.Process.process_parameter_value import ProcessParameterValue
12
+ from ...Core.Process.protocol_parameter import ProtocolParameter
13
+ from ...Core.value import Value
14
+ from ..encode import try_include
15
+ from ..ontology_annotation import (OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
16
+ from ..property_value import (encoder, decoder)
17
+ from .protocol_parameter import (ISAJson_encoder as ISAJson_encoder_1, ISAJson_decoder as ISAJson_decoder_1)
18
+ from .value import (encoder as encoder_1, decoder as decoder_1)
19
+
20
+ __A_ = TypeVar("__A_")
21
+
22
+ ROCrate_encoder: Callable[[ProcessParameterValue], IEncodable] = encoder
23
+
24
+ def _arrow3282(alternate_name: str | None=None, measurement_method: str | None=None, description: str | None=None, category: OntologyAnnotation | None=None, value: Value | None=None, unit: OntologyAnnotation | None=None) -> ProcessParameterValue:
25
+ return ProcessParameterValue.create_as_pv(alternate_name, measurement_method, description, category, value, unit)
26
+
27
+
28
+ ROCrate_decoder: Decoder_1[ProcessParameterValue] = decoder(_arrow3282)
29
+
30
+ def ISAJson_genID(oa: ProcessParameterValue) -> Any:
31
+ raise Exception("Not implemented")
32
+
33
+
34
+ def ISAJson_encoder(id_map: Any | None, oa: ProcessParameterValue) -> IEncodable:
35
+ def chooser(tupled_arg: tuple[str, IEncodable | None], id_map: Any=id_map, oa: Any=oa) -> tuple[str, IEncodable] | None:
36
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
37
+ return (tupled_arg[0], v_1)
38
+
39
+ return map(mapping, tupled_arg[1])
40
+
41
+ def _arrow3284(value: ProtocolParameter, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
42
+ return ISAJson_encoder_1(id_map, value)
43
+
44
+ def _arrow3285(value_1: Value, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
45
+ return encoder_1(id_map, value_1)
46
+
47
+ def _arrow3286(oa_1: OntologyAnnotation, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
48
+ return OntologyAnnotation_ISAJson_encoder(id_map, oa_1)
49
+
50
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("category", _arrow3284, oa.Category), try_include("value", _arrow3285, oa.Value), try_include("unit", _arrow3286, oa.Unit)]))
51
+ class ObjectExpr3287(IEncodable):
52
+ def Encode(self, helpers: IEncoderHelpers_1[Any], id_map: Any=id_map, oa: Any=oa) -> Any:
53
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
54
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers))
55
+
56
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
57
+ return helpers.encode_object(arg)
58
+
59
+ return ObjectExpr3287()
60
+
61
+
62
+ def _arrow3291(get: IGetters) -> ProcessParameterValue:
63
+ def _arrow3288(__unit: None=None) -> ProtocolParameter | None:
64
+ object_arg: IOptionalGetter = get.Optional
65
+ return object_arg.Field("category", ISAJson_decoder_1)
66
+
67
+ def _arrow3289(__unit: None=None) -> Value | None:
68
+ object_arg_1: IOptionalGetter = get.Optional
69
+ return object_arg_1.Field("value", decoder_1)
70
+
71
+ def _arrow3290(__unit: None=None) -> OntologyAnnotation | None:
72
+ object_arg_2: IOptionalGetter = get.Optional
73
+ return object_arg_2.Field("unit", OntologyAnnotation_ISAJson_decoder)
74
+
75
+ return ProcessParameterValue(_arrow3288(), _arrow3289(), _arrow3290())
76
+
77
+
78
+ ISAJson_decoder: Decoder_1[ProcessParameterValue] = object(_arrow3291)
79
+
80
+ __all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_genID", "ISAJson_encoder", "ISAJson_decoder"]
81
+