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

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 (380) 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.js +9 -0
  73. package/dist/ts/ts/Core/OntologyAnnotation.js +207 -0
  74. package/dist/ts/ts/Core/OntologySourceReference.js +84 -0
  75. package/dist/ts/ts/Core/Person.js +183 -0
  76. package/dist/ts/ts/Core/Process/ColumnIndex.js +73 -0
  77. package/dist/ts/ts/Core/Process/Component.js +121 -0
  78. package/dist/ts/ts/Core/Process/Factor.js +104 -0
  79. package/dist/ts/ts/Core/Process/FactorValue.js +68 -0
  80. package/dist/ts/ts/Core/Process/Material.js +49 -0
  81. package/dist/ts/ts/Core/Process/MaterialAttribute.js +30 -0
  82. package/dist/ts/ts/Core/Process/MaterialAttributeValue.js +68 -0
  83. package/dist/ts/ts/Core/Process/MaterialType.js +28 -0
  84. package/dist/ts/ts/Core/Process/Process.js +136 -0
  85. package/dist/ts/ts/Core/Process/ProcessInput.js +207 -0
  86. package/dist/ts/ts/Core/Process/ProcessOutput.js +178 -0
  87. package/dist/ts/ts/Core/Process/ProcessParameterValue.js +135 -0
  88. package/dist/ts/ts/Core/Process/ProcessSequence.js +56 -0
  89. package/dist/ts/ts/Core/Process/Protocol.js +54 -0
  90. package/dist/ts/ts/Core/Process/ProtocolParameter.js +69 -0
  91. package/dist/ts/ts/Core/Process/Sample.js +44 -0
  92. package/dist/ts/ts/Core/Process/Source.js +38 -0
  93. package/dist/ts/ts/Core/Publication.js +108 -0
  94. package/dist/ts/ts/Core/Table/ArcTable.js +889 -0
  95. package/dist/ts/ts/Core/Table/ArcTableAux.js +993 -0
  96. package/dist/ts/ts/Core/Table/ArcTables.js +415 -0
  97. package/dist/ts/ts/Core/Table/CompositeCell.js +334 -0
  98. package/dist/ts/ts/Core/Table/CompositeColumn.js +52 -0
  99. package/dist/ts/ts/Core/Table/CompositeHeader.js +792 -0
  100. package/dist/ts/ts/Core/Template.js +180 -0
  101. package/dist/ts/ts/Core/Templates.js +75 -0
  102. package/dist/ts/ts/Core/URI.js +8 -0
  103. package/dist/ts/ts/Core/Value.js +194 -0
  104. package/dist/ts/ts/CrossAsync.js +20 -0
  105. package/dist/ts/ts/FileSystem/DefaultGitattributes.js +3 -0
  106. package/dist/ts/ts/FileSystem/DefaultGitignore.js +3 -0
  107. package/dist/ts/ts/FileSystem/FileSystem.js +48 -0
  108. package/dist/ts/ts/FileSystem/FileSystemTree.js +339 -0
  109. package/dist/ts/ts/FileSystem/Path.js +36 -0
  110. package/dist/ts/ts/Json/Assay.d.ts +1 -1
  111. package/dist/ts/ts/Json/Assay.js +221 -0
  112. package/dist/ts/ts/Json/Comment.d.ts +1 -1
  113. package/dist/ts/ts/Json/Comment.js +112 -0
  114. package/dist/ts/ts/Json/Data.d.ts +1 -1
  115. package/dist/ts/ts/Json/Data.js +138 -0
  116. package/dist/ts/ts/Json/DataFile.d.ts +1 -1
  117. package/dist/ts/ts/Json/DataFile.js +55 -0
  118. package/dist/ts/ts/Json/DataMap/DataContext.d.ts +1 -1
  119. package/dist/ts/ts/Json/DataMap/DataContext.js +39 -0
  120. package/dist/ts/ts/Json/DataMap/DataMap.d.ts +1 -1
  121. package/dist/ts/ts/Json/DataMap/DataMap.js +27 -0
  122. package/dist/ts/ts/Json/Decode.d.ts +2 -2
  123. package/dist/ts/ts/Json/Decode.js +209 -0
  124. package/dist/ts/ts/Json/Encode.d.ts +1 -1
  125. package/dist/ts/ts/Json/Encode.js +65 -0
  126. package/dist/ts/ts/Json/IDTable.d.ts +1 -1
  127. package/dist/ts/ts/Json/IDTable.js +28 -0
  128. package/dist/ts/ts/Json/Investigation.d.ts +1 -1
  129. package/dist/ts/ts/Json/Investigation.js +229 -0
  130. package/dist/ts/ts/Json/OntologyAnnotation.d.ts +1 -1
  131. package/dist/ts/ts/Json/OntologyAnnotation.js +194 -0
  132. package/dist/ts/ts/Json/OntologySourceReference.d.ts +1 -1
  133. package/dist/ts/ts/Json/OntologySourceReference.js +119 -0
  134. package/dist/ts/ts/Json/Person.d.ts +1 -1
  135. package/dist/ts/ts/Json/Person.js +316 -0
  136. package/dist/ts/ts/Json/Process/AssayMaterials.d.ts +1 -1
  137. package/dist/ts/ts/Json/Process/AssayMaterials.js +21 -0
  138. package/dist/ts/ts/Json/Process/Component.d.ts +1 -1
  139. package/dist/ts/ts/Json/Process/Component.js +41 -0
  140. package/dist/ts/ts/Json/Process/Factor.d.ts +1 -1
  141. package/dist/ts/ts/Json/Process/Factor.js +53 -0
  142. package/dist/ts/ts/Json/Process/FactorValue.d.ts +1 -1
  143. package/dist/ts/ts/Json/Process/FactorValue.js +44 -0
  144. package/dist/ts/ts/Json/Process/Material.d.ts +1 -1
  145. package/dist/ts/ts/Json/Process/Material.js +112 -0
  146. package/dist/ts/ts/Json/Process/MaterialAttribute.d.ts +1 -1
  147. package/dist/ts/ts/Json/Process/MaterialAttribute.js +43 -0
  148. package/dist/ts/ts/Json/Process/MaterialAttributeValue.d.ts +1 -1
  149. package/dist/ts/ts/Json/Process/MaterialAttributeValue.js +44 -0
  150. package/dist/ts/ts/Json/Process/MaterialType.d.ts +1 -1
  151. package/dist/ts/ts/Json/Process/MaterialType.js +45 -0
  152. package/dist/ts/ts/Json/Process/Process.d.ts +1 -1
  153. package/dist/ts/ts/Json/Process/Process.js +103 -0
  154. package/dist/ts/ts/Json/Process/ProcessInput.d.ts +1 -1
  155. package/dist/ts/ts/Json/Process/ProcessInput.js +42 -0
  156. package/dist/ts/ts/Json/Process/ProcessOutput.d.ts +1 -1
  157. package/dist/ts/ts/Json/Process/ProcessOutput.js +35 -0
  158. package/dist/ts/ts/Json/Process/ProcessParameterValue.d.ts +1 -1
  159. package/dist/ts/ts/Json/Process/ProcessParameterValue.js +28 -0
  160. package/dist/ts/ts/Json/Process/Protocol.d.ts +1 -1
  161. package/dist/ts/ts/Json/Process/Protocol.js +166 -0
  162. package/dist/ts/ts/Json/Process/ProtocolParameter.d.ts +1 -1
  163. package/dist/ts/ts/Json/Process/ProtocolParameter.js +43 -0
  164. package/dist/ts/ts/Json/Process/Sample.d.ts +1 -1
  165. package/dist/ts/ts/Json/Process/Sample.js +165 -0
  166. package/dist/ts/ts/Json/Process/Source.d.ts +1 -1
  167. package/dist/ts/ts/Json/Process/Source.js +133 -0
  168. package/dist/ts/ts/Json/Process/StudyMaterials.d.ts +1 -1
  169. package/dist/ts/ts/Json/Process/StudyMaterials.js +23 -0
  170. package/dist/ts/ts/Json/Process/Value.d.ts +1 -1
  171. package/dist/ts/ts/Json/Process/Value.js +41 -0
  172. package/dist/ts/ts/Json/PropertyValue.d.ts +1 -1
  173. package/dist/ts/ts/Json/PropertyValue.js +280 -0
  174. package/dist/ts/ts/Json/Publication.d.ts +1 -1
  175. package/dist/ts/ts/Json/Publication.js +123 -0
  176. package/dist/ts/ts/Json/ROCrate/LDContext.d.ts +1 -1
  177. package/dist/ts/ts/Json/ROCrate/LDContext.js +115 -0
  178. package/dist/ts/ts/Json/ROCrate/LDGraph.d.ts +1 -1
  179. package/dist/ts/ts/Json/ROCrate/LDGraph.js +83 -0
  180. package/dist/ts/ts/Json/ROCrate/LDNode.d.ts +1 -1
  181. package/dist/ts/ts/Json/ROCrate/LDNode.js +190 -0
  182. package/dist/ts/ts/Json/ROCrate/LDRef.d.ts +1 -1
  183. package/dist/ts/ts/Json/ROCrate/LDRef.js +24 -0
  184. package/dist/ts/ts/Json/ROCrate/LDValue.d.ts +1 -1
  185. package/dist/ts/ts/Json/ROCrate/LDValue.js +63 -0
  186. package/dist/ts/ts/Json/StringTable.d.ts +1 -1
  187. package/dist/ts/ts/Json/StringTable.js +66 -0
  188. package/dist/ts/ts/Json/Study.d.ts +1 -1
  189. package/dist/ts/ts/Json/Study.js +326 -0
  190. package/dist/ts/ts/Json/Table/ArcTable.d.ts +1 -1
  191. package/dist/ts/ts/Json/Table/ArcTable.js +210 -0
  192. package/dist/ts/ts/Json/Table/CellTable.d.ts +1 -1
  193. package/dist/ts/ts/Json/Table/CellTable.js +53 -0
  194. package/dist/ts/ts/Json/Table/CompositeCell.d.ts +1 -1
  195. package/dist/ts/ts/Json/Table/CompositeCell.js +106 -0
  196. package/dist/ts/ts/Json/Table/CompositeHeader.d.ts +1 -1
  197. package/dist/ts/ts/Json/Table/CompositeHeader.js +121 -0
  198. package/dist/ts/ts/Json/Table/IOType.d.ts +1 -1
  199. package/dist/ts/ts/Json/Table/IOType.js +15 -0
  200. package/dist/ts/ts/Json/Table/OATable.d.ts +1 -1
  201. package/dist/ts/ts/Json/Table/OATable.js +50 -0
  202. package/dist/ts/ts/Json/Table/Templates.d.ts +1 -1
  203. package/dist/ts/ts/Json/Table/Templates.js +15 -0
  204. package/dist/ts/ts/Json/context/rocrate/isa_assay_context.d.ts +1 -1
  205. package/dist/ts/ts/Json/context/rocrate/isa_assay_context.js +61 -0
  206. package/dist/ts/ts/Json/context/rocrate/isa_comment_context.d.ts +1 -1
  207. package/dist/ts/ts/Json/context/rocrate/isa_comment_context.js +29 -0
  208. package/dist/ts/ts/Json/context/rocrate/isa_data_context.d.ts +1 -1
  209. package/dist/ts/ts/Json/context/rocrate/isa_data_context.js +41 -0
  210. package/dist/ts/ts/Json/context/rocrate/isa_investigation_context.d.ts +1 -1
  211. package/dist/ts/ts/Json/context/rocrate/isa_investigation_context.js +69 -0
  212. package/dist/ts/ts/Json/context/rocrate/isa_material_context.d.ts +1 -1
  213. package/dist/ts/ts/Json/context/rocrate/isa_material_context.js +37 -0
  214. package/dist/ts/ts/Json/context/rocrate/isa_ontology_annotation_context.d.ts +1 -1
  215. package/dist/ts/ts/Json/context/rocrate/isa_ontology_annotation_context.js +37 -0
  216. package/dist/ts/ts/Json/context/rocrate/isa_ontology_source_reference_context.d.ts +1 -1
  217. package/dist/ts/ts/Json/context/rocrate/isa_ontology_source_reference_context.js +41 -0
  218. package/dist/ts/ts/Json/context/rocrate/isa_organization_context.d.ts +1 -1
  219. package/dist/ts/ts/Json/context/rocrate/isa_organization_context.js +25 -0
  220. package/dist/ts/ts/Json/context/rocrate/isa_person_context.d.ts +1 -1
  221. package/dist/ts/ts/Json/context/rocrate/isa_person_context.js +86 -0
  222. package/dist/ts/ts/Json/context/rocrate/isa_process_context.d.ts +1 -1
  223. package/dist/ts/ts/Json/context/rocrate/isa_process_context.js +57 -0
  224. package/dist/ts/ts/Json/context/rocrate/isa_protocol_context.d.ts +1 -1
  225. package/dist/ts/ts/Json/context/rocrate/isa_protocol_context.js +61 -0
  226. package/dist/ts/ts/Json/context/rocrate/isa_publication_context.d.ts +1 -1
  227. package/dist/ts/ts/Json/context/rocrate/isa_publication_context.js +45 -0
  228. package/dist/ts/ts/Json/context/rocrate/isa_sample_context.d.ts +1 -1
  229. package/dist/ts/ts/Json/context/rocrate/isa_sample_context.js +33 -0
  230. package/dist/ts/ts/Json/context/rocrate/isa_source_context.d.ts +1 -1
  231. package/dist/ts/ts/Json/context/rocrate/isa_source_context.js +33 -0
  232. package/dist/ts/ts/Json/context/rocrate/isa_study_context.d.ts +1 -1
  233. package/dist/ts/ts/Json/context/rocrate/isa_study_context.js +77 -0
  234. package/dist/ts/ts/Json/context/rocrate/property_value_context.d.ts +1 -1
  235. package/dist/ts/ts/Json/context/rocrate/property_value_context.js +61 -0
  236. package/dist/ts/ts/Json/context/rocrate/rocrate_context.d.ts +1 -1
  237. package/dist/ts/ts/Json.js +171 -0
  238. package/dist/ts/ts/JsonIO/Assay.js +77 -0
  239. package/dist/ts/ts/JsonIO/Investigation.js +77 -0
  240. package/dist/ts/ts/JsonIO/LDObject.js +77 -0
  241. package/dist/ts/ts/JsonIO/OntologyAnnotation.js +56 -0
  242. package/dist/ts/ts/JsonIO/Study.js +77 -0
  243. package/dist/ts/ts/JsonIO/Table/Compression.d.ts +1 -1
  244. package/dist/ts/ts/JsonIO/Table/Compression.js +39 -0
  245. package/dist/ts/ts/JsonIO/Table/Templates.d.ts +1 -1
  246. package/dist/ts/ts/JsonIO/Table/Templates.js +25 -0
  247. package/dist/ts/ts/ROCrate/Generic/Comment.js +103 -0
  248. package/dist/ts/ts/ROCrate/Generic/Dataset.js +624 -0
  249. package/dist/ts/ts/ROCrate/Generic/DefinedTerm.js +103 -0
  250. package/dist/ts/ts/ROCrate/Generic/File.js +184 -0
  251. package/dist/ts/ts/ROCrate/Generic/LabProcess.js +222 -0
  252. package/dist/ts/ts/ROCrate/Generic/LabProtocol.js +257 -0
  253. package/dist/ts/ts/ROCrate/Generic/Organization.js +63 -0
  254. package/dist/ts/ts/ROCrate/Generic/Person.js +377 -0
  255. package/dist/ts/ts/ROCrate/Generic/PostalAddress.js +143 -0
  256. package/dist/ts/ts/ROCrate/Generic/PropertyValue.js +512 -0
  257. package/dist/ts/ts/ROCrate/Generic/Sample.js +131 -0
  258. package/dist/ts/ts/ROCrate/Generic/ScholarlyArticle.js +173 -0
  259. package/dist/ts/ts/ROCrate/Helper.js +7 -0
  260. package/dist/ts/ts/ROCrate/LDContext.js +288 -0
  261. package/dist/ts/ts/ROCrate/LDObject.js +855 -0
  262. package/dist/ts/ts/ROCrate/ROCrateContext.js +39 -0
  263. package/dist/ts/ts/ROCrateIO.d.ts +1 -1
  264. package/dist/ts/ts/ROCrateIO.js +58 -0
  265. package/dist/ts/ts/Spreadsheet/AnnotationTable/ArcTable.d.ts +2 -2
  266. package/dist/ts/ts/Spreadsheet/AnnotationTable/ArcTable.d.ts.map +1 -1
  267. package/dist/ts/ts/Spreadsheet/AnnotationTable/ArcTable.js +149 -0
  268. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeCell.js +63 -0
  269. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeColumn.d.ts +2 -2
  270. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeColumn.d.ts.map +1 -1
  271. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeColumn.js +108 -0
  272. package/dist/ts/ts/Spreadsheet/AnnotationTable/CompositeHeader.js +410 -0
  273. package/dist/ts/ts/Spreadsheet/ArcAssay.d.ts +2 -2
  274. package/dist/ts/ts/Spreadsheet/ArcAssay.d.ts.map +1 -1
  275. package/dist/ts/ts/Spreadsheet/ArcAssay.js +169 -0
  276. package/dist/ts/ts/Spreadsheet/ArcInvestigation.d.ts +2 -2
  277. package/dist/ts/ts/Spreadsheet/ArcInvestigation.d.ts.map +1 -1
  278. package/dist/ts/ts/Spreadsheet/ArcInvestigation.js +316 -0
  279. package/dist/ts/ts/Spreadsheet/ArcRun.d.ts +2 -2
  280. package/dist/ts/ts/Spreadsheet/ArcRun.d.ts.map +1 -1
  281. package/dist/ts/ts/Spreadsheet/ArcRun.js +136 -0
  282. package/dist/ts/ts/Spreadsheet/ArcStudy.d.ts +2 -2
  283. package/dist/ts/ts/Spreadsheet/ArcStudy.d.ts.map +1 -1
  284. package/dist/ts/ts/Spreadsheet/ArcStudy.js +92 -0
  285. package/dist/ts/ts/Spreadsheet/ArcWorkflow.d.ts +2 -2
  286. package/dist/ts/ts/Spreadsheet/ArcWorkflow.d.ts.map +1 -1
  287. package/dist/ts/ts/Spreadsheet/ArcWorkflow.js +125 -0
  288. package/dist/ts/ts/Spreadsheet/CollectionAux.js +34 -0
  289. package/dist/ts/ts/Spreadsheet/DataMap.d.ts +1 -1
  290. package/dist/ts/ts/Spreadsheet/DataMap.d.ts.map +1 -1
  291. package/dist/ts/ts/Spreadsheet/DataMap.js +33 -0
  292. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapColumn.d.ts +2 -2
  293. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapColumn.d.ts.map +1 -1
  294. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapColumn.js +41 -0
  295. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapHeader.d.ts +1 -1
  296. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapHeader.d.ts.map +1 -1
  297. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapHeader.js +418 -0
  298. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapTable.d.ts +3 -3
  299. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapTable.d.ts.map +1 -1
  300. package/dist/ts/ts/Spreadsheet/DataMapTable/DataMapTable.js +85 -0
  301. package/dist/ts/ts/Spreadsheet/Metadata/Assays.js +90 -0
  302. package/dist/ts/ts/Spreadsheet/Metadata/Comment.js +58 -0
  303. package/dist/ts/ts/Spreadsheet/Metadata/Contacts.js +85 -0
  304. package/dist/ts/ts/Spreadsheet/Metadata/Conversions.js +133 -0
  305. package/dist/ts/ts/Spreadsheet/Metadata/DesignDescriptors.js +15 -0
  306. package/dist/ts/ts/Spreadsheet/Metadata/Factors.js +74 -0
  307. package/dist/ts/ts/Spreadsheet/Metadata/OntologyAnnotation.js +58 -0
  308. package/dist/ts/ts/Spreadsheet/Metadata/OntologySourceReference.js +62 -0
  309. package/dist/ts/ts/Spreadsheet/Metadata/Protocols.js +94 -0
  310. package/dist/ts/ts/Spreadsheet/Metadata/Publication.js +81 -0
  311. package/dist/ts/ts/Spreadsheet/Metadata/Run.js +91 -0
  312. package/dist/ts/ts/Spreadsheet/Metadata/SparseTable.d.ts +3 -3
  313. package/dist/ts/ts/Spreadsheet/Metadata/SparseTable.d.ts.map +1 -1
  314. package/dist/ts/ts/Spreadsheet/Metadata/SparseTable.js +193 -0
  315. package/dist/ts/ts/Spreadsheet/Metadata/Study.js +238 -0
  316. package/dist/ts/ts/Spreadsheet/Metadata/Workflow.js +105 -0
  317. package/dist/ts/ts/Template.Web.js +22 -0
  318. package/dist/ts/ts/ValidationPackages/ValidationPackage.js +53 -0
  319. package/dist/ts/ts/ValidationPackages/ValidationPackagesConfig.js +78 -0
  320. package/dist/ts/ts/WebRequest/WebRequest.Node.js +13 -0
  321. package/dist/ts/ts/WebRequest/WebRequest.js +19 -0
  322. package/dist/ts/ts/Xlsx.d.ts +1 -1
  323. package/dist/ts/ts/Xlsx.d.ts.map +1 -1
  324. package/dist/ts/ts/Xlsx.js +91 -0
  325. package/dist/ts/ts/Yaml/Encode.js +8 -0
  326. package/dist/ts/ts/Yaml/ValidationPackage.js +26 -0
  327. package/dist/ts/ts/Yaml/ValidationPackagesConfig.js +40 -0
  328. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/DynamicObj.fs.js +344 -0
  329. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/FableJS.fs.js +103 -0
  330. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/HashCodes.fs.js +19 -0
  331. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/PropertyHelper.fs.js +17 -0
  332. package/dist/ts/ts/fable_modules/DynamicObj.7.0.1/ReflectionUtils.fs.js +7 -0
  333. package/dist/ts/ts/fable_modules/Fable.Exceljs.1.6.0/ExcelJs.fs.js +5 -0
  334. package/dist/ts/ts/fable_modules/Fable.Fetch.2.6.0/Fetch.fs.js +18 -0
  335. package/dist/ts/ts/fable_modules/Fable.Promise.3.2.0/Promise.fs.js +44 -0
  336. package/dist/ts/ts/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js +5 -0
  337. package/dist/ts/ts/fable_modules/Fable.SimpleHttp.3.5.0/Http.fs.js +142 -0
  338. package/dist/ts/ts/fable_modules/Fable.SimpleHttp.3.5.0/Types.fs.js +76 -0
  339. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Cells/FsCell.fs.js +359 -0
  340. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Cells/FsCellsCollection.fs.js +344 -0
  341. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsAddress.fs.js +154 -0
  342. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsColumn.fs.js +116 -0
  343. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsRow.fs.js +126 -0
  344. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsWorkbook.fs.js +135 -0
  345. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/FsWorksheet.fs.js +422 -0
  346. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/HashCodes.fs.js +5 -0
  347. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Json/Value.fs.js +25 -0
  348. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRange.fs.js +28 -0
  349. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeAddress.fs.js +82 -0
  350. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeBase.fs.js +69 -0
  351. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeColumn.fs.js +42 -0
  352. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Ranges/FsRangeRow.fs.js +29 -0
  353. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Tables/FsTable.fs.js +348 -0
  354. package/dist/ts/ts/fable_modules/FsSpreadsheet.7.0.0-alpha.1/Tables/FsTableField.fs.js +86 -0
  355. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Cell.fs.js +68 -0
  356. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/FsExtensions.fs.js +12 -0
  357. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Table.fs.js +54 -0
  358. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Workbook.fs.js +33 -0
  359. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Worksheet.fs.js +63 -0
  360. package/dist/ts/ts/fable_modules/FsSpreadsheet.Js.7.0.0-alpha.1/Xlsx.fs.js +66 -0
  361. package/dist/ts/ts/fable_modules/Thoth.Json.Core.0.7.0/Decode.fs.js +544 -0
  362. package/dist/ts/ts/fable_modules/Thoth.Json.Core.0.7.0/Encode.fs.js +31 -0
  363. package/dist/ts/ts/fable_modules/Thoth.Json.Core.0.7.0/Types.fs.js +38 -0
  364. package/dist/ts/ts/fable_modules/Thoth.Json.JavaScript.0.4.1/Decode.fs.js +79 -0
  365. package/dist/ts/ts/fable_modules/Thoth.Json.JavaScript.0.4.1/Encode.fs.js +57 -0
  366. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Decode.fs.js +235 -0
  367. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Encode.fs.js +16 -0
  368. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Persil.fs.js +45 -0
  369. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Preprocessing.fs.js +89 -0
  370. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Reader.fs.js +480 -0
  371. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Regex.fs.js +11 -0
  372. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/RegexActivePatterns.fs.js +212 -0
  373. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/Writer.fs.js +164 -0
  374. package/dist/ts/ts/fable_modules/YAMLicious.0.0.3/YAMLiciousTypes.fs.js +136 -0
  375. package/package.json +10 -7
  376. package/dist/ts/__vite-browser-external-2447137e.js +0 -4
  377. package/dist/ts/__vite-browser-external-b3701507.cjs +0 -1
  378. package/dist/ts/arctrl.cjs.js +0 -5691
  379. package/dist/ts/arctrl.es.js +0 -35562
  380. 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';
@@ -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(studyName, a) {
90
+ let value, value_3, assayName;
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 = a.Identifier, (oa_5) => ROCrate_encoder$2(studyName, assayName, 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;