arctrl 3.0.0a3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. arctrl/__init__.py +18 -0
  2. arctrl/py/CWL/__init__.py +0 -0
  3. arctrl/py/CWL/cwltypes.py +150 -0
  4. arctrl/py/CWL/decode.py +973 -0
  5. arctrl/py/CWL/encode.py +1 -0
  6. arctrl/py/CWL/inputs.py +88 -0
  7. arctrl/py/CWL/outputs.py +85 -0
  8. arctrl/py/CWL/requirements.py +77 -0
  9. arctrl/py/CWL/tool_description.py +103 -0
  10. arctrl/py/CWL/workflow_description.py +104 -0
  11. arctrl/py/CWL/workflow_steps.py +113 -0
  12. arctrl/py/Contract/__init__.py +0 -0
  13. arctrl/py/Contract/arc.py +60 -0
  14. arctrl/py/Contract/arc_assay.py +125 -0
  15. arctrl/py/Contract/arc_investigation.py +88 -0
  16. arctrl/py/Contract/arc_run.py +125 -0
  17. arctrl/py/Contract/arc_study.py +126 -0
  18. arctrl/py/Contract/arc_workflow.py +125 -0
  19. arctrl/py/Contract/contract.py +153 -0
  20. arctrl/py/Contract/datamap.py +372 -0
  21. arctrl/py/Contract/git.py +118 -0
  22. arctrl/py/Contract/validation_packages_config.py +107 -0
  23. arctrl/py/ContractIO/__init__.py +0 -0
  24. arctrl/py/ContractIO/contract_io.py +344 -0
  25. arctrl/py/ContractIO/file_system_helper.py +264 -0
  26. arctrl/py/Core/Helper/__init__.py +0 -0
  27. arctrl/py/Core/Helper/collections_.py +438 -0
  28. arctrl/py/Core/Helper/date_time.py +26 -0
  29. arctrl/py/Core/Helper/hash_codes.py +60 -0
  30. arctrl/py/Core/Helper/identifier.py +248 -0
  31. arctrl/py/Core/Helper/orcid.py +42 -0
  32. arctrl/py/Core/Helper/printer.py +13 -0
  33. arctrl/py/Core/Helper/regex.py +554 -0
  34. arctrl/py/Core/Helper/sem_ver.py +71 -0
  35. arctrl/py/Core/Helper/url.py +148 -0
  36. arctrl/py/Core/Process/__init__.py +0 -0
  37. arctrl/py/Core/Process/column_index.py +280 -0
  38. arctrl/py/Core/Process/component.py +200 -0
  39. arctrl/py/Core/Process/factor.py +151 -0
  40. arctrl/py/Core/Process/factor_value.py +182 -0
  41. arctrl/py/Core/Process/material.py +74 -0
  42. arctrl/py/Core/Process/material_attribute.py +95 -0
  43. arctrl/py/Core/Process/material_attribute_value.py +184 -0
  44. arctrl/py/Core/Process/material_type.py +45 -0
  45. arctrl/py/Core/Process/process.py +477 -0
  46. arctrl/py/Core/Process/process_input.py +265 -0
  47. arctrl/py/Core/Process/process_output.py +235 -0
  48. arctrl/py/Core/Process/process_parameter_value.py +200 -0
  49. arctrl/py/Core/Process/process_sequence.py +435 -0
  50. arctrl/py/Core/Process/protocol.py +175 -0
  51. arctrl/py/Core/Process/protocol_parameter.py +98 -0
  52. arctrl/py/Core/Process/sample.py +82 -0
  53. arctrl/py/Core/Process/source.py +62 -0
  54. arctrl/py/Core/Table/__init__.py +0 -0
  55. arctrl/py/Core/Table/arc_table.py +1264 -0
  56. arctrl/py/Core/Table/arc_table_aux.py +575 -0
  57. arctrl/py/Core/Table/arc_tables.py +591 -0
  58. arctrl/py/Core/Table/composite_cell.py +319 -0
  59. arctrl/py/Core/Table/composite_column.py +73 -0
  60. arctrl/py/Core/Table/composite_header.py +739 -0
  61. arctrl/py/Core/__init__.py +0 -0
  62. arctrl/py/Core/arc_types.py +5064 -0
  63. arctrl/py/Core/comment.py +128 -0
  64. arctrl/py/Core/comment_list.py +127 -0
  65. arctrl/py/Core/conversion.py +1313 -0
  66. arctrl/py/Core/data.py +245 -0
  67. arctrl/py/Core/data_context.py +157 -0
  68. arctrl/py/Core/data_file.py +112 -0
  69. arctrl/py/Core/data_map.py +225 -0
  70. arctrl/py/Core/identifier_setters.py +31 -0
  71. arctrl/py/Core/iproperty_value.py +36 -0
  72. arctrl/py/Core/ontology_annotation.py +299 -0
  73. arctrl/py/Core/ontology_source_reference.py +114 -0
  74. arctrl/py/Core/person.py +259 -0
  75. arctrl/py/Core/publication.py +161 -0
  76. arctrl/py/Core/template.py +231 -0
  77. arctrl/py/Core/templates.py +148 -0
  78. arctrl/py/Core/uri.py +11 -0
  79. arctrl/py/Core/value.py +188 -0
  80. arctrl/py/FileSystem/__init__.py +0 -0
  81. arctrl/py/FileSystem/commit.py +21 -0
  82. arctrl/py/FileSystem/default_gitattributes.py +5 -0
  83. arctrl/py/FileSystem/default_gitignore.py +5 -0
  84. arctrl/py/FileSystem/file_system.py +58 -0
  85. arctrl/py/FileSystem/file_system_tree.py +426 -0
  86. arctrl/py/FileSystem/path.py +64 -0
  87. arctrl/py/Json/DataMap/__init__.py +0 -0
  88. arctrl/py/Json/DataMap/data_context.py +101 -0
  89. arctrl/py/Json/DataMap/data_map.py +53 -0
  90. arctrl/py/Json/Process/__init__.py +0 -0
  91. arctrl/py/Json/Process/assay_materials.py +46 -0
  92. arctrl/py/Json/Process/component.py +79 -0
  93. arctrl/py/Json/Process/factor.py +107 -0
  94. arctrl/py/Json/Process/factor_value.py +101 -0
  95. arctrl/py/Json/Process/material.py +226 -0
  96. arctrl/py/Json/Process/material_attribute.py +79 -0
  97. arctrl/py/Json/Process/material_attribute_value.py +101 -0
  98. arctrl/py/Json/Process/material_type.py +53 -0
  99. arctrl/py/Json/Process/process.py +296 -0
  100. arctrl/py/Json/Process/process_input.py +83 -0
  101. arctrl/py/Json/Process/process_output.py +67 -0
  102. arctrl/py/Json/Process/process_parameter_value.py +81 -0
  103. arctrl/py/Json/Process/protocol.py +354 -0
  104. arctrl/py/Json/Process/protocol_parameter.py +79 -0
  105. arctrl/py/Json/Process/sample.py +277 -0
  106. arctrl/py/Json/Process/source.py +214 -0
  107. arctrl/py/Json/Process/study_materials.py +52 -0
  108. arctrl/py/Json/Process/value.py +56 -0
  109. arctrl/py/Json/ROCrate/__init__.py +0 -0
  110. arctrl/py/Json/ROCrate/ldcontext.py +133 -0
  111. arctrl/py/Json/ROCrate/ldgraph.py +111 -0
  112. arctrl/py/Json/ROCrate/ldnode.py +290 -0
  113. arctrl/py/Json/ROCrate/ldref.py +44 -0
  114. arctrl/py/Json/ROCrate/ldvalue.py +102 -0
  115. arctrl/py/Json/Table/__init__.py +0 -0
  116. arctrl/py/Json/Table/arc_table.py +393 -0
  117. arctrl/py/Json/Table/cell_table.py +83 -0
  118. arctrl/py/Json/Table/composite_cell.py +136 -0
  119. arctrl/py/Json/Table/composite_header.py +67 -0
  120. arctrl/py/Json/Table/iotype.py +24 -0
  121. arctrl/py/Json/Table/oatable.py +82 -0
  122. arctrl/py/Json/Table/templates.py +281 -0
  123. arctrl/py/Json/__init__.py +0 -0
  124. arctrl/py/Json/assay.py +600 -0
  125. arctrl/py/Json/comment.py +206 -0
  126. arctrl/py/Json/context/rocrate/__init__.py +0 -0
  127. arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
  128. arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
  129. arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
  130. arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
  131. arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
  132. arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
  133. arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
  134. arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
  135. arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
  136. arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
  137. arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
  138. arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
  139. arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
  140. arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
  141. arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
  142. arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
  143. arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
  144. arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
  145. arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
  146. arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
  147. arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
  148. arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
  149. arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
  150. arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
  151. arctrl/py/Json/converter_options.py +23 -0
  152. arctrl/py/Json/data.py +356 -0
  153. arctrl/py/Json/data_file.py +63 -0
  154. arctrl/py/Json/decode.py +155 -0
  155. arctrl/py/Json/encode.py +92 -0
  156. arctrl/py/Json/idtable.py +44 -0
  157. arctrl/py/Json/investigation.py +695 -0
  158. arctrl/py/Json/ontology_annotation.py +404 -0
  159. arctrl/py/Json/ontology_source_reference.py +255 -0
  160. arctrl/py/Json/person.py +658 -0
  161. arctrl/py/Json/property_value.py +359 -0
  162. arctrl/py/Json/publication.py +279 -0
  163. arctrl/py/Json/string_table.py +76 -0
  164. arctrl/py/Json/study.py +793 -0
  165. arctrl/py/JsonIO/DataMap/__init__.py +0 -0
  166. arctrl/py/JsonIO/DataMap/data_map.py +53 -0
  167. arctrl/py/JsonIO/Process/__init__.py +0 -0
  168. arctrl/py/JsonIO/Process/component.py +60 -0
  169. arctrl/py/JsonIO/Process/factor.py +36 -0
  170. arctrl/py/JsonIO/Process/factor_value.py +38 -0
  171. arctrl/py/JsonIO/Process/material.py +60 -0
  172. arctrl/py/JsonIO/Process/material_attribute.py +38 -0
  173. arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
  174. arctrl/py/JsonIO/Process/material_type.py +36 -0
  175. arctrl/py/JsonIO/Process/process.py +60 -0
  176. arctrl/py/JsonIO/Process/process_input.py +38 -0
  177. arctrl/py/JsonIO/Process/process_output.py +60 -0
  178. arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
  179. arctrl/py/JsonIO/Process/process_sequence.py +71 -0
  180. arctrl/py/JsonIO/Process/protocol.py +60 -0
  181. arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
  182. arctrl/py/JsonIO/Process/sample.py +60 -0
  183. arctrl/py/JsonIO/Process/source.py +60 -0
  184. arctrl/py/JsonIO/Process/study_materials.py +52 -0
  185. arctrl/py/JsonIO/Process/value.py +32 -0
  186. arctrl/py/JsonIO/Table/__init__.py +0 -0
  187. arctrl/py/JsonIO/Table/arc_table.py +121 -0
  188. arctrl/py/JsonIO/Table/composite_cell.py +36 -0
  189. arctrl/py/JsonIO/Table/composite_header.py +36 -0
  190. arctrl/py/JsonIO/Table/compression.py +85 -0
  191. arctrl/py/JsonIO/Table/iotype.py +36 -0
  192. arctrl/py/JsonIO/Table/templates.py +113 -0
  193. arctrl/py/JsonIO/__init__.py +0 -0
  194. arctrl/py/JsonIO/assay.py +113 -0
  195. arctrl/py/JsonIO/comment.py +80 -0
  196. arctrl/py/JsonIO/data.py +60 -0
  197. arctrl/py/JsonIO/data_file.py +58 -0
  198. arctrl/py/JsonIO/decode.py +9 -0
  199. arctrl/py/JsonIO/encode.py +1 -0
  200. arctrl/py/JsonIO/investigation.py +113 -0
  201. arctrl/py/JsonIO/ldobject.py +106 -0
  202. arctrl/py/JsonIO/ontology_annotation.py +80 -0
  203. arctrl/py/JsonIO/ontology_source_reference.py +80 -0
  204. arctrl/py/JsonIO/person.py +82 -0
  205. arctrl/py/JsonIO/publication.py +82 -0
  206. arctrl/py/JsonIO/study.py +114 -0
  207. arctrl/py/ROCrate/Generic/__init__.py +0 -0
  208. arctrl/py/ROCrate/Generic/comment.py +131 -0
  209. arctrl/py/ROCrate/Generic/dataset.py +817 -0
  210. arctrl/py/ROCrate/Generic/defined_term.py +131 -0
  211. arctrl/py/ROCrate/Generic/file.py +237 -0
  212. arctrl/py/ROCrate/Generic/lab_process.py +324 -0
  213. arctrl/py/ROCrate/Generic/lab_protocol.py +338 -0
  214. arctrl/py/ROCrate/Generic/organization.py +83 -0
  215. arctrl/py/ROCrate/Generic/person.py +484 -0
  216. arctrl/py/ROCrate/Generic/postal_address.py +195 -0
  217. arctrl/py/ROCrate/Generic/property_value.py +696 -0
  218. arctrl/py/ROCrate/Generic/sample.py +202 -0
  219. arctrl/py/ROCrate/Generic/scholarly_article.py +229 -0
  220. arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
  221. arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
  222. arctrl/py/ROCrate/ISAProfile/data.py +65 -0
  223. arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
  224. arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
  225. arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
  226. arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
  227. arctrl/py/ROCrate/ISAProfile/person.py +72 -0
  228. arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
  229. arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
  230. arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
  231. arctrl/py/ROCrate/ISAProfile/study.py +74 -0
  232. arctrl/py/ROCrate/__init__.py +0 -0
  233. arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
  234. arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
  235. arctrl/py/ROCrate/helper.py +8 -0
  236. arctrl/py/ROCrate/ldcontext.py +362 -0
  237. arctrl/py/ROCrate/ldobject.py +1247 -0
  238. arctrl/py/ROCrate/rocrate_context.py +51 -0
  239. arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
  240. arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +193 -0
  241. arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
  242. arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +210 -0
  243. arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
  244. arctrl/py/Spreadsheet/DataMapTable/__init__.py +0 -0
  245. arctrl/py/Spreadsheet/DataMapTable/data_map_column.py +114 -0
  246. arctrl/py/Spreadsheet/DataMapTable/data_map_header.py +618 -0
  247. arctrl/py/Spreadsheet/DataMapTable/data_map_table.py +119 -0
  248. arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
  249. arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
  250. arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
  251. arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
  252. arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
  253. arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
  254. arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
  255. arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
  256. arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
  257. arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
  258. arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
  259. arctrl/py/Spreadsheet/Metadata/run.py +122 -0
  260. arctrl/py/Spreadsheet/Metadata/sparse_table.py +508 -0
  261. arctrl/py/Spreadsheet/Metadata/study.py +312 -0
  262. arctrl/py/Spreadsheet/Metadata/workflow.py +151 -0
  263. arctrl/py/Spreadsheet/__init__.py +0 -0
  264. arctrl/py/Spreadsheet/arc_assay.py +233 -0
  265. arctrl/py/Spreadsheet/arc_investigation.py +418 -0
  266. arctrl/py/Spreadsheet/arc_run.py +190 -0
  267. arctrl/py/Spreadsheet/arc_study.py +144 -0
  268. arctrl/py/Spreadsheet/arc_workflow.py +176 -0
  269. arctrl/py/Spreadsheet/assembly_info.py +1 -0
  270. arctrl/py/Spreadsheet/collection_aux.py +167 -0
  271. arctrl/py/Spreadsheet/data_map.py +44 -0
  272. arctrl/py/Spreadsheet/template.py +460 -0
  273. arctrl/py/ValidationPackages/__init__.py +0 -0
  274. arctrl/py/ValidationPackages/validation_package.py +82 -0
  275. arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
  276. arctrl/py/WebRequest/__init__.py +0 -0
  277. arctrl/py/WebRequest/web_request.py +9 -0
  278. arctrl/py/WebRequest/web_request_py.py +135 -0
  279. arctrl/py/Yaml/__init__.py +0 -0
  280. arctrl/py/Yaml/decode.py +1 -0
  281. arctrl/py/Yaml/encode.py +10 -0
  282. arctrl/py/Yaml/validation_package.py +77 -0
  283. arctrl/py/Yaml/validation_packages_config.py +86 -0
  284. arctrl/py/__init__.py +0 -0
  285. arctrl/py/arc.py +1400 -0
  286. arctrl/py/column_index.py +280 -0
  287. arctrl/py/conversion.py +2184 -0
  288. arctrl/py/cross_async.py +76 -0
  289. arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
  290. arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
  291. arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
  292. arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
  293. arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
  294. arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
  295. arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
  296. arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
  297. arctrl/py/fable_modules/fable_library/__init__.py +0 -0
  298. arctrl/py/fable_modules/fable_library/array_.py +1528 -0
  299. arctrl/py/fable_modules/fable_library/async_.py +377 -0
  300. arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
  301. arctrl/py/fable_modules/fable_library/big_int.py +330 -0
  302. arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
  303. arctrl/py/fable_modules/fable_library/boolean.py +26 -0
  304. arctrl/py/fable_modules/fable_library/char.py +237 -0
  305. arctrl/py/fable_modules/fable_library/choice.py +212 -0
  306. arctrl/py/fable_modules/fable_library/date.py +779 -0
  307. arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
  308. arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
  309. arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
  310. arctrl/py/fable_modules/fable_library/double.py +87 -0
  311. arctrl/py/fable_modules/fable_library/encoding.py +41 -0
  312. arctrl/py/fable_modules/fable_library/event.py +206 -0
  313. arctrl/py/fable_modules/fable_library/file.py +107 -0
  314. arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
  315. arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
  316. arctrl/py/fable_modules/fable_library/global_.py +63 -0
  317. arctrl/py/fable_modules/fable_library/guid.py +41 -0
  318. arctrl/py/fable_modules/fable_library/int32.py +73 -0
  319. arctrl/py/fable_modules/fable_library/list.py +1788 -0
  320. arctrl/py/fable_modules/fable_library/long.py +240 -0
  321. arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
  322. arctrl/py/fable_modules/fable_library/map.py +1854 -0
  323. arctrl/py/fable_modules/fable_library/map_util.py +148 -0
  324. arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
  325. arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
  326. arctrl/py/fable_modules/fable_library/native.py +45 -0
  327. arctrl/py/fable_modules/fable_library/numeric.py +46 -0
  328. arctrl/py/fable_modules/fable_library/observable.py +222 -0
  329. arctrl/py/fable_modules/fable_library/option.py +128 -0
  330. arctrl/py/fable_modules/fable_library/path.py +62 -0
  331. arctrl/py/fable_modules/fable_library/range.py +117 -0
  332. arctrl/py/fable_modules/fable_library/reflection.py +463 -0
  333. arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
  334. arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
  335. arctrl/py/fable_modules/fable_library/result.py +212 -0
  336. arctrl/py/fable_modules/fable_library/seq.py +1979 -0
  337. arctrl/py/fable_modules/fable_library/seq2.py +221 -0
  338. arctrl/py/fable_modules/fable_library/set.py +2414 -0
  339. arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
  340. arctrl/py/fable_modules/fable_library/string_.py +573 -0
  341. arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
  342. arctrl/py/fable_modules/fable_library/system_text.py +237 -0
  343. arctrl/py/fable_modules/fable_library/task.py +116 -0
  344. arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
  345. arctrl/py/fable_modules/fable_library/thread.py +5 -0
  346. arctrl/py/fable_modules/fable_library/time_span.py +283 -0
  347. arctrl/py/fable_modules/fable_library/timer.py +24 -0
  348. arctrl/py/fable_modules/fable_library/types.py +401 -0
  349. arctrl/py/fable_modules/fable_library/uri.py +109 -0
  350. arctrl/py/fable_modules/fable_library/util.py +2735 -0
  351. arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
  352. arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
  353. arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
  354. arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
  355. arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
  356. arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
  357. arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
  358. arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
  359. arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
  360. arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
  361. arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
  362. arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
  363. arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
  364. arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
  365. arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
  366. arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
  367. arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
  368. arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
  369. arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
  370. arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
  371. arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
  372. arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
  373. arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
  374. arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
  375. arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
  376. arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
  377. arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
  378. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +338 -0
  379. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +469 -0
  380. arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
  381. arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
  382. arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
  383. arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
  384. arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
  385. arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
  386. arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
  387. arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
  388. arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
  389. arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +464 -0
  390. arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
  391. arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
  392. arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
  393. arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
  394. arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
  395. arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
  396. arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +57 -0
  397. arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
  398. arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
  399. arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +217 -0
  400. arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
  401. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +47 -0
  402. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +186 -0
  403. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +90 -0
  404. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +78 -0
  405. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
  406. arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
  407. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +393 -0
  408. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +127 -0
  409. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
  410. arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
  411. arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +218 -0
  412. arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
  413. arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
  414. arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +180 -0
  415. arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +600 -0
  416. arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +330 -0
  417. arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
  418. arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +63 -0
  419. arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
  420. arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
  421. arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
  422. arctrl/py/fable_modules/fs_spreadsheet_py/table.py +53 -0
  423. arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +40 -0
  424. arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +54 -0
  425. arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
  426. arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
  427. arctrl/py/fable_modules/thoth_json_core/decode.py +1588 -0
  428. arctrl/py/fable_modules/thoth_json_core/encode.py +261 -0
  429. arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
  430. arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
  431. arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
  432. arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
  433. arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
  434. arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
  435. arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
  436. arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
  437. arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
  438. arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
  439. arctrl/py/fable_modules/yamlicious/encode.py +84 -0
  440. arctrl/py/fable_modules/yamlicious/library.py +10 -0
  441. arctrl/py/fable_modules/yamlicious/persil.py +57 -0
  442. arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
  443. arctrl/py/fable_modules/yamlicious/reader.py +665 -0
  444. arctrl/py/fable_modules/yamlicious/regex.py +21 -0
  445. arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +256 -0
  446. arctrl/py/fable_modules/yamlicious/writer.py +175 -0
  447. arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
  448. arctrl/py/json.py +213 -0
  449. arctrl/py/rocrate_io.py +72 -0
  450. arctrl/py/template_web.py +23 -0
  451. arctrl/py/xlsx.py +148 -0
  452. arctrl/rocrate.py +21 -0
  453. arctrl-3.0.0a3.dist-info/LICENSE +21 -0
  454. arctrl-3.0.0a3.dist-info/METADATA +119 -0
  455. arctrl-3.0.0a3.dist-info/RECORD +456 -0
  456. arctrl-3.0.0a3.dist-info/WHEEL +4 -0
@@ -0,0 +1,131 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_modules.fable_library.option import value
4
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
5
+ from ..helper import clean
6
+ from ..ldcontext import LDContext
7
+ from ..ldobject import LDNode
8
+
9
+ def _expr1441() -> TypeInfo:
10
+ return class_type("ARCtrl.ROCrate.LDDefinedTerm", None, LDDefinedTerm)
11
+
12
+
13
+ class LDDefinedTerm:
14
+ @staticmethod
15
+ def schema_type() -> str:
16
+ return "http://schema.org/DefinedTerm"
17
+
18
+ @staticmethod
19
+ def term_code() -> str:
20
+ return "http://schema.org/termCode"
21
+
22
+ @staticmethod
23
+ def name() -> str:
24
+ return "http://schema.org/name"
25
+
26
+ @staticmethod
27
+ def try_get_term_code_as_string(dt: LDNode, context: LDContext | None=None) -> str | None:
28
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDDefinedTerm.term_code(), context)
29
+ (pattern_matching_result, tc) = (None, None)
30
+ if match_value is not None:
31
+ if str(type(value(match_value))) == "<class \'str\'>":
32
+ pattern_matching_result = 0
33
+ tc = value(match_value)
34
+
35
+ else:
36
+ pattern_matching_result = 1
37
+
38
+
39
+ else:
40
+ pattern_matching_result = 1
41
+
42
+ if pattern_matching_result == 0:
43
+ return tc
44
+
45
+ elif pattern_matching_result == 1:
46
+ return None
47
+
48
+
49
+ @staticmethod
50
+ def get_term_code_as_string(dt: LDNode, context: LDContext | None=None) -> str:
51
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDDefinedTerm.term_code(), context)
52
+ if match_value is not None:
53
+ if str(type(value(match_value))) == "<class \'str\'>":
54
+ tc: str = value(match_value)
55
+ return tc
56
+
57
+ else:
58
+ raise Exception(("Property of `termCode` of object with @id `" + dt.Id) + "` was not a string")
59
+
60
+
61
+ else:
62
+ raise Exception(("Could not access property `termCode` of object with @id `" + dt.Id) + "`")
63
+
64
+
65
+ @staticmethod
66
+ def set_term_code_as_string(dt: LDNode, term_code: str, context: LDContext | None=None) -> Any:
67
+ return dt.SetProperty(LDDefinedTerm.term_code(), term_code, context)
68
+
69
+ @staticmethod
70
+ def try_get_name_as_string(dt: LDNode, context: LDContext | None=None) -> str | None:
71
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDDefinedTerm.name(), context)
72
+ (pattern_matching_result, n) = (None, None)
73
+ if match_value is not None:
74
+ if str(type(value(match_value))) == "<class \'str\'>":
75
+ pattern_matching_result = 0
76
+ n = value(match_value)
77
+
78
+ else:
79
+ pattern_matching_result = 1
80
+
81
+
82
+ else:
83
+ pattern_matching_result = 1
84
+
85
+ if pattern_matching_result == 0:
86
+ return n
87
+
88
+ elif pattern_matching_result == 1:
89
+ return None
90
+
91
+
92
+ @staticmethod
93
+ def get_name_as_string(dt: LDNode, context: LDContext | None=None) -> str:
94
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDDefinedTerm.name(), context)
95
+ if match_value is not None:
96
+ if str(type(value(match_value))) == "<class \'str\'>":
97
+ n: str = value(match_value)
98
+ return n
99
+
100
+ else:
101
+ raise Exception(("Property of `name` of object with @id `" + dt.Id) + "` was not a string")
102
+
103
+
104
+ else:
105
+ raise Exception(("Could not access property `name` of object with @id `" + dt.Id) + "`")
106
+
107
+
108
+ @staticmethod
109
+ def set_name_as_string(dt: LDNode, name: str, context: LDContext | None=None) -> Any:
110
+ return dt.SetProperty(LDDefinedTerm.name(), name, context)
111
+
112
+ @staticmethod
113
+ def gen_id(name: str, term_code: str | None=None) -> str:
114
+ return clean(("#OA_" + name) + "") if (term_code is None) else (("" + term_code) + "")
115
+
116
+ @staticmethod
117
+ def validate(dt: LDNode, context: LDContext | None=None) -> bool:
118
+ return dt.HasProperty(LDDefinedTerm.name(), context) if dt.HasType(LDDefinedTerm.schema_type(), context) else False
119
+
120
+ @staticmethod
121
+ def create(name: str, id: str | None=None, term_code: str | None=None, context: LDContext | None=None) -> LDNode:
122
+ dt: LDNode = LDNode(LDDefinedTerm.gen_id(name, term_code) if (id is None) else id, [LDDefinedTerm.schema_type()], None, context)
123
+ dt.SetProperty(LDDefinedTerm.name(), name, context)
124
+ dt.SetOptionalProperty(LDDefinedTerm.term_code(), term_code, context)
125
+ return dt
126
+
127
+
128
+ LDDefinedTerm_reflection = _expr1441
129
+
130
+ __all__ = ["LDDefinedTerm_reflection"]
131
+
@@ -0,0 +1,237 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_modules.fable_library.option import value
4
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
5
+ from ...fable_modules.fable_library.types import Array
6
+ from ..ldcontext import LDContext
7
+ from ..ldobject import (LDNode, LDGraph)
8
+ from .comment import LDComment
9
+ from .defined_term import LDDefinedTerm
10
+
11
+ def _expr1545() -> TypeInfo:
12
+ return class_type("ARCtrl.ROCrate.LDFile", None, LDFile)
13
+
14
+
15
+ class LDFile:
16
+ @staticmethod
17
+ def schema_type() -> str:
18
+ return "http://schema.org/MediaObject"
19
+
20
+ @staticmethod
21
+ def name() -> str:
22
+ return "http://schema.org/name"
23
+
24
+ @staticmethod
25
+ def comment() -> str:
26
+ return "http://schema.org/comment"
27
+
28
+ @staticmethod
29
+ def disambiguating_description() -> str:
30
+ return "http://schema.org/disambiguatingDescription"
31
+
32
+ @staticmethod
33
+ def usage_info() -> str:
34
+ return "http://schema.org/usageInfo"
35
+
36
+ @staticmethod
37
+ def encoding_format() -> str:
38
+ return "http://schema.org/encodingFormat"
39
+
40
+ @staticmethod
41
+ def pattern() -> str:
42
+ return "http://schema.org/pattern"
43
+
44
+ @staticmethod
45
+ def about() -> str:
46
+ return "http://schema.org/about"
47
+
48
+ @staticmethod
49
+ def try_get_name_as_string(dt: LDNode, context: LDContext | None=None) -> str | None:
50
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDFile.name(), context)
51
+ (pattern_matching_result, n) = (None, None)
52
+ if match_value is not None:
53
+ if str(type(value(match_value))) == "<class \'str\'>":
54
+ pattern_matching_result = 0
55
+ n = value(match_value)
56
+
57
+ else:
58
+ pattern_matching_result = 1
59
+
60
+
61
+ else:
62
+ pattern_matching_result = 1
63
+
64
+ if pattern_matching_result == 0:
65
+ return n
66
+
67
+ elif pattern_matching_result == 1:
68
+ return None
69
+
70
+
71
+ @staticmethod
72
+ def get_name_as_string(dt: LDNode, context: LDContext | None=None) -> str:
73
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDFile.name(), context)
74
+ if match_value is not None:
75
+ if str(type(value(match_value))) == "<class \'str\'>":
76
+ n: str = value(match_value)
77
+ return n
78
+
79
+ else:
80
+ raise Exception(("Property of `name` of object with @id `" + dt.Id) + "` was not a string")
81
+
82
+
83
+ else:
84
+ raise Exception(("Could not access property `name` of object with @id `" + dt.Id) + "`")
85
+
86
+
87
+ @staticmethod
88
+ def set_name_as_string(dt: LDNode, name: str, context: LDContext | None=None) -> Any:
89
+ return dt.SetProperty(LDFile.name(), name, context)
90
+
91
+ @staticmethod
92
+ def get_comments(dt: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
93
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
94
+ return LDComment.validate(ld_object, context_1)
95
+
96
+ return dt.GetPropertyNodes(LDFile.comment(), filter, graph, context)
97
+
98
+ @staticmethod
99
+ def set_comments(dt: LDNode, comment: Array[LDNode], context: LDContext | None=None) -> Any:
100
+ return dt.SetProperty(LDFile.comment(), comment, context)
101
+
102
+ @staticmethod
103
+ def try_get_disambiguating_description_as_string(dt: LDNode, context: LDContext | None=None) -> str | None:
104
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDFile.disambiguating_description(), context)
105
+ (pattern_matching_result, dd) = (None, None)
106
+ if match_value is not None:
107
+ if str(type(value(match_value))) == "<class \'str\'>":
108
+ pattern_matching_result = 0
109
+ dd = value(match_value)
110
+
111
+ else:
112
+ pattern_matching_result = 1
113
+
114
+
115
+ else:
116
+ pattern_matching_result = 1
117
+
118
+ if pattern_matching_result == 0:
119
+ return dd
120
+
121
+ elif pattern_matching_result == 1:
122
+ return None
123
+
124
+
125
+ @staticmethod
126
+ def set_disambiguating_description_as_string(dt: LDNode, disambiguating_description: str, context: LDContext | None=None) -> Any:
127
+ return dt.SetProperty(LDFile.disambiguating_description(), disambiguating_description, context)
128
+
129
+ @staticmethod
130
+ def try_get_encoding_format_as_string(dt: LDNode, context: LDContext | None=None) -> str | None:
131
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDFile.encoding_format(), context)
132
+ (pattern_matching_result, ef) = (None, None)
133
+ if match_value is not None:
134
+ if str(type(value(match_value))) == "<class \'str\'>":
135
+ pattern_matching_result = 0
136
+ ef = value(match_value)
137
+
138
+ else:
139
+ pattern_matching_result = 1
140
+
141
+
142
+ else:
143
+ pattern_matching_result = 1
144
+
145
+ if pattern_matching_result == 0:
146
+ return ef
147
+
148
+ elif pattern_matching_result == 1:
149
+ return None
150
+
151
+
152
+ @staticmethod
153
+ def set_encoding_format_as_string(dt: LDNode, encoding_format: str, context: LDContext | None=None) -> Any:
154
+ return dt.SetProperty(LDFile.encoding_format(), encoding_format, context)
155
+
156
+ @staticmethod
157
+ def try_get_usage_info_as_string(dt: LDNode, context: LDContext | None=None) -> str | None:
158
+ match_value: Any | None = dt.TryGetPropertyAsSingleton(LDFile.usage_info(), context)
159
+ (pattern_matching_result, ui) = (None, None)
160
+ if match_value is not None:
161
+ if str(type(value(match_value))) == "<class \'str\'>":
162
+ pattern_matching_result = 0
163
+ ui = value(match_value)
164
+
165
+ else:
166
+ pattern_matching_result = 1
167
+
168
+
169
+ else:
170
+ pattern_matching_result = 1
171
+
172
+ if pattern_matching_result == 0:
173
+ return ui
174
+
175
+ elif pattern_matching_result == 1:
176
+ return None
177
+
178
+
179
+ @staticmethod
180
+ def set_usage_info_as_string(dt: LDNode, usage_info: str, context: LDContext | None=None) -> Any:
181
+ return dt.SetProperty(LDFile.usage_info(), usage_info, context)
182
+
183
+ @staticmethod
184
+ def try_get_pattern_as_defined_term(dt: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
185
+ match_value: LDNode | None = dt.TryGetPropertyAsSingleNode(LDFile.pattern(), graph, context)
186
+ if match_value is not None:
187
+ def _arrow1544(__unit: None=None) -> bool:
188
+ dt_1: LDNode = match_value
189
+ return LDDefinedTerm.validate(dt_1, context)
190
+
191
+ if _arrow1544():
192
+ dt_2: LDNode = match_value
193
+ return dt_2
194
+
195
+ else:
196
+ raise Exception(("Property of `pattern` of object with @id `" + dt.Id) + "` was not a DefinedTerm")
197
+
198
+
199
+ else:
200
+ return None
201
+
202
+
203
+ @staticmethod
204
+ def set_pattern_as_defined_term(dt: LDNode, pattern: LDNode, context: LDContext | None=None) -> Any:
205
+ return dt.SetProperty(LDFile.pattern(), pattern, context)
206
+
207
+ @staticmethod
208
+ def try_get_about(dt: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
209
+ return dt.TryGetPropertyAsSingleNode(LDFile.about(), graph, context)
210
+
211
+ @staticmethod
212
+ def set_about(dt: LDNode, about: LDNode, context: LDContext | None=None) -> Any:
213
+ return dt.SetProperty(LDFile.about(), about, context)
214
+
215
+ @staticmethod
216
+ def gen_id(name: str) -> str:
217
+ return ("" + name) + ""
218
+
219
+ @staticmethod
220
+ def validate(dt: LDNode, context: LDContext | None=None) -> bool:
221
+ return dt.HasProperty(LDFile.name(), context) if dt.HasType(LDFile.schema_type(), context) else False
222
+
223
+ @staticmethod
224
+ def create(name: str, id: str | None=None, comments: Array[LDNode] | None=None, disambiguating_description: str | None=None, encoding_format: str | None=None, usage_info: str | None=None, context: LDContext | None=None) -> LDNode:
225
+ dt: LDNode = LDNode(LDFile.gen_id(name) if (id is None) else id, [LDFile.schema_type()], None, context)
226
+ dt.SetProperty(LDFile.name(), name, context)
227
+ dt.SetOptionalProperty(LDFile.comment(), comments, context)
228
+ dt.SetOptionalProperty(LDFile.disambiguating_description(), disambiguating_description, context)
229
+ dt.SetOptionalProperty(LDFile.encoding_format(), encoding_format, context)
230
+ dt.SetOptionalProperty(LDFile.usage_info(), usage_info, context)
231
+ return dt
232
+
233
+
234
+ LDFile_reflection = _expr1545
235
+
236
+ __all__ = ["LDFile_reflection"]
237
+
@@ -0,0 +1,324 @@
1
+ from __future__ import annotations
2
+ from datetime import datetime
3
+ from typing import (Any, TypeVar)
4
+ from ...fable_modules.fable_library.option import (value, default_arg)
5
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
6
+ from ...fable_modules.fable_library.types import Array
7
+ from ...Core.Helper.collections_ import ResizeArray_map
8
+ from ..helper import clean
9
+ from ..ldcontext import LDContext
10
+ from ..ldobject import (LDNode, LDGraph)
11
+ from .file import LDFile
12
+ from .lab_protocol import LDLabProtocol
13
+ from .person import LDPerson
14
+ from .property_value import LDPropertyValue
15
+ from .sample import LDSample
16
+
17
+ __C = TypeVar("__C")
18
+
19
+ __B = TypeVar("__B")
20
+
21
+ def _expr1560() -> TypeInfo:
22
+ return class_type("ARCtrl.ROCrate.LDLabProcess", None, LDLabProcess)
23
+
24
+
25
+ class LDLabProcess:
26
+ @staticmethod
27
+ def schema_type() -> str:
28
+ return "https://bioschemas.org/LabProcess"
29
+
30
+ @staticmethod
31
+ def name() -> str:
32
+ return "http://schema.org/name"
33
+
34
+ @staticmethod
35
+ def agent() -> str:
36
+ return "http://schema.org/agent"
37
+
38
+ @staticmethod
39
+ def object_() -> str:
40
+ return "http://schema.org/object"
41
+
42
+ @staticmethod
43
+ def result() -> str:
44
+ return "http://schema.org/result"
45
+
46
+ @staticmethod
47
+ def executes_lab_protocol() -> str:
48
+ return "https://bioschemas.org/executesLabProtocol"
49
+
50
+ @staticmethod
51
+ def parameter_value() -> str:
52
+ return "https://bioschemas.org/parameterValue"
53
+
54
+ @staticmethod
55
+ def end_time() -> str:
56
+ return "http://schema.org/endTime"
57
+
58
+ @staticmethod
59
+ def disambiguating_description() -> str:
60
+ return "http://schema.org/disambiguatingDescription"
61
+
62
+ @staticmethod
63
+ def try_get_name_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
64
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDLabProcess.name(), context)
65
+ (pattern_matching_result, n) = (None, None)
66
+ if match_value is not None:
67
+ if str(type(value(match_value))) == "<class \'str\'>":
68
+ pattern_matching_result = 0
69
+ n = value(match_value)
70
+
71
+ else:
72
+ pattern_matching_result = 1
73
+
74
+
75
+ else:
76
+ pattern_matching_result = 1
77
+
78
+ if pattern_matching_result == 0:
79
+ return n
80
+
81
+ elif pattern_matching_result == 1:
82
+ return None
83
+
84
+
85
+ @staticmethod
86
+ def get_name_as_string(lp: LDNode, context: LDContext | None=None) -> str:
87
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDLabProcess.name(), context)
88
+ if match_value is not None:
89
+ if str(type(value(match_value))) == "<class \'str\'>":
90
+ n: str = value(match_value)
91
+ return n
92
+
93
+ else:
94
+ raise Exception(("property `name` of object with @id `" + lp.Id) + "` was not a string")
95
+
96
+
97
+ else:
98
+ raise Exception(("Could not access property `name` of object with @id `" + lp.Id) + "`")
99
+
100
+
101
+ @staticmethod
102
+ def set_name_as_string(lp: LDNode, name: str, context: LDContext | None=None) -> Any:
103
+ return lp.SetProperty(LDLabProcess.name(), name, context)
104
+
105
+ @staticmethod
106
+ def try_get_agent(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
107
+ match_value: LDNode | None = lp.TryGetPropertyAsSingleNode(LDLabProcess.agent(), graph, context)
108
+ (pattern_matching_result, a_1) = (None, None)
109
+ if match_value is not None:
110
+ def _arrow1554(__unit: None=None) -> bool:
111
+ ld_object: LDNode = match_value
112
+ return LDPerson.validate(ld_object, context)
113
+
114
+ if _arrow1554():
115
+ pattern_matching_result = 0
116
+ a_1 = match_value
117
+
118
+ else:
119
+ pattern_matching_result = 1
120
+
121
+
122
+ else:
123
+ pattern_matching_result = 1
124
+
125
+ if pattern_matching_result == 0:
126
+ return a_1
127
+
128
+ elif pattern_matching_result == 1:
129
+ return None
130
+
131
+
132
+ @staticmethod
133
+ def get_agent(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode:
134
+ match_value: LDNode | None = lp.TryGetPropertyAsSingleNode(LDLabProcess.agent(), graph, context)
135
+ if match_value is not None:
136
+ def _arrow1555(__unit: None=None) -> bool:
137
+ ld_object: LDNode = match_value
138
+ return LDPerson.validate(ld_object, context)
139
+
140
+ if _arrow1555():
141
+ a_1: LDNode = match_value
142
+ return a_1
143
+
144
+ else:
145
+ raise Exception(("Property of `agent` of object with @id `" + lp.Id) + "` was not a valid Person")
146
+
147
+
148
+ else:
149
+ raise Exception(("Could not access property `agent` of object with @id `" + lp.Id) + "`")
150
+
151
+
152
+ @staticmethod
153
+ def set_agent(lp: LDNode, agent: LDNode, context: LDContext | None=None) -> Any:
154
+ return lp.SetProperty(LDLabProcess.agent(), agent, context)
155
+
156
+ @staticmethod
157
+ def get_objects(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
158
+ return lp.GetPropertyNodes(LDLabProcess.object_(), None, graph, context)
159
+
160
+ @staticmethod
161
+ def get_objects_as_sample(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
162
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
163
+ return LDSample.validate(ld_object, context_1)
164
+
165
+ return lp.GetPropertyNodes(LDLabProcess.object_(), filter, graph, context)
166
+
167
+ @staticmethod
168
+ def get_objects_as_data(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
169
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
170
+ return LDFile.validate(ld_object, context_1)
171
+
172
+ return lp.GetPropertyNodes(LDLabProcess.object_(), filter, graph, context)
173
+
174
+ @staticmethod
175
+ def set_objects(lp: LDNode, objects: Array[LDNode], context: LDContext | None=None) -> Any:
176
+ return lp.SetProperty(LDLabProcess.object_(), objects, context)
177
+
178
+ @staticmethod
179
+ def get_results(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
180
+ return lp.GetPropertyNodes(LDLabProcess.result(), None, graph, context)
181
+
182
+ @staticmethod
183
+ def get_results_as_sample(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
184
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
185
+ return LDSample.validate(ld_object, context_1)
186
+
187
+ return lp.GetPropertyNodes(LDLabProcess.result(), filter, graph, context)
188
+
189
+ @staticmethod
190
+ def get_results_as_data(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
191
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
192
+ return LDFile.validate(ld_object, context_1)
193
+
194
+ return lp.GetPropertyNodes(LDLabProcess.result(), filter, graph, context)
195
+
196
+ @staticmethod
197
+ def set_results(lp: LDNode, results: Array[LDNode], context: LDContext | None=None) -> Any:
198
+ return lp.SetProperty(LDLabProcess.result(), results, context)
199
+
200
+ @staticmethod
201
+ def try_get_executes_lab_protocol(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
202
+ match_value: LDNode | None = lp.TryGetPropertyAsSingleNode(LDLabProcess.executes_lab_protocol(), graph, context)
203
+ (pattern_matching_result, l_1) = (None, None)
204
+ if match_value is not None:
205
+ def _arrow1556(__unit: None=None) -> bool:
206
+ ld_object: LDNode = match_value
207
+ return LDLabProtocol.validate(ld_object, context)
208
+
209
+ if _arrow1556():
210
+ pattern_matching_result = 0
211
+ l_1 = match_value
212
+
213
+ else:
214
+ pattern_matching_result = 1
215
+
216
+
217
+ else:
218
+ pattern_matching_result = 1
219
+
220
+ if pattern_matching_result == 0:
221
+ return l_1
222
+
223
+ elif pattern_matching_result == 1:
224
+ return None
225
+
226
+
227
+ @staticmethod
228
+ def set_executes_lab_protocol(lp: LDNode, executes_lab_protocol: LDNode, context: LDContext | None=None) -> Any:
229
+ return lp.SetProperty(LDLabProcess.executes_lab_protocol(), executes_lab_protocol, context)
230
+
231
+ @staticmethod
232
+ def get_parameter_values(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
233
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
234
+ return LDPropertyValue.validate(ld_object, context_1)
235
+
236
+ return lp.GetPropertyNodes(LDLabProcess.parameter_value(), filter, graph, context)
237
+
238
+ @staticmethod
239
+ def set_parameter_values(lp: LDNode, parameter_values: Array[LDNode], context: LDContext | None=None) -> Any:
240
+ return lp.SetProperty(LDLabProcess.parameter_value(), parameter_values, context)
241
+
242
+ @staticmethod
243
+ def try_get_end_time(lp: LDNode, context: LDContext | None=None) -> Any | None:
244
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDLabProcess.end_time(), context)
245
+ (pattern_matching_result, et) = (None, None)
246
+ if match_value is not None:
247
+ if isinstance(value(match_value), datetime):
248
+ pattern_matching_result = 0
249
+ et = value(match_value)
250
+
251
+ else:
252
+ pattern_matching_result = 1
253
+
254
+
255
+ else:
256
+ pattern_matching_result = 1
257
+
258
+ if pattern_matching_result == 0:
259
+ return et
260
+
261
+ elif pattern_matching_result == 1:
262
+ return None
263
+
264
+
265
+ @staticmethod
266
+ def set_end_time(lp: LDNode, end_time: Any, context: LDContext | None=None) -> Any:
267
+ return lp.SetProperty(LDLabProcess.end_time(), end_time, context)
268
+
269
+ @staticmethod
270
+ def get_disambiguating_descriptions_as_string(lp: LDNode, context: LDContext | None=None) -> Array[str]:
271
+ def f(o_1: Any=None) -> Any:
272
+ return o_1
273
+
274
+ def filter(o: Any=None, context_1: LDContext | None=None) -> bool:
275
+ return str(type(o)) == "<class \'str\'>"
276
+
277
+ return ResizeArray_map(f, lp.GetPropertyValues(LDLabProcess.disambiguating_description(), filter, context))
278
+
279
+ @staticmethod
280
+ def set_disambiguating_descriptions_as_string(lp: LDNode, disambiguating_descriptions: Array[str], context: LDContext | None=None) -> Any:
281
+ return lp.SetProperty(LDLabProcess.disambiguating_description(), disambiguating_descriptions, context)
282
+
283
+ @staticmethod
284
+ def validate(lp: LDNode, context: LDContext | None=None) -> bool:
285
+ return lp.HasProperty(LDLabProcess.name(), context) if lp.HasType(LDLabProcess.schema_type(), context) else False
286
+
287
+ @staticmethod
288
+ def gen_id(name: Any, assay_name: Any | None=None, study_name: Any | None=None) -> str:
289
+ def _arrow1557(__unit: None=None) -> str:
290
+ study_1: __C = value(study_name)
291
+ return ((("#Process_" + str(study_1)) + "_") + str(name)) + ""
292
+
293
+ def _arrow1558(__unit: None=None) -> str:
294
+ assay_1: __B = value(assay_name)
295
+ return ((("#Process_" + str(assay_1)) + "_") + str(name)) + ""
296
+
297
+ def _arrow1559(__unit: None=None) -> str:
298
+ assay: __B = value(assay_name)
299
+ study: __C = value(study_name)
300
+ return ((((("#Process_" + str(study)) + "_") + str(assay)) + "_") + str(name)) + ""
301
+
302
+ return clean((_arrow1557() if (study_name is not None) else (("#Process_" + str(name)) + "")) if (assay_name is None) else (_arrow1558() if (study_name is None) else _arrow1559()))
303
+
304
+ @staticmethod
305
+ def create(name: str, objects: Array[LDNode] | None=None, results: Array[LDNode] | None=None, id: str | None=None, agent: LDNode | None=None, executes_lab_protocol: LDNode | None=None, parameter_values: Array[LDNode] | None=None, end_time: Any | None=None, disambiguating_descriptions: Array[str] | None=None, context: LDContext | None=None) -> LDNode:
306
+ id_1: str = LDLabProcess.gen_id(name) if (id is None) else id
307
+ objects_1: Array[LDNode] = default_arg(objects, [])
308
+ results_1: Array[LDNode] = default_arg(results, [])
309
+ lp: LDNode = LDNode(id_1, [LDLabProcess.schema_type()], None, context)
310
+ lp.SetProperty(LDLabProcess.name(), name, context)
311
+ lp.SetOptionalProperty(LDLabProcess.agent(), agent, context)
312
+ lp.SetProperty(LDLabProcess.object_(), objects_1, context)
313
+ lp.SetProperty(LDLabProcess.result(), results_1, context)
314
+ lp.SetOptionalProperty(LDLabProcess.executes_lab_protocol(), executes_lab_protocol, context)
315
+ lp.SetOptionalProperty(LDLabProcess.parameter_value(), parameter_values, context)
316
+ lp.SetOptionalProperty(LDLabProcess.end_time(), end_time, context)
317
+ lp.SetOptionalProperty(LDLabProcess.disambiguating_description(), disambiguating_descriptions, context)
318
+ return lp
319
+
320
+
321
+ LDLabProcess_reflection = _expr1560
322
+
323
+ __all__ = ["LDLabProcess_reflection"]
324
+