@nfdi4plants/arctrl 3.0.0-beta.3 → 3.0.0-beta.5

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 (398) hide show
  1. package/README.md +2 -0
  2. package/dist/ts/index.js +63 -0
  3. package/dist/ts/node_modules/@fable-org/fable-library-js/Array.js +354 -0
  4. package/dist/ts/node_modules/@fable-org/fable-library-js/Async.js +28 -0
  5. package/dist/ts/node_modules/@fable-org/fable-library-js/AsyncBuilder.js +186 -0
  6. package/dist/ts/node_modules/@fable-org/fable-library-js/BigInt.js +8 -0
  7. package/dist/ts/node_modules/@fable-org/fable-library-js/Boolean.js +24 -0
  8. package/dist/ts/node_modules/@fable-org/fable-library-js/Char.js +73 -0
  9. package/dist/ts/node_modules/@fable-org/fable-library-js/CollectionUtil.js +31 -0
  10. package/dist/ts/node_modules/@fable-org/fable-library-js/Date.js +574 -0
  11. package/dist/ts/node_modules/@fable-org/fable-library-js/DateOffset.js +59 -0
  12. package/dist/ts/node_modules/@fable-org/fable-library-js/Decimal.js +65 -0
  13. package/dist/ts/node_modules/@fable-org/fable-library-js/Double.js +30 -0
  14. package/dist/ts/node_modules/@fable-org/fable-library-js/FSharp.Core.js +5 -0
  15. package/dist/ts/node_modules/@fable-org/fable-library-js/Global.js +5 -0
  16. package/dist/ts/node_modules/@fable-org/fable-library-js/Guid.js +48 -0
  17. package/dist/ts/node_modules/@fable-org/fable-library-js/Int32.js +120 -0
  18. package/dist/ts/node_modules/@fable-org/fable-library-js/List.js +680 -0
  19. package/dist/ts/node_modules/@fable-org/fable-library-js/Long.js +40 -0
  20. package/dist/ts/node_modules/@fable-org/fable-library-js/Map.js +655 -0
  21. package/dist/ts/node_modules/@fable-org/fable-library-js/MapUtil.js +105 -0
  22. package/dist/ts/node_modules/@fable-org/fable-library-js/MutableMap.js +320 -0
  23. package/dist/ts/node_modules/@fable-org/fable-library-js/MutableSet.js +204 -0
  24. package/dist/ts/node_modules/@fable-org/fable-library-js/Native.js +10 -0
  25. package/dist/ts/node_modules/@fable-org/fable-library-js/Numeric.js +73 -0
  26. package/dist/ts/node_modules/@fable-org/fable-library-js/Option.js +65 -0
  27. package/dist/ts/node_modules/@fable-org/fable-library-js/Range.js +23 -0
  28. package/dist/ts/node_modules/@fable-org/fable-library-js/Reflection.js +111 -0
  29. package/dist/ts/node_modules/@fable-org/fable-library-js/RegExp.js +114 -0
  30. package/dist/ts/node_modules/@fable-org/fable-library-js/Result.js +36 -0
  31. package/dist/ts/node_modules/@fable-org/fable-library-js/Seq.js +846 -0
  32. package/dist/ts/node_modules/@fable-org/fable-library-js/Seq2.js +65 -0
  33. package/dist/ts/node_modules/@fable-org/fable-library-js/Set.js +1160 -0
  34. package/dist/ts/node_modules/@fable-org/fable-library-js/String.js +364 -0
  35. package/dist/ts/node_modules/@fable-org/fable-library-js/System.Text.js +40 -0
  36. package/dist/ts/node_modules/@fable-org/fable-library-js/Types.js +193 -0
  37. package/dist/ts/node_modules/@fable-org/fable-library-js/Unicode.13.0.0.js +6 -0
  38. package/dist/ts/node_modules/@fable-org/fable-library-js/Uri.js +160 -0
  39. package/dist/ts/node_modules/@fable-org/fable-library-js/Util.js +367 -0
  40. package/dist/ts/node_modules/@fable-org/fable-library-js/lib/big.js +825 -0
  41. package/dist/ts/ts/ARC.js +914 -0
  42. package/dist/ts/ts/Contract/ARC.js +52 -0
  43. package/dist/ts/ts/Contract/ArcAssay.js +80 -0
  44. package/dist/ts/ts/Contract/ArcInvestigation.js +57 -0
  45. package/dist/ts/ts/Contract/ArcRun.js +76 -0
  46. package/dist/ts/ts/Contract/ArcStudy.js +76 -0
  47. package/dist/ts/ts/Contract/ArcWorkflow.js +77 -0
  48. package/dist/ts/ts/Contract/Contract.js +45 -0
  49. package/dist/ts/ts/Contract/Datamap.js +221 -0
  50. package/dist/ts/ts/Contract/Git.js +57 -0
  51. package/dist/ts/ts/Contract/ValidationPackagesConfig.js +57 -0
  52. package/dist/ts/ts/ContractIO/ContractIO.js +202 -0
  53. package/dist/ts/ts/ContractIO/FileSystemHelper.d.ts +1 -1
  54. package/dist/ts/ts/ContractIO/FileSystemHelper.d.ts.map +1 -1
  55. package/dist/ts/ts/ContractIO/FileSystemHelper.js +273 -0
  56. package/dist/ts/ts/Conversion.js +1247 -0
  57. package/dist/ts/ts/Core/ArcTypes.js +3393 -0
  58. package/dist/ts/ts/Core/Comment.js +91 -0
  59. package/dist/ts/ts/Core/CommentList.js +27 -0
  60. package/dist/ts/ts/Core/Conversion.js +923 -0
  61. package/dist/ts/ts/Core/Data.js +179 -0
  62. package/dist/ts/ts/Core/DataContext.js +108 -0
  63. package/dist/ts/ts/Core/DataFile.js +50 -0
  64. package/dist/ts/ts/Core/DataMap.js +53 -0
  65. package/dist/ts/ts/Core/Helper/Collections.js +323 -0
  66. package/dist/ts/ts/Core/Helper/HashCodes.js +35 -0
  67. package/dist/ts/ts/Core/Helper/Identifier.js +96 -0
  68. package/dist/ts/ts/Core/Helper/ORCID.js +34 -0
  69. package/dist/ts/ts/Core/Helper/Regex.js +296 -0
  70. package/dist/ts/ts/Core/Helper/SemVer.js +31 -0
  71. package/dist/ts/ts/Core/Helper/Url.js +32 -0
  72. package/dist/ts/ts/Core/IdentifierSetters.d.ts +3 -1
  73. package/dist/ts/ts/Core/IdentifierSetters.d.ts.map +1 -1
  74. package/dist/ts/ts/Core/IdentifierSetters.js +11 -0
  75. package/dist/ts/ts/Core/OntologyAnnotation.js +207 -0
  76. package/dist/ts/ts/Core/OntologySourceReference.js +84 -0
  77. package/dist/ts/ts/Core/Person.js +183 -0
  78. package/dist/ts/ts/Core/Process/ColumnIndex.js +73 -0
  79. package/dist/ts/ts/Core/Process/Component.js +121 -0
  80. package/dist/ts/ts/Core/Process/Factor.js +104 -0
  81. package/dist/ts/ts/Core/Process/FactorValue.js +68 -0
  82. package/dist/ts/ts/Core/Process/Material.js +49 -0
  83. package/dist/ts/ts/Core/Process/MaterialAttribute.js +30 -0
  84. package/dist/ts/ts/Core/Process/MaterialAttributeValue.js +68 -0
  85. package/dist/ts/ts/Core/Process/MaterialType.js +28 -0
  86. package/dist/ts/ts/Core/Process/Process.js +136 -0
  87. package/dist/ts/ts/Core/Process/ProcessInput.js +207 -0
  88. package/dist/ts/ts/Core/Process/ProcessOutput.js +178 -0
  89. package/dist/ts/ts/Core/Process/ProcessParameterValue.js +135 -0
  90. package/dist/ts/ts/Core/Process/ProcessSequence.js +56 -0
  91. package/dist/ts/ts/Core/Process/Protocol.js +54 -0
  92. package/dist/ts/ts/Core/Process/ProtocolParameter.js +69 -0
  93. package/dist/ts/ts/Core/Process/Sample.js +44 -0
  94. package/dist/ts/ts/Core/Process/Source.js +38 -0
  95. package/dist/ts/ts/Core/Publication.js +108 -0
  96. package/dist/ts/ts/Core/Table/ArcTable.js +889 -0
  97. package/dist/ts/ts/Core/Table/ArcTableAux.js +993 -0
  98. package/dist/ts/ts/Core/Table/ArcTables.js +415 -0
  99. package/dist/ts/ts/Core/Table/CompositeCell.js +334 -0
  100. package/dist/ts/ts/Core/Table/CompositeColumn.js +52 -0
  101. package/dist/ts/ts/Core/Table/CompositeHeader.js +792 -0
  102. package/dist/ts/ts/Core/Template.js +180 -0
  103. package/dist/ts/ts/Core/Templates.js +75 -0
  104. package/dist/ts/ts/Core/URI.js +8 -0
  105. package/dist/ts/ts/Core/Value.js +194 -0
  106. package/dist/ts/ts/CrossAsync.js +20 -0
  107. package/dist/ts/ts/FileSystem/DefaultGitattributes.js +3 -0
  108. package/dist/ts/ts/FileSystem/DefaultGitignore.js +3 -0
  109. package/dist/ts/ts/FileSystem/FileSystem.js +48 -0
  110. package/dist/ts/ts/FileSystem/FileSystemTree.js +339 -0
  111. package/dist/ts/ts/FileSystem/Path.js +36 -0
  112. package/dist/ts/ts/Json/Assay.d.ts +2 -2
  113. package/dist/ts/ts/Json/Assay.js +221 -0
  114. package/dist/ts/ts/Json/Comment.d.ts +1 -1
  115. package/dist/ts/ts/Json/Comment.js +112 -0
  116. package/dist/ts/ts/Json/Data.d.ts +1 -1
  117. package/dist/ts/ts/Json/Data.js +138 -0
  118. package/dist/ts/ts/Json/DataFile.d.ts +1 -1
  119. package/dist/ts/ts/Json/DataFile.js +55 -0
  120. package/dist/ts/ts/Json/DataMap/DataContext.d.ts +1 -1
  121. package/dist/ts/ts/Json/DataMap/DataContext.js +39 -0
  122. package/dist/ts/ts/Json/DataMap/DataMap.d.ts +1 -1
  123. package/dist/ts/ts/Json/DataMap/DataMap.js +27 -0
  124. package/dist/ts/ts/Json/Decode.d.ts +2 -2
  125. package/dist/ts/ts/Json/Decode.js +209 -0
  126. package/dist/ts/ts/Json/Encode.d.ts +1 -1
  127. package/dist/ts/ts/Json/Encode.js +65 -0
  128. package/dist/ts/ts/Json/IDTable.d.ts +1 -1
  129. package/dist/ts/ts/Json/IDTable.js +28 -0
  130. package/dist/ts/ts/Json/Investigation.d.ts +1 -1
  131. package/dist/ts/ts/Json/Investigation.js +229 -0
  132. package/dist/ts/ts/Json/OntologyAnnotation.d.ts +1 -1
  133. package/dist/ts/ts/Json/OntologyAnnotation.js +194 -0
  134. package/dist/ts/ts/Json/OntologySourceReference.d.ts +1 -1
  135. package/dist/ts/ts/Json/OntologySourceReference.js +119 -0
  136. package/dist/ts/ts/Json/Person.d.ts +1 -1
  137. package/dist/ts/ts/Json/Person.js +316 -0
  138. package/dist/ts/ts/Json/Process/AssayMaterials.d.ts +1 -1
  139. package/dist/ts/ts/Json/Process/AssayMaterials.js +21 -0
  140. package/dist/ts/ts/Json/Process/Component.d.ts +6 -4
  141. package/dist/ts/ts/Json/Process/Component.d.ts.map +1 -1
  142. package/dist/ts/ts/Json/Process/Component.js +58 -0
  143. package/dist/ts/ts/Json/Process/Factor.d.ts +1 -1
  144. package/dist/ts/ts/Json/Process/Factor.js +53 -0
  145. package/dist/ts/ts/Json/Process/FactorValue.d.ts +1 -1
  146. package/dist/ts/ts/Json/Process/FactorValue.js +44 -0
  147. package/dist/ts/ts/Json/Process/Material.d.ts +1 -1
  148. package/dist/ts/ts/Json/Process/Material.js +112 -0
  149. package/dist/ts/ts/Json/Process/MaterialAttribute.d.ts +1 -1
  150. package/dist/ts/ts/Json/Process/MaterialAttribute.js +43 -0
  151. package/dist/ts/ts/Json/Process/MaterialAttributeValue.d.ts +1 -1
  152. package/dist/ts/ts/Json/Process/MaterialAttributeValue.js +44 -0
  153. package/dist/ts/ts/Json/Process/MaterialType.d.ts +1 -1
  154. package/dist/ts/ts/Json/Process/MaterialType.js +45 -0
  155. package/dist/ts/ts/Json/Process/Process.d.ts +1 -1
  156. package/dist/ts/ts/Json/Process/Process.js +103 -0
  157. package/dist/ts/ts/Json/Process/ProcessInput.d.ts +1 -1
  158. package/dist/ts/ts/Json/Process/ProcessInput.js +42 -0
  159. package/dist/ts/ts/Json/Process/ProcessOutput.d.ts +1 -1
  160. package/dist/ts/ts/Json/Process/ProcessOutput.js +35 -0
  161. package/dist/ts/ts/Json/Process/ProcessParameterValue.d.ts +1 -1
  162. package/dist/ts/ts/Json/Process/ProcessParameterValue.js +28 -0
  163. package/dist/ts/ts/Json/Process/Protocol.d.ts +1 -1
  164. package/dist/ts/ts/Json/Process/Protocol.js +166 -0
  165. package/dist/ts/ts/Json/Process/ProtocolParameter.d.ts +5 -3
  166. package/dist/ts/ts/Json/Process/ProtocolParameter.d.ts.map +1 -1
  167. package/dist/ts/ts/Json/Process/ProtocolParameter.js +52 -0
  168. package/dist/ts/ts/Json/Process/Sample.d.ts +1 -1
  169. package/dist/ts/ts/Json/Process/Sample.js +165 -0
  170. package/dist/ts/ts/Json/Process/Source.d.ts +1 -1
  171. package/dist/ts/ts/Json/Process/Source.js +133 -0
  172. package/dist/ts/ts/Json/Process/StudyMaterials.d.ts +1 -1
  173. package/dist/ts/ts/Json/Process/StudyMaterials.js +23 -0
  174. package/dist/ts/ts/Json/Process/Value.d.ts +1 -1
  175. package/dist/ts/ts/Json/Process/Value.js +41 -0
  176. package/dist/ts/ts/Json/PropertyValue.d.ts +1 -1
  177. package/dist/ts/ts/Json/PropertyValue.js +280 -0
  178. package/dist/ts/ts/Json/Publication.d.ts +1 -1
  179. package/dist/ts/ts/Json/Publication.js +123 -0
  180. package/dist/ts/ts/Json/ROCrate/LDContext.d.ts +1 -1
  181. package/dist/ts/ts/Json/ROCrate/LDContext.js +115 -0
  182. package/dist/ts/ts/Json/ROCrate/LDGraph.d.ts +1 -1
  183. package/dist/ts/ts/Json/ROCrate/LDGraph.js +83 -0
  184. package/dist/ts/ts/Json/ROCrate/LDNode.d.ts +1 -1
  185. package/dist/ts/ts/Json/ROCrate/LDNode.js +190 -0
  186. package/dist/ts/ts/Json/ROCrate/LDRef.d.ts +1 -1
  187. package/dist/ts/ts/Json/ROCrate/LDRef.js +24 -0
  188. package/dist/ts/ts/Json/ROCrate/LDValue.d.ts +1 -1
  189. package/dist/ts/ts/Json/ROCrate/LDValue.js +63 -0
  190. package/dist/ts/ts/Json/Run.d.ts +11 -0
  191. package/dist/ts/ts/Json/Run.d.ts.map +1 -0
  192. package/dist/ts/ts/Json/Run.js +76 -0
  193. package/dist/ts/ts/Json/StringTable.d.ts +1 -1
  194. package/dist/ts/ts/Json/StringTable.js +66 -0
  195. package/dist/ts/ts/Json/Study.d.ts +1 -1
  196. package/dist/ts/ts/Json/Study.js +326 -0
  197. package/dist/ts/ts/Json/Table/ArcTable.d.ts +1 -1
  198. package/dist/ts/ts/Json/Table/ArcTable.js +210 -0
  199. package/dist/ts/ts/Json/Table/CellTable.d.ts +1 -1
  200. package/dist/ts/ts/Json/Table/CellTable.js +53 -0
  201. package/dist/ts/ts/Json/Table/CompositeCell.d.ts +1 -1
  202. package/dist/ts/ts/Json/Table/CompositeCell.js +106 -0
  203. package/dist/ts/ts/Json/Table/CompositeHeader.d.ts +1 -1
  204. package/dist/ts/ts/Json/Table/CompositeHeader.js +121 -0
  205. package/dist/ts/ts/Json/Table/IOType.d.ts +1 -1
  206. package/dist/ts/ts/Json/Table/IOType.js +15 -0
  207. package/dist/ts/ts/Json/Table/OATable.d.ts +1 -1
  208. package/dist/ts/ts/Json/Table/OATable.js +50 -0
  209. package/dist/ts/ts/Json/Table/Templates.d.ts +1 -1
  210. package/dist/ts/ts/Json/Table/Templates.js +15 -0
  211. package/dist/ts/ts/Json/Workflow.d.ts +11 -0
  212. package/dist/ts/ts/Json/Workflow.d.ts.map +1 -0
  213. package/dist/ts/ts/Json/Workflow.js +93 -0
  214. package/dist/ts/ts/Json/context/rocrate/isa_assay_context.d.ts +1 -1
  215. package/dist/ts/ts/Json/context/rocrate/isa_assay_context.js +61 -0
  216. package/dist/ts/ts/Json/context/rocrate/isa_comment_context.d.ts +1 -1
  217. package/dist/ts/ts/Json/context/rocrate/isa_comment_context.js +29 -0
  218. package/dist/ts/ts/Json/context/rocrate/isa_data_context.d.ts +1 -1
  219. package/dist/ts/ts/Json/context/rocrate/isa_data_context.js +41 -0
  220. package/dist/ts/ts/Json/context/rocrate/isa_investigation_context.d.ts +1 -1
  221. package/dist/ts/ts/Json/context/rocrate/isa_investigation_context.js +69 -0
  222. package/dist/ts/ts/Json/context/rocrate/isa_material_context.d.ts +1 -1
  223. package/dist/ts/ts/Json/context/rocrate/isa_material_context.js +37 -0
  224. package/dist/ts/ts/Json/context/rocrate/isa_ontology_annotation_context.d.ts +1 -1
  225. package/dist/ts/ts/Json/context/rocrate/isa_ontology_annotation_context.js +37 -0
  226. package/dist/ts/ts/Json/context/rocrate/isa_ontology_source_reference_context.d.ts +1 -1
  227. package/dist/ts/ts/Json/context/rocrate/isa_ontology_source_reference_context.js +41 -0
  228. package/dist/ts/ts/Json/context/rocrate/isa_organization_context.d.ts +1 -1
  229. package/dist/ts/ts/Json/context/rocrate/isa_organization_context.js +25 -0
  230. package/dist/ts/ts/Json/context/rocrate/isa_person_context.d.ts +1 -1
  231. package/dist/ts/ts/Json/context/rocrate/isa_person_context.js +86 -0
  232. package/dist/ts/ts/Json/context/rocrate/isa_process_context.d.ts +1 -1
  233. package/dist/ts/ts/Json/context/rocrate/isa_process_context.js +57 -0
  234. package/dist/ts/ts/Json/context/rocrate/isa_protocol_context.d.ts +1 -1
  235. package/dist/ts/ts/Json/context/rocrate/isa_protocol_context.js +61 -0
  236. package/dist/ts/ts/Json/context/rocrate/isa_publication_context.d.ts +1 -1
  237. package/dist/ts/ts/Json/context/rocrate/isa_publication_context.js +45 -0
  238. package/dist/ts/ts/Json/context/rocrate/isa_sample_context.d.ts +1 -1
  239. package/dist/ts/ts/Json/context/rocrate/isa_sample_context.js +33 -0
  240. package/dist/ts/ts/Json/context/rocrate/isa_source_context.d.ts +1 -1
  241. package/dist/ts/ts/Json/context/rocrate/isa_source_context.js +33 -0
  242. package/dist/ts/ts/Json/context/rocrate/isa_study_context.d.ts +1 -1
  243. package/dist/ts/ts/Json/context/rocrate/isa_study_context.js +77 -0
  244. package/dist/ts/ts/Json/context/rocrate/property_value_context.d.ts +1 -1
  245. package/dist/ts/ts/Json/context/rocrate/property_value_context.js +61 -0
  246. package/dist/ts/ts/Json/context/rocrate/rocrate_context.d.ts +1 -1
  247. package/dist/ts/ts/Json.d.ts +21 -1
  248. package/dist/ts/ts/Json.d.ts.map +1 -1
  249. package/dist/ts/ts/Json.js +211 -0
  250. package/dist/ts/ts/JsonIO/Assay.js +77 -0
  251. package/dist/ts/ts/JsonIO/Investigation.js +77 -0
  252. package/dist/ts/ts/JsonIO/LDObject.js +77 -0
  253. package/dist/ts/ts/JsonIO/OntologyAnnotation.js +56 -0
  254. package/dist/ts/ts/JsonIO/Run.d.ts +10 -0
  255. package/dist/ts/ts/JsonIO/Run.d.ts.map +1 -0
  256. package/dist/ts/ts/JsonIO/Run.js +44 -0
  257. package/dist/ts/ts/JsonIO/Study.js +77 -0
  258. package/dist/ts/ts/JsonIO/Table/Compression.d.ts +1 -1
  259. package/dist/ts/ts/JsonIO/Table/Compression.js +39 -0
  260. package/dist/ts/ts/JsonIO/Table/Templates.d.ts +1 -1
  261. package/dist/ts/ts/JsonIO/Table/Templates.js +25 -0
  262. package/dist/ts/ts/JsonIO/Workflow.d.ts +10 -0
  263. package/dist/ts/ts/JsonIO/Workflow.d.ts.map +1 -0
  264. package/dist/ts/ts/JsonIO/Workflow.js +44 -0
  265. package/dist/ts/ts/ROCrate/Generic/Comment.js +103 -0
  266. package/dist/ts/ts/ROCrate/Generic/Dataset.js +624 -0
  267. package/dist/ts/ts/ROCrate/Generic/DefinedTerm.js +103 -0
  268. package/dist/ts/ts/ROCrate/Generic/File.js +184 -0
  269. package/dist/ts/ts/ROCrate/Generic/LabProcess.js +222 -0
  270. package/dist/ts/ts/ROCrate/Generic/LabProtocol.js +257 -0
  271. package/dist/ts/ts/ROCrate/Generic/Organization.js +63 -0
  272. package/dist/ts/ts/ROCrate/Generic/Person.js +377 -0
  273. package/dist/ts/ts/ROCrate/Generic/PostalAddress.js +143 -0
  274. package/dist/ts/ts/ROCrate/Generic/PropertyValue.js +512 -0
  275. package/dist/ts/ts/ROCrate/Generic/Sample.js +131 -0
  276. package/dist/ts/ts/ROCrate/Generic/ScholarlyArticle.js +173 -0
  277. package/dist/ts/ts/ROCrate/Helper.js +7 -0
  278. package/dist/ts/ts/ROCrate/LDContext.js +288 -0
  279. package/dist/ts/ts/ROCrate/LDObject.js +855 -0
  280. package/dist/ts/ts/ROCrate/ROCrateContext.js +39 -0
  281. package/dist/ts/ts/ROCrateIO.d.ts +1 -1
  282. package/dist/ts/ts/ROCrateIO.js +58 -0
  283. package/dist/ts/ts/Spreadsheet/AnnotationTable/ArcTable.d.ts +2 -2
  284. package/dist/ts/ts/Spreadsheet/AnnotationTable/ArcTable.d.ts.map +1 -1
  285. package/dist/ts/ts/Spreadsheet/AnnotationTable/ArcTable.js +149 -0
  286. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeCell.js +63 -0
  287. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeColumn.d.ts +2 -2
  288. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeColumn.d.ts.map +1 -1
  289. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeColumn.js +108 -0
  290. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeHeader.js +410 -0
  291. package/dist/ts/ts/Spreadsheet/ArcAssay.d.ts +2 -2
  292. package/dist/ts/ts/Spreadsheet/ArcAssay.d.ts.map +1 -1
  293. package/dist/ts/ts/Spreadsheet/ArcAssay.js +169 -0
  294. package/dist/ts/ts/Spreadsheet/ArcInvestigation.d.ts +2 -2
  295. package/dist/ts/ts/Spreadsheet/ArcInvestigation.d.ts.map +1 -1
  296. package/dist/ts/ts/Spreadsheet/ArcInvestigation.js +316 -0
  297. package/dist/ts/ts/Spreadsheet/ArcRun.d.ts +2 -2
  298. package/dist/ts/ts/Spreadsheet/ArcRun.d.ts.map +1 -1
  299. package/dist/ts/ts/Spreadsheet/ArcRun.js +136 -0
  300. package/dist/ts/ts/Spreadsheet/ArcStudy.d.ts +2 -2
  301. package/dist/ts/ts/Spreadsheet/ArcStudy.d.ts.map +1 -1
  302. package/dist/ts/ts/Spreadsheet/ArcStudy.js +92 -0
  303. package/dist/ts/ts/Spreadsheet/ArcWorkflow.d.ts +2 -2
  304. package/dist/ts/ts/Spreadsheet/ArcWorkflow.d.ts.map +1 -1
  305. package/dist/ts/ts/Spreadsheet/ArcWorkflow.js +125 -0
  306. package/dist/ts/ts/Spreadsheet/CollectionAux.js +34 -0
  307. package/dist/ts/ts/Spreadsheet/DataMap.d.ts +1 -1
  308. package/dist/ts/ts/Spreadsheet/DataMap.d.ts.map +1 -1
  309. package/dist/ts/ts/Spreadsheet/DataMap.js +33 -0
  310. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapColumn.d.ts +2 -2
  311. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapColumn.d.ts.map +1 -1
  312. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapColumn.js +41 -0
  313. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapHeader.d.ts +1 -1
  314. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapHeader.d.ts.map +1 -1
  315. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapHeader.js +418 -0
  316. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapTable.d.ts +3 -3
  317. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapTable.d.ts.map +1 -1
  318. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapTable.js +85 -0
  319. package/dist/ts/ts/Spreadsheet/Metadata/Assays.js +90 -0
  320. package/dist/ts/ts/Spreadsheet/Metadata/Comment.js +58 -0
  321. package/dist/ts/ts/Spreadsheet/Metadata/Contacts.js +85 -0
  322. package/dist/ts/ts/Spreadsheet/Metadata/Conversions.js +133 -0
  323. package/dist/ts/ts/Spreadsheet/Metadata/DesignDescriptors.js +15 -0
  324. package/dist/ts/ts/Spreadsheet/Metadata/Factors.js +74 -0
  325. package/dist/ts/ts/Spreadsheet/Metadata/OntologyAnnotation.js +58 -0
  326. package/dist/ts/ts/Spreadsheet/Metadata/OntologySourceReference.js +62 -0
  327. package/dist/ts/ts/Spreadsheet/Metadata/Protocols.js +94 -0
  328. package/dist/ts/ts/Spreadsheet/Metadata/Publication.js +81 -0
  329. package/dist/ts/ts/Spreadsheet/Metadata/Run.js +91 -0
  330. package/dist/ts/ts/Spreadsheet/Metadata/SparseTable.d.ts +3 -3
  331. package/dist/ts/ts/Spreadsheet/Metadata/SparseTable.d.ts.map +1 -1
  332. package/dist/ts/ts/Spreadsheet/Metadata/SparseTable.js +193 -0
  333. package/dist/ts/ts/Spreadsheet/Metadata/Study.js +238 -0
  334. package/dist/ts/ts/Spreadsheet/Metadata/Workflow.js +105 -0
  335. package/dist/ts/ts/Template.Web.js +22 -0
  336. package/dist/ts/ts/ValidationPackages/ValidationPackage.js +53 -0
  337. package/dist/ts/ts/ValidationPackages/ValidationPackagesConfig.js +78 -0
  338. package/dist/ts/ts/WebRequest/WebRequest.Node.js +13 -0
  339. package/dist/ts/ts/WebRequest/WebRequest.js +19 -0
  340. package/dist/ts/ts/Xlsx.d.ts +22 -2
  341. package/dist/ts/ts/Xlsx.d.ts.map +1 -1
  342. package/dist/ts/ts/Xlsx.js +131 -0
  343. package/dist/ts/ts/Yaml/Encode.js +8 -0
  344. package/dist/ts/ts/Yaml/ValidationPackage.js +26 -0
  345. package/dist/ts/ts/Yaml/ValidationPackagesConfig.js +40 -0
  346. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/DynamicObj.fs.js +344 -0
  347. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/FableJS.fs.js +103 -0
  348. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/HashCodes.fs.js +19 -0
  349. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/PropertyHelper.fs.js +17 -0
  350. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/ReflectionUtils.fs.js +7 -0
  351. package/dist/ts/ts/fable_modules/Fable.Exceljs.1.6.0/ExcelJs.fs.js +5 -0
  352. package/dist/ts/ts/fable_modules/Fable.Fetch.2.6.0/Fetch.fs.js +18 -0
  353. package/dist/ts/ts/fable_modules/Fable.Promise.3.2.0/Promise.fs.js +44 -0
  354. package/dist/ts/ts/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js +5 -0
  355. package/dist/ts/ts/fable_modules/Fable.SimpleHttp.3.5.0/Http.fs.js +142 -0
  356. package/dist/ts/ts/fable_modules/Fable.SimpleHttp.3.5.0/Types.fs.js +76 -0
  357. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Cells/FsCell.fs.js +359 -0
  358. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Cells/FsCellsCollection.fs.js +344 -0
  359. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsAddress.fs.js +154 -0
  360. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsColumn.fs.js +116 -0
  361. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsRow.fs.js +126 -0
  362. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsWorkbook.fs.js +135 -0
  363. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsWorksheet.fs.js +422 -0
  364. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/HashCodes.fs.js +5 -0
  365. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Json/Value.fs.js +25 -0
  366. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRange.fs.js +28 -0
  367. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeAddress.fs.js +82 -0
  368. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeBase.fs.js +69 -0
  369. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeColumn.fs.js +42 -0
  370. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeRow.fs.js +29 -0
  371. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Tables/FsTable.fs.js +348 -0
  372. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Tables/FsTableField.fs.js +86 -0
  373. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Cell.fs.js +68 -0
  374. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/FsExtensions.fs.js +12 -0
  375. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Table.fs.js +54 -0
  376. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Workbook.fs.js +33 -0
  377. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Worksheet.fs.js +63 -0
  378. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Xlsx.fs.js +66 -0
  379. package/dist/ts/ts/fable_modules/Thoth.Json.Core.0.7.0/Decode.fs.js +544 -0
  380. package/dist/ts/ts/fable_modules/Thoth.Json.Core.0.7.0/Encode.fs.js +31 -0
  381. package/dist/ts/ts/fable_modules/Thoth.Json.Core.0.7.0/Types.fs.js +38 -0
  382. package/dist/ts/ts/fable_modules/Thoth.Json.JavaScript.0.4.1/Decode.fs.js +79 -0
  383. package/dist/ts/ts/fable_modules/Thoth.Json.JavaScript.0.4.1/Encode.fs.js +57 -0
  384. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Decode.fs.js +235 -0
  385. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Encode.fs.js +16 -0
  386. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Persil.fs.js +45 -0
  387. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Preprocessing.fs.js +89 -0
  388. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Reader.fs.js +480 -0
  389. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Regex.fs.js +11 -0
  390. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/RegexActivePatterns.fs.js +212 -0
  391. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Writer.fs.js +164 -0
  392. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/YAMLiciousTypes.fs.js +136 -0
  393. package/package.json +10 -7
  394. package/dist/ts/__vite-browser-external-2447137e.js +0 -4
  395. package/dist/ts/__vite-browser-external-b3701507.cjs +0 -1
  396. package/dist/ts/arctrl.cjs.js +0 -5691
  397. package/dist/ts/arctrl.es.js +0 -35562
  398. package/dist/ts/arctrl.umd.js +0 -5691
@@ -0,0 +1,339 @@
1
+ import { defaultArg, unwrap } from '../../node_modules/@fable-org/fable-library-js/Option.js';
2
+ import { tryFind, map, append, item, tryPick, head, tail, choose, equalsWith } from '../../node_modules/@fable-org/fable-library-js/Array.js';
3
+ import { split, combineMany } from './Path.js';
4
+ import { toArray, delay, append as append$1, singleton } from '../../node_modules/@fable-org/fable-library-js/Seq.js';
5
+ import { Array_distinct, Array_groupBy } from '../../node_modules/@fable-org/fable-library-js/Seq2.js';
6
+ import { curry2, arrayHash, stringHash } from '../../node_modules/@fable-org/fable-library-js/Util.js';
7
+ import { empty, cons, toArray as toArray$1, reverse } from '../../node_modules/@fable-org/fable-library-js/List.js';
8
+ import { Union } from '../../node_modules/@fable-org/fable-library-js/Types.js';
9
+
10
+ function FileSystemTree_File(name) {
11
+ return new FileSystemTree(0, [name]);
12
+ }
13
+ function FileSystemTree_Folder(name, children) {
14
+ return new FileSystemTree(1, [name, children]);
15
+ }
16
+ class FileSystemTree extends Union {
17
+ constructor(tag, fields) {
18
+ super();
19
+ this.tag = tag;
20
+ this.fields = fields;
21
+ }
22
+ cases() {
23
+ return ["File", "Folder"];
24
+ }
25
+ get Name() {
26
+ const this$ = this;
27
+ let n;
28
+ if (this$.tag === /* Folder */
29
+ 1) {
30
+ n = this$.fields[0];
31
+ } else {
32
+ n = this$.fields[0];
33
+ }
34
+ return n;
35
+ }
36
+ get isFolder() {
37
+ const this$ = this;
38
+ return this$.tag === /* Folder */
39
+ 1;
40
+ }
41
+ get isFile() {
42
+ const this$ = this;
43
+ return this$.tag === /* File */
44
+ 0;
45
+ }
46
+ static get ROOT_NAME() {
47
+ return "root";
48
+ }
49
+ static createFile(name) {
50
+ return FileSystemTree_File(name);
51
+ }
52
+ static createFolder(name, children) {
53
+ return FileSystemTree_Folder(name, defaultArg(children, []));
54
+ }
55
+ static createRootFolder(children) {
56
+ return FileSystemTree_Folder(FileSystemTree.ROOT_NAME, children);
57
+ }
58
+ TryGetChildByName(name) {
59
+ const this$ = this;
60
+ return this$.tag === /* File */
61
+ 0 ? void 0 : tryFind((c) => c.Name === name, this$.fields[1]);
62
+ }
63
+ static tryGetChildByName(name) {
64
+ return (fst) => fst.TryGetChildByName(name);
65
+ }
66
+ ContainsChildWithName(name) {
67
+ const this$ = this;
68
+ if (this$.tag === /* File */
69
+ 0) {
70
+ return false;
71
+ } else {
72
+ const array = this$.fields[1];
73
+ return array.some((c) => c.Name === name);
74
+ }
75
+ }
76
+ static containsChildWithName(name) {
77
+ return (fst) => fst.ContainsChildWithName(name);
78
+ }
79
+ TryGetPath(path) {
80
+ const this$ = this;
81
+ const loop = (parent, pathParts) => {
82
+ if (parent.tag === /* File */
83
+ 0) {
84
+ const name_1 = parent.fields[0];
85
+ if (pathParts.length === 1 && item(0, pathParts) === name_1) {
86
+ return parent;
87
+ } else {
88
+ return void 0;
89
+ }
90
+ } else if (parent.fields[0] === "root") {
91
+ const children = parent.fields[1];
92
+ return tryPick((child) => loop(child, pathParts), children);
93
+ } else {
94
+ const children_1 = parent.fields[1];
95
+ const name = parent.fields[0];
96
+ if (name === head(pathParts)) {
97
+ if (pathParts.length === 1) {
98
+ return parent;
99
+ } else {
100
+ const remainingParts = tail(pathParts);
101
+ return tryPick((child_1) => loop(child_1, remainingParts), children_1);
102
+ }
103
+ } else {
104
+ return void 0;
105
+ }
106
+ }
107
+ };
108
+ return loop(this$, split(path));
109
+ }
110
+ AddFile(path) {
111
+ const this$ = this;
112
+ const existingPaths = this$.ToFilePaths();
113
+ const filePaths = toArray(delay(() => append$1(singleton(path), delay(() => existingPaths))));
114
+ return FileSystemTree.fromFilePaths(filePaths);
115
+ }
116
+ static addFile(path) {
117
+ return (tree) => tree.AddFile(path);
118
+ }
119
+ static fromFilePaths(paths) {
120
+ const loop = (paths_1, parent) => {
121
+ const files = map((arg) => {
122
+ const name = head(arg);
123
+ return FileSystemTree.createFile(name);
124
+ }, paths_1.filter((p) => p.length === 1));
125
+ const folders = map((tupledArg) => {
126
+ const parent_1 = FileSystemTree.createFolder(tupledArg[0], []);
127
+ return loop(map(tail, tupledArg[1]), parent_1);
128
+ }, Array_groupBy(head, paths_1.filter((p_1) => p_1.length > 1), {
129
+ Equals: (x_3, y_2) => x_3 === y_2,
130
+ GetHashCode: stringHash
131
+ }));
132
+ if (parent.tag === /* Folder */
133
+ 1) {
134
+ const name_1 = parent.fields[0];
135
+ return FileSystemTree.createFolder(name_1, toArray(delay(() => append$1(files, delay(() => folders)))));
136
+ } else {
137
+ return parent;
138
+ }
139
+ };
140
+ return loop(Array_distinct(map(split, paths), {
141
+ Equals: (x, y) => equalsWith((x_1, y_1) => x_1 === y_1, x, y),
142
+ GetHashCode: arrayHash
143
+ }), FileSystemTree.createFolder(FileSystemTree.ROOT_NAME, []));
144
+ }
145
+ ToFilePaths(removeRoot) {
146
+ const this$ = this;
147
+ const res = [];
148
+ const loop = (output, parent) => {
149
+ if (parent.tag === /* Folder */
150
+ 1) {
151
+ const n_1 = parent.fields[0];
152
+ const array = parent.fields[1];
153
+ array.forEach((filest) => {
154
+ loop(cons(n_1, output), filest);
155
+ });
156
+ } else {
157
+ const item = combineMany(toArray$1(reverse(cons(parent.fields[0], output))));
158
+ void res.push(item);
159
+ }
160
+ };
161
+ if (defaultArg(removeRoot, true)) {
162
+ if (this$.tag === /* File */
163
+ 0) {
164
+ const n_2 = this$.fields[0];
165
+ void res.push(n_2);
166
+ } else {
167
+ const children_1 = this$.fields[1];
168
+ const action_1 = curry2(loop)(empty());
169
+ children_1.forEach(action_1);
170
+ }
171
+ } else {
172
+ loop(empty(), this$);
173
+ }
174
+ return Array.from(res);
175
+ }
176
+ static toFilePaths(removeRoot) {
177
+ return (root) => root.ToFilePaths(unwrap(removeRoot));
178
+ }
179
+ FilterFiles(predicate) {
180
+ const this$ = this;
181
+ const loop = (parent) => {
182
+ if (parent.tag === /* Folder */
183
+ 1) {
184
+ return FileSystemTree_Folder(parent.fields[0], choose(loop, parent.fields[1]));
185
+ } else {
186
+ const n = parent.fields[0];
187
+ if (predicate(n)) {
188
+ return FileSystemTree_File(n);
189
+ } else {
190
+ return void 0;
191
+ }
192
+ }
193
+ };
194
+ return loop(this$);
195
+ }
196
+ static filterFiles(predicate) {
197
+ return (tree) => tree.FilterFiles(predicate);
198
+ }
199
+ FilterFolders(predicate) {
200
+ const this$ = this;
201
+ const loop = (parent) => {
202
+ if (parent.tag === /* Folder */
203
+ 1) {
204
+ const n_1 = parent.fields[0];
205
+ const children = parent.fields[1];
206
+ if (predicate(n_1)) {
207
+ return FileSystemTree_Folder(n_1, choose(loop, children));
208
+ } else {
209
+ return void 0;
210
+ }
211
+ } else {
212
+ return FileSystemTree_File(parent.fields[0]);
213
+ }
214
+ };
215
+ return loop(this$);
216
+ }
217
+ static filterFolders(predicate) {
218
+ return (tree) => tree.FilterFolders(predicate);
219
+ }
220
+ Filter(predicate) {
221
+ const this$ = this;
222
+ const loop = (parent) => {
223
+ if (parent.tag === /* Folder */
224
+ 1) {
225
+ const n_1 = parent.fields[0];
226
+ const children = parent.fields[1];
227
+ if (predicate(n_1)) {
228
+ const filteredChildren = choose(loop, children);
229
+ if (filteredChildren.length === 0) {
230
+ return void 0;
231
+ } else {
232
+ return FileSystemTree_Folder(n_1, filteredChildren);
233
+ }
234
+ } else {
235
+ return void 0;
236
+ }
237
+ } else {
238
+ const n = parent.fields[0];
239
+ if (predicate(n)) {
240
+ return FileSystemTree_File(n);
241
+ } else {
242
+ return void 0;
243
+ }
244
+ }
245
+ };
246
+ return loop(this$);
247
+ }
248
+ static filter(predicate) {
249
+ return (tree) => tree.Filter(predicate);
250
+ }
251
+ Union(otherFST) {
252
+ let array_1;
253
+ const this$ = this;
254
+ const paths = Array_distinct((array_1 = this$.ToFilePaths(), append(otherFST.ToFilePaths(), array_1)), {
255
+ Equals: (x, y) => x === y,
256
+ GetHashCode: stringHash
257
+ });
258
+ return FileSystemTree.fromFilePaths(paths);
259
+ }
260
+ Copy() {
261
+ const this$ = this;
262
+ return this$.tag === /* File */
263
+ 0 ? FileSystemTree_File(this$.fields[0]) : FileSystemTree_Folder(this$.fields[0], map((c) => c.Copy(), this$.fields[1]));
264
+ }
265
+ static createGitKeepFile() {
266
+ return FileSystemTree.createFile(".gitkeep");
267
+ }
268
+ static createReadmeFile() {
269
+ return FileSystemTree.createFile("README.md");
270
+ }
271
+ static createEmptyFolder(name) {
272
+ return FileSystemTree.createFolder(name, [FileSystemTree.createGitKeepFile()]);
273
+ }
274
+ static createAssayFolder(assayName, hasDataMap) {
275
+ const hasDataMap_1 = defaultArg(hasDataMap, false);
276
+ const dataset = FileSystemTree.createEmptyFolder("dataset");
277
+ const protocols = FileSystemTree.createEmptyFolder("protocols");
278
+ const readme = FileSystemTree.createReadmeFile();
279
+ const assayFile = FileSystemTree.createFile("isa.assay.xlsx");
280
+ if (hasDataMap_1) {
281
+ const dataMapFile = FileSystemTree.createFile("isa.datamap.xlsx");
282
+ return FileSystemTree.createFolder(assayName, [dataset, protocols, assayFile, readme, dataMapFile]);
283
+ } else {
284
+ return FileSystemTree.createFolder(assayName, [dataset, protocols, assayFile, readme]);
285
+ }
286
+ }
287
+ static createStudyFolder(studyName, hasDataMap) {
288
+ const hasDataMap_1 = defaultArg(hasDataMap, false);
289
+ const resources = FileSystemTree.createEmptyFolder("resources");
290
+ const protocols = FileSystemTree.createEmptyFolder("protocols");
291
+ const readme = FileSystemTree.createReadmeFile();
292
+ const studyFile = FileSystemTree.createFile("isa.study.xlsx");
293
+ if (hasDataMap_1) {
294
+ const dataMapFile = FileSystemTree.createFile("isa.datamap.xlsx");
295
+ return FileSystemTree.createFolder(studyName, [resources, protocols, studyFile, readme, dataMapFile]);
296
+ } else {
297
+ return FileSystemTree.createFolder(studyName, [resources, protocols, studyFile, readme]);
298
+ }
299
+ }
300
+ static createWorkflowFolder(workflowName, hasDataMap) {
301
+ const hasDataMap_1 = defaultArg(hasDataMap, false);
302
+ const readme = FileSystemTree.createReadmeFile();
303
+ const workflowFile = FileSystemTree.createFile("isa.workflow.xlsx");
304
+ if (hasDataMap_1) {
305
+ const dataMapFile = FileSystemTree.createFile("isa.datamap.xlsx");
306
+ return FileSystemTree.createFolder(workflowName, [workflowFile, readme, dataMapFile]);
307
+ } else {
308
+ return FileSystemTree.createFolder(workflowName, [workflowFile, readme]);
309
+ }
310
+ }
311
+ static createRunFolder(runName, hasDataMap) {
312
+ const hasDataMap_1 = defaultArg(hasDataMap, false);
313
+ const readme = FileSystemTree.createReadmeFile();
314
+ const runFile = FileSystemTree.createFile("isa.run.xlsx");
315
+ if (hasDataMap_1) {
316
+ const dataMapFile = FileSystemTree.createFile("isa.datamap.xlsx");
317
+ return FileSystemTree.createFolder(runName, [runFile, readme, dataMapFile]);
318
+ } else {
319
+ return FileSystemTree.createFolder(runName, [runFile, readme]);
320
+ }
321
+ }
322
+ static createInvestigationFile() {
323
+ return FileSystemTree.createFile("isa.investigation.xlsx");
324
+ }
325
+ static createAssaysFolder(assays) {
326
+ return FileSystemTree.createFolder("assays", append([FileSystemTree.createGitKeepFile()], assays));
327
+ }
328
+ static createStudiesFolder(studies) {
329
+ return FileSystemTree.createFolder("studies", append([FileSystemTree.createGitKeepFile()], studies));
330
+ }
331
+ static createWorkflowsFolder(workflows) {
332
+ return FileSystemTree.createFolder("workflows", append([FileSystemTree.createGitKeepFile()], workflows));
333
+ }
334
+ static createRunsFolder(runs) {
335
+ return FileSystemTree.createFolder("runs", append([FileSystemTree.createGitKeepFile()], runs));
336
+ }
337
+ }
338
+
339
+ export { FileSystemTree, FileSystemTree_File, FileSystemTree_Folder };
@@ -0,0 +1,36 @@
1
+ import { join, split as split$1, trimEnd, trimStart, trim } from '../../node_modules/@fable-org/fable-library-js/String.js';
2
+ import { mapIndexed } from '../../node_modules/@fable-org/fable-library-js/Array.js';
3
+
4
+ const seperators = ["/", "\\"];
5
+ function split(path) {
6
+ const array = split$1(path, seperators, void 0, 3);
7
+ return array.filter((p) => {
8
+ if (p !== "") {
9
+ return p !== ".";
10
+ } else {
11
+ return false;
12
+ }
13
+ });
14
+ }
15
+ function combine(path1, path2) {
16
+ return trimEnd(path1, ...seperators) + "/" + trimStart(path2, ...seperators);
17
+ }
18
+ function combineMany(paths) {
19
+ return join("/", mapIndexed((i, p) => {
20
+ if (i === 0) {
21
+ return trimEnd(p, ...seperators);
22
+ } else if (i === paths.length - 1) {
23
+ return trimStart(p, ...seperators);
24
+ } else {
25
+ return trim(p, ...seperators);
26
+ }
27
+ }, paths));
28
+ }
29
+ function getAssayFolderPath(assayIdentifier) {
30
+ return combine("assays", assayIdentifier);
31
+ }
32
+ function getStudyFolderPath(studyIdentifier) {
33
+ return combine("studies", studyIdentifier);
34
+ }
35
+
36
+ export { combine, combineMany, getAssayFolderPath, getStudyFolderPath, seperators, split };
@@ -1,6 +1,6 @@
1
1
  import { FSharpList } from '@fable-org/fable-library-js/List.js';
2
2
  import { Option } from '@fable-org/fable-library-js/Option.js';
3
- import { Decoder$1, IEncodable } from '../fable_modules/Thoth.Json.Core.0.4.0/Types.fs.js';
3
+ import { Decoder$1, IEncodable } from '../fable_modules/Thoth.Json.Core.0.7.0/Types.fs.js';
4
4
  import { OntologyAnnotation } from '../Core/OntologyAnnotation.js';
5
5
  import { ArcAssay } from '../Core/ArcTypes.js';
6
6
  import { IMap } from '@fable-org/fable-library-js/Util.js';
@@ -11,7 +11,7 @@ export declare const decoder: Decoder$1<ArcAssay>;
11
11
  export declare function encoderCompressed(stringTable: IMap<string, int32>, oaTable: IMap<OntologyAnnotation, int32>, cellTable: IMap<CompositeCell_$union, int32>, assay: ArcAssay): IEncodable;
12
12
  export declare function decoderCompressed(stringTable: string[], oaTable: OntologyAnnotation[], cellTable: CompositeCell_$union[]): Decoder$1<ArcAssay>;
13
13
  export declare function ROCrate_genID(a: ArcAssay): string;
14
- export declare function ROCrate_encoder(studyName: Option<string>, a: ArcAssay): IEncodable;
14
+ export declare function ROCrate_encoder(assayName: Option<string>, a: ArcAssay): IEncodable;
15
15
  export declare const ROCrate_decoder: Decoder$1<ArcAssay>;
16
16
  export declare function ISAJson_encoder(studyName: Option<string>, idMap: Option<IMap<string, IEncodable>>, a: ArcAssay): IEncodable;
17
17
  export declare const ISAJson_allowedFields: FSharpList<string>;
@@ -0,0 +1,221 @@
1
+ import { ofArray, choose, singleton, empty } from '../../node_modules/@fable-org/fable-library-js/List.js';
2
+ import { defaultArg, bind, map, value, unwrap } from '../../node_modules/@fable-org/fable-library-js/Option.js';
3
+ import { tryInclude, tryIncludeSeq, tryIncludeList } from './Encode.js';
4
+ import { OntologyAnnotation_ISAJson_decoder, OntologyAnnotation_decoder, OntologyAnnotation_ROCrate_decoderPropertyValue, OntologyAnnotation_ROCrate_decoderDefinedTerm, OntologyAnnotation_encoder, OntologyAnnotation_ROCrate_encoderPropertyValue, OntologyAnnotation_ROCrate_encoderDefinedTerm, OntologyAnnotation_ISAJson_encoder } from './OntologyAnnotation.js';
5
+ import { decoder as decoder$2, decoderCompressed as decoderCompressed$2, encoder as encoder$1, encoderCompressed as encoderCompressed$2 } from './DataMap/DataMap.js';
6
+ import { decoder as decoder$1, decoderCompressed as decoderCompressed$1, encoder as encoder$2, encoderCompressed as encoderCompressed$1 } from './Table/ArcTable.js';
7
+ import { decoder as decoder$3, ROCrate_decoder as ROCrate_decoder$2, encoder as encoder$3, ROCrate_encoder as ROCrate_encoder$1 } from './Person.js';
8
+ import { ISAJson_decoder as ISAJson_decoder$2, decoder as decoder$4, ROCrate_decoder as ROCrate_decoder$3, encoder as encoder$4, ROCrate_encoder as ROCrate_encoder$3, ISAJson_encoder as ISAJson_encoder$3 } from './Comment.js';
9
+ import { Comment$ } from '../Core/Comment.js';
10
+ import { tryPick, length, map as map$2, toList, delay, append, empty as empty$1, singleton as singleton$1 } from '../../node_modules/@fable-org/fable-library-js/Seq.js';
11
+ import { ArcAssay } from '../Core/ArcTypes.js';
12
+ import { string, list, resizeArray, map as map$1, object } from '../fable_modules/Thoth.Json.Core.0.7.0/Decode.fs.js';
13
+ import { replace } from '../../node_modules/@fable-org/fable-library-js/String.js';
14
+ import { createMissingIdentifier, Assay_tryIdentifierFromFileName, Assay_fileNameFromIdentifier } from '../Core/Helper/Identifier.js';
15
+ import { ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D, JsonTypes_decomposeTechnologyPlatform, ARCtrl_ArcTables__ArcTables_GetProcesses, JsonTypes_composeTechnologyPlatform } from '../Core/Conversion.js';
16
+ import { getData, getUnits, getCharacteristics } from '../Core/Process/ProcessSequence.js';
17
+ import { list as list$1 } from '../fable_modules/Thoth.Json.Core.0.7.0/Encode.fs.js';
18
+ import { ISAJson_encoder as ISAJson_encoder$1, ROCrate_encoder as ROCrate_encoder$4 } from './Data.js';
19
+ import { ISAJson_decoder as ISAJson_decoder$1, ROCrate_decoder as ROCrate_decoder$1, ROCrate_encoder as ROCrate_encoder$2, ISAJson_encoder as ISAJson_encoder$2 } from './Process/Process.js';
20
+ import { context_jsonvalue } from './context/rocrate/isa_assay_context.js';
21
+ import { encoder as encoder$5 } from './Process/MaterialAttribute.js';
22
+ import { encoder as encoder$6 } from './Process/AssayMaterials.js';
23
+ import { ResizeArray_filter, Option_fromValueWithDefault } from '../Core/Helper/Collections.js';
24
+ import { encode } from './IDTable.js';
25
+ import { Decode_objectNoAdditionalProperties } from './Decode.js';
26
+
27
+ function encoder(assay) {
28
+ let value;
29
+ const values_1 = choose((tupledArg) => map((v_1) => [tupledArg[0], v_1], tupledArg[1]), ofArray([["Identifier", (value = assay.Identifier, {
30
+ Encode(helpers) {
31
+ return helpers.encodeString(value);
32
+ }
33
+ })], tryInclude("Title", (value_1) => ({
34
+ Encode(helpers_1) {
35
+ return helpers_1.encodeString(value_1);
36
+ }
37
+ }), assay.Title), tryInclude("Description", (value_3) => ({
38
+ Encode(helpers_2) {
39
+ return helpers_2.encodeString(value_3);
40
+ }
41
+ }), assay.Description), tryInclude("MeasurementType", OntologyAnnotation_encoder, assay.MeasurementType), tryInclude("TechnologyType", OntologyAnnotation_encoder, assay.TechnologyType), tryInclude("TechnologyPlatform", OntologyAnnotation_encoder, assay.TechnologyPlatform), tryInclude("DataMap", encoder$1, assay.DataMap), tryIncludeSeq("Tables", encoder$2, assay.Tables), tryIncludeSeq("Performers", encoder$3, assay.Performers), tryIncludeSeq("Comments", encoder$4, assay.Comments)]));
42
+ return {
43
+ Encode(helpers_3) {
44
+ const arg = map$2((tupledArg_1) => [tupledArg_1[0], tupledArg_1[1].Encode(helpers_3)], values_1);
45
+ return helpers_3.encodeObject(arg);
46
+ }
47
+ };
48
+ }
49
+ const decoder = object((get$) => {
50
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, objectArg_5, arg_13, objectArg_6, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9;
51
+ return ArcAssay.create((objectArg = get$.Required, objectArg.Field("Identifier", string)), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("Title", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("Description", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("MeasurementType", OntologyAnnotation_decoder))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("TechnologyType", OntologyAnnotation_decoder))), unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("TechnologyPlatform", OntologyAnnotation_decoder))), unwrap((arg_13 = resizeArray(decoder$1), objectArg_6 = get$.Optional, objectArg_6.Field("Tables", arg_13))), unwrap((objectArg_7 = get$.Optional, objectArg_7.Field("DataMap", decoder$2))), unwrap((arg_17 = resizeArray(decoder$3), objectArg_8 = get$.Optional, objectArg_8.Field("Performers", arg_17))), unwrap((arg_19 = resizeArray(decoder$4), objectArg_9 = get$.Optional, objectArg_9.Field("Comments", arg_19))));
52
+ });
53
+ function encoderCompressed(stringTable, oaTable, cellTable, assay) {
54
+ let value;
55
+ const values_1 = choose((tupledArg) => map((v_1) => [tupledArg[0], v_1], tupledArg[1]), ofArray([["Identifier", (value = assay.Identifier, {
56
+ Encode(helpers) {
57
+ return helpers.encodeString(value);
58
+ }
59
+ })], tryInclude("Title", (value_1) => ({
60
+ Encode(helpers_1) {
61
+ return helpers_1.encodeString(value_1);
62
+ }
63
+ }), assay.Title), tryInclude("Description", (value_3) => ({
64
+ Encode(helpers_2) {
65
+ return helpers_2.encodeString(value_3);
66
+ }
67
+ }), assay.Description), tryInclude("MeasurementType", OntologyAnnotation_encoder, assay.MeasurementType), tryInclude("TechnologyType", OntologyAnnotation_encoder, assay.TechnologyType), tryInclude("TechnologyPlatform", OntologyAnnotation_encoder, assay.TechnologyPlatform), tryIncludeSeq("Tables", (table) => encoderCompressed$1(stringTable, oaTable, cellTable, table), assay.Tables), tryInclude("DataMap", (dm) => encoderCompressed$2(stringTable, oaTable, cellTable, dm), assay.DataMap), tryIncludeSeq("Performers", encoder$3, assay.Performers), tryIncludeSeq("Comments", encoder$4, assay.Comments)]));
68
+ return {
69
+ Encode(helpers_3) {
70
+ const arg = map$2((tupledArg_1) => [tupledArg_1[0], tupledArg_1[1].Encode(helpers_3)], values_1);
71
+ return helpers_3.encodeObject(arg);
72
+ }
73
+ };
74
+ }
75
+ function decoderCompressed(stringTable, oaTable, cellTable) {
76
+ return object((get$) => {
77
+ let objectArg, 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;
78
+ return ArcAssay.create((objectArg = get$.Required, objectArg.Field("Identifier", string)), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("Title", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("Description", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("MeasurementType", OntologyAnnotation_decoder))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("TechnologyType", OntologyAnnotation_decoder))), unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("TechnologyPlatform", OntologyAnnotation_decoder))), unwrap((arg_13 = resizeArray(decoderCompressed$1(stringTable, oaTable, cellTable)), objectArg_6 = get$.Optional, objectArg_6.Field("Tables", arg_13))), unwrap((arg_15 = decoderCompressed$2(), objectArg_7 = get$.Optional, objectArg_7.Field("DataMap", arg_15))), unwrap((arg_17 = resizeArray(decoder$3), objectArg_8 = get$.Optional, objectArg_8.Field("Performers", arg_17))), unwrap((arg_19 = resizeArray(decoder$4), objectArg_9 = get$.Optional, objectArg_9.Field("Comments", arg_19))));
79
+ });
80
+ }
81
+ function ROCrate_genID(a) {
82
+ const matchValue = a.Identifier;
83
+ if (matchValue === "") {
84
+ return "#EmptyAssay";
85
+ } else {
86
+ return `assays/${replace(matchValue, " ", "_")}/`;
87
+ }
88
+ }
89
+ function ROCrate_encoder(assayName, a) {
90
+ let value, value_3, assayName_1;
91
+ const fileName = Assay_fileNameFromIdentifier(a.Identifier);
92
+ const processes = ARCtrl_ArcTables__ArcTables_GetProcesses(a);
93
+ const dataFiles = getData(processes);
94
+ const values_1 = choose((tupledArg) => map((v_1) => [tupledArg[0], v_1], tupledArg[1]), ofArray([["@id", (value = ROCrate_genID(a), {
95
+ Encode(helpers) {
96
+ return helpers.encodeString(value);
97
+ }
98
+ })], ["@type", list$1(singleton({
99
+ Encode(helpers_1) {
100
+ return helpers_1.encodeString("Assay");
101
+ }
102
+ }))], ["additionalType", {
103
+ Encode(helpers_2) {
104
+ return helpers_2.encodeString("Assay");
105
+ }
106
+ }], ["identifier", (value_3 = a.Identifier, {
107
+ Encode(helpers_3) {
108
+ return helpers_3.encodeString(value_3);
109
+ }
110
+ })], ["filename", {
111
+ Encode(helpers_4) {
112
+ return helpers_4.encodeString(fileName);
113
+ }
114
+ }], tryInclude("title", (value_5) => ({
115
+ Encode(helpers_5) {
116
+ return helpers_5.encodeString(value_5);
117
+ }
118
+ }), a.Title), tryInclude("description", (value_7) => ({
119
+ Encode(helpers_6) {
120
+ return helpers_6.encodeString(value_7);
121
+ }
122
+ }), a.Description), tryInclude("measurementType", OntologyAnnotation_ROCrate_encoderPropertyValue, a.MeasurementType), tryInclude("technologyType", OntologyAnnotation_ROCrate_encoderDefinedTerm, a.TechnologyType), tryInclude("technologyPlatform", OntologyAnnotation_ROCrate_encoderDefinedTerm, a.TechnologyPlatform), tryIncludeSeq("performers", ROCrate_encoder$1, a.Performers), tryIncludeList("dataFiles", ROCrate_encoder$4, dataFiles), tryIncludeList("processSequence", (assayName_1 = a.Identifier, (oa_5) => ROCrate_encoder$2(assayName, assayName_1, oa_5)), processes), tryIncludeSeq("comments", ROCrate_encoder$3, a.Comments), ["@context", context_jsonvalue]]));
123
+ return {
124
+ Encode(helpers_7) {
125
+ const arg = map$2((tupledArg_1) => [tupledArg_1[0], tupledArg_1[1].Encode(helpers_7)], values_1);
126
+ return helpers_7.encodeObject(arg);
127
+ }
128
+ };
129
+ }
130
+ const ROCrate_decoder = object((get$) => {
131
+ let objectArg, arg_3, objectArg_1, objectArg_2, objectArg_3, objectArg_4, objectArg_5, objectArg_6, arg_16, objectArg_7, arg_18, objectArg_8;
132
+ const identifier = defaultArg((objectArg = get$.Optional, objectArg.Field("identifier", string)), createMissingIdentifier());
133
+ const tables = map((arg_4) => {
134
+ const a = ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D(arg_4);
135
+ return a.Tables;
136
+ }, (arg_3 = list(ROCrate_decoder$1), objectArg_1 = get$.Optional, objectArg_1.Field("processSequence", arg_3)));
137
+ return new ArcAssay(identifier, unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("title", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("description", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("measurementType", OntologyAnnotation_ROCrate_decoderPropertyValue))), unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("technologyType", OntologyAnnotation_ROCrate_decoderDefinedTerm))), unwrap((objectArg_6 = get$.Optional, objectArg_6.Field("technologyPlatform", OntologyAnnotation_ROCrate_decoderDefinedTerm))), unwrap(tables), void 0, unwrap((arg_16 = resizeArray(ROCrate_decoder$2), objectArg_7 = get$.Optional, objectArg_7.Field("performers", arg_16))), unwrap((arg_18 = resizeArray(ROCrate_decoder$3), objectArg_8 = get$.Optional, objectArg_8.Field("comments", arg_18))));
138
+ });
139
+ function ISAJson_encoder(studyName, idMap, a) {
140
+ const f = (a_1) => {
141
+ let assayName;
142
+ const fileName = Assay_fileNameFromIdentifier(a_1.Identifier);
143
+ const processes = ARCtrl_ArcTables__ArcTables_GetProcesses(a_1);
144
+ const encodedUnits = tryIncludeList("unitCategories", (oa) => OntologyAnnotation_ISAJson_encoder(idMap, oa), getUnits(processes));
145
+ const encodedCharacteristics = tryIncludeList("characteristicCategories", (value_1) => encoder$5(idMap, value_1), getCharacteristics(processes));
146
+ const encodedMaterials = tryInclude("materials", (ps) => encoder$6(idMap, ps), Option_fromValueWithDefault(empty(), processes));
147
+ const encocedDataFiles = tryIncludeList("dataFiles", (oa_1) => ISAJson_encoder$1(idMap, oa_1), getData(processes));
148
+ getUnits(processes);
149
+ const comments = toList(delay(() => append(a_1.Comments.length > 0 ? a_1.Comments : empty$1(), delay(() => append(a_1.Title != null ? singleton$1(Comment$.create("title", value(a_1.Title))) : empty$1(), delay(() => a_1.Description != null ? singleton$1(Comment$.create("description", value(a_1.Description))) : empty$1()))))));
150
+ const values_1 = choose((tupledArg) => map((v_1) => [tupledArg[0], v_1], tupledArg[1]), ofArray([["filename", {
151
+ Encode(helpers) {
152
+ return helpers.encodeString(fileName);
153
+ }
154
+ }], tryInclude("@id", (value_5) => ({
155
+ Encode(helpers_1) {
156
+ return helpers_1.encodeString(value_5);
157
+ }
158
+ }), ROCrate_genID(a_1)), tryInclude("measurementType", (oa_2) => OntologyAnnotation_ISAJson_encoder(idMap, oa_2), a_1.MeasurementType), tryInclude("technologyType", (oa_3) => OntologyAnnotation_ISAJson_encoder(idMap, oa_3), a_1.TechnologyType), tryInclude("technologyPlatform", (value_7) => ({
159
+ Encode(helpers_2) {
160
+ return helpers_2.encodeString(value_7);
161
+ }
162
+ }), map(JsonTypes_composeTechnologyPlatform, a_1.TechnologyPlatform)), encocedDataFiles, encodedMaterials, encodedCharacteristics, encodedUnits, tryIncludeList("processSequence", (assayName = a_1.Identifier, (oa_4) => ISAJson_encoder$2(studyName, assayName, idMap, oa_4)), processes), tryIncludeSeq("comments", (comment) => ISAJson_encoder$3(idMap, comment), comments)]));
163
+ return {
164
+ Encode(helpers_3) {
165
+ const arg = map$2((tupledArg_1) => [tupledArg_1[0], tupledArg_1[1].Encode(helpers_3)], values_1);
166
+ return helpers_3.encodeObject(arg);
167
+ }
168
+ };
169
+ };
170
+ if (idMap != null) {
171
+ return encode(ROCrate_genID, f, a, value(idMap));
172
+ } else {
173
+ return f(a);
174
+ }
175
+ }
176
+ const ISAJson_allowedFields = ofArray(["@id", "filename", "measurementType", "technologyType", "technologyPlatform", "dataFiles", "materials", "characteristicCategories", "unitCategories", "processSequence", "comments", "@type", "@context"]);
177
+ const ISAJson_decoder = Decode_objectNoAdditionalProperties(ISAJson_allowedFields, (get$) => {
178
+ let objectArg, arg_3, objectArg_1, objectArg_3, objectArg_4, arg_12, objectArg_5;
179
+ const identifier = defaultArg(bind(Assay_tryIdentifierFromFileName, (objectArg = get$.Optional, objectArg.Field("filename", string))), createMissingIdentifier());
180
+ const tables = map((arg_4) => {
181
+ const a = ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D(arg_4);
182
+ return a.Tables;
183
+ }, (arg_3 = list(ISAJson_decoder$1), objectArg_1 = get$.Optional, objectArg_1.Field("processSequence", arg_3)));
184
+ let comments;
185
+ const arg_6 = resizeArray(ISAJson_decoder$2);
186
+ const objectArg_2 = get$.Optional;
187
+ comments = objectArg_2.Field("comments", arg_6);
188
+ const title = bind((c) => tryPick((x) => {
189
+ if (x.Name != null && value(x.Name) === "title") {
190
+ return x.Value;
191
+ } else {
192
+ return void 0;
193
+ }
194
+ }, c), comments);
195
+ const description = bind((c_1) => tryPick((x_1) => {
196
+ if (x_1.Name != null && value(x_1.Name) === "description") {
197
+ return x_1.Value;
198
+ } else {
199
+ return void 0;
200
+ }
201
+ }, c_1), comments);
202
+ const comments_1 = bind((c_2) => {
203
+ const matchValue = ResizeArray_filter((x_2) => {
204
+ if (x_2.Name == null) {
205
+ return true;
206
+ } else if (value(x_2.Name) !== "title") {
207
+ return value(x_2.Name) !== "description";
208
+ } else {
209
+ return false;
210
+ }
211
+ }, c_2);
212
+ if (length(matchValue) === 0) {
213
+ return void 0;
214
+ } else {
215
+ return matchValue;
216
+ }
217
+ }, comments);
218
+ return new ArcAssay(identifier, unwrap(title), unwrap(description), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("measurementType", OntologyAnnotation_ISAJson_decoder))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("technologyType", OntologyAnnotation_ISAJson_decoder))), unwrap((arg_12 = map$1(JsonTypes_decomposeTechnologyPlatform, string), objectArg_5 = get$.Optional, objectArg_5.Field("technologyPlatform", arg_12))), unwrap(tables), void 0, void 0, unwrap(comments_1));
219
+ });
220
+
221
+ export { ISAJson_allowedFields, ISAJson_decoder, ISAJson_encoder, ROCrate_decoder, ROCrate_encoder, ROCrate_genID, decoder, decoderCompressed, encoder, encoderCompressed };
@@ -1,5 +1,5 @@
1
1
  import { Option } from '@fable-org/fable-library-js/Option.js';
2
- import { Decoder$1, IEncodable } from '../fable_modules/Thoth.Json.Core.0.4.0/Types.fs.js';
2
+ import { Decoder$1, IEncodable } from '../fable_modules/Thoth.Json.Core.0.7.0/Types.fs.js';
3
3
  import { Comment$ } from '../Core/Comment.js';
4
4
  import { IMap } from '@fable-org/fable-library-js/Util.js';
5
5
  export declare function encoder(comment: Comment$): IEncodable;