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,151 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from dataclasses import dataclass
4
+ from typing import Any
5
+ from ...fable_modules.fable_library.list import (try_find, FSharpList, exists, append, singleton, filter)
6
+ from ...fable_modules.fable_library.option import (default_arg, map)
7
+ from ...fable_modules.fable_library.reflection import (TypeInfo, string_type, option_type, array_type, record_type)
8
+ from ...fable_modules.fable_library.types import (Array, to_string, Record)
9
+ from ...fable_modules.fable_library.util import equals
10
+ from ..comment import (Comment, Comment_reflection)
11
+ from ..Helper.collections_ import (Option_fromValueWithDefault, ResizeArray_map)
12
+ from ..ontology_annotation import (OntologyAnnotation, OntologyAnnotation_reflection)
13
+
14
+ def _expr1072() -> TypeInfo:
15
+ return record_type("ARCtrl.Process.Factor", [], Factor, lambda: [("Name", option_type(string_type)), ("FactorType", option_type(OntologyAnnotation_reflection())), ("Comments", option_type(array_type(Comment_reflection())))])
16
+
17
+
18
+ @dataclass(eq = False, repr = False, slots = True)
19
+ class Factor(Record):
20
+ Name: str | None
21
+ FactorType: OntologyAnnotation | None
22
+ Comments: Array[Comment] | None
23
+ @staticmethod
24
+ def make(name: str | None=None, factor_type: OntologyAnnotation | None=None, comments: Array[Comment] | None=None) -> Factor:
25
+ return Factor(name, factor_type, comments)
26
+
27
+ @staticmethod
28
+ def create(Name: str | None=None, FactorType: OntologyAnnotation | None=None, Comments: Array[Comment] | None=None) -> Factor:
29
+ return Factor.make(Name, FactorType, Comments)
30
+
31
+ @staticmethod
32
+ def empty() -> Factor:
33
+ return Factor.create()
34
+
35
+ @staticmethod
36
+ def from_string(name: str, term: str, source: str, accession: str, comments: Array[Comment] | None=None) -> Factor:
37
+ oa: OntologyAnnotation = OntologyAnnotation.create(term, source, accession, comments)
38
+ name_1: str | None = Option_fromValueWithDefault("", name)
39
+ factor_type: OntologyAnnotation | None = Option_fromValueWithDefault(OntologyAnnotation(), oa)
40
+ return Factor.make(name_1, factor_type, None)
41
+
42
+ @staticmethod
43
+ def to_string_object(factor: Factor) -> dict[str, Any]:
44
+ value: dict[str, Any] = {
45
+ "TermAccessionNumber": "",
46
+ "TermName": "",
47
+ "TermSourceREF": ""
48
+ }
49
+ def mapping(oa: OntologyAnnotation) -> dict[str, Any]:
50
+ return OntologyAnnotation.to_string_object(oa)
51
+
52
+ return default_arg(map(mapping, factor.FactorType), value)
53
+
54
+ @property
55
+ def NameText(self, __unit: None=None) -> str:
56
+ this: Factor = self
57
+ return default_arg(this.Name, "")
58
+
59
+ def MapCategory(self, f: Callable[[OntologyAnnotation], OntologyAnnotation]) -> Factor:
60
+ this: Factor = self
61
+ return Factor(this.Name, map(f, this.FactorType), this.Comments)
62
+
63
+ def SetCategory(self, c: OntologyAnnotation) -> Factor:
64
+ this: Factor = self
65
+ return Factor(this.Name, c, this.Comments)
66
+
67
+ @staticmethod
68
+ def try_get_by_name(name: str, factors: FSharpList[Factor]) -> Factor | None:
69
+ def _arrow1069(f: Factor) -> bool:
70
+ return equals(f.Name, name)
71
+
72
+ return try_find(_arrow1069, factors)
73
+
74
+ @staticmethod
75
+ def exists_by_name(name: str, factors: FSharpList[Factor]) -> bool:
76
+ def _arrow1070(f: Factor) -> bool:
77
+ return equals(f.Name, name)
78
+
79
+ return exists(_arrow1070, factors)
80
+
81
+ @staticmethod
82
+ def add(factors: FSharpList[Factor], factor: Factor) -> FSharpList[Factor]:
83
+ return append(factors, singleton(factor))
84
+
85
+ @staticmethod
86
+ def remove_by_name(name: str, factors: FSharpList[Factor]) -> FSharpList[Factor]:
87
+ def _arrow1071(f: Factor) -> bool:
88
+ return not equals(f.Name, name)
89
+
90
+ return filter(_arrow1071, factors)
91
+
92
+ @staticmethod
93
+ def get_comments(factor: Factor) -> Array[Comment] | None:
94
+ return factor.Comments
95
+
96
+ @staticmethod
97
+ def map_comments(f: Callable[[Array[Comment]], Array[Comment]], factor: Factor) -> Factor:
98
+ return Factor(factor.Name, factor.FactorType, map(f, factor.Comments))
99
+
100
+ @staticmethod
101
+ def set_comments(factor: Factor, comments: Array[Comment]) -> Factor:
102
+ return Factor(factor.Name, factor.FactorType, comments)
103
+
104
+ @staticmethod
105
+ def get_factor_type(factor: Factor) -> OntologyAnnotation | None:
106
+ return factor.FactorType
107
+
108
+ @staticmethod
109
+ def map_factor_type(f: Callable[[OntologyAnnotation], OntologyAnnotation], factor: Factor) -> Factor:
110
+ return Factor(factor.Name, map(f, factor.FactorType), factor.Comments)
111
+
112
+ @staticmethod
113
+ def set_factor_type(factor: Factor, factor_type: OntologyAnnotation) -> Factor:
114
+ return Factor(factor.Name, factor_type, factor.Comments)
115
+
116
+ @staticmethod
117
+ def try_get_name(f: Factor) -> str | None:
118
+ return f.Name
119
+
120
+ @staticmethod
121
+ def get_name_as_string(f: Factor) -> str:
122
+ return f.NameText
123
+
124
+ @staticmethod
125
+ def name_equals_string(name: str, f: Factor) -> bool:
126
+ return f.NameText == name
127
+
128
+ def Copy(self, __unit: None=None) -> Factor:
129
+ this: Factor = self
130
+ def mapping(a: Array[Comment]) -> Array[Comment]:
131
+ def f(c: Comment, a: Any=a) -> Comment:
132
+ return c.Copy()
133
+
134
+ return ResizeArray_map(f, a)
135
+
136
+ comments: Array[Comment] | None = map(mapping, this.Comments)
137
+ return Factor.make(this.Name, this.FactorType, comments)
138
+
139
+ def Print(self, __unit: None=None) -> str:
140
+ this: Factor = self
141
+ return to_string(this)
142
+
143
+ def PrintCompact(self, __unit: None=None) -> str:
144
+ this: Factor = self
145
+ return "OA " + this.NameText
146
+
147
+
148
+ Factor_reflection = _expr1072
149
+
150
+ __all__ = ["Factor_reflection"]
151
+
@@ -0,0 +1,182 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from dataclasses import dataclass
4
+ from typing import Any
5
+ from ...fable_modules.fable_library.option import (map, bind, default_arg)
6
+ from ...fable_modules.fable_library.reflection import (TypeInfo, string_type, option_type, record_type)
7
+ from ...fable_modules.fable_library.string_ import (to_text, printf)
8
+ from ...fable_modules.fable_library.types import (to_string, Record)
9
+ from ...fable_modules.fable_library.util import int32_to_string
10
+ from ..ontology_annotation import (OntologyAnnotation, OntologyAnnotation_reflection)
11
+ from ..value import (Value as Value_1, Value_reflection)
12
+ from .factor import (Factor, Factor_reflection)
13
+
14
+ def _expr1076() -> TypeInfo:
15
+ return record_type("ARCtrl.Process.FactorValue", [], FactorValue, lambda: [("ID", option_type(string_type)), ("Category", option_type(Factor_reflection())), ("Value", option_type(Value_reflection())), ("Unit", option_type(OntologyAnnotation_reflection()))])
16
+
17
+
18
+ @dataclass(eq = False, repr = False, slots = True)
19
+ class FactorValue(Record):
20
+ ID: str | None
21
+ Category: Factor | None
22
+ Value: Value_1 | None
23
+ Unit: OntologyAnnotation | None
24
+ def Print(self, __unit: None=None) -> str:
25
+ this: FactorValue = self
26
+ return to_string(this)
27
+
28
+ def PrintCompact(self, __unit: None=None) -> str:
29
+ this: FactorValue = self
30
+ def mapping(f: Factor) -> str:
31
+ return f.NameText
32
+
33
+ category: str | None = map(mapping, this.Category)
34
+ def mapping_1(oa: OntologyAnnotation) -> str:
35
+ return oa.NameText
36
+
37
+ unit: str | None = map(mapping_1, this.Unit)
38
+ def mapping_2(v: Value_1) -> str:
39
+ s: str = v.PrintCompact()
40
+ if unit is None:
41
+ return s
42
+
43
+ else:
44
+ return (s + " ") + unit
45
+
46
+
47
+ value: str | None = map(mapping_2, this.Value)
48
+ def _arrow1073(__unit: None=None) -> str:
49
+ value_2: str = value
50
+ return value_2
51
+
52
+ def _arrow1074(__unit: None=None) -> str:
53
+ category_2: str = category
54
+ return (category_2 + ":") + "No Value"
55
+
56
+ def _arrow1075(__unit: None=None) -> str:
57
+ category_1: str = category
58
+ value_1: str = value
59
+ return (category_1 + ":") + value_1
60
+
61
+ return ("" if (value is None) else _arrow1073()) if (category is None) else (_arrow1074() if (value is None) else _arrow1075())
62
+
63
+ def AlternateName(self, __unit: None=None) -> str | None:
64
+ return None
65
+
66
+ def MeasurementMethod(self, __unit: None=None) -> str | None:
67
+ return None
68
+
69
+ def Description(self, __unit: None=None) -> str | None:
70
+ return None
71
+
72
+ def GetCategory(self, __unit: None=None) -> OntologyAnnotation | None:
73
+ this: FactorValue = self
74
+ def binder(f: Factor) -> OntologyAnnotation | None:
75
+ return f.FactorType
76
+
77
+ return bind(binder, this.Category)
78
+
79
+ def GetValue(self, __unit: None=None) -> Value_1 | None:
80
+ this: FactorValue = self
81
+ return this.Value
82
+
83
+ def GetUnit(self, __unit: None=None) -> OntologyAnnotation | None:
84
+ this: FactorValue = self
85
+ return this.Unit
86
+
87
+ def GetAdditionalType(self, __unit: None=None) -> str:
88
+ return "FactorValue"
89
+
90
+
91
+ FactorValue_reflection = _expr1076
92
+
93
+ def FactorValue_make(id: str | None=None, category: Factor | None=None, value: Value_1 | None=None, unit: OntologyAnnotation | None=None) -> FactorValue:
94
+ return FactorValue(id, category, value, unit)
95
+
96
+
97
+ def FactorValue_create_30BDC49(Id: str | None=None, Category: Factor | None=None, Value: Value_1 | None=None, Unit: OntologyAnnotation | None=None) -> FactorValue:
98
+ return FactorValue_make(Id, Category, Value, Unit)
99
+
100
+
101
+ def FactorValue_get_empty(__unit: None=None) -> FactorValue:
102
+ return FactorValue_create_30BDC49()
103
+
104
+
105
+ def FactorValue__get_ValueText(this: FactorValue) -> str:
106
+ def mapping(oa: Value_1, this: Any=this) -> str:
107
+ if oa.tag == 2:
108
+ return to_string(oa.fields[0])
109
+
110
+ elif oa.tag == 1:
111
+ return int32_to_string(oa.fields[0])
112
+
113
+ elif oa.tag == 3:
114
+ return oa.fields[0]
115
+
116
+ else:
117
+ return oa.fields[0].NameText
118
+
119
+
120
+ return default_arg(map(mapping, this.Value), "")
121
+
122
+
123
+ def FactorValue__get_ValueWithUnitText(this: FactorValue) -> str:
124
+ def mapping(oa: OntologyAnnotation, this: Any=this) -> str:
125
+ return oa.NameText
126
+
127
+ unit: str | None = map(mapping, this.Unit)
128
+ v: str = FactorValue__get_ValueText(this)
129
+ if unit is None:
130
+ return v
131
+
132
+ else:
133
+ u: str = unit
134
+ return to_text(printf("%s %s"))(v)(u)
135
+
136
+
137
+
138
+ def FactorValue__get_NameText(this: FactorValue) -> str:
139
+ def mapping(factor: Factor, this: Any=this) -> str:
140
+ return factor.NameText
141
+
142
+ return default_arg(map(mapping, this.Category), "")
143
+
144
+
145
+ def FactorValue__MapCategory_658CFBF6(this: FactorValue, f: Callable[[OntologyAnnotation], OntologyAnnotation]) -> FactorValue:
146
+ def mapping(p: Factor, this: Any=this, f: Any=f) -> Factor:
147
+ return p.MapCategory(f)
148
+
149
+ return FactorValue(this.ID, map(mapping, this.Category), this.Value, this.Unit)
150
+
151
+
152
+ def FactorValue__SetCategory_ZDED3A0F(this: FactorValue, c: OntologyAnnotation) -> FactorValue:
153
+ def _arrow1077(__unit: None=None, this: Any=this, c: Any=c) -> Factor | None:
154
+ match_value: Factor | None = this.Category
155
+ if match_value is None:
156
+ return Factor.create(None, c)
157
+
158
+ else:
159
+ p: Factor = match_value
160
+ return p.SetCategory(c)
161
+
162
+
163
+ return FactorValue(this.ID, _arrow1077(), this.Value, this.Unit)
164
+
165
+
166
+ def FactorValue_getNameAsString_7105C732(fv: FactorValue) -> str:
167
+ return FactorValue__get_NameText(fv)
168
+
169
+
170
+ def FactorValue_nameEqualsString(name: str, fv: FactorValue) -> bool:
171
+ return FactorValue__get_NameText(fv) == name
172
+
173
+
174
+ def FactorValue_createAsPV(alternate_name: str | None=None, measurement_method: str | None=None, description: str | None=None, category: OntologyAnnotation | None=None, value: Value_1 | None=None, unit: OntologyAnnotation | None=None) -> FactorValue:
175
+ def mapping(c: OntologyAnnotation, alternate_name: Any=alternate_name, measurement_method: Any=measurement_method, description: Any=description, category: Any=category, value: Any=value, unit: Any=unit) -> Factor:
176
+ return Factor.create(None, c)
177
+
178
+ return FactorValue_create_30BDC49(None, map(mapping, category), value, unit)
179
+
180
+
181
+ __all__ = ["FactorValue_reflection", "FactorValue_make", "FactorValue_create_30BDC49", "FactorValue_get_empty", "FactorValue__get_ValueText", "FactorValue__get_ValueWithUnitText", "FactorValue__get_NameText", "FactorValue__MapCategory_658CFBF6", "FactorValue__SetCategory_ZDED3A0F", "FactorValue_getNameAsString_7105C732", "FactorValue_nameEqualsString", "FactorValue_createAsPV"]
182
+
@@ -0,0 +1,74 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+ from typing import Any
4
+ from ...fable_modules.fable_library.list import (length, empty, FSharpList, choose)
5
+ from ...fable_modules.fable_library.option import default_arg
6
+ from ...fable_modules.fable_library.reflection import (TypeInfo, string_type, option_type, list_type, record_type)
7
+ from ...fable_modules.fable_library.string_ import (to_text, printf)
8
+ from ...fable_modules.fable_library.types import (to_string, Record)
9
+ from ..ontology_annotation import OntologyAnnotation
10
+ from .material_attribute_value import (MaterialAttributeValue, MaterialAttributeValue_reflection)
11
+ from .material_type import (MaterialType as MaterialType_1, MaterialType__get_AsString, MaterialType_reflection)
12
+
13
+ def _expr1085() -> TypeInfo:
14
+ return record_type("ARCtrl.Process.Material", [], Material, lambda: [("ID", option_type(string_type)), ("Name", option_type(string_type)), ("MaterialType", option_type(MaterialType_reflection())), ("Characteristics", option_type(list_type(MaterialAttributeValue_reflection()))), ("DerivesFrom", option_type(list_type(Material_reflection())))])
15
+
16
+
17
+ @dataclass(eq = False, repr = False, slots = True)
18
+ class Material(Record):
19
+ ID: str | None
20
+ Name: str | None
21
+ MaterialType: MaterialType_1 | None
22
+ Characteristics: FSharpList[MaterialAttributeValue] | None
23
+ DerivesFrom: FSharpList[Material] | None
24
+ def Print(self, __unit: None=None) -> str:
25
+ this: Material = self
26
+ return to_string(this)
27
+
28
+ def PrintCompact(self, __unit: None=None) -> str:
29
+ this: Material = self
30
+ chars: int = length(default_arg(this.Characteristics, empty())) or 0
31
+ match_value: MaterialType_1 | None = this.MaterialType
32
+ if match_value is None:
33
+ arg_3: str = Material__get_NameText(this)
34
+ return to_text(printf("%s [%i characteristics]"))(arg_3)(chars)
35
+
36
+ else:
37
+ t: MaterialType_1 = match_value
38
+ arg: str = Material__get_NameText(this)
39
+ arg_1: str = MaterialType__get_AsString(t)
40
+ return to_text(printf("%s [%s; %i characteristics]"))(arg)(arg_1)(chars)
41
+
42
+
43
+
44
+ Material_reflection = _expr1085
45
+
46
+ def Material_make(id: str | None=None, name: str | None=None, material_type: MaterialType_1 | None=None, characteristics: FSharpList[MaterialAttributeValue] | None=None, derives_from: FSharpList[Material] | None=None) -> Material:
47
+ return Material(id, name, material_type, characteristics, derives_from)
48
+
49
+
50
+ def Material_create_Z66909A6D(Id: str | None=None, Name: str | None=None, MaterialType: MaterialType_1 | None=None, Characteristics: FSharpList[MaterialAttributeValue] | None=None, DerivesFrom: FSharpList[Material] | None=None) -> Material:
51
+ return Material_make(Id, Name, MaterialType, Characteristics, DerivesFrom)
52
+
53
+
54
+ def Material_get_empty(__unit: None=None) -> Material:
55
+ return Material_create_Z66909A6D()
56
+
57
+
58
+ def Material__get_NameText(this: Material) -> str:
59
+ return default_arg(this.Name, "")
60
+
61
+
62
+ def Material_getUnits_ZBCDEB61(m: Material) -> FSharpList[OntologyAnnotation]:
63
+ def chooser(c: MaterialAttributeValue, m: Any=m) -> OntologyAnnotation | None:
64
+ return c.Unit
65
+
66
+ return choose(chooser, default_arg(m.Characteristics, empty()))
67
+
68
+
69
+ def Material_setCharacteristicValues(values: FSharpList[MaterialAttributeValue], m: Material) -> Material:
70
+ return Material(m.ID, m.Name, m.MaterialType, values, m.DerivesFrom)
71
+
72
+
73
+ __all__ = ["Material_reflection", "Material_make", "Material_create_Z66909A6D", "Material_get_empty", "Material__get_NameText", "Material_getUnits_ZBCDEB61", "Material_setCharacteristicValues"]
74
+
@@ -0,0 +1,95 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from dataclasses import dataclass
4
+ from typing import Any
5
+ from ...fable_modules.fable_library.option import (default_arg, map, bind)
6
+ from ...fable_modules.fable_library.reflection import (TypeInfo, string_type, option_type, record_type)
7
+ from ...fable_modules.fable_library.types import (to_string, Record, Array)
8
+ from ..comment import Comment
9
+ from ..Helper.collections_ import Option_fromValueWithDefault
10
+ from ..ontology_annotation import (OntologyAnnotation, OntologyAnnotation_reflection)
11
+
12
+ def _expr1078() -> TypeInfo:
13
+ return record_type("ARCtrl.Process.MaterialAttribute", [], MaterialAttribute, lambda: [("ID", option_type(string_type)), ("CharacteristicType", option_type(OntologyAnnotation_reflection()))])
14
+
15
+
16
+ @dataclass(eq = False, repr = False, slots = True)
17
+ class MaterialAttribute(Record):
18
+ ID: str | None
19
+ CharacteristicType: OntologyAnnotation | None
20
+ def Print(self, __unit: None=None) -> str:
21
+ this: MaterialAttribute = self
22
+ return to_string(this)
23
+
24
+ def PrintCompact(self, __unit: None=None) -> str:
25
+ this: MaterialAttribute = self
26
+ return "OA " + MaterialAttribute__get_NameText(this)
27
+
28
+
29
+ MaterialAttribute_reflection = _expr1078
30
+
31
+ def MaterialAttribute_make(id: str | None=None, characteristic_type: OntologyAnnotation | None=None) -> MaterialAttribute:
32
+ return MaterialAttribute(id, characteristic_type)
33
+
34
+
35
+ def MaterialAttribute_create_A220A8A(Id: str | None=None, CharacteristicType: OntologyAnnotation | None=None) -> MaterialAttribute:
36
+ return MaterialAttribute_make(Id, CharacteristicType)
37
+
38
+
39
+ def MaterialAttribute_get_empty(__unit: None=None) -> MaterialAttribute:
40
+ return MaterialAttribute_create_A220A8A()
41
+
42
+
43
+ def MaterialAttribute_fromString_5980DC03(term: str, source: str, accession: str, comments: Array[Comment] | None=None) -> MaterialAttribute:
44
+ oa: OntologyAnnotation = OntologyAnnotation.create(term, source, accession, comments)
45
+ return MaterialAttribute_make(None, Option_fromValueWithDefault(OntologyAnnotation(), oa))
46
+
47
+
48
+ def MaterialAttribute_toStringObject_Z1E3B85DD(ma: MaterialAttribute) -> dict[str, Any]:
49
+ value: dict[str, Any] = {
50
+ "TermAccessionNumber": "",
51
+ "TermName": "",
52
+ "TermSourceREF": ""
53
+ }
54
+ def mapping(oa: OntologyAnnotation, ma: Any=ma) -> dict[str, Any]:
55
+ return OntologyAnnotation.to_string_object(oa)
56
+
57
+ return default_arg(map(mapping, ma.CharacteristicType), value)
58
+
59
+
60
+ def MaterialAttribute__get_NameText(this: MaterialAttribute) -> str:
61
+ def mapping(oa: OntologyAnnotation, this: Any=this) -> str:
62
+ return oa.NameText
63
+
64
+ return default_arg(map(mapping, this.CharacteristicType), "")
65
+
66
+
67
+ def MaterialAttribute__get_TryNameText(this: MaterialAttribute) -> str | None:
68
+ def binder(oa: OntologyAnnotation, this: Any=this) -> str | None:
69
+ return oa.Name
70
+
71
+ return bind(binder, this.CharacteristicType)
72
+
73
+
74
+ def MaterialAttribute__MapCategory_658CFBF6(this: MaterialAttribute, f: Callable[[OntologyAnnotation], OntologyAnnotation]) -> MaterialAttribute:
75
+ return MaterialAttribute(this.ID, map(f, this.CharacteristicType))
76
+
77
+
78
+ def MaterialAttribute__SetCategory_ZDED3A0F(this: MaterialAttribute, c: OntologyAnnotation) -> MaterialAttribute:
79
+ return MaterialAttribute(this.ID, c)
80
+
81
+
82
+ def MaterialAttribute_tryGetNameText_Z1E3B85DD(ma: MaterialAttribute) -> str:
83
+ return MaterialAttribute__get_NameText(ma)
84
+
85
+
86
+ def MaterialAttribute_getNameText_Z1E3B85DD(ma: MaterialAttribute) -> str | None:
87
+ return MaterialAttribute__get_TryNameText(ma)
88
+
89
+
90
+ def MaterialAttribute_nameEqualsString(name: str, ma: MaterialAttribute) -> bool:
91
+ return MaterialAttribute__get_NameText(ma) == name
92
+
93
+
94
+ __all__ = ["MaterialAttribute_reflection", "MaterialAttribute_make", "MaterialAttribute_create_A220A8A", "MaterialAttribute_get_empty", "MaterialAttribute_fromString_5980DC03", "MaterialAttribute_toStringObject_Z1E3B85DD", "MaterialAttribute__get_NameText", "MaterialAttribute__get_TryNameText", "MaterialAttribute__MapCategory_658CFBF6", "MaterialAttribute__SetCategory_ZDED3A0F", "MaterialAttribute_tryGetNameText_Z1E3B85DD", "MaterialAttribute_getNameText_Z1E3B85DD", "MaterialAttribute_nameEqualsString"]
95
+
@@ -0,0 +1,184 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from dataclasses import dataclass
4
+ from typing import Any
5
+ from ...fable_modules.fable_library.option import (map, bind, default_arg)
6
+ from ...fable_modules.fable_library.reflection import (TypeInfo, string_type, option_type, record_type)
7
+ from ...fable_modules.fable_library.string_ import (to_text, printf)
8
+ from ...fable_modules.fable_library.types import (to_string, Record)
9
+ from ...fable_modules.fable_library.util import int32_to_string
10
+ from ..ontology_annotation import (OntologyAnnotation, OntologyAnnotation_reflection)
11
+ from ..value import (Value as Value_1, Value_reflection)
12
+ from .material_attribute import (MaterialAttribute__get_NameText, MaterialAttribute, MaterialAttribute_reflection, MaterialAttribute__get_TryNameText, MaterialAttribute__MapCategory_658CFBF6, MaterialAttribute_create_A220A8A, MaterialAttribute__SetCategory_ZDED3A0F)
13
+
14
+ def _expr1083() -> TypeInfo:
15
+ return record_type("ARCtrl.Process.MaterialAttributeValue", [], MaterialAttributeValue, lambda: [("ID", option_type(string_type)), ("Category", option_type(MaterialAttribute_reflection())), ("Value", option_type(Value_reflection())), ("Unit", option_type(OntologyAnnotation_reflection()))])
16
+
17
+
18
+ @dataclass(eq = False, repr = False, slots = True)
19
+ class MaterialAttributeValue(Record):
20
+ ID: str | None
21
+ Category: MaterialAttribute | None
22
+ Value: Value_1 | None
23
+ Unit: OntologyAnnotation | None
24
+ def Print(self, __unit: None=None) -> str:
25
+ this: MaterialAttributeValue = self
26
+ return to_string(this)
27
+
28
+ def PrintCompact(self, __unit: None=None) -> str:
29
+ this: MaterialAttributeValue = self
30
+ category: str | None = map(MaterialAttribute__get_NameText, this.Category)
31
+ def mapping_1(oa: OntologyAnnotation) -> str:
32
+ return oa.NameText
33
+
34
+ unit: str | None = map(mapping_1, this.Unit)
35
+ def mapping_2(v: Value_1) -> str:
36
+ s: str = v.PrintCompact()
37
+ if unit is None:
38
+ return s
39
+
40
+ else:
41
+ return (s + " ") + unit
42
+
43
+
44
+ value: str | None = map(mapping_2, this.Value)
45
+ def _arrow1080(__unit: None=None) -> str:
46
+ value_2: str = value
47
+ return value_2
48
+
49
+ def _arrow1081(__unit: None=None) -> str:
50
+ category_2: str = category
51
+ return (category_2 + ":") + "No Value"
52
+
53
+ def _arrow1082(__unit: None=None) -> str:
54
+ category_1: str = category
55
+ value_1: str = value
56
+ return (category_1 + ":") + value_1
57
+
58
+ return ("" if (value is None) else _arrow1080()) if (category is None) else (_arrow1081() if (value is None) else _arrow1082())
59
+
60
+ def AlternateName(self, __unit: None=None) -> str | None:
61
+ return None
62
+
63
+ def MeasurementMethod(self, __unit: None=None) -> str | None:
64
+ return None
65
+
66
+ def Description(self, __unit: None=None) -> str | None:
67
+ return None
68
+
69
+ def GetCategory(self, __unit: None=None) -> OntologyAnnotation | None:
70
+ this: MaterialAttributeValue = self
71
+ def binder(x: MaterialAttribute) -> OntologyAnnotation | None:
72
+ return x.CharacteristicType
73
+
74
+ return bind(binder, this.Category)
75
+
76
+ def GetValue(self, __unit: None=None) -> Value_1 | None:
77
+ this: MaterialAttributeValue = self
78
+ return this.Value
79
+
80
+ def GetUnit(self, __unit: None=None) -> OntologyAnnotation | None:
81
+ this: MaterialAttributeValue = self
82
+ return this.Unit
83
+
84
+ def GetAdditionalType(self, __unit: None=None) -> str:
85
+ return "MaterialAttributeValue"
86
+
87
+
88
+ MaterialAttributeValue_reflection = _expr1083
89
+
90
+ def MaterialAttributeValue_make(id: str | None=None, category: MaterialAttribute | None=None, value: Value_1 | None=None, unit: OntologyAnnotation | None=None) -> MaterialAttributeValue:
91
+ return MaterialAttributeValue(id, category, value, unit)
92
+
93
+
94
+ def MaterialAttributeValue_create_ZE1D108D(Id: str | None=None, Category: MaterialAttribute | None=None, Value: Value_1 | None=None, Unit: OntologyAnnotation | None=None) -> MaterialAttributeValue:
95
+ return MaterialAttributeValue_make(Id, Category, Value, Unit)
96
+
97
+
98
+ def MaterialAttributeValue_get_empty(__unit: None=None) -> MaterialAttributeValue:
99
+ return MaterialAttributeValue_create_ZE1D108D()
100
+
101
+
102
+ def MaterialAttributeValue__get_NameText(this: MaterialAttributeValue) -> str:
103
+ def mapping(oa: MaterialAttribute, this: Any=this) -> str:
104
+ return MaterialAttribute__get_NameText(oa)
105
+
106
+ return default_arg(map(mapping, this.Category), "")
107
+
108
+
109
+ def MaterialAttributeValue__get_TryNameText(this: MaterialAttributeValue) -> str | None:
110
+ def binder(oa: MaterialAttribute, this: Any=this) -> str | None:
111
+ return MaterialAttribute__get_TryNameText(oa)
112
+
113
+ return bind(binder, this.Category)
114
+
115
+
116
+ def MaterialAttributeValue__get_ValueText(this: MaterialAttributeValue) -> str:
117
+ def mapping(oa: Value_1, this: Any=this) -> str:
118
+ if oa.tag == 2:
119
+ return to_string(oa.fields[0])
120
+
121
+ elif oa.tag == 1:
122
+ return int32_to_string(oa.fields[0])
123
+
124
+ elif oa.tag == 3:
125
+ return oa.fields[0]
126
+
127
+ else:
128
+ return oa.fields[0].NameText
129
+
130
+
131
+ return default_arg(map(mapping, this.Value), "")
132
+
133
+
134
+ def MaterialAttributeValue__get_ValueWithUnitText(this: MaterialAttributeValue) -> str:
135
+ def mapping(oa: OntologyAnnotation, this: Any=this) -> str:
136
+ return oa.NameText
137
+
138
+ unit: str | None = map(mapping, this.Unit)
139
+ v: str = MaterialAttributeValue__get_ValueText(this)
140
+ if unit is None:
141
+ return v
142
+
143
+ else:
144
+ u: str = unit
145
+ return to_text(printf("%s %s"))(v)(u)
146
+
147
+
148
+
149
+ def MaterialAttributeValue__MapCategory_658CFBF6(this: MaterialAttributeValue, f: Callable[[OntologyAnnotation], OntologyAnnotation]) -> MaterialAttributeValue:
150
+ def mapping(p: MaterialAttribute, this: Any=this, f: Any=f) -> MaterialAttribute:
151
+ return MaterialAttribute__MapCategory_658CFBF6(p, f)
152
+
153
+ return MaterialAttributeValue(this.ID, map(mapping, this.Category), this.Value, this.Unit)
154
+
155
+
156
+ def MaterialAttributeValue__SetCategory_ZDED3A0F(this: MaterialAttributeValue, c: OntologyAnnotation) -> MaterialAttributeValue:
157
+ def _arrow1084(__unit: None=None, this: Any=this, c: Any=c) -> MaterialAttribute | None:
158
+ match_value: MaterialAttribute | None = this.Category
159
+ return MaterialAttribute_create_A220A8A(None, c) if (match_value is None) else MaterialAttribute__SetCategory_ZDED3A0F(match_value, c)
160
+
161
+ return MaterialAttributeValue(this.ID, _arrow1084(), this.Value, this.Unit)
162
+
163
+
164
+ def MaterialAttributeValue_tryGetNameText_Z772273B8(mv: MaterialAttributeValue) -> str | None:
165
+ return MaterialAttributeValue__get_TryNameText(mv)
166
+
167
+
168
+ def MaterialAttributeValue_getNameAsString_Z772273B8(mv: MaterialAttributeValue) -> str | None:
169
+ return MaterialAttributeValue__get_TryNameText(mv)
170
+
171
+
172
+ def MaterialAttributeValue_nameEqualsString(name: str, mv: MaterialAttributeValue) -> bool:
173
+ return MaterialAttributeValue__get_NameText(mv) == name
174
+
175
+
176
+ def MaterialAttributeValue_createAsPV(alternate_name: str | None=None, measurement_method: str | None=None, description: str | None=None, category: OntologyAnnotation | None=None, value: Value_1 | None=None, unit: OntologyAnnotation | None=None) -> MaterialAttributeValue:
177
+ def mapping(c: OntologyAnnotation, alternate_name: Any=alternate_name, measurement_method: Any=measurement_method, description: Any=description, category: Any=category, value: Any=value, unit: Any=unit) -> MaterialAttribute:
178
+ return MaterialAttribute_create_A220A8A(None, c)
179
+
180
+ return MaterialAttributeValue_create_ZE1D108D(None, map(mapping, category), value, unit)
181
+
182
+
183
+ __all__ = ["MaterialAttributeValue_reflection", "MaterialAttributeValue_make", "MaterialAttributeValue_create_ZE1D108D", "MaterialAttributeValue_get_empty", "MaterialAttributeValue__get_NameText", "MaterialAttributeValue__get_TryNameText", "MaterialAttributeValue__get_ValueText", "MaterialAttributeValue__get_ValueWithUnitText", "MaterialAttributeValue__MapCategory_658CFBF6", "MaterialAttributeValue__SetCategory_ZDED3A0F", "MaterialAttributeValue_tryGetNameText_Z772273B8", "MaterialAttributeValue_getNameAsString_Z772273B8", "MaterialAttributeValue_nameEqualsString", "MaterialAttributeValue_createAsPV"]
184
+