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,404 @@
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 (of_array, choose, FSharpList)
5
+ from ..fable_modules.fable_library.option import map as map_1
6
+ from ..fable_modules.fable_library.seq import (map as map_2, filter)
7
+ from ..fable_modules.fable_library.string_ import replace
8
+ from ..fable_modules.fable_library.types import (to_string, Array)
9
+ from ..fable_modules.fable_library.util import (int32_to_string, IEnumerable_1)
10
+ from ..fable_modules.thoth_json_core.decode import (one_of, map, int_1, float_1, string, object, IOptionalGetter, resize_array, IGetters)
11
+ from ..fable_modules.thoth_json_core.types import (Decoder_1, IEncodable, IEncoderHelpers_1)
12
+ from ..Core.comment import Comment
13
+ from ..Core.ontology_annotation import OntologyAnnotation
14
+ from ..Core.Process.column_index import order_name
15
+ from ..Core.uri import URIModule_toString
16
+ from .comment import (encoder, decoder, ROCrate_encoderDisambiguatingDescription, ROCrate_decoderDisambiguatingDescription)
17
+ from .context.rocrate.isa_ontology_annotation_context import context_jsonvalue
18
+ from .context.rocrate.property_value_context import context_jsonvalue as context_jsonvalue_1
19
+ from .encode import (try_include, try_include_seq)
20
+ from .idtable import encode
21
+ from .string_table import (encode_string, decode_string)
22
+
23
+ __A_ = TypeVar("__A_")
24
+
25
+ AnnotationValue_decoder: Decoder_1[str] = one_of(of_array([map(int32_to_string, int_1), map(to_string, float_1), string]))
26
+
27
+ def OntologyAnnotation_encoder(oa: OntologyAnnotation) -> IEncodable:
28
+ def chooser(tupled_arg: tuple[str, IEncodable | None], oa: Any=oa) -> tuple[str, IEncodable] | None:
29
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
30
+ return (tupled_arg[0], v_1)
31
+
32
+ return map_1(mapping, tupled_arg[1])
33
+
34
+ def _arrow2676(value: str, oa: Any=oa) -> IEncodable:
35
+ class ObjectExpr2675(IEncodable):
36
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
37
+ return helpers.encode_string(value)
38
+
39
+ return ObjectExpr2675()
40
+
41
+ def _arrow2678(value_2: str, oa: Any=oa) -> IEncodable:
42
+ class ObjectExpr2677(IEncodable):
43
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
44
+ return helpers_1.encode_string(value_2)
45
+
46
+ return ObjectExpr2677()
47
+
48
+ def _arrow2680(value_4: str, oa: Any=oa) -> IEncodable:
49
+ class ObjectExpr2679(IEncodable):
50
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
51
+ return helpers_2.encode_string(value_4)
52
+
53
+ return ObjectExpr2679()
54
+
55
+ def _arrow2681(comment: Comment, oa: Any=oa) -> IEncodable:
56
+ return encoder(comment)
57
+
58
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("annotationValue", _arrow2676, oa.Name), try_include("termSource", _arrow2678, oa.TermSourceREF), try_include("termAccession", _arrow2680, oa.TermAccessionNumber), try_include_seq("comments", _arrow2681, oa.Comments)]))
59
+ class ObjectExpr2682(IEncodable):
60
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
61
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
62
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_3))
63
+
64
+ arg: IEnumerable_1[tuple[str, __A_]] = map_2(mapping_1, values)
65
+ return helpers_3.encode_object(arg)
66
+
67
+ return ObjectExpr2682()
68
+
69
+
70
+ def _arrow2687(get: IGetters) -> OntologyAnnotation:
71
+ def _arrow2683(__unit: None=None) -> str | None:
72
+ object_arg: IOptionalGetter = get.Optional
73
+ return object_arg.Field("annotationValue", AnnotationValue_decoder)
74
+
75
+ def _arrow2684(__unit: None=None) -> str | None:
76
+ object_arg_1: IOptionalGetter = get.Optional
77
+ return object_arg_1.Field("termSource", string)
78
+
79
+ def _arrow2685(__unit: None=None) -> str | None:
80
+ object_arg_2: IOptionalGetter = get.Optional
81
+ return object_arg_2.Field("termAccession", string)
82
+
83
+ def _arrow2686(__unit: None=None) -> Array[Comment] | None:
84
+ arg_7: Decoder_1[Array[Comment]] = resize_array(decoder)
85
+ object_arg_3: IOptionalGetter = get.Optional
86
+ return object_arg_3.Field("comments", arg_7)
87
+
88
+ return OntologyAnnotation.create(_arrow2683(), _arrow2684(), _arrow2685(), _arrow2686())
89
+
90
+
91
+ OntologyAnnotation_decoder: Decoder_1[OntologyAnnotation] = object(_arrow2687)
92
+
93
+ def OntologyAnnotation_compressedEncoder(string_table: Any, oa: OntologyAnnotation) -> IEncodable:
94
+ def chooser(tupled_arg: tuple[str, IEncodable | None], string_table: Any=string_table, oa: Any=oa) -> tuple[str, IEncodable] | None:
95
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
96
+ return (tupled_arg[0], v_1)
97
+
98
+ return map_1(mapping, tupled_arg[1])
99
+
100
+ def _arrow2689(s: str, string_table: Any=string_table, oa: Any=oa) -> IEncodable:
101
+ return encode_string(string_table, s)
102
+
103
+ def _arrow2690(s_1: str, string_table: Any=string_table, oa: Any=oa) -> IEncodable:
104
+ return encode_string(string_table, s_1)
105
+
106
+ def _arrow2691(s_2: str, string_table: Any=string_table, oa: Any=oa) -> IEncodable:
107
+ return encode_string(string_table, s_2)
108
+
109
+ def _arrow2692(comment: Comment, string_table: Any=string_table, oa: Any=oa) -> IEncodable:
110
+ return encoder(comment)
111
+
112
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("a", _arrow2689, oa.Name), try_include("ts", _arrow2690, oa.TermSourceREF), try_include("ta", _arrow2691, oa.TermAccessionNumber), try_include_seq("comments", _arrow2692, oa.Comments)]))
113
+ class ObjectExpr2693(IEncodable):
114
+ def Encode(self, helpers: IEncoderHelpers_1[Any], string_table: Any=string_table, oa: Any=oa) -> Any:
115
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
116
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers))
117
+
118
+ arg: IEnumerable_1[tuple[str, __A_]] = map_2(mapping_1, values)
119
+ return helpers.encode_object(arg)
120
+
121
+ return ObjectExpr2693()
122
+
123
+
124
+ def OntologyAnnotation_compressedDecoder(string_table: Array[str]) -> Decoder_1[OntologyAnnotation]:
125
+ def _arrow2698(get: IGetters, string_table: Any=string_table) -> OntologyAnnotation:
126
+ def _arrow2694(__unit: None=None) -> str | None:
127
+ arg_1: Decoder_1[str] = decode_string(string_table)
128
+ object_arg: IOptionalGetter = get.Optional
129
+ return object_arg.Field("a", arg_1)
130
+
131
+ def _arrow2695(__unit: None=None) -> str | None:
132
+ arg_3: Decoder_1[str] = decode_string(string_table)
133
+ object_arg_1: IOptionalGetter = get.Optional
134
+ return object_arg_1.Field("ts", arg_3)
135
+
136
+ def _arrow2696(__unit: None=None) -> str | None:
137
+ arg_5: Decoder_1[str] = decode_string(string_table)
138
+ object_arg_2: IOptionalGetter = get.Optional
139
+ return object_arg_2.Field("ta", arg_5)
140
+
141
+ def _arrow2697(__unit: None=None) -> Array[Comment] | None:
142
+ arg_7: Decoder_1[Array[Comment]] = resize_array(decoder)
143
+ object_arg_3: IOptionalGetter = get.Optional
144
+ return object_arg_3.Field("comments", arg_7)
145
+
146
+ return OntologyAnnotation(_arrow2694(), _arrow2695(), _arrow2696(), _arrow2697())
147
+
148
+ return object(_arrow2698)
149
+
150
+
151
+ def OntologyAnnotation_ROCrate_genID(o: OntologyAnnotation) -> str:
152
+ match_value: str | None = o.TermAccessionNumber
153
+ if match_value is None:
154
+ match_value_1: str | None = o.TermSourceREF
155
+ if match_value_1 is None:
156
+ match_value_2: str | None = o.Name
157
+ if match_value_2 is None:
158
+ return "#DummyOntologyAnnotation"
159
+
160
+ else:
161
+ return "#UserTerm_" + replace(match_value_2, " ", "_")
162
+
163
+
164
+ else:
165
+ return "#" + replace(match_value_1, " ", "_")
166
+
167
+
168
+ else:
169
+ return URIModule_toString(match_value)
170
+
171
+
172
+
173
+ def OntologyAnnotation_ROCrate_encoderDefinedTerm(oa: OntologyAnnotation) -> IEncodable:
174
+ def chooser(tupled_arg: tuple[str, IEncodable | None], oa: Any=oa) -> tuple[str, IEncodable] | None:
175
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
176
+ return (tupled_arg[0], v_1)
177
+
178
+ return map_1(mapping, tupled_arg[1])
179
+
180
+ def _arrow2702(__unit: None=None, oa: Any=oa) -> IEncodable:
181
+ value: str = OntologyAnnotation_ROCrate_genID(oa)
182
+ class ObjectExpr2701(IEncodable):
183
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
184
+ return helpers.encode_string(value)
185
+
186
+ return ObjectExpr2701()
187
+
188
+ class ObjectExpr2703(IEncodable):
189
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
190
+ return helpers_1.encode_string("OntologyAnnotation")
191
+
192
+ def _arrow2705(value_2: str, oa: Any=oa) -> IEncodable:
193
+ class ObjectExpr2704(IEncodable):
194
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
195
+ return helpers_2.encode_string(value_2)
196
+
197
+ return ObjectExpr2704()
198
+
199
+ def _arrow2707(value_4: str, oa: Any=oa) -> IEncodable:
200
+ class ObjectExpr2706(IEncodable):
201
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
202
+ return helpers_3.encode_string(value_4)
203
+
204
+ return ObjectExpr2706()
205
+
206
+ def _arrow2709(value_6: str, oa: Any=oa) -> IEncodable:
207
+ class ObjectExpr2708(IEncodable):
208
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any]) -> Any:
209
+ return helpers_4.encode_string(value_6)
210
+
211
+ return ObjectExpr2708()
212
+
213
+ def _arrow2710(comment: Comment, oa: Any=oa) -> IEncodable:
214
+ return ROCrate_encoderDisambiguatingDescription(comment)
215
+
216
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow2702()), ("@type", ObjectExpr2703()), try_include("annotationValue", _arrow2705, oa.Name), try_include("termSource", _arrow2707, oa.TermSourceREF), try_include("termAccession", _arrow2709, oa.TermAccessionNumber), try_include_seq("comments", _arrow2710, oa.Comments), ("@context", context_jsonvalue)]))
217
+ class ObjectExpr2711(IEncodable):
218
+ def Encode(self, helpers_5: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
219
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
220
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_5))
221
+
222
+ arg: IEnumerable_1[tuple[str, __A_]] = map_2(mapping_1, values)
223
+ return helpers_5.encode_object(arg)
224
+
225
+ return ObjectExpr2711()
226
+
227
+
228
+ def _arrow2716(get: IGetters) -> OntologyAnnotation:
229
+ def _arrow2712(__unit: None=None) -> str | None:
230
+ object_arg: IOptionalGetter = get.Optional
231
+ return object_arg.Field("annotationValue", AnnotationValue_decoder)
232
+
233
+ def _arrow2713(__unit: None=None) -> str | None:
234
+ object_arg_1: IOptionalGetter = get.Optional
235
+ return object_arg_1.Field("termSource", string)
236
+
237
+ def _arrow2714(__unit: None=None) -> str | None:
238
+ object_arg_2: IOptionalGetter = get.Optional
239
+ return object_arg_2.Field("termAccession", string)
240
+
241
+ def _arrow2715(__unit: None=None) -> Array[Comment] | None:
242
+ arg_7: Decoder_1[Array[Comment]] = resize_array(ROCrate_decoderDisambiguatingDescription)
243
+ object_arg_3: IOptionalGetter = get.Optional
244
+ return object_arg_3.Field("comments", arg_7)
245
+
246
+ return OntologyAnnotation.create(_arrow2712(), _arrow2713(), _arrow2714(), _arrow2715())
247
+
248
+
249
+ OntologyAnnotation_ROCrate_decoderDefinedTerm: Decoder_1[OntologyAnnotation] = object(_arrow2716)
250
+
251
+ def OntologyAnnotation_ROCrate_encoderPropertyValue(oa: OntologyAnnotation) -> IEncodable:
252
+ def chooser(tupled_arg: tuple[str, IEncodable | None], oa: Any=oa) -> tuple[str, IEncodable] | None:
253
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
254
+ return (tupled_arg[0], v_1)
255
+
256
+ return map_1(mapping, tupled_arg[1])
257
+
258
+ def _arrow2720(__unit: None=None, oa: Any=oa) -> IEncodable:
259
+ value: str = OntologyAnnotation_ROCrate_genID(oa)
260
+ class ObjectExpr2719(IEncodable):
261
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
262
+ return helpers.encode_string(value)
263
+
264
+ return ObjectExpr2719()
265
+
266
+ class ObjectExpr2721(IEncodable):
267
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
268
+ return helpers_1.encode_string("PropertyValue")
269
+
270
+ def _arrow2723(value_2: str, oa: Any=oa) -> IEncodable:
271
+ class ObjectExpr2722(IEncodable):
272
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
273
+ return helpers_2.encode_string(value_2)
274
+
275
+ return ObjectExpr2722()
276
+
277
+ def _arrow2725(value_4: str, oa: Any=oa) -> IEncodable:
278
+ class ObjectExpr2724(IEncodable):
279
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
280
+ return helpers_3.encode_string(value_4)
281
+
282
+ return ObjectExpr2724()
283
+
284
+ def _arrow2726(comment: Comment, oa: Any=oa) -> IEncodable:
285
+ return ROCrate_encoderDisambiguatingDescription(comment)
286
+
287
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow2720()), ("@type", ObjectExpr2721()), try_include("category", _arrow2723, oa.Name), try_include("categoryCode", _arrow2725, oa.TermAccessionNumber), try_include_seq("comments", _arrow2726, oa.Comments), ("@context", context_jsonvalue_1)]))
288
+ class ObjectExpr2727(IEncodable):
289
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any], oa: Any=oa) -> Any:
290
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
291
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
292
+
293
+ arg: IEnumerable_1[tuple[str, __A_]] = map_2(mapping_1, values)
294
+ return helpers_4.encode_object(arg)
295
+
296
+ return ObjectExpr2727()
297
+
298
+
299
+ def _arrow2731(get: IGetters) -> OntologyAnnotation:
300
+ def _arrow2728(__unit: None=None) -> str | None:
301
+ object_arg: IOptionalGetter = get.Optional
302
+ return object_arg.Field("category", string)
303
+
304
+ def _arrow2729(__unit: None=None) -> str | None:
305
+ object_arg_1: IOptionalGetter = get.Optional
306
+ return object_arg_1.Field("categoryCode", string)
307
+
308
+ def _arrow2730(__unit: None=None) -> Array[Comment] | None:
309
+ arg_5: Decoder_1[Array[Comment]] = resize_array(ROCrate_decoderDisambiguatingDescription)
310
+ object_arg_2: IOptionalGetter = get.Optional
311
+ return object_arg_2.Field("comments", arg_5)
312
+
313
+ return OntologyAnnotation.create(_arrow2728(), None, _arrow2729(), _arrow2730())
314
+
315
+
316
+ OntologyAnnotation_ROCrate_decoderPropertyValue: Decoder_1[OntologyAnnotation] = object(_arrow2731)
317
+
318
+ def OntologyAnnotation_ISAJson_encoder(id_map: Any | None, oa: OntologyAnnotation) -> IEncodable:
319
+ def f(oa_1: OntologyAnnotation, id_map: Any=id_map, oa: Any=oa) -> IEncodable:
320
+ def predicate(c: Comment, oa_1: Any=oa_1) -> bool:
321
+ match_value: str | None = c.Name
322
+ (pattern_matching_result,) = (None,)
323
+ if match_value is not None:
324
+ if match_value == order_name:
325
+ pattern_matching_result = 0
326
+
327
+ else:
328
+ pattern_matching_result = 1
329
+
330
+
331
+ else:
332
+ pattern_matching_result = 1
333
+
334
+ if pattern_matching_result == 0:
335
+ return False
336
+
337
+ elif pattern_matching_result == 1:
338
+ return True
339
+
340
+
341
+ comments: IEnumerable_1[Comment] = filter(predicate, oa_1.Comments)
342
+ def chooser(tupled_arg: tuple[str, IEncodable | None], oa_1: Any=oa_1) -> tuple[str, IEncodable] | None:
343
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
344
+ return (tupled_arg[0], v_1)
345
+
346
+ return map_1(mapping, tupled_arg[1])
347
+
348
+ def _arrow2735(value: str, oa_1: Any=oa_1) -> IEncodable:
349
+ class ObjectExpr2734(IEncodable):
350
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
351
+ return helpers.encode_string(value)
352
+
353
+ return ObjectExpr2734()
354
+
355
+ def _arrow2737(value_2: str, oa_1: Any=oa_1) -> IEncodable:
356
+ class ObjectExpr2736(IEncodable):
357
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
358
+ return helpers_1.encode_string(value_2)
359
+
360
+ return ObjectExpr2736()
361
+
362
+ def _arrow2739(value_4: str, oa_1: Any=oa_1) -> IEncodable:
363
+ class ObjectExpr2738(IEncodable):
364
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
365
+ return helpers_2.encode_string(value_4)
366
+
367
+ return ObjectExpr2738()
368
+
369
+ def _arrow2741(value_6: str, oa_1: Any=oa_1) -> IEncodable:
370
+ class ObjectExpr2740(IEncodable):
371
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
372
+ return helpers_3.encode_string(value_6)
373
+
374
+ return ObjectExpr2740()
375
+
376
+ def _arrow2742(comment: Comment, oa_1: Any=oa_1) -> IEncodable:
377
+ return encoder(comment)
378
+
379
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("@id", _arrow2735, OntologyAnnotation_ROCrate_genID(oa_1)), try_include("annotationValue", _arrow2737, oa_1.Name), try_include("termSource", _arrow2739, oa_1.TermSourceREF), try_include("termAccession", _arrow2741, oa_1.TermAccessionNumber), try_include_seq("comments", _arrow2742, comments)]))
380
+ class ObjectExpr2743(IEncodable):
381
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any], oa_1: Any=oa_1) -> Any:
382
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
383
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
384
+
385
+ arg: IEnumerable_1[tuple[str, __A_]] = map_2(mapping_1, values)
386
+ return helpers_4.encode_object(arg)
387
+
388
+ return ObjectExpr2743()
389
+
390
+ if id_map is not None:
391
+ def _arrow2744(o: OntologyAnnotation, id_map: Any=id_map, oa: Any=oa) -> str:
392
+ return OntologyAnnotation_ROCrate_genID(o)
393
+
394
+ return encode(_arrow2744, f, oa, id_map)
395
+
396
+ else:
397
+ return f(oa)
398
+
399
+
400
+
401
+ OntologyAnnotation_ISAJson_decoder: Decoder_1[OntologyAnnotation] = OntologyAnnotation_decoder
402
+
403
+ __all__ = ["AnnotationValue_decoder", "OntologyAnnotation_encoder", "OntologyAnnotation_decoder", "OntologyAnnotation_compressedEncoder", "OntologyAnnotation_compressedDecoder", "OntologyAnnotation_ROCrate_genID", "OntologyAnnotation_ROCrate_encoderDefinedTerm", "OntologyAnnotation_ROCrate_decoderDefinedTerm", "OntologyAnnotation_ROCrate_encoderPropertyValue", "OntologyAnnotation_ROCrate_decoderPropertyValue", "OntologyAnnotation_ISAJson_encoder", "OntologyAnnotation_ISAJson_decoder"]
404
+
@@ -0,0 +1,255 @@
1
+ from __future__ import annotations
2
+ from typing import (Any, TypeVar)
3
+ from ..fable_modules.fable_library.list import (choose, of_array, FSharpList)
4
+ from ..fable_modules.fable_library.option import map
5
+ from ..fable_modules.fable_library.seq import map as map_1
6
+ from ..fable_modules.fable_library.string_ import replace
7
+ from ..fable_modules.fable_library.types import Array
8
+ from ..fable_modules.fable_library.util import IEnumerable_1
9
+ from ..fable_modules.thoth_json_core.decode import (object, IOptionalGetter, string, resize_array, IGetters)
10
+ from ..fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
11
+ from ..Core.comment import Comment
12
+ from ..Core.ontology_source_reference import OntologySourceReference
13
+ from .comment import (encoder as encoder_1, decoder as decoder_1, ISAJson_encoder as ISAJson_encoder_1)
14
+ from .context.rocrate.isa_ontology_source_reference_context import context_jsonvalue
15
+ from .decode import Decode_uri
16
+ from .encode import (try_include, try_include_seq)
17
+
18
+ __A_ = TypeVar("__A_")
19
+
20
+ def encoder(osr: OntologySourceReference) -> IEncodable:
21
+ def chooser(tupled_arg: tuple[str, IEncodable | None], osr: Any=osr) -> tuple[str, IEncodable] | None:
22
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
23
+ return (tupled_arg[0], v_1)
24
+
25
+ return map(mapping, tupled_arg[1])
26
+
27
+ def _arrow2785(value: str, osr: Any=osr) -> IEncodable:
28
+ class ObjectExpr2784(IEncodable):
29
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
30
+ return helpers.encode_string(value)
31
+
32
+ return ObjectExpr2784()
33
+
34
+ def _arrow2787(value_2: str, osr: Any=osr) -> IEncodable:
35
+ class ObjectExpr2786(IEncodable):
36
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
37
+ return helpers_1.encode_string(value_2)
38
+
39
+ return ObjectExpr2786()
40
+
41
+ def _arrow2789(value_4: str, osr: Any=osr) -> IEncodable:
42
+ class ObjectExpr2788(IEncodable):
43
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
44
+ return helpers_2.encode_string(value_4)
45
+
46
+ return ObjectExpr2788()
47
+
48
+ def _arrow2791(value_6: str, osr: Any=osr) -> IEncodable:
49
+ class ObjectExpr2790(IEncodable):
50
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
51
+ return helpers_3.encode_string(value_6)
52
+
53
+ return ObjectExpr2790()
54
+
55
+ def _arrow2792(comment: Comment, osr: Any=osr) -> IEncodable:
56
+ return encoder_1(comment)
57
+
58
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("description", _arrow2785, osr.Description), try_include("file", _arrow2787, osr.File), try_include("name", _arrow2789, osr.Name), try_include("version", _arrow2791, osr.Version), try_include_seq("comments", _arrow2792, osr.Comments)]))
59
+ class ObjectExpr2793(IEncodable):
60
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any], osr: Any=osr) -> Any:
61
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
62
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
63
+
64
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
65
+ return helpers_4.encode_object(arg)
66
+
67
+ return ObjectExpr2793()
68
+
69
+
70
+ def _arrow2799(get: IGetters) -> OntologySourceReference:
71
+ def _arrow2794(__unit: None=None) -> str | None:
72
+ object_arg: IOptionalGetter = get.Optional
73
+ return object_arg.Field("description", Decode_uri)
74
+
75
+ def _arrow2795(__unit: None=None) -> str | None:
76
+ object_arg_1: IOptionalGetter = get.Optional
77
+ return object_arg_1.Field("file", string)
78
+
79
+ def _arrow2796(__unit: None=None) -> str | None:
80
+ object_arg_2: IOptionalGetter = get.Optional
81
+ return object_arg_2.Field("name", string)
82
+
83
+ def _arrow2797(__unit: None=None) -> str | None:
84
+ object_arg_3: IOptionalGetter = get.Optional
85
+ return object_arg_3.Field("version", string)
86
+
87
+ def _arrow2798(__unit: None=None) -> Array[Comment] | None:
88
+ arg_9: Decoder_1[Array[Comment]] = resize_array(decoder_1)
89
+ object_arg_4: IOptionalGetter = get.Optional
90
+ return object_arg_4.Field("comments", arg_9)
91
+
92
+ return OntologySourceReference(_arrow2794(), _arrow2795(), _arrow2796(), _arrow2797(), _arrow2798())
93
+
94
+
95
+ decoder: Decoder_1[OntologySourceReference] = object(_arrow2799)
96
+
97
+ def ROCrate_genID(o: OntologySourceReference) -> str:
98
+ match_value: str | None = o.File
99
+ if match_value is None:
100
+ match_value_1: str | None = o.Name
101
+ if match_value_1 is None:
102
+ return "#DummyOntologySourceRef"
103
+
104
+ else:
105
+ return "#OntologySourceRef_" + replace(match_value_1, " ", "_")
106
+
107
+
108
+ else:
109
+ return match_value
110
+
111
+
112
+
113
+ def ROCrate_encoder(osr: OntologySourceReference) -> IEncodable:
114
+ def chooser(tupled_arg: tuple[str, IEncodable | None], osr: Any=osr) -> tuple[str, IEncodable] | None:
115
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
116
+ return (tupled_arg[0], v_1)
117
+
118
+ return map(mapping, tupled_arg[1])
119
+
120
+ def _arrow2803(__unit: None=None, osr: Any=osr) -> IEncodable:
121
+ value: str = ROCrate_genID(osr)
122
+ class ObjectExpr2802(IEncodable):
123
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
124
+ return helpers.encode_string(value)
125
+
126
+ return ObjectExpr2802()
127
+
128
+ class ObjectExpr2804(IEncodable):
129
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any], osr: Any=osr) -> Any:
130
+ return helpers_1.encode_string("OntologySourceReference")
131
+
132
+ def _arrow2806(value_2: str, osr: Any=osr) -> IEncodable:
133
+ class ObjectExpr2805(IEncodable):
134
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
135
+ return helpers_2.encode_string(value_2)
136
+
137
+ return ObjectExpr2805()
138
+
139
+ def _arrow2808(value_4: str, osr: Any=osr) -> IEncodable:
140
+ class ObjectExpr2807(IEncodable):
141
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
142
+ return helpers_3.encode_string(value_4)
143
+
144
+ return ObjectExpr2807()
145
+
146
+ def _arrow2810(value_6: str, osr: Any=osr) -> IEncodable:
147
+ class ObjectExpr2809(IEncodable):
148
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any]) -> Any:
149
+ return helpers_4.encode_string(value_6)
150
+
151
+ return ObjectExpr2809()
152
+
153
+ def _arrow2812(value_8: str, osr: Any=osr) -> IEncodable:
154
+ class ObjectExpr2811(IEncodable):
155
+ def Encode(self, helpers_5: IEncoderHelpers_1[Any]) -> Any:
156
+ return helpers_5.encode_string(value_8)
157
+
158
+ return ObjectExpr2811()
159
+
160
+ def _arrow2813(comment: Comment, osr: Any=osr) -> IEncodable:
161
+ return encoder_1(comment)
162
+
163
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow2803()), ("@type", ObjectExpr2804()), try_include("description", _arrow2806, osr.Description), try_include("file", _arrow2808, osr.File), try_include("name", _arrow2810, osr.Name), try_include("version", _arrow2812, osr.Version), try_include_seq("comments", _arrow2813, osr.Comments), ("@context", context_jsonvalue)]))
164
+ class ObjectExpr2814(IEncodable):
165
+ def Encode(self, helpers_6: IEncoderHelpers_1[Any], osr: Any=osr) -> Any:
166
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
167
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_6))
168
+
169
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
170
+ return helpers_6.encode_object(arg)
171
+
172
+ return ObjectExpr2814()
173
+
174
+
175
+ def _arrow2820(get: IGetters) -> OntologySourceReference:
176
+ def _arrow2815(__unit: None=None) -> str | None:
177
+ object_arg: IOptionalGetter = get.Optional
178
+ return object_arg.Field("description", Decode_uri)
179
+
180
+ def _arrow2816(__unit: None=None) -> str | None:
181
+ object_arg_1: IOptionalGetter = get.Optional
182
+ return object_arg_1.Field("file", string)
183
+
184
+ def _arrow2817(__unit: None=None) -> str | None:
185
+ object_arg_2: IOptionalGetter = get.Optional
186
+ return object_arg_2.Field("name", string)
187
+
188
+ def _arrow2818(__unit: None=None) -> str | None:
189
+ object_arg_3: IOptionalGetter = get.Optional
190
+ return object_arg_3.Field("version", string)
191
+
192
+ def _arrow2819(__unit: None=None) -> Array[Comment] | None:
193
+ arg_9: Decoder_1[Array[Comment]] = resize_array(decoder_1)
194
+ object_arg_4: IOptionalGetter = get.Optional
195
+ return object_arg_4.Field("comments", arg_9)
196
+
197
+ return OntologySourceReference(_arrow2815(), _arrow2816(), _arrow2817(), _arrow2818(), _arrow2819())
198
+
199
+
200
+ ROCrate_decoder: Decoder_1[OntologySourceReference] = object(_arrow2820)
201
+
202
+ def ISAJson_encoder(id_map: Any | None, osr: OntologySourceReference) -> IEncodable:
203
+ def chooser(tupled_arg: tuple[str, IEncodable | None], id_map: Any=id_map, osr: Any=osr) -> tuple[str, IEncodable] | None:
204
+ def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
205
+ return (tupled_arg[0], v_1)
206
+
207
+ return map(mapping, tupled_arg[1])
208
+
209
+ def _arrow2824(value: str, id_map: Any=id_map, osr: Any=osr) -> IEncodable:
210
+ class ObjectExpr2823(IEncodable):
211
+ def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
212
+ return helpers.encode_string(value)
213
+
214
+ return ObjectExpr2823()
215
+
216
+ def _arrow2826(value_2: str, id_map: Any=id_map, osr: Any=osr) -> IEncodable:
217
+ class ObjectExpr2825(IEncodable):
218
+ def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
219
+ return helpers_1.encode_string(value_2)
220
+
221
+ return ObjectExpr2825()
222
+
223
+ def _arrow2828(value_4: str, id_map: Any=id_map, osr: Any=osr) -> IEncodable:
224
+ class ObjectExpr2827(IEncodable):
225
+ def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
226
+ return helpers_2.encode_string(value_4)
227
+
228
+ return ObjectExpr2827()
229
+
230
+ def _arrow2830(value_6: str, id_map: Any=id_map, osr: Any=osr) -> IEncodable:
231
+ class ObjectExpr2829(IEncodable):
232
+ def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
233
+ return helpers_3.encode_string(value_6)
234
+
235
+ return ObjectExpr2829()
236
+
237
+ def _arrow2831(comment: Comment, id_map: Any=id_map, osr: Any=osr) -> IEncodable:
238
+ return ISAJson_encoder_1(id_map, comment)
239
+
240
+ values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([try_include("description", _arrow2824, osr.Description), try_include("file", _arrow2826, osr.File), try_include("name", _arrow2828, osr.Name), try_include("version", _arrow2830, osr.Version), try_include_seq("comments", _arrow2831, osr.Comments)]))
241
+ class ObjectExpr2832(IEncodable):
242
+ def Encode(self, helpers_4: IEncoderHelpers_1[Any], id_map: Any=id_map, osr: Any=osr) -> Any:
243
+ def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
244
+ return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_4))
245
+
246
+ arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
247
+ return helpers_4.encode_object(arg)
248
+
249
+ return ObjectExpr2832()
250
+
251
+
252
+ ISAJson_decoder: Decoder_1[OntologySourceReference] = decoder
253
+
254
+ __all__ = ["encoder", "decoder", "ROCrate_genID", "ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_decoder"]
255
+