@nfdi4plants/arctrl 1.2.0 → 2.0.0-alpha.2

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 (366) hide show
  1. package/ARC.js +53 -35
  2. package/{Contracts/Contracts.ARCtrl.js → Contract/ARC.js} +4 -2
  3. package/Contract/ArcAssay.js +102 -0
  4. package/Contract/ArcInvestigation.js +78 -0
  5. package/Contract/ArcStudy.js +102 -0
  6. package/Contract/Contract.js +3 -3
  7. package/{Contracts/Contracts.Git.js → Contract/Git.js} +5 -5
  8. package/{ISA/ISA/ArcTypes → Core}/ArcTypes.js +307 -295
  9. package/Core/Comment.js +97 -0
  10. package/{ISA/ISA/JsonTypes → Core}/CommentList.js +12 -18
  11. package/Core/Conversion.js +1056 -0
  12. package/Core/Helper/Collections.js +318 -0
  13. package/Core/Helper/HashCodes.js +39 -0
  14. package/{ISA/ISA → Core/Helper}/Identifier.js +67 -2
  15. package/{ISA/ISA → Core/Helper}/Regex.js +3 -3
  16. package/{SemVer.js → Core/Helper/SemVer.js} +8 -8
  17. package/{ISA/ISA/ArcTypes → Core}/IdentifierSetters.js +1 -1
  18. package/Core/OntologyAnnotation.js +186 -0
  19. package/Core/OntologySourceReference.js +92 -0
  20. package/Core/Person.js +194 -0
  21. package/Core/Process/ColumnIndex.js +248 -0
  22. package/Core/Process/Component.js +188 -0
  23. package/{ISA/ISA/JsonTypes → Core/Process}/Data.js +8 -8
  24. package/{ISA/ISA/JsonTypes → Core/Process}/DataFile.js +3 -3
  25. package/Core/Process/Factor.js +109 -0
  26. package/{ISA/ISA/JsonTypes → Core/Process}/FactorValue.js +32 -13
  27. package/{ISA/ISA/JsonTypes → Core/Process}/Material.js +9 -9
  28. package/{ISA/ISA/JsonTypes → Core/Process}/MaterialAttribute.js +17 -17
  29. package/{ISA/ISA/JsonTypes → Core/Process}/MaterialAttributeValue.js +35 -16
  30. package/{ISA/ISA/JsonTypes → Core/Process}/MaterialType.js +3 -3
  31. package/{ISA/ISA/JsonTypes → Core/Process}/Process.js +46 -79
  32. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessInput.js +42 -42
  33. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessOutput.js +36 -36
  34. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessParameterValue.js +26 -7
  35. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessSequence.js +21 -25
  36. package/{ISA/ISA/JsonTypes → Core/Process}/Protocol.js +26 -57
  37. package/{ISA/ISA/JsonTypes → Core/Process}/ProtocolParameter.js +10 -10
  38. package/{ISA/ISA/JsonTypes → Core/Process}/Sample.js +12 -12
  39. package/{ISA/ISA/JsonTypes → Core/Process}/Source.js +9 -9
  40. package/{ISA/ISA/JsonTypes → Core/Process}/Value.js +13 -13
  41. package/Core/Publication.js +116 -0
  42. package/{ISA/ISA/ArcTypes → Core/Table}/ArcTable.js +43 -149
  43. package/Core/Table/ArcTableAux.js +532 -0
  44. package/{ISA/ISA/ArcTypes → Core/Table}/ArcTables.js +20 -32
  45. package/{ISA/ISA/ArcTypes → Core/Table}/CompositeCell.js +19 -76
  46. package/{ISA/ISA/ArcTypes → Core/Table}/CompositeColumn.js +6 -6
  47. package/{ISA/ISA/ArcTypes → Core/Table}/CompositeHeader.js +14 -34
  48. package/{Templates → Core}/Template.js +16 -17
  49. package/Core/Templates.js +84 -0
  50. package/FileSystem/Commit.js +2 -2
  51. package/FileSystem/FileSystem.js +4 -4
  52. package/FileSystem/FileSystemTree.js +46 -8
  53. package/FileSystem/Path.js +10 -2
  54. package/Json/ARC.js +25 -0
  55. package/Json/Assay.js +202 -0
  56. package/Json/Comment.js +130 -0
  57. package/Json/ConverterOptions.js +18 -0
  58. package/Json/Decode.js +128 -0
  59. package/Json/Encode.js +45 -0
  60. package/Json/Investigation.js +220 -0
  61. package/Json/OntologyAnnotation.js +169 -0
  62. package/Json/OntologySourceReference.js +122 -0
  63. package/Json/Person.js +250 -0
  64. package/Json/Process/AssayMaterials.js +22 -0
  65. package/Json/Process/Component.js +79 -0
  66. package/Json/Process/Data.js +102 -0
  67. package/Json/Process/DataFile.js +81 -0
  68. package/Json/Process/Factor.js +48 -0
  69. package/Json/Process/FactorValue.js +53 -0
  70. package/Json/Process/Material.js +107 -0
  71. package/Json/Process/MaterialAttribute.js +45 -0
  72. package/Json/Process/MaterialAttributeValue.js +70 -0
  73. package/Json/Process/MaterialType.js +60 -0
  74. package/Json/Process/Process.js +107 -0
  75. package/Json/Process/ProcessInput.js +59 -0
  76. package/Json/Process/ProcessOutput.js +71 -0
  77. package/Json/Process/ProcessParameterValue.js +69 -0
  78. package/Json/Process/ProcessSequence.js +53 -0
  79. package/Json/Process/PropertyValue.js +82 -0
  80. package/Json/Process/Protocol.js +147 -0
  81. package/Json/Process/ProtocolParameter.js +45 -0
  82. package/Json/Process/Sample.js +134 -0
  83. package/Json/Process/Source.js +101 -0
  84. package/Json/Process/StudyMaterials.js +24 -0
  85. package/Json/Process/Value.js +42 -0
  86. package/Json/Publication.js +142 -0
  87. package/Json/StringTable.js +44 -0
  88. package/Json/Study.js +306 -0
  89. package/{ISA/ISA.Json/ArcTypes → Json/Table}/ArcTable.js +53 -49
  90. package/Json/Table/CellTable.js +40 -0
  91. package/Json/Table/CompositeCell.js +65 -0
  92. package/{ISA/ISA.Json/ArcTypes → Json/Table}/CompositeHeader.js +22 -19
  93. package/Json/Table/Compression.js +38 -0
  94. package/Json/Table/IOType.js +37 -0
  95. package/Json/Table/OATable.js +40 -0
  96. package/Json/Table/Templates.js +107 -0
  97. package/Json/context/rocrate/isa_assay_context.js +32 -0
  98. package/Json/context/rocrate/isa_comment_context.js +23 -0
  99. package/Json/context/rocrate/isa_component_context.js +24 -0
  100. package/Json/context/rocrate/isa_data_context.js +25 -0
  101. package/Json/context/rocrate/isa_factor_context.js +25 -0
  102. package/Json/context/rocrate/isa_factor_value_context.js +23 -0
  103. package/{ISA/ISA.Json → Json}/context/rocrate/isa_investigation_context.js +5 -5
  104. package/{ISA/ISA.Json → Json}/context/rocrate/isa_material_attribute_context.js +4 -4
  105. package/Json/context/rocrate/isa_material_attribute_value_context.js +23 -0
  106. package/Json/context/rocrate/isa_material_context.js +26 -0
  107. package/Json/context/rocrate/isa_ontology_annotation_context.js +23 -0
  108. package/Json/context/rocrate/isa_ontology_source_reference_context.js +26 -0
  109. package/Json/context/rocrate/isa_organization_context.js +22 -0
  110. package/Json/context/rocrate/isa_person_context.js +33 -0
  111. package/Json/context/rocrate/isa_process_context.js +29 -0
  112. package/Json/context/rocrate/isa_process_parameter_value_context.js +23 -0
  113. package/Json/context/rocrate/isa_protocol_context.js +28 -0
  114. package/{ISA/ISA.Json → Json}/context/rocrate/isa_protocol_parameter_context.js +4 -4
  115. package/Json/context/rocrate/isa_publication_context.js +25 -0
  116. package/Json/context/rocrate/isa_sample_context.js +24 -0
  117. package/Json/context/rocrate/isa_source_context.js +25 -0
  118. package/Json/context/rocrate/isa_study_context.js +40 -0
  119. package/Json/context/rocrate/property_value_context.js +4 -0
  120. package/Json/context/rocrate/rocrate_context.js +23 -0
  121. package/Json.js +193 -0
  122. package/README.md +33 -12
  123. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/ArcTable.js +12 -12
  124. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/CompositeCell.js +8 -7
  125. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/CompositeColumn.js +10 -10
  126. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/CompositeHeader.js +10 -10
  127. package/{ISA/ISA.Spreadsheet → Spreadsheet}/ArcAssay.js +11 -11
  128. package/{ISA/ISA.Spreadsheet → Spreadsheet}/ArcInvestigation.js +34 -37
  129. package/{ISA/ISA.Spreadsheet → Spreadsheet}/ArcStudy.js +12 -12
  130. package/{ISA/ISA.Spreadsheet → Spreadsheet}/CollectionAux.js +7 -7
  131. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Assays.js +32 -32
  132. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Comment.js +5 -5
  133. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Contacts.js +28 -30
  134. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Conversions.js +22 -16
  135. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/DesignDescriptors.js +1 -1
  136. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Factors.js +23 -22
  137. package/Spreadsheet/Metadata/OntologyAnnotation.js +64 -0
  138. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/OntologySourceReference.js +22 -24
  139. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Protocols.js +17 -17
  140. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Publication.js +29 -31
  141. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/SparseTable.js +23 -22
  142. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Study.js +38 -40
  143. package/{Templates/Template.Spreadsheet.js → Spreadsheet/Template.js} +31 -31
  144. package/Template.Web.js +27 -0
  145. package/WebRequest/WebRequest.Node.js +2 -2
  146. package/WebRequest/WebRequest.js +2 -2
  147. package/Xlsx.js +85 -0
  148. package/fable_modules/Fable.Fetch.2.6.0/Fetch.fs.js +7 -7
  149. package/fable_modules/Fable.Promise.2.2.2/Promise.fs.js +3 -3
  150. package/fable_modules/Fable.SimpleHttp.3.5.0/Http.fs.js +8 -8
  151. package/fable_modules/Fable.SimpleHttp.3.5.0/Types.fs.js +2 -2
  152. package/fable_modules/FsSpreadsheet.5.1.3/Cells/FsCell.fs.js +14 -14
  153. package/fable_modules/FsSpreadsheet.5.1.3/Cells/FsCellsCollection.fs.js +6 -6
  154. package/fable_modules/FsSpreadsheet.5.1.3/DSL/CellBuilder.fs.js +4 -4
  155. package/fable_modules/FsSpreadsheet.5.1.3/DSL/ColumnBuilder.fs.js +3 -3
  156. package/fable_modules/FsSpreadsheet.5.1.3/DSL/DSL.fs.js +2 -2
  157. package/fable_modules/FsSpreadsheet.5.1.3/DSL/Expression.fs.js +1 -1
  158. package/fable_modules/FsSpreadsheet.5.1.3/DSL/RowBuilder.fs.js +3 -3
  159. package/fable_modules/FsSpreadsheet.5.1.3/DSL/SheetBuilder.fs.js +3 -3
  160. package/fable_modules/FsSpreadsheet.5.1.3/DSL/TableBuilder.fs.js +3 -3
  161. package/fable_modules/FsSpreadsheet.5.1.3/DSL/Transform.fs.js +6 -6
  162. package/fable_modules/FsSpreadsheet.5.1.3/DSL/Types.fs.js +4 -4
  163. package/fable_modules/FsSpreadsheet.5.1.3/DSL/WorkbookBuilder.fs.js +3 -3
  164. package/fable_modules/FsSpreadsheet.5.1.3/FsAddress.fs.js +8 -8
  165. package/fable_modules/FsSpreadsheet.5.1.3/FsColumn.fs.js +3 -3
  166. package/fable_modules/FsSpreadsheet.5.1.3/FsRow.fs.js +3 -3
  167. package/fable_modules/FsSpreadsheet.5.1.3/FsWorkbook.fs.js +6 -6
  168. package/fable_modules/FsSpreadsheet.5.1.3/FsWorksheet.fs.js +9 -9
  169. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRange.fs.js +3 -3
  170. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeAddress.fs.js +3 -3
  171. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeBase.fs.js +3 -3
  172. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeColumn.fs.js +3 -3
  173. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeRow.fs.js +1 -1
  174. package/fable_modules/FsSpreadsheet.5.1.3/SheetBuilder.fs.js +8 -8
  175. package/fable_modules/FsSpreadsheet.5.1.3/Tables/FsTable.fs.js +7 -7
  176. package/fable_modules/FsSpreadsheet.5.1.3/Tables/FsTableField.fs.js +4 -4
  177. package/fable_modules/FsSpreadsheet.5.1.3/Tables/FsTableRow.fs.js +1 -1
  178. package/fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js +19 -19
  179. package/fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js +5 -5
  180. package/fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js +2 -2
  181. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js +1 -1
  182. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js +2 -2
  183. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Boolean.js +2 -2
  184. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/CHANGELOG.md +18 -0
  185. package/fable_modules/fable-library-js.4.16.0/ConditionalWeakTable.d.ts +9 -0
  186. package/fable_modules/fable-library-js.4.16.0/ConditionalWeakTable.js +21 -0
  187. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Date.js +337 -40
  188. package/fable_modules/fable-library-js.4.16.0/MapUtil.d.ts +12 -0
  189. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MapUtil.js +15 -0
  190. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Util.d.ts +6 -3
  191. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Util.js +2 -13
  192. package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/package.json +1 -1
  193. package/fable_modules/project_cracked.json +1 -1
  194. package/index.js +14 -12
  195. package/package.json +1 -1
  196. package/Contracts/Contracts.ArcTypes.js +0 -268
  197. package/FileSystemTree.js +0 -51
  198. package/ISA/ISA/ArcTypes/ArcTableAux.js +0 -1155
  199. package/ISA/ISA/ArcTypes/CompositeRow.js +0 -111
  200. package/ISA/ISA/Builder/Types.js +0 -243
  201. package/ISA/ISA/Fable.js +0 -123
  202. package/ISA/ISA/Helper.js +0 -505
  203. package/ISA/ISA/JsonTypes/Assay.js +0 -620
  204. package/ISA/ISA/JsonTypes/AssayMaterials.js +0 -39
  205. package/ISA/ISA/JsonTypes/ColumnIndex.js +0 -246
  206. package/ISA/ISA/JsonTypes/Comment.js +0 -58
  207. package/ISA/ISA/JsonTypes/Component.js +0 -165
  208. package/ISA/ISA/JsonTypes/Factor.js +0 -128
  209. package/ISA/ISA/JsonTypes/Investigation.js +0 -204
  210. package/ISA/ISA/JsonTypes/OntologyAnnotation.js +0 -196
  211. package/ISA/ISA/JsonTypes/OntologySourceReference.js +0 -85
  212. package/ISA/ISA/JsonTypes/Person.js +0 -152
  213. package/ISA/ISA/JsonTypes/Publication.js +0 -105
  214. package/ISA/ISA/JsonTypes/Study.js +0 -942
  215. package/ISA/ISA/JsonTypes/StudyMaterials.js +0 -45
  216. package/ISA/ISA/UIHelper.js +0 -19
  217. package/ISA/ISA.Json/ArcTypes/ArcAssay.js +0 -303
  218. package/ISA/ISA.Json/ArcTypes/ArcInvestigation.js +0 -122
  219. package/ISA/ISA.Json/ArcTypes/ArcStudy.js +0 -203
  220. package/ISA/ISA.Json/ArcTypes/CellTable.js +0 -40
  221. package/ISA/ISA.Json/ArcTypes/CompositeCell.js +0 -62
  222. package/ISA/ISA.Json/ArcTypes/IOType.js +0 -33
  223. package/ISA/ISA.Json/ArcTypes/OATable.js +0 -42
  224. package/ISA/ISA.Json/Assay.js +0 -129
  225. package/ISA/ISA.Json/Comment.js +0 -80
  226. package/ISA/ISA.Json/ConverterOptions.js +0 -51
  227. package/ISA/ISA.Json/Data.js +0 -253
  228. package/ISA/ISA.Json/Decode.js +0 -61
  229. package/ISA/ISA.Json/Factor.js +0 -194
  230. package/ISA/ISA.Json/GEncode.js +0 -40
  231. package/ISA/ISA.Json/Investigation.js +0 -89
  232. package/ISA/ISA.Json/Material.js +0 -232
  233. package/ISA/ISA.Json/Ontology.js +0 -200
  234. package/ISA/ISA.Json/Person.js +0 -186
  235. package/ISA/ISA.Json/Process.js +0 -305
  236. package/ISA/ISA.Json/Protocol.js +0 -281
  237. package/ISA/ISA.Json/Publication.js +0 -86
  238. package/ISA/ISA.Json/StringTable.js +0 -44
  239. package/ISA/ISA.Json/Study.js +0 -186
  240. package/ISA/ISA.Json/context/rocrate/isa_assay_context.js +0 -34
  241. package/ISA/ISA.Json/context/rocrate/isa_comment_context.js +0 -23
  242. package/ISA/ISA.Json/context/rocrate/isa_component_context.js +0 -24
  243. package/ISA/ISA.Json/context/rocrate/isa_data_context.js +0 -25
  244. package/ISA/ISA.Json/context/rocrate/isa_factor_context.js +0 -25
  245. package/ISA/ISA.Json/context/rocrate/isa_factor_value_context.js +0 -25
  246. package/ISA/ISA.Json/context/rocrate/isa_material_attribute_value_context.js +0 -25
  247. package/ISA/ISA.Json/context/rocrate/isa_material_context.js +0 -26
  248. package/ISA/ISA.Json/context/rocrate/isa_ontology_annotation_context.js +0 -25
  249. package/ISA/ISA.Json/context/rocrate/isa_ontology_source_reference_context.js +0 -26
  250. package/ISA/ISA.Json/context/rocrate/isa_organization_context.js +0 -22
  251. package/ISA/ISA.Json/context/rocrate/isa_person_context.js +0 -31
  252. package/ISA/ISA.Json/context/rocrate/isa_process_context.js +0 -31
  253. package/ISA/ISA.Json/context/rocrate/isa_process_parameter_value_context.js +0 -25
  254. package/ISA/ISA.Json/context/rocrate/isa_protocol_context.js +0 -30
  255. package/ISA/ISA.Json/context/rocrate/isa_publication_context.js +0 -27
  256. package/ISA/ISA.Json/context/rocrate/isa_sample_context.js +0 -26
  257. package/ISA/ISA.Json/context/rocrate/isa_source_context.js +0 -25
  258. package/ISA/ISA.Json/context/rocrate/isa_study_context.js +0 -42
  259. package/ISA/ISA.Json/context/rocrate/rocrate_context.js +0 -25
  260. package/ISA/ISA.Spreadsheet/Metadata/OntologyAnnotation.js +0 -65
  261. package/Path.js +0 -10
  262. package/Templates/Template.Json.js +0 -90
  263. package/Templates/Template.Web.js +0 -27
  264. package/Templates/Templates.js +0 -82
  265. package/fable_modules/fable-library-js.4.13.0/MapUtil.d.ts +0 -10
  266. /package/{ISA/ISA/JsonTypes → Core}/URI.js +0 -0
  267. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Array.d.ts +0 -0
  268. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Array.js +0 -0
  269. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Async.d.ts +0 -0
  270. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Async.js +0 -0
  271. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/AsyncBuilder.d.ts +0 -0
  272. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/AsyncBuilder.js +0 -0
  273. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/BigInt.d.ts +0 -0
  274. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/BigInt.js +0 -0
  275. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/BitConverter.d.ts +0 -0
  276. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/BitConverter.js +0 -0
  277. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Boolean.d.ts +0 -0
  278. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Char.d.ts +0 -0
  279. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Char.js +0 -0
  280. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Choice.d.ts +0 -0
  281. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Choice.js +0 -0
  282. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Date.d.ts +0 -0
  283. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/DateOffset.d.ts +0 -0
  284. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/DateOffset.js +0 -0
  285. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/DateOnly.d.ts +0 -0
  286. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/DateOnly.js +0 -0
  287. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Decimal.d.ts +0 -0
  288. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Decimal.js +0 -0
  289. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Double.d.ts +0 -0
  290. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Double.js +0 -0
  291. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Encoding.d.ts +0 -0
  292. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Encoding.js +0 -0
  293. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Event.d.ts +0 -0
  294. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Event.js +0 -0
  295. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/FSharp.Collections.d.ts +0 -0
  296. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/FSharp.Collections.js +0 -0
  297. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/FSharp.Core.CompilerServices.d.ts +0 -0
  298. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/FSharp.Core.CompilerServices.js +0 -0
  299. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/FSharp.Core.d.ts +0 -0
  300. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/FSharp.Core.js +0 -0
  301. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Global.d.ts +0 -0
  302. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Global.js +0 -0
  303. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Guid.d.ts +0 -0
  304. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Guid.js +0 -0
  305. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Int32.d.ts +0 -0
  306. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Int32.js +0 -0
  307. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/List.d.ts +0 -0
  308. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/List.js +0 -0
  309. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Long.d.ts +0 -0
  310. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Long.js +0 -0
  311. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MailboxProcessor.d.ts +0 -0
  312. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MailboxProcessor.js +0 -0
  313. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Map.d.ts +0 -0
  314. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Map.js +0 -0
  315. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MutableMap.d.ts +0 -0
  316. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MutableMap.js +0 -0
  317. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MutableSet.d.ts +0 -0
  318. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/MutableSet.js +0 -0
  319. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Native.d.ts +0 -0
  320. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Native.js +0 -0
  321. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Numeric.d.ts +0 -0
  322. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Numeric.js +0 -0
  323. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Observable.d.ts +0 -0
  324. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Observable.js +0 -0
  325. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Option.d.ts +0 -0
  326. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Option.js +0 -0
  327. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/README.md +0 -0
  328. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Random.d.ts +0 -0
  329. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Random.js +0 -0
  330. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Range.d.ts +0 -0
  331. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Range.js +0 -0
  332. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Reflection.d.ts +0 -0
  333. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Reflection.js +0 -0
  334. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/RegExp.d.ts +0 -0
  335. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/RegExp.js +0 -0
  336. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Result.d.ts +0 -0
  337. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Result.js +0 -0
  338. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Seq.d.ts +0 -0
  339. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Seq.js +0 -0
  340. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Seq2.d.ts +0 -0
  341. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Seq2.js +0 -0
  342. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Set.d.ts +0 -0
  343. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Set.js +0 -0
  344. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/String.d.ts +0 -0
  345. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/String.js +0 -0
  346. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/System.Collections.Generic.d.ts +0 -0
  347. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/System.Collections.Generic.js +0 -0
  348. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/System.Text.d.ts +0 -0
  349. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/System.Text.js +0 -0
  350. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/SystemException.d.ts +0 -0
  351. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/SystemException.js +0 -0
  352. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/TimeOnly.d.ts +0 -0
  353. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/TimeOnly.js +0 -0
  354. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/TimeSpan.d.ts +0 -0
  355. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/TimeSpan.js +0 -0
  356. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Timer.d.ts +0 -0
  357. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Timer.js +0 -0
  358. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Types.d.ts +0 -0
  359. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Types.js +0 -0
  360. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Unicode.13.0.0.d.ts +0 -0
  361. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Unicode.13.0.0.js +0 -0
  362. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Uri.d.ts +0 -0
  363. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/Uri.js +0 -0
  364. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/big.d.ts +0 -0
  365. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/lib/big.d.ts +0 -0
  366. /package/fable_modules/{fable-library-js.4.13.0 → fable-library-js.4.16.0}/lib/big.js +0 -0
@@ -0,0 +1,220 @@
1
+ import { empty, unzip, ofArray, choose } from "../fable_modules/fable-library-js.4.16.0/List.js";
2
+ import { stringHash, equals } from "../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { Json } from "../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
4
+ import { defaultSpaces, tryIncludeSeq, tryInclude } from "./Encode.js";
5
+ import { OntologySourceReference_ISAJson_decoder, OntologySourceReference_ISAJson_encoder, OntologySourceReference_ROCrate_decoder, OntologySourceReference_ROCrate_encoder, OntologySourceReference_decoder, OntologySourceReference_encoder } from "./OntologySourceReference.js";
6
+ import { Publication_ISAJson_decoder, Publication_ISAJson_encoder, Publication_ROCrate_decoder, Publication_ROCrate_encoder, Publication_decoder, Publication_encoder } from "./Publication.js";
7
+ import { Person_ISAJson_decoder, Person_ISAJson_encoder, Person_ROCrate_decoder, Person_ROCrate_encoder, Person_decoder, Person_encoder } from "./Person.js";
8
+ import { Assay_decoderCompressed, Assay_encoderCompressed, Assay_decoder, Assay_encoder } from "./Assay.js";
9
+ import { Study_ISAJson_decoder, Study_ISAJson_encoder, Study_ROCrate_decoder, Study_ROCrate_encoder, Study_decoderCompressed, Study_encoderCompressed, Study_decoder, Study_encoder } from "./Study.js";
10
+ import { Comment_ISAJson_decoder, Comment_ISAJson_encoder, Comment_ROCrate_decoder, Comment_ROCrate_encoder, Comment_decoder, Comment_encoder } from "./Comment.js";
11
+ import { list as list_1, string, object } from "../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
12
+ import { ArcInvestigation } from "../Core/ArcTypes.js";
13
+ import { Decode_objectNoAdditionalProperties, Decode_resizeArray } from "./Decode.js";
14
+ import { context_jsonvalue } from "./context/rocrate/isa_investigation_context.js";
15
+ import { createMissingIdentifier } from "../Core/Helper/Identifier.js";
16
+ import { defaultArg } from "../fable_modules/fable-library-js.4.16.0/Option.js";
17
+ import { distinctBy } from "../fable_modules/fable-library-js.4.16.0/Seq2.js";
18
+ import { map, concat } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
19
+ import { context_jsonvalue as context_jsonvalue_1, conformsTo_jsonvalue } from "./context/rocrate/rocrate_context.js";
20
+ import { fromString } from "../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
21
+ import { toFail, printf, toText } from "../fable_modules/fable-library-js.4.16.0/String.js";
22
+ import { toString } from "../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
23
+ import { encode, decode } from "./Table/Compression.js";
24
+
25
+ export function Investigation_encoder(inv) {
26
+ return new Json(5, [choose((tupledArg) => {
27
+ const v = tupledArg[1];
28
+ if (equals(v, new Json(3, []))) {
29
+ return void 0;
30
+ }
31
+ else {
32
+ return [tupledArg[0], v];
33
+ }
34
+ }, ofArray([["Identifier", new Json(0, [inv.Identifier])], tryInclude("Title", (value_1) => (new Json(0, [value_1])), inv.Title), tryInclude("Description", (value_3) => (new Json(0, [value_3])), inv.Description), tryInclude("SubmissionDate", (value_5) => (new Json(0, [value_5])), inv.SubmissionDate), tryInclude("PublicReleaseDate", (value_7) => (new Json(0, [value_7])), inv.PublicReleaseDate), tryIncludeSeq("OntologySourceReferences", OntologySourceReference_encoder, inv.OntologySourceReferences), tryIncludeSeq("Publications", Publication_encoder, inv.Publications), tryIncludeSeq("Contacts", Person_encoder, inv.Contacts), tryIncludeSeq("Assays", Assay_encoder, inv.Assays), tryIncludeSeq("Studies", Study_encoder, inv.Studies), tryIncludeSeq("RegisteredStudyIdentifiers", (value_9) => (new Json(0, [value_9])), inv.RegisteredStudyIdentifiers), tryIncludeSeq("Comments", Comment_encoder, inv.Comments)]))]);
35
+ }
36
+
37
+ export const Investigation_decoder = object((get$) => {
38
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9, arg_21, objectArg_10, arg_23, objectArg_11;
39
+ return new ArcInvestigation((objectArg = get$.Required, objectArg.Field("Identifier", string)), (objectArg_1 = get$.Optional, objectArg_1.Field("Title", string)), (objectArg_2 = get$.Optional, objectArg_2.Field("Description", string)), (objectArg_3 = get$.Optional, objectArg_3.Field("SubmissionDate", string)), (objectArg_4 = get$.Optional, objectArg_4.Field("PublicReleaseDate", string)), (arg_11 = Decode_resizeArray(OntologySourceReference_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("OntologySourceReferences", arg_11))), (arg_13 = Decode_resizeArray(Publication_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("Publications", arg_13))), (arg_15 = Decode_resizeArray(Person_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("Contacts", arg_15))), (arg_17 = Decode_resizeArray(Assay_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("Assays", arg_17))), (arg_19 = Decode_resizeArray(Study_decoder), (objectArg_9 = get$.Optional, objectArg_9.Field("Studies", arg_19))), (arg_21 = Decode_resizeArray(string), (objectArg_10 = get$.Optional, objectArg_10.Field("RegisteredStudyIdentifiers", arg_21))), (arg_23 = Decode_resizeArray(Comment_decoder), (objectArg_11 = get$.Optional, objectArg_11.Field("Comments", arg_23))));
40
+ });
41
+
42
+ export function Investigation_encoderCompressed(stringTable, oaTable, cellTable, inv) {
43
+ return new Json(5, [choose((tupledArg) => {
44
+ const v = tupledArg[1];
45
+ if (equals(v, new Json(3, []))) {
46
+ return void 0;
47
+ }
48
+ else {
49
+ return [tupledArg[0], v];
50
+ }
51
+ }, ofArray([["Identifier", new Json(0, [inv.Identifier])], tryInclude("Title", (value_1) => (new Json(0, [value_1])), inv.Title), tryInclude("Description", (value_3) => (new Json(0, [value_3])), inv.Description), tryInclude("SubmissionDate", (value_5) => (new Json(0, [value_5])), inv.SubmissionDate), tryInclude("PublicReleaseDate", (value_7) => (new Json(0, [value_7])), inv.PublicReleaseDate), tryIncludeSeq("OntologySourceReferences", OntologySourceReference_encoder, inv.OntologySourceReferences), tryIncludeSeq("Publications", Publication_encoder, inv.Publications), tryIncludeSeq("Contacts", Person_encoder, inv.Contacts), tryIncludeSeq("Assays", (assay) => Assay_encoderCompressed(stringTable, oaTable, cellTable, assay), inv.Assays), tryIncludeSeq("Studies", (study) => Study_encoderCompressed(stringTable, oaTable, cellTable, study), inv.Studies), tryIncludeSeq("RegisteredStudyIdentifiers", (value_9) => (new Json(0, [value_9])), inv.RegisteredStudyIdentifiers), tryIncludeSeq("Comments", Comment_encoder, inv.Comments)]))]);
52
+ }
53
+
54
+ export function Investigation_decoderCompressed(stringTable, oaTable, cellTable) {
55
+ return object((get$) => {
56
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9, arg_21, objectArg_10, arg_23, objectArg_11;
57
+ return new ArcInvestigation((objectArg = get$.Required, objectArg.Field("Identifier", string)), (objectArg_1 = get$.Optional, objectArg_1.Field("Title", string)), (objectArg_2 = get$.Optional, objectArg_2.Field("Description", string)), (objectArg_3 = get$.Optional, objectArg_3.Field("SubmissionDate", string)), (objectArg_4 = get$.Optional, objectArg_4.Field("PublicReleaseDate", string)), (arg_11 = Decode_resizeArray(OntologySourceReference_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("OntologySourceReferences", arg_11))), (arg_13 = Decode_resizeArray(Publication_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("Publications", arg_13))), (arg_15 = Decode_resizeArray(Person_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("Contacts", arg_15))), (arg_17 = Decode_resizeArray(Assay_decoderCompressed(stringTable, oaTable, cellTable)), (objectArg_8 = get$.Optional, objectArg_8.Field("Assays", arg_17))), (arg_19 = Decode_resizeArray(Study_decoderCompressed(stringTable, oaTable, cellTable)), (objectArg_9 = get$.Optional, objectArg_9.Field("Studies", arg_19))), (arg_21 = Decode_resizeArray(string), (objectArg_10 = get$.Optional, objectArg_10.Field("RegisteredStudyIdentifiers", arg_21))), (arg_23 = Decode_resizeArray(Comment_decoder), (objectArg_11 = get$.Optional, objectArg_11.Field("Comments", arg_23))));
58
+ });
59
+ }
60
+
61
+ export function Investigation_ROCrate_genID(i) {
62
+ return "./";
63
+ }
64
+
65
+ export function Investigation_ROCrate_encoder(oa) {
66
+ return new Json(5, [choose((tupledArg) => {
67
+ const v = tupledArg[1];
68
+ if (equals(v, new Json(3, []))) {
69
+ return void 0;
70
+ }
71
+ else {
72
+ return [tupledArg[0], v];
73
+ }
74
+ }, ofArray([["@id", new Json(0, [Investigation_ROCrate_genID(oa)])], ["@type", new Json(0, ["Investigation"])], ["additionalType", new Json(0, ["Investigation"])], ["identifier", new Json(0, [oa.Identifier])], ["filename", new Json(0, [ArcInvestigation.FileName])], tryInclude("title", (value_5) => (new Json(0, [value_5])), oa.Title), tryInclude("description", (value_7) => (new Json(0, [value_7])), oa.Description), tryInclude("submissionDate", (value_9) => (new Json(0, [value_9])), oa.SubmissionDate), tryInclude("publicReleaseDate", (value_11) => (new Json(0, [value_11])), oa.PublicReleaseDate), tryIncludeSeq("ontologySourceReferences", OntologySourceReference_ROCrate_encoder, oa.OntologySourceReferences), tryIncludeSeq("publications", Publication_ROCrate_encoder, oa.Publications), tryIncludeSeq("people", Person_ROCrate_encoder, oa.Contacts), tryIncludeSeq("studies", (s) => Study_ROCrate_encoder(void 0, s), oa.Studies), tryIncludeSeq("comments", Comment_ROCrate_encoder, oa.Comments), ["@context", context_jsonvalue]]))]);
75
+ }
76
+
77
+ export const Investigation_ROCrate_decoder = object((get$) => {
78
+ let arg_3, objectArg_1, objectArg_2, objectArg_3, objectArg_4, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9;
79
+ let identifier;
80
+ let matchValue;
81
+ const objectArg = get$.Optional;
82
+ matchValue = objectArg.Field("identifier", string);
83
+ identifier = ((matchValue == null) ? createMissingIdentifier() : matchValue);
84
+ const patternInput = unzip(defaultArg((arg_3 = list_1(Study_ROCrate_decoder), (objectArg_1 = get$.Optional, objectArg_1.Field("studies", arg_3))), empty()));
85
+ const studiesRaw = patternInput[0];
86
+ let assays;
87
+ const collection = distinctBy((a) => a.Identifier, concat(patternInput[1]), {
88
+ Equals: (x, y) => (x === y),
89
+ GetHashCode: stringHash,
90
+ });
91
+ assays = Array.from(collection);
92
+ const studies = Array.from(studiesRaw);
93
+ let studyIdentifiers;
94
+ const collection_1 = map((a_1) => a_1.Identifier, studiesRaw);
95
+ studyIdentifiers = Array.from(collection_1);
96
+ return new ArcInvestigation(identifier, (objectArg_2 = get$.Optional, objectArg_2.Field("title", string)), (objectArg_3 = get$.Optional, objectArg_3.Field("description", string)), (objectArg_4 = get$.Optional, objectArg_4.Field("submissionDate", string)), (objectArg_5 = get$.Optional, objectArg_5.Field("publicReleaseDate", string)), (arg_13 = Decode_resizeArray(OntologySourceReference_ROCrate_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("ontologySourceReferences", arg_13))), (arg_15 = Decode_resizeArray(Publication_ROCrate_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("publications", arg_15))), (arg_17 = Decode_resizeArray(Person_ROCrate_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("people", arg_17))), assays, studies, studyIdentifiers, (arg_19 = Decode_resizeArray(Comment_ROCrate_decoder), (objectArg_9 = get$.Optional, objectArg_9.Field("comments", arg_19))));
97
+ });
98
+
99
+ export function Investigation_ROCrate_encodeRoCrate(oa) {
100
+ return new Json(5, [choose((tupledArg) => {
101
+ const v = tupledArg[1];
102
+ if (equals(v, new Json(3, []))) {
103
+ return void 0;
104
+ }
105
+ else {
106
+ return [tupledArg[0], v];
107
+ }
108
+ }, ofArray([tryInclude("@type", (value) => (new Json(0, [value])), "CreativeWork"), tryInclude("@id", (value_2) => (new Json(0, [value_2])), "ro-crate-metadata.json"), tryInclude("about", Investigation_ROCrate_encoder, oa), ["conformsTo", conformsTo_jsonvalue], ["@context", context_jsonvalue_1]]))]);
109
+ }
110
+
111
+ export const Investigation_ISAJson_allowedFields = ofArray(["@id", "filename", "identifier", "title", "description", "submissionDate", "publicReleaseDate", "ontologySourceReferences", "publications", "people", "studies", "comments", "@type", "@context"]);
112
+
113
+ export function Investigation_ISAJson_encoder(inv) {
114
+ return new Json(5, [choose((tupledArg) => {
115
+ const v = tupledArg[1];
116
+ if (equals(v, new Json(3, []))) {
117
+ return void 0;
118
+ }
119
+ else {
120
+ return [tupledArg[0], v];
121
+ }
122
+ }, ofArray([["filename", new Json(0, [ArcInvestigation.FileName])], ["identifier", new Json(0, [inv.Identifier])], tryInclude("title", (value_2) => (new Json(0, [value_2])), inv.Title), tryInclude("description", (value_4) => (new Json(0, [value_4])), inv.Description), tryInclude("submissionDate", (value_6) => (new Json(0, [value_6])), inv.SubmissionDate), tryInclude("publicReleaseDate", (value_8) => (new Json(0, [value_8])), inv.PublicReleaseDate), tryIncludeSeq("ontologySourceReferences", OntologySourceReference_ISAJson_encoder, inv.OntologySourceReferences), tryIncludeSeq("publications", Publication_ISAJson_encoder, inv.Publications), tryIncludeSeq("people", Person_ISAJson_encoder, inv.Contacts), tryIncludeSeq("studies", (s) => Study_ISAJson_encoder(void 0, s), inv.Studies), tryIncludeSeq("comments", Comment_ISAJson_encoder, inv.Comments)]))]);
123
+ }
124
+
125
+ export const Investigation_ISAJson_decoder = Decode_objectNoAdditionalProperties(Investigation_ISAJson_allowedFields, (get$) => {
126
+ let arg_3, objectArg_1, objectArg_2, objectArg_3, objectArg_4, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9;
127
+ let identifer;
128
+ let matchValue;
129
+ const objectArg = get$.Optional;
130
+ matchValue = objectArg.Field("identifier", string);
131
+ identifer = ((matchValue == null) ? createMissingIdentifier() : matchValue);
132
+ const patternInput = unzip(defaultArg((arg_3 = list_1(Study_ISAJson_decoder), (objectArg_1 = get$.Optional, objectArg_1.Field("studies", arg_3))), empty()));
133
+ const studiesRaw = patternInput[0];
134
+ let assays;
135
+ const collection = distinctBy((a) => a.Identifier, concat(patternInput[1]), {
136
+ Equals: (x, y) => (x === y),
137
+ GetHashCode: stringHash,
138
+ });
139
+ assays = Array.from(collection);
140
+ const studies = Array.from(studiesRaw);
141
+ let studyIdentifiers;
142
+ const collection_1 = map((a_1) => a_1.Identifier, studiesRaw);
143
+ studyIdentifiers = Array.from(collection_1);
144
+ return new ArcInvestigation(identifer, (objectArg_2 = get$.Optional, objectArg_2.Field("title", string)), (objectArg_3 = get$.Optional, objectArg_3.Field("description", string)), (objectArg_4 = get$.Optional, objectArg_4.Field("submissionDate", string)), (objectArg_5 = get$.Optional, objectArg_5.Field("publicReleaseDate", string)), (arg_13 = Decode_resizeArray(OntologySourceReference_ISAJson_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("ontologySourceReferences", arg_13))), (arg_15 = Decode_resizeArray(Publication_ISAJson_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("publications", arg_15))), (arg_17 = Decode_resizeArray(Person_ISAJson_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("people", arg_17))), assays, studies, studyIdentifiers, (arg_19 = Decode_resizeArray(Comment_ISAJson_decoder), (objectArg_9 = get$.Optional, objectArg_9.Field("comments", arg_19))));
145
+ });
146
+
147
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_fromJsonString_Static_Z721C83C5(s) {
148
+ const matchValue = fromString(Investigation_decoder, s);
149
+ if (matchValue.tag === 1) {
150
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
151
+ }
152
+ else {
153
+ return matchValue.fields[0];
154
+ }
155
+ }
156
+
157
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_toJsonString_Static_71136F3F(spaces) {
158
+ return (obj) => {
159
+ const value = Investigation_encoder(obj);
160
+ return toString(defaultSpaces(spaces), value);
161
+ };
162
+ }
163
+
164
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_fromCompressedJsonString_Static_Z721C83C5(s) {
165
+ try {
166
+ const matchValue = fromString(decode(Investigation_decoderCompressed), s);
167
+ if (matchValue.tag === 1) {
168
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
169
+ }
170
+ else {
171
+ return matchValue.fields[0];
172
+ }
173
+ }
174
+ catch (e_1) {
175
+ const arg_1 = e_1.message;
176
+ return toFail(printf("Error. Unable to parse json string to ArcStudy: %s"))(arg_1);
177
+ }
178
+ }
179
+
180
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_toCompressedJsonString_Static_71136F3F(spaces) {
181
+ return (obj) => toString(defaultArg(spaces, 0), encode(Investigation_encoderCompressed, obj));
182
+ }
183
+
184
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateJsonString_Static_Z721C83C5(s) {
185
+ const matchValue = fromString(Investigation_ROCrate_decoder, s);
186
+ if (matchValue.tag === 1) {
187
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
188
+ }
189
+ else {
190
+ return matchValue.fields[0];
191
+ }
192
+ }
193
+
194
+ /**
195
+ * exports in json-ld format
196
+ */
197
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_toROCrateJsonString_Static_71136F3F(spaces) {
198
+ return (obj) => {
199
+ const value = Investigation_ROCrate_encoder(obj);
200
+ return toString(defaultSpaces(spaces), value);
201
+ };
202
+ }
203
+
204
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_toISAJsonString_Static_71136F3F(spaces) {
205
+ return (obj) => {
206
+ const value = Investigation_ISAJson_encoder(obj);
207
+ return toString(defaultSpaces(spaces), value);
208
+ };
209
+ }
210
+
211
+ export function ARCtrl_ArcInvestigation__ArcInvestigation_fromISAJsonString_Static_Z721C83C5(s) {
212
+ const matchValue = fromString(Investigation_ISAJson_decoder, s);
213
+ if (matchValue.tag === 1) {
214
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
215
+ }
216
+ else {
217
+ return matchValue.fields[0];
218
+ }
219
+ }
220
+
@@ -0,0 +1,169 @@
1
+ import { object, string, float, int, map, oneOf } from "../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
2
+ import { equals, int32ToString } from "../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { choose, ofArray } from "../fable_modules/fable-library-js.4.16.0/List.js";
4
+ import { Json } from "../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
5
+ import { defaultSpaces, tryIncludeSeq, tryInclude } from "./Encode.js";
6
+ import { Comment_ROCrate_decoderDisambiguatingDescription, Comment_ROCrate_encoderDisambiguatingDescription, Comment_decoder, Comment_encoder } from "./Comment.js";
7
+ import { OntologyAnnotation } from "../Core/OntologyAnnotation.js";
8
+ import { unwrap } from "../fable_modules/fable-library-js.4.16.0/Option.js";
9
+ import { Decode_resizeArray } from "./Decode.js";
10
+ import { decodeString, encodeString } from "./StringTable.js";
11
+ import { printf, toText, replace } from "../fable_modules/fable-library-js.4.16.0/String.js";
12
+ import { URIModule_toString } from "../Core/URI.js";
13
+ import { context_jsonvalue } from "./context/rocrate/isa_ontology_annotation_context.js";
14
+ import { context_jsonvalue as context_jsonvalue_1 } from "./context/rocrate/property_value_context.js";
15
+ import { fromString } from "../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
16
+ import { toString } from "../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
17
+
18
+ export const AnnotationValue_decoder = oneOf(ofArray([map(int32ToString, int), map((value_1) => value_1.toString(), float), string]));
19
+
20
+ export function OntologyAnnotation_encoder(oa) {
21
+ return new Json(5, [choose((tupledArg) => {
22
+ const v = tupledArg[1];
23
+ if (equals(v, new Json(3, []))) {
24
+ return void 0;
25
+ }
26
+ else {
27
+ return [tupledArg[0], v];
28
+ }
29
+ }, ofArray([tryInclude("annotationValue", (value) => (new Json(0, [value])), oa.Name), tryInclude("termSource", (value_2) => (new Json(0, [value_2])), oa.TermSourceREF), tryInclude("termAccession", (value_4) => (new Json(0, [value_4])), oa.TermAccessionNumber), tryIncludeSeq("comments", Comment_encoder, oa.Comments)]))]);
30
+ }
31
+
32
+ export const OntologyAnnotation_decoder = object((get$) => {
33
+ let objectArg, objectArg_1, objectArg_2, arg_7, objectArg_3;
34
+ return OntologyAnnotation.create(unwrap((objectArg = get$.Optional, objectArg.Field("annotationValue", AnnotationValue_decoder))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("termSource", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("termAccession", string))), unwrap((arg_7 = Decode_resizeArray(Comment_decoder), (objectArg_3 = get$.Optional, objectArg_3.Field("comments", arg_7)))));
35
+ });
36
+
37
+ export function OntologyAnnotation_compressedEncoder(stringTable, oa) {
38
+ return new Json(5, [choose((tupledArg) => {
39
+ const v = tupledArg[1];
40
+ if (equals(v, new Json(3, []))) {
41
+ return void 0;
42
+ }
43
+ else {
44
+ return [tupledArg[0], v];
45
+ }
46
+ }, ofArray([tryInclude("a", (s) => encodeString(stringTable, s), oa.Name), tryInclude("ts", (s_1) => encodeString(stringTable, s_1), oa.TermSourceREF), tryInclude("ta", (s_2) => encodeString(stringTable, s_2), oa.TermAccessionNumber), tryIncludeSeq("comments", Comment_encoder, oa.Comments)]))]);
47
+ }
48
+
49
+ export function OntologyAnnotation_compressedDecoder(stringTable) {
50
+ return object((get$) => {
51
+ let arg_1, objectArg, arg_3, objectArg_1, arg_5, objectArg_2, arg_7, objectArg_3;
52
+ return new OntologyAnnotation(unwrap((arg_1 = decodeString(stringTable), (objectArg = get$.Optional, objectArg.Field("a", arg_1)))), unwrap((arg_3 = decodeString(stringTable), (objectArg_1 = get$.Optional, objectArg_1.Field("ts", arg_3)))), unwrap((arg_5 = decodeString(stringTable), (objectArg_2 = get$.Optional, objectArg_2.Field("ta", arg_5)))), unwrap((arg_7 = Decode_resizeArray(Comment_decoder), (objectArg_3 = get$.Optional, objectArg_3.Field("comments", arg_7)))));
53
+ });
54
+ }
55
+
56
+ export function OntologyAnnotation_ROCrate_genID(o) {
57
+ const matchValue = o.TermAccessionNumber;
58
+ if (matchValue == null) {
59
+ const matchValue_1 = o.TermSourceREF;
60
+ if (matchValue_1 == null) {
61
+ const matchValue_2 = o.Name;
62
+ if (matchValue_2 == null) {
63
+ return "#DummyOntologyAnnotation";
64
+ }
65
+ else {
66
+ return "#UserTerm_" + replace(matchValue_2, " ", "_");
67
+ }
68
+ }
69
+ else {
70
+ return "#" + replace(matchValue_1, " ", "_");
71
+ }
72
+ }
73
+ else {
74
+ return URIModule_toString(matchValue);
75
+ }
76
+ }
77
+
78
+ export function OntologyAnnotation_ROCrate_encoderDefinedTerm(oa) {
79
+ return new Json(5, [choose((tupledArg) => {
80
+ const v = tupledArg[1];
81
+ if (equals(v, new Json(3, []))) {
82
+ return void 0;
83
+ }
84
+ else {
85
+ return [tupledArg[0], v];
86
+ }
87
+ }, ofArray([["@id", new Json(0, [OntologyAnnotation_ROCrate_genID(oa)])], ["@type", new Json(0, ["OntologyAnnotation"])], tryInclude("annotationValue", (value_2) => (new Json(0, [value_2])), oa.Name), tryInclude("termSource", (value_4) => (new Json(0, [value_4])), oa.TermSourceREF), tryInclude("termAccession", (value_6) => (new Json(0, [value_6])), oa.TermAccessionNumber), tryIncludeSeq("comments", Comment_ROCrate_encoderDisambiguatingDescription, oa.Comments), ["@context", context_jsonvalue]]))]);
88
+ }
89
+
90
+ export const OntologyAnnotation_ROCrate_decoderDefinedTerm = object((get$) => {
91
+ let objectArg, objectArg_1, objectArg_2, arg_7, objectArg_3;
92
+ return OntologyAnnotation.create(unwrap((objectArg = get$.Optional, objectArg.Field("annotationValue", AnnotationValue_decoder))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("termSource", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("termAccession", string))), unwrap((arg_7 = Decode_resizeArray(Comment_ROCrate_decoderDisambiguatingDescription), (objectArg_3 = get$.Optional, objectArg_3.Field("comments", arg_7)))));
93
+ });
94
+
95
+ export function OntologyAnnotation_ROCrate_encoderPropertyValue(oa) {
96
+ return new Json(5, [choose((tupledArg) => {
97
+ const v = tupledArg[1];
98
+ if (equals(v, new Json(3, []))) {
99
+ return void 0;
100
+ }
101
+ else {
102
+ return [tupledArg[0], v];
103
+ }
104
+ }, ofArray([["@id", new Json(0, [OntologyAnnotation_ROCrate_genID(oa)])], ["@type", new Json(0, ["PropertyValue"])], tryInclude("category", (value_2) => (new Json(0, [value_2])), oa.Name), tryInclude("categoryCode", (value_4) => (new Json(0, [value_4])), oa.TermAccessionNumber), tryIncludeSeq("comments", Comment_ROCrate_encoderDisambiguatingDescription, oa.Comments), ["@context", context_jsonvalue_1]]))]);
105
+ }
106
+
107
+ export const OntologyAnnotation_ROCrate_decoderPropertyValue = object((get$) => {
108
+ let objectArg, objectArg_1, arg_5, objectArg_2;
109
+ return OntologyAnnotation.create(unwrap((objectArg = get$.Optional, objectArg.Field("category", string))), void 0, unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("categoryCode", string))), unwrap((arg_5 = Decode_resizeArray(Comment_ROCrate_decoderDisambiguatingDescription), (objectArg_2 = get$.Optional, objectArg_2.Field("comments", arg_5)))));
110
+ });
111
+
112
+ export const OntologyAnnotation_ISAJson_encoder = OntologyAnnotation_encoder;
113
+
114
+ export const OntologyAnnotation_ISAJson_decoder = OntologyAnnotation_decoder;
115
+
116
+ export function ARCtrl_OntologyAnnotation__OntologyAnnotation_fromJsonString_Static_Z721C83C5(s) {
117
+ const matchValue = fromString(OntologyAnnotation_decoder, s);
118
+ if (matchValue.tag === 1) {
119
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
120
+ }
121
+ else {
122
+ return matchValue.fields[0];
123
+ }
124
+ }
125
+
126
+ export function ARCtrl_OntologyAnnotation__OntologyAnnotation_toJsonString_Static_71136F3F(spaces) {
127
+ return (obj) => {
128
+ const value = OntologyAnnotation_encoder(obj);
129
+ return toString(defaultSpaces(spaces), value);
130
+ };
131
+ }
132
+
133
+ export function ARCtrl_OntologyAnnotation__OntologyAnnotation_fromROCrateJsonString_Static_Z721C83C5(s) {
134
+ const matchValue = fromString(OntologyAnnotation_ROCrate_decoderDefinedTerm, s);
135
+ if (matchValue.tag === 1) {
136
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
137
+ }
138
+ else {
139
+ return matchValue.fields[0];
140
+ }
141
+ }
142
+
143
+ /**
144
+ * exports in json-ld format
145
+ */
146
+ export function ARCtrl_OntologyAnnotation__OntologyAnnotation_toROCrateJsonString_Static_71136F3F(spaces) {
147
+ return (obj) => {
148
+ const value = OntologyAnnotation_ROCrate_encoderDefinedTerm(obj);
149
+ return toString(defaultSpaces(spaces), value);
150
+ };
151
+ }
152
+
153
+ export function ARCtrl_OntologyAnnotation__OntologyAnnotation_toISAJsonString_Static_71136F3F(spaces) {
154
+ return (obj) => {
155
+ const value = OntologyAnnotation_ISAJson_encoder(obj);
156
+ return toString(defaultSpaces(spaces), value);
157
+ };
158
+ }
159
+
160
+ export function ARCtrl_OntologyAnnotation__OntologyAnnotation_fromISAJsonString_Static_Z721C83C5(s) {
161
+ const matchValue = fromString(OntologyAnnotation_ISAJson_decoder, s);
162
+ if (matchValue.tag === 1) {
163
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
164
+ }
165
+ else {
166
+ return matchValue.fields[0];
167
+ }
168
+ }
169
+
@@ -0,0 +1,122 @@
1
+ import { ofArray, choose } from "../fable_modules/fable-library-js.4.16.0/List.js";
2
+ import { equals } from "../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { Json } from "../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
4
+ import { defaultSpaces, tryIncludeSeq, tryInclude } from "./Encode.js";
5
+ import { Comment_decoder, Comment_encoder } from "./Comment.js";
6
+ import { string, object } from "../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
7
+ import { OntologySourceReference } from "../Core/OntologySourceReference.js";
8
+ import { unwrap } from "../fable_modules/fable-library-js.4.16.0/Option.js";
9
+ import { Decode_resizeArray, Decode_uri } from "./Decode.js";
10
+ import { printf, toText, replace } from "../fable_modules/fable-library-js.4.16.0/String.js";
11
+ import { context_jsonvalue } from "./context/rocrate/isa_ontology_source_reference_context.js";
12
+ import { fromString } from "../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
13
+ import { toString } from "../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
14
+
15
+ export function OntologySourceReference_encoder(osr) {
16
+ return new Json(5, [choose((tupledArg) => {
17
+ const v = tupledArg[1];
18
+ if (equals(v, new Json(3, []))) {
19
+ return void 0;
20
+ }
21
+ else {
22
+ return [tupledArg[0], v];
23
+ }
24
+ }, ofArray([tryInclude("description", (value) => (new Json(0, [value])), osr.Description), tryInclude("file", (value_2) => (new Json(0, [value_2])), osr.File), tryInclude("name", (value_4) => (new Json(0, [value_4])), osr.Name), tryInclude("version", (value_6) => (new Json(0, [value_6])), osr.Version), tryIncludeSeq("comments", Comment_encoder, osr.Comments)]))]);
25
+ }
26
+
27
+ export const OntologySourceReference_decoder = object((get$) => {
28
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, arg_9, objectArg_4;
29
+ return new OntologySourceReference(unwrap((objectArg = get$.Optional, objectArg.Field("description", Decode_uri))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("file", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("name", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("version", string))), unwrap((arg_9 = Decode_resizeArray(Comment_decoder), (objectArg_4 = get$.Optional, objectArg_4.Field("comments", arg_9)))));
30
+ });
31
+
32
+ export function OntologySourceReference_ROCrate_genID(o) {
33
+ const matchValue = o.File;
34
+ if (matchValue == null) {
35
+ const matchValue_1 = o.Name;
36
+ if (matchValue_1 == null) {
37
+ return "#DummyOntologySourceRef";
38
+ }
39
+ else {
40
+ return "#OntologySourceRef_" + replace(matchValue_1, " ", "_");
41
+ }
42
+ }
43
+ else {
44
+ return matchValue;
45
+ }
46
+ }
47
+
48
+ export function OntologySourceReference_ROCrate_encoder(osr) {
49
+ return new Json(5, [choose((tupledArg) => {
50
+ const v = tupledArg[1];
51
+ if (equals(v, new Json(3, []))) {
52
+ return void 0;
53
+ }
54
+ else {
55
+ return [tupledArg[0], v];
56
+ }
57
+ }, ofArray([["@id", new Json(0, [OntologySourceReference_ROCrate_genID(osr)])], ["@type", new Json(0, ["OntologySourceReference"])], tryInclude("description", (value_2) => (new Json(0, [value_2])), osr.Description), tryInclude("file", (value_4) => (new Json(0, [value_4])), osr.File), tryInclude("name", (value_6) => (new Json(0, [value_6])), osr.Name), tryInclude("version", (value_8) => (new Json(0, [value_8])), osr.Version), tryIncludeSeq("comments", Comment_encoder, osr.Comments), ["@context", context_jsonvalue]]))]);
58
+ }
59
+
60
+ export const OntologySourceReference_ROCrate_decoder = object((get$) => {
61
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, arg_9, objectArg_4;
62
+ return new OntologySourceReference(unwrap((objectArg = get$.Optional, objectArg.Field("description", Decode_uri))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("file", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("name", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("version", string))), unwrap((arg_9 = Decode_resizeArray(Comment_decoder), (objectArg_4 = get$.Optional, objectArg_4.Field("comments", arg_9)))));
63
+ });
64
+
65
+ export const OntologySourceReference_ISAJson_encoder = OntologySourceReference_encoder;
66
+
67
+ export const OntologySourceReference_ISAJson_decoder = OntologySourceReference_decoder;
68
+
69
+ export function ARCtrl_OntologySourceReference__OntologySourceReference_fromJsonString_Static_Z721C83C5(s) {
70
+ const matchValue = fromString(OntologySourceReference_decoder, s);
71
+ if (matchValue.tag === 1) {
72
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
73
+ }
74
+ else {
75
+ return matchValue.fields[0];
76
+ }
77
+ }
78
+
79
+ export function ARCtrl_OntologySourceReference__OntologySourceReference_toJsonString_Static_71136F3F(spaces) {
80
+ return (obj) => {
81
+ const value = OntologySourceReference_encoder(obj);
82
+ return toString(defaultSpaces(spaces), value);
83
+ };
84
+ }
85
+
86
+ export function ARCtrl_OntologySourceReference__OntologySourceReference_fromROCrateJsonString_Static_Z721C83C5(s) {
87
+ const matchValue = fromString(OntologySourceReference_ROCrate_decoder, s);
88
+ if (matchValue.tag === 1) {
89
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
90
+ }
91
+ else {
92
+ return matchValue.fields[0];
93
+ }
94
+ }
95
+
96
+ /**
97
+ * exports in json-ld format
98
+ */
99
+ export function ARCtrl_OntologySourceReference__OntologySourceReference_toROCrateJsonString_Static_71136F3F(spaces) {
100
+ return (obj) => {
101
+ const value = OntologySourceReference_ROCrate_encoder(obj);
102
+ return toString(defaultSpaces(spaces), value);
103
+ };
104
+ }
105
+
106
+ export function ARCtrl_OntologySourceReference__OntologySourceReference_toISAJsonString_Static_71136F3F(spaces) {
107
+ return (obj) => {
108
+ const value = OntologySourceReference_ISAJson_encoder(obj);
109
+ return toString(defaultSpaces(spaces), value);
110
+ };
111
+ }
112
+
113
+ export function ARCtrl_OntologySourceReference__OntologySourceReference_fromISAJsonString_Static_Z721C83C5(s) {
114
+ const matchValue = fromString(OntologySourceReference_ISAJson_decoder, s);
115
+ if (matchValue.tag === 1) {
116
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
117
+ }
118
+ else {
119
+ return matchValue.fields[0];
120
+ }
121
+ }
122
+