arctrl 3.0.0a3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. arctrl/__init__.py +18 -0
  2. arctrl/py/CWL/__init__.py +0 -0
  3. arctrl/py/CWL/cwltypes.py +150 -0
  4. arctrl/py/CWL/decode.py +973 -0
  5. arctrl/py/CWL/encode.py +1 -0
  6. arctrl/py/CWL/inputs.py +88 -0
  7. arctrl/py/CWL/outputs.py +85 -0
  8. arctrl/py/CWL/requirements.py +77 -0
  9. arctrl/py/CWL/tool_description.py +103 -0
  10. arctrl/py/CWL/workflow_description.py +104 -0
  11. arctrl/py/CWL/workflow_steps.py +113 -0
  12. arctrl/py/Contract/__init__.py +0 -0
  13. arctrl/py/Contract/arc.py +60 -0
  14. arctrl/py/Contract/arc_assay.py +125 -0
  15. arctrl/py/Contract/arc_investigation.py +88 -0
  16. arctrl/py/Contract/arc_run.py +125 -0
  17. arctrl/py/Contract/arc_study.py +126 -0
  18. arctrl/py/Contract/arc_workflow.py +125 -0
  19. arctrl/py/Contract/contract.py +153 -0
  20. arctrl/py/Contract/datamap.py +372 -0
  21. arctrl/py/Contract/git.py +118 -0
  22. arctrl/py/Contract/validation_packages_config.py +107 -0
  23. arctrl/py/ContractIO/__init__.py +0 -0
  24. arctrl/py/ContractIO/contract_io.py +344 -0
  25. arctrl/py/ContractIO/file_system_helper.py +264 -0
  26. arctrl/py/Core/Helper/__init__.py +0 -0
  27. arctrl/py/Core/Helper/collections_.py +438 -0
  28. arctrl/py/Core/Helper/date_time.py +26 -0
  29. arctrl/py/Core/Helper/hash_codes.py +60 -0
  30. arctrl/py/Core/Helper/identifier.py +248 -0
  31. arctrl/py/Core/Helper/orcid.py +42 -0
  32. arctrl/py/Core/Helper/printer.py +13 -0
  33. arctrl/py/Core/Helper/regex.py +554 -0
  34. arctrl/py/Core/Helper/sem_ver.py +71 -0
  35. arctrl/py/Core/Helper/url.py +148 -0
  36. arctrl/py/Core/Process/__init__.py +0 -0
  37. arctrl/py/Core/Process/column_index.py +280 -0
  38. arctrl/py/Core/Process/component.py +200 -0
  39. arctrl/py/Core/Process/factor.py +151 -0
  40. arctrl/py/Core/Process/factor_value.py +182 -0
  41. arctrl/py/Core/Process/material.py +74 -0
  42. arctrl/py/Core/Process/material_attribute.py +95 -0
  43. arctrl/py/Core/Process/material_attribute_value.py +184 -0
  44. arctrl/py/Core/Process/material_type.py +45 -0
  45. arctrl/py/Core/Process/process.py +477 -0
  46. arctrl/py/Core/Process/process_input.py +265 -0
  47. arctrl/py/Core/Process/process_output.py +235 -0
  48. arctrl/py/Core/Process/process_parameter_value.py +200 -0
  49. arctrl/py/Core/Process/process_sequence.py +435 -0
  50. arctrl/py/Core/Process/protocol.py +175 -0
  51. arctrl/py/Core/Process/protocol_parameter.py +98 -0
  52. arctrl/py/Core/Process/sample.py +82 -0
  53. arctrl/py/Core/Process/source.py +62 -0
  54. arctrl/py/Core/Table/__init__.py +0 -0
  55. arctrl/py/Core/Table/arc_table.py +1264 -0
  56. arctrl/py/Core/Table/arc_table_aux.py +575 -0
  57. arctrl/py/Core/Table/arc_tables.py +591 -0
  58. arctrl/py/Core/Table/composite_cell.py +319 -0
  59. arctrl/py/Core/Table/composite_column.py +73 -0
  60. arctrl/py/Core/Table/composite_header.py +739 -0
  61. arctrl/py/Core/__init__.py +0 -0
  62. arctrl/py/Core/arc_types.py +5064 -0
  63. arctrl/py/Core/comment.py +128 -0
  64. arctrl/py/Core/comment_list.py +127 -0
  65. arctrl/py/Core/conversion.py +1313 -0
  66. arctrl/py/Core/data.py +245 -0
  67. arctrl/py/Core/data_context.py +157 -0
  68. arctrl/py/Core/data_file.py +112 -0
  69. arctrl/py/Core/data_map.py +225 -0
  70. arctrl/py/Core/identifier_setters.py +31 -0
  71. arctrl/py/Core/iproperty_value.py +36 -0
  72. arctrl/py/Core/ontology_annotation.py +299 -0
  73. arctrl/py/Core/ontology_source_reference.py +114 -0
  74. arctrl/py/Core/person.py +259 -0
  75. arctrl/py/Core/publication.py +161 -0
  76. arctrl/py/Core/template.py +231 -0
  77. arctrl/py/Core/templates.py +148 -0
  78. arctrl/py/Core/uri.py +11 -0
  79. arctrl/py/Core/value.py +188 -0
  80. arctrl/py/FileSystem/__init__.py +0 -0
  81. arctrl/py/FileSystem/commit.py +21 -0
  82. arctrl/py/FileSystem/default_gitattributes.py +5 -0
  83. arctrl/py/FileSystem/default_gitignore.py +5 -0
  84. arctrl/py/FileSystem/file_system.py +58 -0
  85. arctrl/py/FileSystem/file_system_tree.py +426 -0
  86. arctrl/py/FileSystem/path.py +64 -0
  87. arctrl/py/Json/DataMap/__init__.py +0 -0
  88. arctrl/py/Json/DataMap/data_context.py +101 -0
  89. arctrl/py/Json/DataMap/data_map.py +53 -0
  90. arctrl/py/Json/Process/__init__.py +0 -0
  91. arctrl/py/Json/Process/assay_materials.py +46 -0
  92. arctrl/py/Json/Process/component.py +79 -0
  93. arctrl/py/Json/Process/factor.py +107 -0
  94. arctrl/py/Json/Process/factor_value.py +101 -0
  95. arctrl/py/Json/Process/material.py +226 -0
  96. arctrl/py/Json/Process/material_attribute.py +79 -0
  97. arctrl/py/Json/Process/material_attribute_value.py +101 -0
  98. arctrl/py/Json/Process/material_type.py +53 -0
  99. arctrl/py/Json/Process/process.py +296 -0
  100. arctrl/py/Json/Process/process_input.py +83 -0
  101. arctrl/py/Json/Process/process_output.py +67 -0
  102. arctrl/py/Json/Process/process_parameter_value.py +81 -0
  103. arctrl/py/Json/Process/protocol.py +354 -0
  104. arctrl/py/Json/Process/protocol_parameter.py +79 -0
  105. arctrl/py/Json/Process/sample.py +277 -0
  106. arctrl/py/Json/Process/source.py +214 -0
  107. arctrl/py/Json/Process/study_materials.py +52 -0
  108. arctrl/py/Json/Process/value.py +56 -0
  109. arctrl/py/Json/ROCrate/__init__.py +0 -0
  110. arctrl/py/Json/ROCrate/ldcontext.py +133 -0
  111. arctrl/py/Json/ROCrate/ldgraph.py +111 -0
  112. arctrl/py/Json/ROCrate/ldnode.py +290 -0
  113. arctrl/py/Json/ROCrate/ldref.py +44 -0
  114. arctrl/py/Json/ROCrate/ldvalue.py +102 -0
  115. arctrl/py/Json/Table/__init__.py +0 -0
  116. arctrl/py/Json/Table/arc_table.py +393 -0
  117. arctrl/py/Json/Table/cell_table.py +83 -0
  118. arctrl/py/Json/Table/composite_cell.py +136 -0
  119. arctrl/py/Json/Table/composite_header.py +67 -0
  120. arctrl/py/Json/Table/iotype.py +24 -0
  121. arctrl/py/Json/Table/oatable.py +82 -0
  122. arctrl/py/Json/Table/templates.py +281 -0
  123. arctrl/py/Json/__init__.py +0 -0
  124. arctrl/py/Json/assay.py +600 -0
  125. arctrl/py/Json/comment.py +206 -0
  126. arctrl/py/Json/context/rocrate/__init__.py +0 -0
  127. arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
  128. arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
  129. arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
  130. arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
  131. arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
  132. arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
  133. arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
  134. arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
  135. arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
  136. arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
  137. arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
  138. arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
  139. arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
  140. arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
  141. arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
  142. arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
  143. arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
  144. arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
  145. arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
  146. arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
  147. arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
  148. arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
  149. arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
  150. arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
  151. arctrl/py/Json/converter_options.py +23 -0
  152. arctrl/py/Json/data.py +356 -0
  153. arctrl/py/Json/data_file.py +63 -0
  154. arctrl/py/Json/decode.py +155 -0
  155. arctrl/py/Json/encode.py +92 -0
  156. arctrl/py/Json/idtable.py +44 -0
  157. arctrl/py/Json/investigation.py +695 -0
  158. arctrl/py/Json/ontology_annotation.py +404 -0
  159. arctrl/py/Json/ontology_source_reference.py +255 -0
  160. arctrl/py/Json/person.py +658 -0
  161. arctrl/py/Json/property_value.py +359 -0
  162. arctrl/py/Json/publication.py +279 -0
  163. arctrl/py/Json/string_table.py +76 -0
  164. arctrl/py/Json/study.py +793 -0
  165. arctrl/py/JsonIO/DataMap/__init__.py +0 -0
  166. arctrl/py/JsonIO/DataMap/data_map.py +53 -0
  167. arctrl/py/JsonIO/Process/__init__.py +0 -0
  168. arctrl/py/JsonIO/Process/component.py +60 -0
  169. arctrl/py/JsonIO/Process/factor.py +36 -0
  170. arctrl/py/JsonIO/Process/factor_value.py +38 -0
  171. arctrl/py/JsonIO/Process/material.py +60 -0
  172. arctrl/py/JsonIO/Process/material_attribute.py +38 -0
  173. arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
  174. arctrl/py/JsonIO/Process/material_type.py +36 -0
  175. arctrl/py/JsonIO/Process/process.py +60 -0
  176. arctrl/py/JsonIO/Process/process_input.py +38 -0
  177. arctrl/py/JsonIO/Process/process_output.py +60 -0
  178. arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
  179. arctrl/py/JsonIO/Process/process_sequence.py +71 -0
  180. arctrl/py/JsonIO/Process/protocol.py +60 -0
  181. arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
  182. arctrl/py/JsonIO/Process/sample.py +60 -0
  183. arctrl/py/JsonIO/Process/source.py +60 -0
  184. arctrl/py/JsonIO/Process/study_materials.py +52 -0
  185. arctrl/py/JsonIO/Process/value.py +32 -0
  186. arctrl/py/JsonIO/Table/__init__.py +0 -0
  187. arctrl/py/JsonIO/Table/arc_table.py +121 -0
  188. arctrl/py/JsonIO/Table/composite_cell.py +36 -0
  189. arctrl/py/JsonIO/Table/composite_header.py +36 -0
  190. arctrl/py/JsonIO/Table/compression.py +85 -0
  191. arctrl/py/JsonIO/Table/iotype.py +36 -0
  192. arctrl/py/JsonIO/Table/templates.py +113 -0
  193. arctrl/py/JsonIO/__init__.py +0 -0
  194. arctrl/py/JsonIO/assay.py +113 -0
  195. arctrl/py/JsonIO/comment.py +80 -0
  196. arctrl/py/JsonIO/data.py +60 -0
  197. arctrl/py/JsonIO/data_file.py +58 -0
  198. arctrl/py/JsonIO/decode.py +9 -0
  199. arctrl/py/JsonIO/encode.py +1 -0
  200. arctrl/py/JsonIO/investigation.py +113 -0
  201. arctrl/py/JsonIO/ldobject.py +106 -0
  202. arctrl/py/JsonIO/ontology_annotation.py +80 -0
  203. arctrl/py/JsonIO/ontology_source_reference.py +80 -0
  204. arctrl/py/JsonIO/person.py +82 -0
  205. arctrl/py/JsonIO/publication.py +82 -0
  206. arctrl/py/JsonIO/study.py +114 -0
  207. arctrl/py/ROCrate/Generic/__init__.py +0 -0
  208. arctrl/py/ROCrate/Generic/comment.py +131 -0
  209. arctrl/py/ROCrate/Generic/dataset.py +817 -0
  210. arctrl/py/ROCrate/Generic/defined_term.py +131 -0
  211. arctrl/py/ROCrate/Generic/file.py +237 -0
  212. arctrl/py/ROCrate/Generic/lab_process.py +324 -0
  213. arctrl/py/ROCrate/Generic/lab_protocol.py +338 -0
  214. arctrl/py/ROCrate/Generic/organization.py +83 -0
  215. arctrl/py/ROCrate/Generic/person.py +484 -0
  216. arctrl/py/ROCrate/Generic/postal_address.py +195 -0
  217. arctrl/py/ROCrate/Generic/property_value.py +696 -0
  218. arctrl/py/ROCrate/Generic/sample.py +202 -0
  219. arctrl/py/ROCrate/Generic/scholarly_article.py +229 -0
  220. arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
  221. arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
  222. arctrl/py/ROCrate/ISAProfile/data.py +65 -0
  223. arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
  224. arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
  225. arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
  226. arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
  227. arctrl/py/ROCrate/ISAProfile/person.py +72 -0
  228. arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
  229. arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
  230. arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
  231. arctrl/py/ROCrate/ISAProfile/study.py +74 -0
  232. arctrl/py/ROCrate/__init__.py +0 -0
  233. arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
  234. arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
  235. arctrl/py/ROCrate/helper.py +8 -0
  236. arctrl/py/ROCrate/ldcontext.py +362 -0
  237. arctrl/py/ROCrate/ldobject.py +1247 -0
  238. arctrl/py/ROCrate/rocrate_context.py +51 -0
  239. arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
  240. arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +193 -0
  241. arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
  242. arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +210 -0
  243. arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
  244. arctrl/py/Spreadsheet/DataMapTable/__init__.py +0 -0
  245. arctrl/py/Spreadsheet/DataMapTable/data_map_column.py +114 -0
  246. arctrl/py/Spreadsheet/DataMapTable/data_map_header.py +618 -0
  247. arctrl/py/Spreadsheet/DataMapTable/data_map_table.py +119 -0
  248. arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
  249. arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
  250. arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
  251. arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
  252. arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
  253. arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
  254. arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
  255. arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
  256. arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
  257. arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
  258. arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
  259. arctrl/py/Spreadsheet/Metadata/run.py +122 -0
  260. arctrl/py/Spreadsheet/Metadata/sparse_table.py +508 -0
  261. arctrl/py/Spreadsheet/Metadata/study.py +312 -0
  262. arctrl/py/Spreadsheet/Metadata/workflow.py +151 -0
  263. arctrl/py/Spreadsheet/__init__.py +0 -0
  264. arctrl/py/Spreadsheet/arc_assay.py +233 -0
  265. arctrl/py/Spreadsheet/arc_investigation.py +418 -0
  266. arctrl/py/Spreadsheet/arc_run.py +190 -0
  267. arctrl/py/Spreadsheet/arc_study.py +144 -0
  268. arctrl/py/Spreadsheet/arc_workflow.py +176 -0
  269. arctrl/py/Spreadsheet/assembly_info.py +1 -0
  270. arctrl/py/Spreadsheet/collection_aux.py +167 -0
  271. arctrl/py/Spreadsheet/data_map.py +44 -0
  272. arctrl/py/Spreadsheet/template.py +460 -0
  273. arctrl/py/ValidationPackages/__init__.py +0 -0
  274. arctrl/py/ValidationPackages/validation_package.py +82 -0
  275. arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
  276. arctrl/py/WebRequest/__init__.py +0 -0
  277. arctrl/py/WebRequest/web_request.py +9 -0
  278. arctrl/py/WebRequest/web_request_py.py +135 -0
  279. arctrl/py/Yaml/__init__.py +0 -0
  280. arctrl/py/Yaml/decode.py +1 -0
  281. arctrl/py/Yaml/encode.py +10 -0
  282. arctrl/py/Yaml/validation_package.py +77 -0
  283. arctrl/py/Yaml/validation_packages_config.py +86 -0
  284. arctrl/py/__init__.py +0 -0
  285. arctrl/py/arc.py +1400 -0
  286. arctrl/py/column_index.py +280 -0
  287. arctrl/py/conversion.py +2184 -0
  288. arctrl/py/cross_async.py +76 -0
  289. arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
  290. arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
  291. arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
  292. arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
  293. arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
  294. arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
  295. arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
  296. arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
  297. arctrl/py/fable_modules/fable_library/__init__.py +0 -0
  298. arctrl/py/fable_modules/fable_library/array_.py +1528 -0
  299. arctrl/py/fable_modules/fable_library/async_.py +377 -0
  300. arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
  301. arctrl/py/fable_modules/fable_library/big_int.py +330 -0
  302. arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
  303. arctrl/py/fable_modules/fable_library/boolean.py +26 -0
  304. arctrl/py/fable_modules/fable_library/char.py +237 -0
  305. arctrl/py/fable_modules/fable_library/choice.py +212 -0
  306. arctrl/py/fable_modules/fable_library/date.py +779 -0
  307. arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
  308. arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
  309. arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
  310. arctrl/py/fable_modules/fable_library/double.py +87 -0
  311. arctrl/py/fable_modules/fable_library/encoding.py +41 -0
  312. arctrl/py/fable_modules/fable_library/event.py +206 -0
  313. arctrl/py/fable_modules/fable_library/file.py +107 -0
  314. arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
  315. arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
  316. arctrl/py/fable_modules/fable_library/global_.py +63 -0
  317. arctrl/py/fable_modules/fable_library/guid.py +41 -0
  318. arctrl/py/fable_modules/fable_library/int32.py +73 -0
  319. arctrl/py/fable_modules/fable_library/list.py +1788 -0
  320. arctrl/py/fable_modules/fable_library/long.py +240 -0
  321. arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
  322. arctrl/py/fable_modules/fable_library/map.py +1854 -0
  323. arctrl/py/fable_modules/fable_library/map_util.py +148 -0
  324. arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
  325. arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
  326. arctrl/py/fable_modules/fable_library/native.py +45 -0
  327. arctrl/py/fable_modules/fable_library/numeric.py +46 -0
  328. arctrl/py/fable_modules/fable_library/observable.py +222 -0
  329. arctrl/py/fable_modules/fable_library/option.py +128 -0
  330. arctrl/py/fable_modules/fable_library/path.py +62 -0
  331. arctrl/py/fable_modules/fable_library/range.py +117 -0
  332. arctrl/py/fable_modules/fable_library/reflection.py +463 -0
  333. arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
  334. arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
  335. arctrl/py/fable_modules/fable_library/result.py +212 -0
  336. arctrl/py/fable_modules/fable_library/seq.py +1979 -0
  337. arctrl/py/fable_modules/fable_library/seq2.py +221 -0
  338. arctrl/py/fable_modules/fable_library/set.py +2414 -0
  339. arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
  340. arctrl/py/fable_modules/fable_library/string_.py +573 -0
  341. arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
  342. arctrl/py/fable_modules/fable_library/system_text.py +237 -0
  343. arctrl/py/fable_modules/fable_library/task.py +116 -0
  344. arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
  345. arctrl/py/fable_modules/fable_library/thread.py +5 -0
  346. arctrl/py/fable_modules/fable_library/time_span.py +283 -0
  347. arctrl/py/fable_modules/fable_library/timer.py +24 -0
  348. arctrl/py/fable_modules/fable_library/types.py +401 -0
  349. arctrl/py/fable_modules/fable_library/uri.py +109 -0
  350. arctrl/py/fable_modules/fable_library/util.py +2735 -0
  351. arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
  352. arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
  353. arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
  354. arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
  355. arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
  356. arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
  357. arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
  358. arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
  359. arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
  360. arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
  361. arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
  362. arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
  363. arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
  364. arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
  365. arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
  366. arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
  367. arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
  368. arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
  369. arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
  370. arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
  371. arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
  372. arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
  373. arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
  374. arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
  375. arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
  376. arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
  377. arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
  378. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +338 -0
  379. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +469 -0
  380. arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
  381. arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
  382. arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
  383. arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
  384. arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
  385. arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
  386. arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
  387. arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
  388. arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
  389. arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +464 -0
  390. arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
  391. arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
  392. arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
  393. arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
  394. arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
  395. arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
  396. arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +57 -0
  397. arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
  398. arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
  399. arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +217 -0
  400. arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
  401. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +47 -0
  402. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +186 -0
  403. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +90 -0
  404. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +78 -0
  405. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
  406. arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
  407. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +393 -0
  408. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +127 -0
  409. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
  410. arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
  411. arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +218 -0
  412. arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
  413. arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
  414. arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +180 -0
  415. arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +600 -0
  416. arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +330 -0
  417. arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
  418. arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +63 -0
  419. arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
  420. arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
  421. arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
  422. arctrl/py/fable_modules/fs_spreadsheet_py/table.py +53 -0
  423. arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +40 -0
  424. arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +54 -0
  425. arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
  426. arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
  427. arctrl/py/fable_modules/thoth_json_core/decode.py +1588 -0
  428. arctrl/py/fable_modules/thoth_json_core/encode.py +261 -0
  429. arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
  430. arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
  431. arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
  432. arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
  433. arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
  434. arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
  435. arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
  436. arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
  437. arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
  438. arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
  439. arctrl/py/fable_modules/yamlicious/encode.py +84 -0
  440. arctrl/py/fable_modules/yamlicious/library.py +10 -0
  441. arctrl/py/fable_modules/yamlicious/persil.py +57 -0
  442. arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
  443. arctrl/py/fable_modules/yamlicious/reader.py +665 -0
  444. arctrl/py/fable_modules/yamlicious/regex.py +21 -0
  445. arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +256 -0
  446. arctrl/py/fable_modules/yamlicious/writer.py +175 -0
  447. arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
  448. arctrl/py/json.py +213 -0
  449. arctrl/py/rocrate_io.py +72 -0
  450. arctrl/py/template_web.py +23 -0
  451. arctrl/py/xlsx.py +148 -0
  452. arctrl/rocrate.py +21 -0
  453. arctrl-3.0.0a3.dist-info/LICENSE +21 -0
  454. arctrl-3.0.0a3.dist-info/METADATA +119 -0
  455. arctrl-3.0.0a3.dist-info/RECORD +456 -0
  456. arctrl-3.0.0a3.dist-info/WHEEL +4 -0
@@ -0,0 +1,101 @@
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.material_attribute import MaterialAttribute
12
+ from ...Core.Process.material_attribute_value import (MaterialAttributeValue, MaterialAttributeValue_createAsPV)
13
+ from ...Core.value import Value as Value_1
14
+ from ..decode import Decode_uri
15
+ from ..encode import try_include
16
+ from ..idtable import encode
17
+ from ..ontology_annotation import (OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
18
+ from ..property_value import (encoder, decoder, gen_id)
19
+ from .material_attribute import (encoder as encoder_1, decoder as decoder_1)
20
+ from .value import (encoder as encoder_2, decoder as decoder_2)
21
+
22
+ __A_ = TypeVar("__A_")
23
+
24
+ ROCrate_encoder: Callable[[MaterialAttributeValue], IEncodable] = encoder
25
+
26
+ ROCrate_decoder: Decoder_1[MaterialAttributeValue] = decoder(MaterialAttributeValue_createAsPV)
27
+
28
+ def ISAJson_genID(oa: MaterialAttributeValue) -> str:
29
+ return gen_id(oa)
30
+
31
+
32
+ def ISAJson_encoder(id_map: Any | None, oa: MaterialAttributeValue) -> IEncodable:
33
+ def f(oa_1: MaterialAttributeValue, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
34
+ def chooser(tupled_arg: tuple[str, IEncodable | None], oa_1: Any=oa_1) -> tuple[str, IEncodable] | None:
35
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
36
+ return (tupled_arg[0], v_1)
37
+
38
+ return map(mapping, tupled_arg[1])
39
+
40
+ def _arrow2477(value: str, oa_1: Any=oa_1) -> IEncodable:
41
+ class ObjectExpr2476(IEncodable):
42
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
43
+ return helpers.encode_string(value)
44
+
45
+ return ObjectExpr2476()
46
+
47
+ def _arrow2478(value_2: MaterialAttribute, oa_1: Any=oa_1) -> IEncodable:
48
+ return encoder_1(id_map, value_2)
49
+
50
+ def _arrow2479(value_3: Value_1, oa_1: Any=oa_1) -> IEncodable:
51
+ return encoder_2(id_map, value_3)
52
+
53
+ def _arrow2480(oa_3: OntologyAnnotation, oa_1: Any=oa_1) -> IEncodable:
54
+ return OntologyAnnotation_ISAJson_encoder(id_map, oa_3)
55
+
56
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow2477, ISAJson_genID(oa_1)), try_include("category", _arrow2478, oa_1.Category), try_include("value", _arrow2479, oa_1.Value), try_include("unit", _arrow2480, oa_1.Unit)]))
57
+ class ObjectExpr2481(IEncodable):
58
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any], oa_1: Any=oa_1) -> Any:
59
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
60
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_1))
61
+
62
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
63
+ return helpers_1.encode_object(arg)
64
+
65
+ return ObjectExpr2481()
66
+
67
+ if id_map is not None:
68
+ def _arrow2482(oa_4: MaterialAttributeValue, id_map: Any=id_map, oa: Any=oa) -> str:
69
+ return ISAJson_genID(oa_4)
70
+
71
+ return encode(_arrow2482, f, oa, id_map)
72
+
73
+ else:
74
+ return f(oa)
75
+
76
+
77
+
78
+ def _arrow2487(get: IGetters) -> MaterialAttributeValue:
79
+ def _arrow2483(__unit: None=None) -> str | None:
80
+ object_arg: IOptionalGetter = get.Optional
81
+ return object_arg.Field("@id", Decode_uri)
82
+
83
+ def _arrow2484(__unit: None=None) -> MaterialAttribute | None:
84
+ object_arg_1: IOptionalGetter = get.Optional
85
+ return object_arg_1.Field("category", decoder_1)
86
+
87
+ def _arrow2485(__unit: None=None) -> Value_1 | None:
88
+ object_arg_2: IOptionalGetter = get.Optional
89
+ return object_arg_2.Field("value", decoder_2)
90
+
91
+ def _arrow2486(__unit: None=None) -> OntologyAnnotation | None:
92
+ object_arg_3: IOptionalGetter = get.Optional
93
+ return object_arg_3.Field("unit", OntologyAnnotation_ISAJson_decoder)
94
+
95
+ return MaterialAttributeValue(_arrow2483(), _arrow2484(), _arrow2485(), _arrow2486())
96
+
97
+
98
+ ISAJson_decoder: Decoder_1[MaterialAttributeValue] = object(_arrow2487)
99
+
100
+ __all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_genID", "ISAJson_encoder", "ISAJson_decoder"]
101
+
@@ -0,0 +1,53 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import (Any, TypeVar)
4
+ from ...fable_modules.fable_library.result import FSharpResult_2
5
+ from ...fable_modules.thoth_json_core.decode import string
6
+ from ...fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1, ErrorReason_1, IDecoderHelpers_1)
7
+ from ...Core.Process.material_type import MaterialType
8
+
9
+ __A_ = TypeVar("__A_")
10
+
11
+ def ROCrate_encoder(value: MaterialType) -> IEncodable:
12
+ if value.tag == 1:
13
+ class ObjectExpr2434(IEncodable):
14
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any], value: Any=value) -> Any:
15
+ return helpers_1.encode_string("Labeled Extract Name")
16
+
17
+ return ObjectExpr2434()
18
+
19
+ else:
20
+ class ObjectExpr2438(IEncodable):
21
+ def Encode(self, helpers: IEncoderHelpers_1[Any], value: Any=value) -> Any:
22
+ return helpers.encode_string("Extract Name")
23
+
24
+ return ObjectExpr2438()
25
+
26
+
27
+
28
+ class ObjectExpr2443(Decoder_1[MaterialType]):
29
+ def Decode(self, s: IDecoderHelpers_1[Any], json: Any) -> FSharpResult_2[MaterialType, tuple[str, ErrorReason_1[__A_]]]:
30
+ match_value: FSharpResult_2[str, tuple[str, ErrorReason_1[__A_]]] = string.Decode(s, json)
31
+ if match_value.tag == 1:
32
+ return FSharpResult_2(1, match_value.fields[0])
33
+
34
+ elif match_value.fields[0] == "Extract Name":
35
+ return FSharpResult_2(0, MaterialType(0))
36
+
37
+ elif match_value.fields[0] == "Labeled Extract Name":
38
+ return FSharpResult_2(0, MaterialType(1))
39
+
40
+ else:
41
+ s_1: str = match_value.fields[0]
42
+ return FSharpResult_2(1, (("Could not parse " + s_1) + "No other value than \"Extract Name\" or \"Labeled Extract Name\" allowed for materialtype", ErrorReason_1(0, s_1, json)))
43
+
44
+
45
+
46
+ ROCrate_decoder: Decoder_1[MaterialType] = ObjectExpr2443()
47
+
48
+ ISAJson_encoder: Callable[[MaterialType], IEncodable] = ROCrate_encoder
49
+
50
+ ISAJson_decoder: Decoder_1[MaterialType] = ROCrate_decoder
51
+
52
+ __all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
53
+
@@ -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 _arrow2678(__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 ObjectExpr2677(IEncodable):
58
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
59
+ return helpers.encode_string(value)
60
+
61
+ return ObjectExpr2677()
62
+
63
+ class ObjectExpr2679(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 _arrow2681(value_2: str, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
68
+ class ObjectExpr2680(IEncodable):
69
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
70
+ return helpers_2.encode_string(value_2)
71
+
72
+ return ObjectExpr2680()
73
+
74
+ def _arrow2682(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 _arrow2683(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 _arrow2685(value_4: str, study_name: Any=study_name, assay_name: Any=assay_name, oa: Any=oa) -> IEncodable:
81
+ class ObjectExpr2684(IEncodable):
82
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
83
+ return helpers_3.encode_string(value_4)
84
+
85
+ return ObjectExpr2684()
86
+
87
+ def _arrow2686(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 _arrow2687(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 _arrow2688(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", _arrow2678()), ("@type", list_1_1(singleton(ObjectExpr2679()))), try_include("name", _arrow2681, oa.Name), try_include("executesProtocol", _arrow2682, oa.ExecutesProtocol), try_include_list_opt("parameterValues", ROCrate_encoder_2, oa.ParameterValues), try_include("performer", _arrow2683, oa.Performer), try_include("date", _arrow2685, oa.Date), try_include_list_opt("inputs", _arrow2686, oa.Inputs), try_include_list_opt("outputs", _arrow2687, oa.Outputs), try_include_list_opt("comments", _arrow2688, oa.Comments), ("@context", context_jsonvalue)]))
97
+ class ObjectExpr2689(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 ObjectExpr2689()
106
+
107
+
108
+ def _arrow2699(get: IGetters) -> Process:
109
+ def _arrow2690(__unit: None=None) -> str | None:
110
+ object_arg: IOptionalGetter = get.Optional
111
+ return object_arg.Field("@id", Decode_uri)
112
+
113
+ def _arrow2691(__unit: None=None) -> str | None:
114
+ object_arg_1: IOptionalGetter = get.Optional
115
+ return object_arg_1.Field("name", string)
116
+
117
+ def _arrow2692(__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 _arrow2693(__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 _arrow2694(__unit: None=None) -> str | None:
127
+ object_arg_4: IOptionalGetter = get.Optional
128
+ return object_arg_4.Field("performer", ROCrate_decodeAuthorListString)
129
+
130
+ def _arrow2695(__unit: None=None) -> str | None:
131
+ object_arg_5: IOptionalGetter = get.Optional
132
+ return object_arg_5.Field("date", string)
133
+
134
+ def _arrow2696(__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 _arrow2697(__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 _arrow2698(__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(_arrow2690(), _arrow2691(), _arrow2692(), _arrow2693(), _arrow2694(), _arrow2695(), None, None, _arrow2696(), _arrow2697(), _arrow2698())
150
+
151
+
152
+ ROCrate_decoder: Decoder_1[Process] = object(_arrow2699)
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 _arrow2703(value: str, oa_1: Any=oa_1) -> IEncodable:
163
+ class ObjectExpr2702(IEncodable):
164
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
165
+ return helpers.encode_string(value)
166
+
167
+ return ObjectExpr2702()
168
+
169
+ def _arrow2705(value_2: str, oa_1: Any=oa_1) -> IEncodable:
170
+ class ObjectExpr2704(IEncodable):
171
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
172
+ return helpers_1.encode_string(value_2)
173
+
174
+ return ObjectExpr2704()
175
+
176
+ def _arrow2706(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 _arrow2707(oa_3: ProcessParameterValue, oa_1: Any=oa_1) -> IEncodable:
180
+ return ISAJson_encoder_2(id_map, oa_3)
181
+
182
+ def _arrow2709(value_4: str, oa_1: Any=oa_1) -> IEncodable:
183
+ class ObjectExpr2708(IEncodable):
184
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
185
+ return helpers_2.encode_string(value_4)
186
+
187
+ return ObjectExpr2708()
188
+
189
+ def _arrow2711(value_6: str, oa_1: Any=oa_1) -> IEncodable:
190
+ class ObjectExpr2710(IEncodable):
191
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
192
+ return helpers_3.encode_string(value_6)
193
+
194
+ return ObjectExpr2710()
195
+
196
+ def _arrow2712(oa_4: Process, oa_1: Any=oa_1) -> IEncodable:
197
+ return ISAJson_encoder(study_name, assay_name, id_map, oa_4)
198
+
199
+ def _arrow2713(oa_5: Process, oa_1: Any=oa_1) -> IEncodable:
200
+ return ISAJson_encoder(study_name, assay_name, id_map, oa_5)
201
+
202
+ def _arrow2714(value_8: ProcessInput, oa_1: Any=oa_1) -> IEncodable:
203
+ return ISAJson_encoder_3(id_map, value_8)
204
+
205
+ def _arrow2715(value_9: ProcessOutput, oa_1: Any=oa_1) -> IEncodable:
206
+ return ISAJson_encoder_4(id_map, value_9)
207
+
208
+ def _arrow2716(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", _arrow2703, ROCrate_genID(oa_1)), try_include("name", _arrow2705, oa_1.Name), try_include("executesProtocol", _arrow2706, oa_1.ExecutesProtocol), try_include_list_opt("parameterValues", _arrow2707, oa_1.ParameterValues), try_include("performer", _arrow2709, oa_1.Performer), try_include("date", _arrow2711, oa_1.Date), try_include("previousProcess", _arrow2712, oa_1.PreviousProcess), try_include("nextProcess", _arrow2713, oa_1.NextProcess), try_include_list_opt("inputs", _arrow2714, oa_1.Inputs), try_include_list_opt("outputs", _arrow2715, oa_1.Outputs), try_include_list_opt("comments", _arrow2716, oa_1.Comments)]))
212
+ class ObjectExpr2717(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 ObjectExpr2717()
221
+
222
+ if id_map is not None:
223
+ def _arrow2718(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(_arrow2718, f, oa, id_map)
227
+
228
+ else:
229
+ return f(oa)
230
+
231
+
232
+
233
+ def _arrow2731(__unit: None=None) -> Decoder_1[Process]:
234
+ def decode(__unit: None=None) -> Decoder_1[Process]:
235
+ def _arrow2730(get: IGetters) -> Process:
236
+ def _arrow2719(__unit: None=None) -> str | None:
237
+ object_arg: IOptionalGetter = get.Optional
238
+ return object_arg.Field("@id", Decode_uri)
239
+
240
+ def _arrow2720(__unit: None=None) -> str | None:
241
+ object_arg_1: IOptionalGetter = get.Optional
242
+ return object_arg_1.Field("name", string)
243
+
244
+ def _arrow2721(__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 _arrow2722(__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 _arrow2723(__unit: None=None) -> str | None:
254
+ object_arg_4: IOptionalGetter = get.Optional
255
+ return object_arg_4.Field("performer", string)
256
+
257
+ def _arrow2724(__unit: None=None) -> str | None:
258
+ object_arg_5: IOptionalGetter = get.Optional
259
+ return object_arg_5.Field("date", string)
260
+
261
+ def _arrow2725(__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 _arrow2726(__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 _arrow2727(__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 _arrow2728(__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 _arrow2729(__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(_arrow2719(), _arrow2720(), _arrow2721(), _arrow2722(), _arrow2723(), _arrow2724(), _arrow2725(), _arrow2726(), _arrow2727(), _arrow2728(), _arrow2729())
287
+
288
+ return object(_arrow2730)
289
+
290
+ return decode(None)
291
+
292
+
293
+ ISAJson_decoder: Decoder_1[Process] = _arrow2731()
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 _arrow2634(Item: Sample) -> ProcessInput:
32
+ return ProcessInput(1, Item)
33
+
34
+
35
+ def _arrow2637(Item_1: Source) -> ProcessInput:
36
+ return ProcessInput(0, Item_1)
37
+
38
+
39
+ def _arrow2638(Item_2: Data) -> ProcessInput:
40
+ return ProcessInput(2, Item_2)
41
+
42
+
43
+ def _arrow2639(Item_3: Material) -> ProcessInput:
44
+ return ProcessInput(3, Item_3)
45
+
46
+
47
+ ROCrate_decoder: Decoder_1[ProcessInput] = one_of(of_array([map(_arrow2634, ROCrate_decoder_1), map(_arrow2637, ROCrate_decoder_2), map(_arrow2638, ROCrate_decoder_3), map(_arrow2639, 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 _arrow2646(Item: Source) -> ProcessInput:
65
+ return ProcessInput(0, Item)
66
+
67
+
68
+ def _arrow2647(Item_1: Sample) -> ProcessInput:
69
+ return ProcessInput(1, Item_1)
70
+
71
+
72
+ def _arrow2648(Item_2: Data) -> ProcessInput:
73
+ return ProcessInput(2, Item_2)
74
+
75
+
76
+ def _arrow2650(Item_3: Material) -> ProcessInput:
77
+ return ProcessInput(3, Item_3)
78
+
79
+
80
+ ISAJson_decoder: Decoder_1[ProcessInput] = one_of(of_array([map(_arrow2646, ISAJson_decoder_1), map(_arrow2647, ISAJson_decoder_2), map(_arrow2648, ISAJson_decoder_3), map(_arrow2650, 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 _arrow2659(Item: Sample) -> ProcessOutput:
27
+ return ProcessOutput(0, Item)
28
+
29
+
30
+ def _arrow2660(Item_1: Data) -> ProcessOutput:
31
+ return ProcessOutput(1, Item_1)
32
+
33
+
34
+ def _arrow2661(Item_2: Material) -> ProcessOutput:
35
+ return ProcessOutput(2, Item_2)
36
+
37
+
38
+ ROCrate_decoder: Decoder_1[ProcessOutput] = one_of(of_array([map(_arrow2659, ROCrate_decoder_1), map(_arrow2660, ROCrate_decoder_2), map(_arrow2661, 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 _arrow2663(Item: Sample) -> ProcessOutput:
53
+ return ProcessOutput(0, Item)
54
+
55
+
56
+ def _arrow2664(Item_1: Data) -> ProcessOutput:
57
+ return ProcessOutput(1, Item_1)
58
+
59
+
60
+ def _arrow2665(Item_2: Material) -> ProcessOutput:
61
+ return ProcessOutput(2, Item_2)
62
+
63
+
64
+ ISAJson_decoder: Decoder_1[ProcessOutput] = one_of(of_array([map(_arrow2663, ISAJson_decoder_1), map(_arrow2664, ISAJson_decoder_2), map(_arrow2665, ISAJson_decoder_3)]))
65
+
66
+ __all__ = ["ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
67
+