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,484 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_modules.fable_library.option import (value as value_1, map, some, bind)
4
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
5
+ from ...fable_modules.fable_library.types import Array
6
+ from ...Core.Helper.collections_ import ResizeArray_map
7
+ from ...Core.Helper.orcid import try_get_orcid_url
8
+ from ..helper import clean
9
+ from ..ldcontext import LDContext
10
+ from ..ldobject import (LDNode, LDGraph, LDRef)
11
+ from .defined_term import LDDefinedTerm
12
+ from .organization import LDOrganization
13
+ from .postal_address import LDPostalAddress
14
+
15
+ def _expr2175() -> TypeInfo:
16
+ return class_type("ARCtrl.ROCrate.LDPerson", None, LDPerson)
17
+
18
+
19
+ class LDPerson:
20
+ @staticmethod
21
+ def schema_type() -> str:
22
+ return "http://schema.org/Person"
23
+
24
+ @staticmethod
25
+ def given_name() -> str:
26
+ return "http://schema.org/givenName"
27
+
28
+ @staticmethod
29
+ def affiliation() -> str:
30
+ return "http://schema.org/affiliation"
31
+
32
+ @staticmethod
33
+ def email() -> str:
34
+ return "http://schema.org/email"
35
+
36
+ @staticmethod
37
+ def family_name() -> str:
38
+ return "http://schema.org/familyName"
39
+
40
+ @staticmethod
41
+ def identifier() -> str:
42
+ return "http://schema.org/identifier"
43
+
44
+ @staticmethod
45
+ def job_title() -> str:
46
+ return "http://schema.org/jobTitle"
47
+
48
+ @staticmethod
49
+ def additional_name() -> str:
50
+ return "http://schema.org/additionalName"
51
+
52
+ @staticmethod
53
+ def address() -> str:
54
+ return "http://schema.org/address"
55
+
56
+ @staticmethod
57
+ def disambiguating_description() -> str:
58
+ return "http://schema.org/disambiguatingDescription"
59
+
60
+ @staticmethod
61
+ def fax_number() -> str:
62
+ return "http://schema.org/faxNumber"
63
+
64
+ @staticmethod
65
+ def telephone() -> str:
66
+ return "http://schema.org/telephone"
67
+
68
+ @staticmethod
69
+ def try_get_given_name_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
70
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.given_name(), context)
71
+ (pattern_matching_result, n) = (None, None)
72
+ if match_value is not None:
73
+ if str(type(value_1(match_value))) == "<class \'str\'>":
74
+ pattern_matching_result = 0
75
+ n = value_1(match_value)
76
+
77
+ else:
78
+ pattern_matching_result = 1
79
+
80
+
81
+ else:
82
+ pattern_matching_result = 1
83
+
84
+ if pattern_matching_result == 0:
85
+ return n
86
+
87
+ elif pattern_matching_result == 1:
88
+ return None
89
+
90
+
91
+ @staticmethod
92
+ def get_given_name_as_string(p: LDNode, context: LDContext | None=None) -> str:
93
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.given_name(), context)
94
+ if match_value is not None:
95
+ if str(type(value_1(match_value))) == "<class \'str\'>":
96
+ n: str = value_1(match_value)
97
+ return n
98
+
99
+ else:
100
+ raise Exception(("Property of `givenName` of object with @id `" + p.Id) + "` was not a string")
101
+
102
+
103
+ else:
104
+ raise Exception(("Could not access property `givenName` of object with @id `" + p.Id) + "`")
105
+
106
+
107
+ @staticmethod
108
+ def set_given_name_as_string(p: LDNode, n: str, context: LDContext | None=None) -> Any:
109
+ return p.SetProperty(LDPerson.given_name(), n, context)
110
+
111
+ @staticmethod
112
+ def try_get_affiliation(p: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
113
+ match_value: LDNode | None = p.TryGetPropertyAsSingleNode(LDPerson.affiliation(), graph, context)
114
+ (pattern_matching_result, n_1) = (None, None)
115
+ if match_value is not None:
116
+ def _arrow2171(__unit: None=None) -> bool:
117
+ n: LDNode = match_value
118
+ return LDOrganization.validate(n, context)
119
+
120
+ if _arrow2171():
121
+ pattern_matching_result = 0
122
+ n_1 = match_value
123
+
124
+ else:
125
+ pattern_matching_result = 1
126
+
127
+
128
+ else:
129
+ pattern_matching_result = 1
130
+
131
+ if pattern_matching_result == 0:
132
+ return n_1
133
+
134
+ elif pattern_matching_result == 1:
135
+ return None
136
+
137
+
138
+ @staticmethod
139
+ def set_affiliation(p: LDNode, a: LDNode, context: LDContext | None=None) -> Any:
140
+ return p.SetProperty(LDPerson.affiliation(), a, context)
141
+
142
+ @staticmethod
143
+ def try_get_email_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
144
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.email(), context)
145
+ (pattern_matching_result, e) = (None, None)
146
+ if match_value is not None:
147
+ if str(type(value_1(match_value))) == "<class \'str\'>":
148
+ pattern_matching_result = 0
149
+ e = value_1(match_value)
150
+
151
+ else:
152
+ pattern_matching_result = 1
153
+
154
+
155
+ else:
156
+ pattern_matching_result = 1
157
+
158
+ if pattern_matching_result == 0:
159
+ return e
160
+
161
+ elif pattern_matching_result == 1:
162
+ return None
163
+
164
+
165
+ @staticmethod
166
+ def set_email_as_string(p: LDNode, e: str, context: LDContext | None=None) -> Any:
167
+ return p.SetProperty(LDPerson.email(), e, context)
168
+
169
+ @staticmethod
170
+ def try_get_family_name_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
171
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.family_name(), context)
172
+ (pattern_matching_result, n) = (None, None)
173
+ if match_value is not None:
174
+ if str(type(value_1(match_value))) == "<class \'str\'>":
175
+ pattern_matching_result = 0
176
+ n = value_1(match_value)
177
+
178
+ else:
179
+ pattern_matching_result = 1
180
+
181
+
182
+ else:
183
+ pattern_matching_result = 1
184
+
185
+ if pattern_matching_result == 0:
186
+ return n
187
+
188
+ elif pattern_matching_result == 1:
189
+ return None
190
+
191
+
192
+ @staticmethod
193
+ def get_family_name_as_string(p: LDNode, context: LDContext | None=None) -> str:
194
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.family_name(), context)
195
+ if match_value is not None:
196
+ if str(type(value_1(match_value))) == "<class \'str\'>":
197
+ n: str = value_1(match_value)
198
+ return n
199
+
200
+ else:
201
+ raise Exception(("Property of `familyName` of object with @id `" + p.Id) + "` was not a string")
202
+
203
+
204
+ else:
205
+ raise Exception(("Could not access property `familyName` of object with @id `" + p.Id) + "`")
206
+
207
+
208
+ @staticmethod
209
+ def set_family_name_as_string(p: LDNode, n: str, context: LDContext | None=None) -> Any:
210
+ return p.SetProperty(LDPerson.family_name(), n, context)
211
+
212
+ @staticmethod
213
+ def try_get_identifier(p: LDNode, context: LDContext | None=None) -> LDNode | None:
214
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.identifier(), context)
215
+ (pattern_matching_result, i) = (None, None)
216
+ if match_value is not None:
217
+ if isinstance(value_1(match_value), LDNode):
218
+ pattern_matching_result = 0
219
+ i = value_1(match_value)
220
+
221
+ else:
222
+ pattern_matching_result = 1
223
+
224
+
225
+ else:
226
+ pattern_matching_result = 1
227
+
228
+ if pattern_matching_result == 0:
229
+ return i
230
+
231
+ elif pattern_matching_result == 1:
232
+ return None
233
+
234
+
235
+ @staticmethod
236
+ def set_identifier(p: LDNode, i: LDNode, context: LDContext | None=None) -> Any:
237
+ return p.SetProperty(LDPerson.identifier(), i, context)
238
+
239
+ @staticmethod
240
+ def get_job_titles_as_defined_term(p: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
241
+ def filter(ld_object: LDNode, context_1: LDContext | None=None) -> bool:
242
+ return LDDefinedTerm.validate(ld_object, context_1)
243
+
244
+ return p.GetPropertyNodes(LDPerson.job_title(), filter, graph, context)
245
+
246
+ @staticmethod
247
+ def set_job_title_as_defined_term(p: LDNode, j: Array[LDNode], context: LDContext | None=None) -> Any:
248
+ return p.SetProperty(LDPerson.job_title(), j, context)
249
+
250
+ @staticmethod
251
+ def try_get_additional_name_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
252
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.additional_name(), context)
253
+ (pattern_matching_result, n) = (None, None)
254
+ if match_value is not None:
255
+ if str(type(value_1(match_value))) == "<class \'str\'>":
256
+ pattern_matching_result = 0
257
+ n = value_1(match_value)
258
+
259
+ else:
260
+ pattern_matching_result = 1
261
+
262
+
263
+ else:
264
+ pattern_matching_result = 1
265
+
266
+ if pattern_matching_result == 0:
267
+ return n
268
+
269
+ elif pattern_matching_result == 1:
270
+ return None
271
+
272
+
273
+ @staticmethod
274
+ def set_additional_name_as_string(p: LDNode, n: str, context: LDContext | None=None) -> Any:
275
+ return p.SetProperty(LDPerson.additional_name(), n, context)
276
+
277
+ @staticmethod
278
+ def try_get_address(p: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Any | None:
279
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.address(), context)
280
+ (pattern_matching_result, r_1, a, s) = (None, None, None, None)
281
+ if match_value is not None:
282
+ if isinstance(value_1(match_value), LDRef):
283
+ def _arrow2172(__unit: None=None) -> bool:
284
+ r: LDRef = value_1(match_value)
285
+ return graph is not None
286
+
287
+ if _arrow2172():
288
+ pattern_matching_result = 0
289
+ r_1 = value_1(match_value)
290
+
291
+ else:
292
+ pattern_matching_result = 3
293
+
294
+
295
+ elif isinstance(value_1(match_value), LDNode):
296
+ pattern_matching_result = 1
297
+ a = value_1(match_value)
298
+
299
+ elif str(type(value_1(match_value))) == "<class \'str\'>":
300
+ pattern_matching_result = 2
301
+ s = value_1(match_value)
302
+
303
+ else:
304
+ pattern_matching_result = 3
305
+
306
+
307
+ else:
308
+ pattern_matching_result = 3
309
+
310
+ if pattern_matching_result == 0:
311
+ def mapping(value: LDNode) -> Any:
312
+ return value
313
+
314
+ return map(mapping, value_1(graph).TryGetNode(r_1.Id))
315
+
316
+ elif pattern_matching_result == 1:
317
+ return some(a)
318
+
319
+ elif pattern_matching_result == 2:
320
+ return some(s)
321
+
322
+ elif pattern_matching_result == 3:
323
+ return None
324
+
325
+
326
+ @staticmethod
327
+ def try_get_address_as_postal_address(p: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
328
+ match_value: LDNode | None = p.TryGetPropertyAsSingleNode(LDPerson.address(), graph, context)
329
+ (pattern_matching_result, n_1) = (None, None)
330
+ if match_value is not None:
331
+ def _arrow2173(__unit: None=None) -> bool:
332
+ n: LDNode = match_value
333
+ return LDPostalAddress.validate(n, context)
334
+
335
+ if _arrow2173():
336
+ pattern_matching_result = 0
337
+ n_1 = match_value
338
+
339
+ else:
340
+ pattern_matching_result = 1
341
+
342
+
343
+ else:
344
+ pattern_matching_result = 1
345
+
346
+ if pattern_matching_result == 0:
347
+ return n_1
348
+
349
+ elif pattern_matching_result == 1:
350
+ return None
351
+
352
+
353
+ @staticmethod
354
+ def try_get_address_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
355
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.address(), context)
356
+ (pattern_matching_result, a) = (None, None)
357
+ if match_value is not None:
358
+ if str(type(value_1(match_value))) == "<class \'str\'>":
359
+ pattern_matching_result = 0
360
+ a = value_1(match_value)
361
+
362
+ else:
363
+ pattern_matching_result = 1
364
+
365
+
366
+ else:
367
+ pattern_matching_result = 1
368
+
369
+ if pattern_matching_result == 0:
370
+ return a
371
+
372
+ elif pattern_matching_result == 1:
373
+ return None
374
+
375
+
376
+ @staticmethod
377
+ def set_address_as_postal_address(p: LDNode, a: LDNode, context: LDContext | None=None) -> Any:
378
+ return p.SetProperty(LDPerson.address(), a, context)
379
+
380
+ @staticmethod
381
+ def set_address_as_string(p: LDNode, a: str, context: LDContext | None=None) -> Any:
382
+ return p.SetProperty(LDPerson.address(), a, context)
383
+
384
+ @staticmethod
385
+ def get_disambiguating_descriptions_as_string(p: LDNode, context: LDContext | None=None) -> Array[str]:
386
+ def f(v: Any=None) -> Any:
387
+ return v
388
+
389
+ def filter(value: Any=None, context_1: LDContext | None=None) -> bool:
390
+ return str(type(value)) == "<class \'str\'>"
391
+
392
+ return ResizeArray_map(f, p.GetPropertyValues(LDPerson.disambiguating_description(), filter, context))
393
+
394
+ @staticmethod
395
+ def set_disambiguating_descriptions_as_string(p: LDNode, d: Array[str], context: LDContext | None=None) -> Any:
396
+ return p.SetProperty(LDPerson.disambiguating_description(), d, context)
397
+
398
+ @staticmethod
399
+ def try_get_fax_number_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
400
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.fax_number(), context)
401
+ (pattern_matching_result, f) = (None, None)
402
+ if match_value is not None:
403
+ if str(type(value_1(match_value))) == "<class \'str\'>":
404
+ pattern_matching_result = 0
405
+ f = value_1(match_value)
406
+
407
+ else:
408
+ pattern_matching_result = 1
409
+
410
+
411
+ else:
412
+ pattern_matching_result = 1
413
+
414
+ if pattern_matching_result == 0:
415
+ return f
416
+
417
+ elif pattern_matching_result == 1:
418
+ return None
419
+
420
+
421
+ @staticmethod
422
+ def set_fax_number_as_string(p: LDNode, f: str, context: LDContext | None=None) -> Any:
423
+ return p.SetProperty(LDPerson.fax_number(), f, context)
424
+
425
+ @staticmethod
426
+ def try_get_telephone_as_string(p: LDNode, context: LDContext | None=None) -> str | None:
427
+ match_value: Any | None = p.TryGetPropertyAsSingleton(LDPerson.telephone(), context)
428
+ (pattern_matching_result, t) = (None, None)
429
+ if match_value is not None:
430
+ if str(type(value_1(match_value))) == "<class \'str\'>":
431
+ pattern_matching_result = 0
432
+ t = value_1(match_value)
433
+
434
+ else:
435
+ pattern_matching_result = 1
436
+
437
+
438
+ else:
439
+ pattern_matching_result = 1
440
+
441
+ if pattern_matching_result == 0:
442
+ return t
443
+
444
+ elif pattern_matching_result == 1:
445
+ return None
446
+
447
+
448
+ @staticmethod
449
+ def set_telephone_as_string(p: LDNode, t: str, context: LDContext | None=None) -> Any:
450
+ return p.SetProperty(LDPerson.telephone(), t, context)
451
+
452
+ @staticmethod
453
+ def gen_id(given_name: Any, orcid: str | None=None, family_name: Any | None=None) -> str:
454
+ def _arrow2174(__unit: None=None) -> str:
455
+ match_value: str | None = bind(try_get_orcid_url, orcid)
456
+ return ((("#Person_" + str(given_name)) + "") if (family_name is None) else (((("#Person_" + str(given_name)) + "_") + str(value_1(family_name))) + "")) if (match_value is None) else match_value
457
+
458
+ return clean(_arrow2174())
459
+
460
+ @staticmethod
461
+ def validate(p: LDNode, context: LDContext | None=None) -> bool:
462
+ return p.HasProperty(LDPerson.given_name(), context) if p.HasType(LDPerson.schema_type(), context) else False
463
+
464
+ @staticmethod
465
+ def create(given_name: str, orcid: str | None=None, id: str | None=None, affiliation: Any | None=None, email: str | None=None, family_name: str | None=None, identifier: Any | None=None, job_titles: Array[LDNode] | None=None, additional_name: str | None=None, address: Any | None=None, disambiguating_descriptions: Array[str] | None=None, fax_number: str | None=None, telephone: str | None=None, context: LDContext | None=None) -> LDNode:
466
+ person: LDNode = LDNode(LDPerson.gen_id(given_name, orcid, family_name) if (id is None) else id, [LDPerson.schema_type()], None, context)
467
+ person.SetProperty(LDPerson.given_name(), given_name, context)
468
+ person.SetOptionalProperty(LDPerson.affiliation(), affiliation, context)
469
+ person.SetOptionalProperty(LDPerson.email(), email, context)
470
+ person.SetOptionalProperty(LDPerson.family_name(), family_name, context)
471
+ person.SetOptionalProperty(LDPerson.identifier(), identifier, context)
472
+ person.SetOptionalProperty(LDPerson.job_title(), job_titles, context)
473
+ person.SetOptionalProperty(LDPerson.additional_name(), additional_name, context)
474
+ person.SetOptionalProperty(LDPerson.address(), address, context)
475
+ person.SetOptionalProperty(LDPerson.disambiguating_description(), disambiguating_descriptions, context)
476
+ person.SetOptionalProperty(LDPerson.fax_number(), fax_number, context)
477
+ person.SetOptionalProperty(LDPerson.telephone(), telephone, context)
478
+ return person
479
+
480
+
481
+ LDPerson_reflection = _expr2175
482
+
483
+ __all__ = ["LDPerson_reflection"]
484
+
@@ -0,0 +1,195 @@
1
+ from __future__ import annotations
2
+ from typing import Any
3
+ from ...fable_modules.fable_library.list import (FSharpList, is_empty, reduce)
4
+ from ...fable_modules.fable_library.option import value
5
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
6
+ from ...fable_modules.fable_library.seq import (to_list, delay, append, singleton, empty)
7
+ from ...fable_modules.fable_library.string_ import (to_text, printf)
8
+ from ...fable_modules.fable_library.util import IEnumerable_1
9
+ from ...Core.Helper.identifier import create_missing_identifier
10
+ from ..helper import clean
11
+ from ..ldcontext import LDContext
12
+ from ..ldobject import LDNode
13
+
14
+ def _expr2144() -> TypeInfo:
15
+ return class_type("ARCtrl.ROCrate.LDPostalAddress", None, LDPostalAddress)
16
+
17
+
18
+ class LDPostalAddress:
19
+ @staticmethod
20
+ def schema_type() -> str:
21
+ return "http://schema.org/PostalAddress"
22
+
23
+ @staticmethod
24
+ def address_country() -> str:
25
+ return "http://schema.org/addressCountry"
26
+
27
+ @staticmethod
28
+ def postal_code() -> str:
29
+ return "http://schema.org/postalCode"
30
+
31
+ @staticmethod
32
+ def street_address() -> str:
33
+ return "http://schema.org/streetAddress"
34
+
35
+ @staticmethod
36
+ def try_get_address_country_as_string(s: LDNode, context: LDContext | None=None) -> str | None:
37
+ match_value: Any | None = s.TryGetPropertyAsSingleton(LDPostalAddress.address_country(), context)
38
+ (pattern_matching_result, n) = (None, None)
39
+ if match_value is not None:
40
+ if str(type(value(match_value))) == "<class \'str\'>":
41
+ pattern_matching_result = 0
42
+ n = value(match_value)
43
+
44
+ else:
45
+ pattern_matching_result = 1
46
+
47
+
48
+ else:
49
+ pattern_matching_result = 1
50
+
51
+ if pattern_matching_result == 0:
52
+ return n
53
+
54
+ elif pattern_matching_result == 1:
55
+ return None
56
+
57
+
58
+ @staticmethod
59
+ def get_address_country_as_string(s: LDNode, context: LDContext | None=None) -> str:
60
+ match_value: Any | None = s.TryGetPropertyAsSingleton(LDPostalAddress.address_country(), context)
61
+ if match_value is None:
62
+ raise Exception(("Could not access property `addressCountry` of object with @id `" + s.Id) + "`")
63
+
64
+ elif str(type(value(match_value))) == "<class \'str\'>":
65
+ n: str = value(match_value)
66
+ return n
67
+
68
+ else:
69
+ raise Exception(("Value of property `addressCountry` of object with @id `" + s.Id) + "` should have been a string")
70
+
71
+
72
+ @staticmethod
73
+ def set_address_country_as_string(s: LDNode, n: str) -> None:
74
+ s.SetProperty(LDPostalAddress.address_country(), n)
75
+
76
+ @staticmethod
77
+ def try_get_postal_code_as_string(s: LDNode, context: LDContext | None=None) -> str | None:
78
+ match_value: Any | None = s.TryGetPropertyAsSingleton(LDPostalAddress.postal_code(), context)
79
+ (pattern_matching_result, n) = (None, None)
80
+ if match_value is not None:
81
+ if str(type(value(match_value))) == "<class \'str\'>":
82
+ pattern_matching_result = 0
83
+ n = value(match_value)
84
+
85
+ else:
86
+ pattern_matching_result = 1
87
+
88
+
89
+ else:
90
+ pattern_matching_result = 1
91
+
92
+ if pattern_matching_result == 0:
93
+ return n
94
+
95
+ elif pattern_matching_result == 1:
96
+ return None
97
+
98
+
99
+ @staticmethod
100
+ def get_postal_code_as_string(s: LDNode, context: LDContext | None=None) -> str:
101
+ match_value: Any | None = s.TryGetPropertyAsSingleton(LDPostalAddress.postal_code(), context)
102
+ if match_value is None:
103
+ raise Exception(("Could not access property `postalCode` of object with @id `" + s.Id) + "`")
104
+
105
+ elif str(type(value(match_value))) == "<class \'str\'>":
106
+ n: str = value(match_value)
107
+ return n
108
+
109
+ else:
110
+ raise Exception(("Value of property `postalCode` of object with @id `" + s.Id) + "` should have been a string")
111
+
112
+
113
+ @staticmethod
114
+ def set_postal_code_as_string(s: LDNode, n: str) -> None:
115
+ s.SetProperty(LDPostalAddress.postal_code(), n)
116
+
117
+ @staticmethod
118
+ def try_get_street_address_as_string(s: LDNode, context: LDContext | None=None) -> str | None:
119
+ match_value: Any | None = s.TryGetPropertyAsSingleton(LDPostalAddress.street_address(), context)
120
+ (pattern_matching_result, n) = (None, None)
121
+ if match_value is not None:
122
+ if str(type(value(match_value))) == "<class \'str\'>":
123
+ pattern_matching_result = 0
124
+ n = value(match_value)
125
+
126
+ else:
127
+ pattern_matching_result = 1
128
+
129
+
130
+ else:
131
+ pattern_matching_result = 1
132
+
133
+ if pattern_matching_result == 0:
134
+ return n
135
+
136
+ elif pattern_matching_result == 1:
137
+ return None
138
+
139
+
140
+ @staticmethod
141
+ def get_street_address_as_string(s: LDNode, context: LDContext | None=None) -> str:
142
+ match_value: Any | None = s.TryGetPropertyAsSingleton(LDPostalAddress.street_address(), context)
143
+ if match_value is None:
144
+ raise Exception(("Could not access property `streetAddress` of object with @id `" + s.Id) + "`")
145
+
146
+ elif str(type(value(match_value))) == "<class \'str\'>":
147
+ n: str = value(match_value)
148
+ return n
149
+
150
+ else:
151
+ raise Exception(("Value of property `streetAddress` of object with @id `" + s.Id) + "` should have been a string")
152
+
153
+
154
+ @staticmethod
155
+ def set_street_address_as_string(s: LDNode, n: str) -> None:
156
+ s.SetProperty(LDPostalAddress.street_address(), n)
157
+
158
+ @staticmethod
159
+ def gen_id(address_country: str | None=None, postal_code: str | None=None, street_address: str | None=None) -> str:
160
+ def _arrow2142(__unit: None=None) -> IEnumerable_1[str]:
161
+ def _arrow2141(__unit: None=None) -> IEnumerable_1[str]:
162
+ def _arrow2140(__unit: None=None) -> IEnumerable_1[str]:
163
+ return singleton("streetAddress") if (street_address is not None) else empty()
164
+
165
+ return append(singleton("postalCode") if (postal_code is not None) else empty(), delay(_arrow2140))
166
+
167
+ return append(singleton("addressCountry") if (address_country is not None) else empty(), delay(_arrow2141))
168
+
169
+ items: FSharpList[str] = to_list(delay(_arrow2142))
170
+ def _arrow2143(__unit: None=None) -> str:
171
+ def reduction(acc: str, x: str) -> str:
172
+ return ((("" + acc) + "_") + x) + ""
173
+
174
+ arg: str = reduce(reduction, items)
175
+ return to_text(printf("#%s"))(arg)
176
+
177
+ return clean(create_missing_identifier() if is_empty(items) else _arrow2143())
178
+
179
+ @staticmethod
180
+ def validate(o: LDNode, context: LDContext | None=None) -> bool:
181
+ return o.HasType(LDPostalAddress.schema_type(), context)
182
+
183
+ @staticmethod
184
+ def create(id: str | None=None, address_country: str | None=None, postal_code: str | None=None, street_address: str | None=None, context: LDContext | None=None) -> LDNode:
185
+ s: LDNode = LDNode(LDPostalAddress.gen_id(address_country, postal_code, street_address) if (id is None) else id, [LDPostalAddress.schema_type()], None, context)
186
+ s.SetOptionalProperty(LDPostalAddress.address_country(), address_country)
187
+ s.SetOptionalProperty(LDPostalAddress.postal_code(), postal_code)
188
+ s.SetOptionalProperty(LDPostalAddress.street_address(), street_address)
189
+ return s
190
+
191
+
192
+ LDPostalAddress_reflection = _expr2144
193
+
194
+ __all__ = ["LDPostalAddress_reflection"]
195
+