@nfdi4plants/arctrl 1.0.0-alpha6

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 (277) hide show
  1. package/ARCtrl.js +257 -0
  2. package/Contract/Contract.js +95 -0
  3. package/Contracts/Contracts.ARCtrl.js +35 -0
  4. package/Contracts/Contracts.ArcAssay.js +65 -0
  5. package/Contracts/Contracts.ArcInvestigation.js +58 -0
  6. package/Contracts/Contracts.ArcStudy.js +65 -0
  7. package/Contracts/Contracts.Git.js +91 -0
  8. package/FileSystem/Commit.js +18 -0
  9. package/FileSystem/DefaultGitignore.js +3 -0
  10. package/FileSystem/FileSystem.js +53 -0
  11. package/FileSystem/FileSystemTree.js +223 -0
  12. package/FileSystem/Path.js +38 -0
  13. package/FileSystemTree.js +51 -0
  14. package/ISA/ISA/ArcTypes/ArcTable.js +744 -0
  15. package/ISA/ISA/ArcTypes/ArcTableAux.js +1142 -0
  16. package/ISA/ISA/ArcTypes/ArcTables.js +380 -0
  17. package/ISA/ISA/ArcTypes/ArcTypes.js +2018 -0
  18. package/ISA/ISA/ArcTypes/CompositeCell.js +180 -0
  19. package/ISA/ISA/ArcTypes/CompositeColumn.js +42 -0
  20. package/ISA/ISA/ArcTypes/CompositeHeader.js +358 -0
  21. package/ISA/ISA/ArcTypes/CompositeRow.js +111 -0
  22. package/ISA/ISA/ArcTypes/IdentifierSetters.js +26 -0
  23. package/ISA/ISA/Builder/Types.js +243 -0
  24. package/ISA/ISA/Fable.js +50 -0
  25. package/ISA/ISA/Helper.js +326 -0
  26. package/ISA/ISA/Identifier.js +76 -0
  27. package/ISA/ISA/JsonTypes/AnnotationValue.js +56 -0
  28. package/ISA/ISA/JsonTypes/Assay.js +620 -0
  29. package/ISA/ISA/JsonTypes/AssayMaterials.js +39 -0
  30. package/ISA/ISA/JsonTypes/ColumnIndex.js +246 -0
  31. package/ISA/ISA/JsonTypes/Comment.js +58 -0
  32. package/ISA/ISA/JsonTypes/CommentList.js +139 -0
  33. package/ISA/ISA/JsonTypes/Component.js +158 -0
  34. package/ISA/ISA/JsonTypes/Data.js +55 -0
  35. package/ISA/ISA/JsonTypes/DataFile.js +68 -0
  36. package/ISA/ISA/JsonTypes/Factor.js +128 -0
  37. package/ISA/ISA/JsonTypes/FactorValue.js +109 -0
  38. package/ISA/ISA/JsonTypes/Investigation.js +204 -0
  39. package/ISA/ISA/JsonTypes/Material.js +66 -0
  40. package/ISA/ISA/JsonTypes/MaterialAttribute.js +101 -0
  41. package/ISA/ISA/JsonTypes/MaterialAttributeValue.js +126 -0
  42. package/ISA/ISA/JsonTypes/MaterialType.js +41 -0
  43. package/ISA/ISA/JsonTypes/OntologyAnnotation.js +219 -0
  44. package/ISA/ISA/JsonTypes/OntologySourceReference.js +85 -0
  45. package/ISA/ISA/JsonTypes/Person.js +137 -0
  46. package/ISA/ISA/JsonTypes/Process.js +401 -0
  47. package/ISA/ISA/JsonTypes/ProcessInput.js +297 -0
  48. package/ISA/ISA/JsonTypes/ProcessOutput.js +263 -0
  49. package/ISA/ISA/JsonTypes/ProcessParameterValue.js +129 -0
  50. package/ISA/ISA/JsonTypes/ProcessSequence.js +255 -0
  51. package/ISA/ISA/JsonTypes/Protocol.js +277 -0
  52. package/ISA/ISA/JsonTypes/ProtocolParameter.js +101 -0
  53. package/ISA/ISA/JsonTypes/Publication.js +105 -0
  54. package/ISA/ISA/JsonTypes/Sample.js +71 -0
  55. package/ISA/ISA/JsonTypes/Source.js +54 -0
  56. package/ISA/ISA/JsonTypes/Study.js +942 -0
  57. package/ISA/ISA/JsonTypes/StudyMaterials.js +45 -0
  58. package/ISA/ISA/JsonTypes/URI.js +19 -0
  59. package/ISA/ISA/JsonTypes/Value.js +210 -0
  60. package/ISA/ISA/Regex.js +588 -0
  61. package/ISA/ISA.Json/Assay.js +123 -0
  62. package/ISA/ISA.Json/Comment.js +84 -0
  63. package/ISA/ISA.Json/ConverterOptions.js +33 -0
  64. package/ISA/ISA.Json/Data.js +271 -0
  65. package/ISA/ISA.Json/Decode.js +46 -0
  66. package/ISA/ISA.Json/Factor.js +194 -0
  67. package/ISA/ISA.Json/GEncode.js +15 -0
  68. package/ISA/ISA.Json/Investigation.js +132 -0
  69. package/ISA/ISA.Json/Material.js +233 -0
  70. package/ISA/ISA.Json/Ontology.js +204 -0
  71. package/ISA/ISA.Json/Person.js +204 -0
  72. package/ISA/ISA.Json/Process.js +291 -0
  73. package/ISA/ISA.Json/Protocol.js +242 -0
  74. package/ISA/ISA.Json/Publication.js +92 -0
  75. package/ISA/ISA.Json/Study.js +230 -0
  76. package/ISA/ISA.Json/Validation/Fable.js +69 -0
  77. package/ISA/ISA.Json/Validation/JsonSchemaValidation.js +88 -0
  78. package/ISA/ISA.Json/Validation/ValidationResult.js +45 -0
  79. package/ISA/ISA.Spreadsheet/AnnotationTable/ArcTable.js +137 -0
  80. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeCell.js +78 -0
  81. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeColumn.js +59 -0
  82. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeHeader.js +478 -0
  83. package/ISA/ISA.Spreadsheet/ArcAssay.js +150 -0
  84. package/ISA/ISA.Spreadsheet/ArcInvestigation.js +314 -0
  85. package/ISA/ISA.Spreadsheet/ArcStudy.js +67 -0
  86. package/ISA/ISA.Spreadsheet/CollectionAux.js +128 -0
  87. package/ISA/ISA.Spreadsheet/Metadata/Assays.js +81 -0
  88. package/ISA/ISA.Spreadsheet/Metadata/Comment.js +60 -0
  89. package/ISA/ISA.Spreadsheet/Metadata/Contacts.js +104 -0
  90. package/ISA/ISA.Spreadsheet/Metadata/Conversions.js +180 -0
  91. package/ISA/ISA.Spreadsheet/Metadata/DesignDescriptors.js +27 -0
  92. package/ISA/ISA.Spreadsheet/Metadata/Factors.js +85 -0
  93. package/ISA/ISA.Spreadsheet/Metadata/OntologyAnnotation.js +65 -0
  94. package/ISA/ISA.Spreadsheet/Metadata/OntologySourceReference.js +73 -0
  95. package/ISA/ISA.Spreadsheet/Metadata/Protocols.js +116 -0
  96. package/ISA/ISA.Spreadsheet/Metadata/Publication.js +96 -0
  97. package/ISA/ISA.Spreadsheet/Metadata/SparseTable.js +451 -0
  98. package/ISA/ISA.Spreadsheet/Metadata/Study.js +260 -0
  99. package/README.md +277 -0
  100. package/SemVer.js +60 -0
  101. package/Templates/Templates.Json.js +40 -0
  102. package/Templates/Templates.Spreadsheet.js +315 -0
  103. package/Templates/Templates.js +179 -0
  104. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCell.fs +387 -0
  105. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCell.fs.js +240 -0
  106. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCellsCollection.fs +725 -0
  107. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCellsCollection.fs.js +522 -0
  108. package/fable_modules/FsSpreadsheet.4.1.0/DSL/CellBuilder.fs +195 -0
  109. package/fable_modules/FsSpreadsheet.4.1.0/DSL/CellBuilder.fs.js +208 -0
  110. package/fable_modules/FsSpreadsheet.4.1.0/DSL/ColumnBuilder.fs +209 -0
  111. package/fable_modules/FsSpreadsheet.4.1.0/DSL/ColumnBuilder.fs.js +137 -0
  112. package/fable_modules/FsSpreadsheet.4.1.0/DSL/DSL.fs +61 -0
  113. package/fable_modules/FsSpreadsheet.4.1.0/DSL/DSL.fs.js +62 -0
  114. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Expression.fs +24 -0
  115. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Expression.fs.js +56 -0
  116. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Operators.fs +102 -0
  117. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Operators.fs.js +6 -0
  118. package/fable_modules/FsSpreadsheet.4.1.0/DSL/RowBuilder.fs +200 -0
  119. package/fable_modules/FsSpreadsheet.4.1.0/DSL/RowBuilder.fs.js +137 -0
  120. package/fable_modules/FsSpreadsheet.4.1.0/DSL/SheetBuilder.fs +139 -0
  121. package/fable_modules/FsSpreadsheet.4.1.0/DSL/SheetBuilder.fs.js +116 -0
  122. package/fable_modules/FsSpreadsheet.4.1.0/DSL/TableBuilder.fs +120 -0
  123. package/fable_modules/FsSpreadsheet.4.1.0/DSL/TableBuilder.fs.js +120 -0
  124. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Transform.fs +229 -0
  125. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Transform.fs.js +421 -0
  126. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Types.fs +151 -0
  127. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Types.fs.js +277 -0
  128. package/fable_modules/FsSpreadsheet.4.1.0/DSL/WorkbookBuilder.fs +114 -0
  129. package/fable_modules/FsSpreadsheet.4.1.0/DSL/WorkbookBuilder.fs.js +104 -0
  130. package/fable_modules/FsSpreadsheet.4.1.0/FsAddress.fs +177 -0
  131. package/fable_modules/FsSpreadsheet.4.1.0/FsAddress.fs.js +249 -0
  132. package/fable_modules/FsSpreadsheet.4.1.0/FsColumn.fs +200 -0
  133. package/fable_modules/FsSpreadsheet.4.1.0/FsColumn.fs.js +125 -0
  134. package/fable_modules/FsSpreadsheet.4.1.0/FsRow.fs +202 -0
  135. package/fable_modules/FsSpreadsheet.4.1.0/FsRow.fs.js +135 -0
  136. package/fable_modules/FsSpreadsheet.4.1.0/FsSpreadsheet.fableproj +58 -0
  137. package/fable_modules/FsSpreadsheet.4.1.0/FsWorkbook.fs +183 -0
  138. package/fable_modules/FsSpreadsheet.4.1.0/FsWorkbook.fs.js +138 -0
  139. package/fable_modules/FsSpreadsheet.4.1.0/FsWorksheet.fs +628 -0
  140. package/fable_modules/FsSpreadsheet.4.1.0/FsWorksheet.fs.js +398 -0
  141. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRange.fs +19 -0
  142. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRange.fs.js +41 -0
  143. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeAddress.fs +222 -0
  144. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeAddress.fs.js +235 -0
  145. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeBase.fs +93 -0
  146. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeBase.fs.js +91 -0
  147. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeColumn.fs +65 -0
  148. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeColumn.fs.js +74 -0
  149. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeRow.fs +22 -0
  150. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeRow.fs.js +40 -0
  151. package/fable_modules/FsSpreadsheet.4.1.0/SheetBuilder.fs +249 -0
  152. package/fable_modules/FsSpreadsheet.4.1.0/SheetBuilder.fs.js +325 -0
  153. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTable.fs +455 -0
  154. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTable.fs.js +310 -0
  155. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableField.fs +140 -0
  156. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableField.fs.js +173 -0
  157. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableRow.fs +6 -0
  158. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableRow.fs.js +17 -0
  159. package/fable_modules/FsSpreadsheet.4.1.0/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  160. package/fable_modules/FsSpreadsheet.4.1.0/obj/Debug/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +19 -0
  161. package/fable_modules/FsSpreadsheet.4.1.0/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  162. package/fable_modules/FsSpreadsheet.4.1.0/obj/Release/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +19 -0
  163. package/fable_modules/Thoth.Json.10.1.0/Decode.fs +1366 -0
  164. package/fable_modules/Thoth.Json.10.1.0/Decode.fs.js +1798 -0
  165. package/fable_modules/Thoth.Json.10.1.0/Encode.fs +621 -0
  166. package/fable_modules/Thoth.Json.10.1.0/Encode.fs.js +472 -0
  167. package/fable_modules/Thoth.Json.10.1.0/Extra.fs +31 -0
  168. package/fable_modules/Thoth.Json.10.1.0/Extra.fs.js +8 -0
  169. package/fable_modules/Thoth.Json.10.1.0/Thoth.Json.fableproj +30 -0
  170. package/fable_modules/Thoth.Json.10.1.0/Types.fs +59 -0
  171. package/fable_modules/Thoth.Json.10.1.0/Types.fs.js +98 -0
  172. package/fable_modules/Thoth.Json.10.1.0/obj/Release/netstandard2.0/Thoth.Json.AssemblyInfo.fs +19 -0
  173. package/fable_modules/Thoth.Json.10.1.0/package.json +5 -0
  174. package/fable_modules/fable-library.4.1.4/Array.d.ts +120 -0
  175. package/fable_modules/fable-library.4.1.4/Array.js +1204 -0
  176. package/fable_modules/fable-library.4.1.4/Async.d.ts +32 -0
  177. package/fable_modules/fable-library.4.1.4/Async.js +158 -0
  178. package/fable_modules/fable-library.4.1.4/AsyncBuilder.d.ts +59 -0
  179. package/fable_modules/fable-library.4.1.4/AsyncBuilder.js +183 -0
  180. package/fable_modules/fable-library.4.1.4/BigInt.d.ts +115 -0
  181. package/fable_modules/fable-library.4.1.4/BigInt.js +282 -0
  182. package/fable_modules/fable-library.4.1.4/BitConverter.d.ts +27 -0
  183. package/fable_modules/fable-library.4.1.4/BitConverter.js +138 -0
  184. package/fable_modules/fable-library.4.1.4/Boolean.d.ts +3 -0
  185. package/fable_modules/fable-library.4.1.4/Boolean.js +21 -0
  186. package/fable_modules/fable-library.4.1.4/Char.d.ts +65 -0
  187. package/fable_modules/fable-library.4.1.4/Char.js +169 -0
  188. package/fable_modules/fable-library.4.1.4/Choice.d.ts +138 -0
  189. package/fable_modules/fable-library.4.1.4/Choice.js +227 -0
  190. package/fable_modules/fable-library.4.1.4/Date.d.ts +70 -0
  191. package/fable_modules/fable-library.4.1.4/Date.js +451 -0
  192. package/fable_modules/fable-library.4.1.4/DateOffset.d.ts +63 -0
  193. package/fable_modules/fable-library.4.1.4/DateOffset.js +268 -0
  194. package/fable_modules/fable-library.4.1.4/DateOnly.d.ts +18 -0
  195. package/fable_modules/fable-library.4.1.4/DateOnly.js +124 -0
  196. package/fable_modules/fable-library.4.1.4/Decimal.d.ts +45 -0
  197. package/fable_modules/fable-library.4.1.4/Decimal.js +212 -0
  198. package/fable_modules/fable-library.4.1.4/Double.d.ts +11 -0
  199. package/fable_modules/fable-library.4.1.4/Double.js +46 -0
  200. package/fable_modules/fable-library.4.1.4/Encoding.d.ts +12 -0
  201. package/fable_modules/fable-library.4.1.4/Encoding.js +173 -0
  202. package/fable_modules/fable-library.4.1.4/Event.d.ts +31 -0
  203. package/fable_modules/fable-library.4.1.4/Event.js +93 -0
  204. package/fable_modules/fable-library.4.1.4/FSharp.Collections.d.ts +7 -0
  205. package/fable_modules/fable-library.4.1.4/FSharp.Collections.js +27 -0
  206. package/fable_modules/fable-library.4.1.4/FSharp.Core.d.ts +17 -0
  207. package/fable_modules/fable-library.4.1.4/FSharp.Core.js +69 -0
  208. package/fable_modules/fable-library.4.1.4/Global.d.ts +24 -0
  209. package/fable_modules/fable-library.4.1.4/Global.js +8 -0
  210. package/fable_modules/fable-library.4.1.4/Guid.d.ts +10 -0
  211. package/fable_modules/fable-library.4.1.4/Guid.js +142 -0
  212. package/fable_modules/fable-library.4.1.4/Int32.d.ts +28 -0
  213. package/fable_modules/fable-library.4.1.4/Int32.js +135 -0
  214. package/fable_modules/fable-library.4.1.4/List.d.ts +143 -0
  215. package/fable_modules/fable-library.4.1.4/List.js +1273 -0
  216. package/fable_modules/fable-library.4.1.4/Long.d.ts +3 -0
  217. package/fable_modules/fable-library.4.1.4/Long.js +46 -0
  218. package/fable_modules/fable-library.4.1.4/MailboxProcessor.d.ts +25 -0
  219. package/fable_modules/fable-library.4.1.4/MailboxProcessor.js +93 -0
  220. package/fable_modules/fable-library.4.1.4/Map.d.ts +178 -0
  221. package/fable_modules/fable-library.4.1.4/Map.js +1396 -0
  222. package/fable_modules/fable-library.4.1.4/MapUtil.d.ts +10 -0
  223. package/fable_modules/fable-library.4.1.4/MapUtil.js +112 -0
  224. package/fable_modules/fable-library.4.1.4/MutableMap.d.ts +52 -0
  225. package/fable_modules/fable-library.4.1.4/MutableMap.js +326 -0
  226. package/fable_modules/fable-library.4.1.4/MutableSet.d.ts +39 -0
  227. package/fable_modules/fable-library.4.1.4/MutableSet.js +232 -0
  228. package/fable_modules/fable-library.4.1.4/Native.d.ts +2 -0
  229. package/fable_modules/fable-library.4.1.4/Native.js +8 -0
  230. package/fable_modules/fable-library.4.1.4/Numeric.d.ts +19 -0
  231. package/fable_modules/fable-library.4.1.4/Numeric.js +71 -0
  232. package/fable_modules/fable-library.4.1.4/Observable.d.ts +32 -0
  233. package/fable_modules/fable-library.4.1.4/Observable.js +113 -0
  234. package/fable_modules/fable-library.4.1.4/Option.d.ts +28 -0
  235. package/fable_modules/fable-library.4.1.4/Option.js +96 -0
  236. package/fable_modules/fable-library.4.1.4/README.md +3 -0
  237. package/fable_modules/fable-library.4.1.4/Random.d.ts +37 -0
  238. package/fable_modules/fable-library.4.1.4/Random.js +170 -0
  239. package/fable_modules/fable-library.4.1.4/Range.d.ts +12 -0
  240. package/fable_modules/fable-library.4.1.4/Range.js +45 -0
  241. package/fable_modules/fable-library.4.1.4/Reflection.d.ts +119 -0
  242. package/fable_modules/fable-library.4.1.4/Reflection.js +461 -0
  243. package/fable_modules/fable-library.4.1.4/RegExp.d.ts +10 -0
  244. package/fable_modules/fable-library.4.1.4/RegExp.js +132 -0
  245. package/fable_modules/fable-library.4.1.4/Seq.d.ts +165 -0
  246. package/fable_modules/fable-library.4.1.4/Seq.js +1379 -0
  247. package/fable_modules/fable-library.4.1.4/Seq2.d.ts +18 -0
  248. package/fable_modules/fable-library.4.1.4/Seq2.js +111 -0
  249. package/fable_modules/fable-library.4.1.4/Set.d.ts +190 -0
  250. package/fable_modules/fable-library.4.1.4/Set.js +1789 -0
  251. package/fable_modules/fable-library.4.1.4/String.d.ts +49 -0
  252. package/fable_modules/fable-library.4.1.4/String.js +540 -0
  253. package/fable_modules/fable-library.4.1.4/System.Collections.Generic.d.ts +71 -0
  254. package/fable_modules/fable-library.4.1.4/System.Collections.Generic.js +307 -0
  255. package/fable_modules/fable-library.4.1.4/System.Text.d.ts +30 -0
  256. package/fable_modules/fable-library.4.1.4/System.Text.js +110 -0
  257. package/fable_modules/fable-library.4.1.4/SystemException.d.ts +5 -0
  258. package/fable_modules/fable-library.4.1.4/SystemException.js +5 -0
  259. package/fable_modules/fable-library.4.1.4/TimeOnly.d.ts +15 -0
  260. package/fable_modules/fable-library.4.1.4/TimeOnly.js +122 -0
  261. package/fable_modules/fable-library.4.1.4/TimeSpan.d.ts +34 -0
  262. package/fable_modules/fable-library.4.1.4/TimeSpan.js +177 -0
  263. package/fable_modules/fable-library.4.1.4/Timer.d.ts +19 -0
  264. package/fable_modules/fable-library.4.1.4/Timer.js +67 -0
  265. package/fable_modules/fable-library.4.1.4/Types.d.ts +58 -0
  266. package/fable_modules/fable-library.4.1.4/Types.js +208 -0
  267. package/fable_modules/fable-library.4.1.4/Unicode.13.0.0.d.ts +2 -0
  268. package/fable_modules/fable-library.4.1.4/Unicode.13.0.0.js +4 -0
  269. package/fable_modules/fable-library.4.1.4/Uri.d.ts +29 -0
  270. package/fable_modules/fable-library.4.1.4/Uri.js +142 -0
  271. package/fable_modules/fable-library.4.1.4/Util.d.ts +187 -0
  272. package/fable_modules/fable-library.4.1.4/Util.js +662 -0
  273. package/fable_modules/fable-library.4.1.4/lib/big.d.ts +338 -0
  274. package/fable_modules/fable-library.4.1.4/lib/big.js +826 -0
  275. package/fable_modules/fable-library.4.1.4/package.json +23 -0
  276. package/fable_modules/project_cracked.json +1 -0
  277. package/package.json +22 -0
@@ -0,0 +1,180 @@
1
+ import { int32ToString } from "../../../fable_modules/fable-library.4.1.4/Util.js";
2
+ import { defaultArg } from "../../../fable_modules/fable-library.4.1.4/Option.js";
3
+ import { OntologyAnnotation_$reflection, OntologyAnnotation } from "../JsonTypes/OntologyAnnotation.js";
4
+ import { AnnotationValue } from "../JsonTypes/AnnotationValue.js";
5
+ import { Union } from "../../../fable_modules/fable-library.4.1.4/Types.js";
6
+ import { union_type, string_type } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
7
+
8
+ export class CompositeCell extends Union {
9
+ constructor(tag, fields) {
10
+ super();
11
+ this.tag = tag;
12
+ this.fields = fields;
13
+ }
14
+ cases() {
15
+ return ["Term", "FreeText", "Unitized"];
16
+ }
17
+ static fromValue(value, unit) {
18
+ let matchResult, t, i, i_1, u, f, f_1, u_1, s;
19
+ switch (value.tag) {
20
+ case 1: {
21
+ if (unit != null) {
22
+ matchResult = 2;
23
+ i_1 = value.fields[0];
24
+ u = unit;
25
+ }
26
+ else {
27
+ matchResult = 1;
28
+ i = value.fields[0];
29
+ }
30
+ break;
31
+ }
32
+ case 2: {
33
+ if (unit != null) {
34
+ matchResult = 4;
35
+ f_1 = value.fields[0];
36
+ u_1 = unit;
37
+ }
38
+ else {
39
+ matchResult = 3;
40
+ f = value.fields[0];
41
+ }
42
+ break;
43
+ }
44
+ case 3: {
45
+ if (unit == null) {
46
+ matchResult = 5;
47
+ s = value.fields[0];
48
+ }
49
+ else {
50
+ matchResult = 6;
51
+ }
52
+ break;
53
+ }
54
+ default:
55
+ if (unit == null) {
56
+ matchResult = 0;
57
+ t = value.fields[0];
58
+ }
59
+ else {
60
+ matchResult = 6;
61
+ }
62
+ }
63
+ switch (matchResult) {
64
+ case 0:
65
+ return new CompositeCell(0, [t]);
66
+ case 1:
67
+ return new CompositeCell(1, [int32ToString(i)]);
68
+ case 2:
69
+ return new CompositeCell(2, [int32ToString(i_1), u]);
70
+ case 3:
71
+ return new CompositeCell(1, [f.toString()]);
72
+ case 4:
73
+ return new CompositeCell(2, [f_1.toString(), u_1]);
74
+ case 5:
75
+ return new CompositeCell(1, [s]);
76
+ default:
77
+ throw new Error("could not convert value to cell, invalid combination of value and unit");
78
+ }
79
+ }
80
+ get isUnitized() {
81
+ const this$ = this;
82
+ return this$.tag === 2;
83
+ }
84
+ get isTerm() {
85
+ const this$ = this;
86
+ return this$.tag === 0;
87
+ }
88
+ get isFreeText() {
89
+ const this$ = this;
90
+ return this$.tag === 1;
91
+ }
92
+ GetContent() {
93
+ const this$ = this;
94
+ switch (this$.tag) {
95
+ case 0: {
96
+ const oa = this$.fields[0];
97
+ return [oa.NameText, defaultArg(oa.TermSourceREF, ""), defaultArg(oa.TermAccessionNumber, "")];
98
+ }
99
+ case 2: {
100
+ const oa_1 = this$.fields[1];
101
+ return [this$.fields[0], oa_1.NameText, defaultArg(oa_1.TermSourceREF, ""), defaultArg(oa_1.TermAccessionNumber, "")];
102
+ }
103
+ default:
104
+ return [this$.fields[0]];
105
+ }
106
+ }
107
+ ToUnitizedCell() {
108
+ const this$ = this;
109
+ return (this$.tag === 1) ? (new CompositeCell(2, ["", OntologyAnnotation.create(void 0, new AnnotationValue(0, [this$.fields[0]]))])) : ((this$.tag === 0) ? (new CompositeCell(2, ["", this$.fields[0]])) : this$);
110
+ }
111
+ ToTermCell() {
112
+ const this$ = this;
113
+ return (this$.tag === 2) ? (new CompositeCell(0, [this$.fields[1]])) : ((this$.tag === 1) ? (new CompositeCell(0, [OntologyAnnotation.create(void 0, new AnnotationValue(0, [this$.fields[0]]))])) : this$);
114
+ }
115
+ ToFreeTextCell() {
116
+ const this$ = this;
117
+ return (this$.tag === 0) ? (new CompositeCell(1, [this$.fields[0].NameText])) : ((this$.tag === 2) ? (new CompositeCell(1, [this$.fields[1].NameText])) : this$);
118
+ }
119
+ get AsUnitized() {
120
+ const this$ = this;
121
+ if (this$.tag === 2) {
122
+ return [this$.fields[0], this$.fields[1]];
123
+ }
124
+ else {
125
+ throw new Error("Not a Unitized cell.");
126
+ }
127
+ }
128
+ get AsTerm() {
129
+ const this$ = this;
130
+ if (this$.tag === 0) {
131
+ return this$.fields[0];
132
+ }
133
+ else {
134
+ throw new Error("Not a Swate TermCell.");
135
+ }
136
+ }
137
+ get AsFreeText() {
138
+ const this$ = this;
139
+ if (this$.tag === 1) {
140
+ return this$.fields[0];
141
+ }
142
+ else {
143
+ throw new Error("Not a Swate TermCell.");
144
+ }
145
+ }
146
+ static createTerm(oa) {
147
+ return new CompositeCell(0, [oa]);
148
+ }
149
+ static createTermFromString(name, tsr, tan) {
150
+ return new CompositeCell(0, [OntologyAnnotation.fromString(name, tsr, tan)]);
151
+ }
152
+ static createUnitized(value, oa) {
153
+ return new CompositeCell(2, [value, defaultArg(oa, OntologyAnnotation.empty)]);
154
+ }
155
+ static createUnitizedFromString(value, name, tsr, tan) {
156
+ const tupledArg = [value, OntologyAnnotation.fromString(name, tsr, tan)];
157
+ return new CompositeCell(2, [tupledArg[0], tupledArg[1]]);
158
+ }
159
+ static createFreeText(value) {
160
+ return new CompositeCell(1, [value]);
161
+ }
162
+ static get emptyTerm() {
163
+ return new CompositeCell(0, [OntologyAnnotation.empty]);
164
+ }
165
+ static get emptyFreeText() {
166
+ return new CompositeCell(1, [""]);
167
+ }
168
+ static get emptyUnitized() {
169
+ return new CompositeCell(2, ["", OntologyAnnotation.empty]);
170
+ }
171
+ toString() {
172
+ const this$ = this;
173
+ return (this$.tag === 1) ? this$.fields[0] : ((this$.tag === 2) ? (`${this$.fields[0]} ${this$.fields[1].NameText}`) : (`${this$.fields[0].NameText}`));
174
+ }
175
+ }
176
+
177
+ export function CompositeCell_$reflection() {
178
+ return union_type("ARCtrl.ISA.CompositeCell", [], CompositeCell, () => [[["Item", OntologyAnnotation_$reflection()]], [["Item", string_type]], [["Item1", string_type], ["Item2", OntologyAnnotation_$reflection()]]]);
179
+ }
180
+
@@ -0,0 +1,42 @@
1
+ import { defaultArg } from "../../../fable_modules/fable-library.4.1.4/Option.js";
2
+ import { Record } from "../../../fable_modules/fable-library.4.1.4/Types.js";
3
+ import { CompositeHeader_$reflection } from "./CompositeHeader.js";
4
+ import { CompositeCell_$reflection } from "./CompositeCell.js";
5
+ import { record_type, array_type } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
6
+
7
+ export class CompositeColumn extends Record {
8
+ constructor(Header, Cells) {
9
+ super();
10
+ this.Header = Header;
11
+ this.Cells = Cells;
12
+ }
13
+ static create(header, cells) {
14
+ return new CompositeColumn(header, defaultArg(cells, []));
15
+ }
16
+ validate(raiseException) {
17
+ const this$ = this;
18
+ const raiseExeption = defaultArg(raiseException, false);
19
+ const header = this$.Header;
20
+ const cells = this$.Cells;
21
+ if (cells.length === 0) {
22
+ return true;
23
+ }
24
+ else if (header.IsTermColumn && (cells[0].isTerm ? true : cells[0].isUnitized)) {
25
+ return true;
26
+ }
27
+ else if (!header.IsTermColumn && cells[0].isFreeText) {
28
+ return true;
29
+ }
30
+ else {
31
+ if (raiseExeption) {
32
+ throw new Error(`Invalid combination of header \`${header}\` and cells \`${cells[0]}\``);
33
+ }
34
+ return false;
35
+ }
36
+ }
37
+ }
38
+
39
+ export function CompositeColumn_$reflection() {
40
+ return record_type("ARCtrl.ISA.CompositeColumn", [], CompositeColumn, () => [["Header", CompositeHeader_$reflection()], ["Cells", array_type(CompositeCell_$reflection())]]);
41
+ }
42
+
@@ -0,0 +1,358 @@
1
+ import { map } from "../../../fable_modules/fable-library.4.1.4/Array.js";
2
+ import { union_type, string_type, getUnionCases, name } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
3
+ import { Union, toString } from "../../../fable_modules/fable-library.4.1.4/Types.js";
4
+ import { ActivePatterns_$007CTermColumn$007C_$007C, Pattern_OutputPattern, Pattern_InputPattern, ActivePatterns_$007CRegex$007C_$007C, tryParseIOTypeHeader } from "../Regex.js";
5
+ import { printf, toFail } from "../../../fable_modules/fable-library.4.1.4/String.js";
6
+ import { OntologyAnnotation_$reflection, OntologyAnnotation } from "../JsonTypes/OntologyAnnotation.js";
7
+ import { ProtocolParameter_create_Z6C54B221 } from "../JsonTypes/ProtocolParameter.js";
8
+ import { Factor } from "../JsonTypes/Factor.js";
9
+ import { MaterialAttribute_create_Z6C54B221 } from "../JsonTypes/MaterialAttribute.js";
10
+ import { Component_create_61502994 } from "../JsonTypes/Component.js";
11
+
12
+ export class IOType extends Union {
13
+ constructor(tag, fields) {
14
+ super();
15
+ this.tag = tag;
16
+ this.fields = fields;
17
+ }
18
+ cases() {
19
+ return ["Source", "Sample", "RawDataFile", "DerivedDataFile", "ImageFile", "Material", "FreeText"];
20
+ }
21
+ static get All() {
22
+ return [new IOType(0, []), new IOType(1, []), new IOType(2, []), new IOType(3, []), new IOType(4, []), new IOType(5, [])];
23
+ }
24
+ static get Cases() {
25
+ return map((x) => [x.tag, name(x)], getUnionCases(IOType_$reflection()));
26
+ }
27
+ get asInput() {
28
+ const this$ = this;
29
+ const stringCreate = (x) => {
30
+ let copyOfStruct;
31
+ return `Input [${(copyOfStruct = x, toString(copyOfStruct))}]`;
32
+ };
33
+ return (this$.tag === 6) ? stringCreate(this$.fields[0]) : stringCreate(this$);
34
+ }
35
+ get asOutput() {
36
+ const this$ = this;
37
+ const stringCreate = (x) => {
38
+ let copyOfStruct;
39
+ return `Output [${(copyOfStruct = x, toString(copyOfStruct))}]`;
40
+ };
41
+ return (this$.tag === 6) ? stringCreate(this$.fields[0]) : stringCreate(this$);
42
+ }
43
+ toString() {
44
+ const this$ = this;
45
+ return (this$.tag === 1) ? "Sample Name" : ((this$.tag === 2) ? "Raw Data File" : ((this$.tag === 3) ? "Derived Data File" : ((this$.tag === 4) ? "Image File" : ((this$.tag === 5) ? "Material" : ((this$.tag === 6) ? this$.fields[0] : "Source Name")))));
46
+ }
47
+ static ofString(str) {
48
+ return (str === "Source") ? (new IOType(0, [])) : ((str === "Source Name") ? (new IOType(0, [])) : ((str === "Sample") ? (new IOType(1, [])) : ((str === "Sample Name") ? (new IOType(1, [])) : ((str === "RawDataFile") ? (new IOType(2, [])) : ((str === "Raw Data File") ? (new IOType(2, [])) : ((str === "DerivedDataFile") ? (new IOType(3, [])) : ((str === "Derived Data File") ? (new IOType(3, [])) : ((str === "ImageFile") ? (new IOType(4, [])) : ((str === "Image File") ? (new IOType(4, [])) : ((str === "Material") ? (new IOType(5, [])) : (new IOType(6, [str]))))))))))));
49
+ }
50
+ static tryOfHeaderString(str) {
51
+ const matchValue = tryParseIOTypeHeader(str);
52
+ if (matchValue == null) {
53
+ return void 0;
54
+ }
55
+ else {
56
+ const s = matchValue;
57
+ return IOType.ofString(s);
58
+ }
59
+ }
60
+ }
61
+
62
+ export function IOType_$reflection() {
63
+ return union_type("ARCtrl.ISA.IOType", [], IOType, () => [[], [], [], [], [], [], [["Item", string_type]]]);
64
+ }
65
+
66
+ export class CompositeHeader extends Union {
67
+ constructor(tag, fields) {
68
+ super();
69
+ this.tag = tag;
70
+ this.fields = fields;
71
+ }
72
+ cases() {
73
+ return ["Component", "Characteristic", "Factor", "Parameter", "ProtocolType", "ProtocolDescription", "ProtocolUri", "ProtocolVersion", "ProtocolREF", "Performer", "Date", "Input", "Output", "FreeText"];
74
+ }
75
+ static get Cases() {
76
+ return map((x) => [x.tag, name(x)], getUnionCases(CompositeHeader_$reflection()));
77
+ }
78
+ static jsGetColumnMetaType(inp) {
79
+ return (inp === 0) ? 1 : ((inp === 1) ? 1 : ((inp === 2) ? 1 : ((inp === 3) ? 1 : ((inp === 4) ? 0 : ((inp === 5) ? 0 : ((inp === 6) ? 0 : ((inp === 7) ? 0 : ((inp === 8) ? 0 : ((inp === 9) ? 0 : ((inp === 10) ? 0 : ((inp === 11) ? 2 : ((inp === 12) ? 2 : ((inp === 13) ? 3 : toFail(printf("Cannot assign input `Tag` (%i) to `CompositeHeader`"))(inp))))))))))))));
80
+ }
81
+ toString() {
82
+ const this$ = this;
83
+ return (this$.tag === 2) ? (`Factor [${this$.fields[0].NameText}]`) : ((this$.tag === 1) ? (`Characteristic [${this$.fields[0].NameText}]`) : ((this$.tag === 0) ? (`Component [${this$.fields[0].NameText}]`) : ((this$.tag === 4) ? "Protocol Type" : ((this$.tag === 8) ? "Protocol REF" : ((this$.tag === 5) ? "Protocol Description" : ((this$.tag === 6) ? "Protocol Uri" : ((this$.tag === 7) ? "Protocol Version" : ((this$.tag === 9) ? "Performer" : ((this$.tag === 10) ? "Date" : ((this$.tag === 11) ? this$.fields[0].asInput : ((this$.tag === 12) ? this$.fields[0].asOutput : ((this$.tag === 13) ? this$.fields[0] : (`Parameter [${this$.fields[0].NameText}]`)))))))))))));
84
+ }
85
+ ToTerm() {
86
+ const this$ = this;
87
+ return (this$.tag === 2) ? this$.fields[0] : ((this$.tag === 1) ? this$.fields[0] : ((this$.tag === 0) ? this$.fields[0] : ((this$.tag === 4) ? OntologyAnnotation.fromString("Protocol Type") : ((this$.tag === 8) ? OntologyAnnotation.fromString("Protocol REF") : ((this$.tag === 5) ? OntologyAnnotation.fromString("Protocol Description") : ((this$.tag === 6) ? OntologyAnnotation.fromString("Protocol Uri") : ((this$.tag === 7) ? OntologyAnnotation.fromString("Protocol Version") : ((this$.tag === 9) ? OntologyAnnotation.fromString("Performer") : ((this$.tag === 10) ? OntologyAnnotation.fromString("Date") : ((this$.tag === 11) ? OntologyAnnotation.fromString(this$.fields[0].asInput) : ((this$.tag === 12) ? OntologyAnnotation.fromString(this$.fields[0].asOutput) : ((this$.tag === 13) ? OntologyAnnotation.fromString(this$.fields[0]) : this$.fields[0]))))))))))));
88
+ }
89
+ static OfHeaderString(str) {
90
+ const matchValue = str.trim();
91
+ const activePatternResult = ActivePatterns_$007CRegex$007C_$007C(Pattern_InputPattern, matchValue);
92
+ if (activePatternResult != null) {
93
+ const r = activePatternResult;
94
+ const iotype = (r.groups && r.groups.iotype) || "";
95
+ return new CompositeHeader(11, [IOType.ofString(iotype)]);
96
+ }
97
+ else {
98
+ const activePatternResult_1 = ActivePatterns_$007CRegex$007C_$007C(Pattern_OutputPattern, matchValue);
99
+ if (activePatternResult_1 != null) {
100
+ const r_1 = activePatternResult_1;
101
+ const iotype_1 = (r_1.groups && r_1.groups.iotype) || "";
102
+ return new CompositeHeader(12, [IOType.ofString(iotype_1)]);
103
+ }
104
+ else {
105
+ const activePatternResult_2 = ActivePatterns_$007CTermColumn$007C_$007C(matchValue);
106
+ if (activePatternResult_2 != null) {
107
+ const r_2 = activePatternResult_2;
108
+ const matchValue_1 = r_2.TermColumnType;
109
+ switch (matchValue_1) {
110
+ case "Parameter":
111
+ case "Parameter Value":
112
+ return new CompositeHeader(3, [OntologyAnnotation.fromString(r_2.TermName)]);
113
+ case "Factor":
114
+ case "Factor Value":
115
+ return new CompositeHeader(2, [OntologyAnnotation.fromString(r_2.TermName)]);
116
+ case "Characteristic":
117
+ case "Characteristics":
118
+ case "Characteristics Value":
119
+ return new CompositeHeader(1, [OntologyAnnotation.fromString(r_2.TermName)]);
120
+ case "Component":
121
+ return new CompositeHeader(0, [OntologyAnnotation.fromString(r_2.TermName)]);
122
+ default:
123
+ return new CompositeHeader(13, [str]);
124
+ }
125
+ }
126
+ else {
127
+ return (matchValue === "Date") ? (new CompositeHeader(10, [])) : ((matchValue === "Performer") ? (new CompositeHeader(9, [])) : ((matchValue === "Protocol Description") ? (new CompositeHeader(5, [])) : ((matchValue === "Protocol Uri") ? (new CompositeHeader(6, [])) : ((matchValue === "Protocol Version") ? (new CompositeHeader(7, [])) : ((matchValue === "Protocol Type") ? (new CompositeHeader(4, [])) : ((matchValue === "Protocol REF") ? (new CompositeHeader(8, [])) : (new CompositeHeader(13, [matchValue]))))))));
128
+ }
129
+ }
130
+ }
131
+ }
132
+ get IsDeprecated() {
133
+ const this$ = this;
134
+ let matchResult, s_4, s_5, s_6, s_7;
135
+ if (this$.tag === 13) {
136
+ if (this$.fields[0].toLocaleLowerCase() === "sample name") {
137
+ matchResult = 0;
138
+ s_4 = this$.fields[0];
139
+ }
140
+ else if (this$.fields[0].toLocaleLowerCase() === "source name") {
141
+ matchResult = 1;
142
+ s_5 = this$.fields[0];
143
+ }
144
+ else if (this$.fields[0].toLocaleLowerCase() === "data file name") {
145
+ matchResult = 2;
146
+ s_6 = this$.fields[0];
147
+ }
148
+ else if (this$.fields[0].toLocaleLowerCase() === "derived data file") {
149
+ matchResult = 3;
150
+ s_7 = this$.fields[0];
151
+ }
152
+ else {
153
+ matchResult = 4;
154
+ }
155
+ }
156
+ else {
157
+ matchResult = 4;
158
+ }
159
+ switch (matchResult) {
160
+ case 0:
161
+ return true;
162
+ case 1:
163
+ return true;
164
+ case 2:
165
+ return true;
166
+ case 3:
167
+ return true;
168
+ default:
169
+ return false;
170
+ }
171
+ }
172
+ get IsCvParamColumn() {
173
+ const this$ = this;
174
+ switch (this$.tag) {
175
+ case 3:
176
+ case 2:
177
+ case 1:
178
+ case 0:
179
+ return true;
180
+ default:
181
+ return false;
182
+ }
183
+ }
184
+ get IsTermColumn() {
185
+ const this$ = this;
186
+ switch (this$.tag) {
187
+ case 3:
188
+ case 2:
189
+ case 1:
190
+ case 0:
191
+ case 4:
192
+ return true;
193
+ default:
194
+ return false;
195
+ }
196
+ }
197
+ get IsFeaturedColumn() {
198
+ const this$ = this;
199
+ return this$.tag === 4;
200
+ }
201
+ get GetFeaturedColumnAccession() {
202
+ const this$ = this;
203
+ if (this$.tag === 4) {
204
+ return "DPBO:1000161";
205
+ }
206
+ else {
207
+ throw new Error(`Tried matching ${this$} in getFeaturedColumnAccession, but is not a featured column.`);
208
+ }
209
+ }
210
+ get GetColumnAccessionShort() {
211
+ const this$ = this;
212
+ switch (this$.tag) {
213
+ case 4:
214
+ return this$.GetFeaturedColumnAccession;
215
+ case 3:
216
+ return this$.fields[0].TermAccessionShort;
217
+ case 2:
218
+ return this$.fields[0].TermAccessionShort;
219
+ case 1:
220
+ return this$.fields[0].TermAccessionShort;
221
+ case 0:
222
+ return this$.fields[0].TermAccessionShort;
223
+ default:
224
+ throw new Error(`Tried matching ${this$}, but is not a column with an accession.`);
225
+ }
226
+ }
227
+ get IsSingleColumn() {
228
+ const this$ = this;
229
+ switch (this$.tag) {
230
+ case 13:
231
+ case 11:
232
+ case 12:
233
+ case 8:
234
+ case 5:
235
+ case 6:
236
+ case 7:
237
+ case 9:
238
+ case 10:
239
+ return true;
240
+ default:
241
+ return false;
242
+ }
243
+ }
244
+ get IsIOType() {
245
+ const this$ = this;
246
+ let matchResult, io;
247
+ switch (this$.tag) {
248
+ case 11: {
249
+ matchResult = 0;
250
+ io = this$.fields[0];
251
+ break;
252
+ }
253
+ case 12: {
254
+ matchResult = 0;
255
+ io = this$.fields[0];
256
+ break;
257
+ }
258
+ default:
259
+ matchResult = 1;
260
+ }
261
+ switch (matchResult) {
262
+ case 0:
263
+ return true;
264
+ default:
265
+ return false;
266
+ }
267
+ }
268
+ get isInput() {
269
+ const this$ = this;
270
+ return this$.tag === 11;
271
+ }
272
+ get isOutput() {
273
+ const this$ = this;
274
+ return this$.tag === 11;
275
+ }
276
+ get isParameter() {
277
+ const this$ = this;
278
+ return this$.tag === 3;
279
+ }
280
+ get isFactor() {
281
+ const this$ = this;
282
+ return this$.tag === 2;
283
+ }
284
+ get isCharacteristic() {
285
+ const this$ = this;
286
+ return this$.tag === 1;
287
+ }
288
+ get isComponent() {
289
+ const this$ = this;
290
+ return this$.tag === 0;
291
+ }
292
+ get isProtocolType() {
293
+ const this$ = this;
294
+ return this$.tag === 4;
295
+ }
296
+ get isProtocolREF() {
297
+ const this$ = this;
298
+ return this$.tag === 8;
299
+ }
300
+ get isProtocolDescription() {
301
+ const this$ = this;
302
+ return this$.tag === 5;
303
+ }
304
+ get isProtocolUri() {
305
+ const this$ = this;
306
+ return this$.tag === 6;
307
+ }
308
+ get isProtocolVersion() {
309
+ const this$ = this;
310
+ return this$.tag === 7;
311
+ }
312
+ get isProtocolColumn() {
313
+ const this$ = this;
314
+ switch (this$.tag) {
315
+ case 8:
316
+ case 5:
317
+ case 6:
318
+ case 7:
319
+ case 4:
320
+ return true;
321
+ default:
322
+ return false;
323
+ }
324
+ }
325
+ get isPerformer() {
326
+ const this$ = this;
327
+ return this$.tag === 9;
328
+ }
329
+ get isDate() {
330
+ const this$ = this;
331
+ return this$.tag === 10;
332
+ }
333
+ get isFreeText() {
334
+ const this$ = this;
335
+ return this$.tag === 13;
336
+ }
337
+ TryParameter() {
338
+ const this$ = this;
339
+ return (this$.tag === 3) ? ProtocolParameter_create_Z6C54B221(void 0, this$.fields[0]) : void 0;
340
+ }
341
+ TryFactor() {
342
+ const this$ = this;
343
+ return (this$.tag === 2) ? Factor.create(void 0, void 0, this$.fields[0]) : void 0;
344
+ }
345
+ TryCharacteristic() {
346
+ const this$ = this;
347
+ return (this$.tag === 1) ? MaterialAttribute_create_Z6C54B221(void 0, this$.fields[0]) : void 0;
348
+ }
349
+ TryComponent() {
350
+ const this$ = this;
351
+ return (this$.tag === 0) ? Component_create_61502994(void 0, void 0, void 0, this$.fields[0]) : void 0;
352
+ }
353
+ }
354
+
355
+ export function CompositeHeader_$reflection() {
356
+ return union_type("ARCtrl.ISA.CompositeHeader", [], CompositeHeader, () => [[["Item", OntologyAnnotation_$reflection()]], [["Item", OntologyAnnotation_$reflection()]], [["Item", OntologyAnnotation_$reflection()]], [["Item", OntologyAnnotation_$reflection()]], [], [], [], [], [], [], [], [["Item", IOType_$reflection()]], [["Item", IOType_$reflection()]], [["Item", string_type]]]);
357
+ }
358
+
@@ -0,0 +1,111 @@
1
+ import { fold } from "../../../fable_modules/fable-library.4.1.4/Seq.js";
2
+ import { Protocol_create_Z7DFD6E67, Protocol_addComponent, Protocol_addParameter, Protocol_setName, Protocol_setDescription, Protocol_setUri, Protocol_setVersion, Protocol_setProtocolType } from "../JsonTypes/Protocol.js";
3
+ import { ProtocolParameter_create_Z6C54B221 } from "../JsonTypes/ProtocolParameter.js";
4
+ import { Component_create_61502994 } from "../JsonTypes/Component.js";
5
+ import { Value, Value_fromString_Z721C83C5 } from "../JsonTypes/Value.js";
6
+
7
+ export function toProtocol(tableName, row) {
8
+ return fold((p, hc) => {
9
+ let matchResult, oa, v, v_1, v_2, v_3, oa_1, oa_2, unit, v_4, oa_3, t;
10
+ switch (hc[0].tag) {
11
+ case 4: {
12
+ if (hc[1].tag === 0) {
13
+ matchResult = 0;
14
+ oa = hc[1].fields[0];
15
+ }
16
+ else {
17
+ matchResult = 8;
18
+ }
19
+ break;
20
+ }
21
+ case 7: {
22
+ if (hc[1].tag === 1) {
23
+ matchResult = 1;
24
+ v = hc[1].fields[0];
25
+ }
26
+ else {
27
+ matchResult = 8;
28
+ }
29
+ break;
30
+ }
31
+ case 6: {
32
+ if (hc[1].tag === 1) {
33
+ matchResult = 2;
34
+ v_1 = hc[1].fields[0];
35
+ }
36
+ else {
37
+ matchResult = 8;
38
+ }
39
+ break;
40
+ }
41
+ case 5: {
42
+ if (hc[1].tag === 1) {
43
+ matchResult = 3;
44
+ v_2 = hc[1].fields[0];
45
+ }
46
+ else {
47
+ matchResult = 8;
48
+ }
49
+ break;
50
+ }
51
+ case 8: {
52
+ if (hc[1].tag === 1) {
53
+ matchResult = 4;
54
+ v_3 = hc[1].fields[0];
55
+ }
56
+ else {
57
+ matchResult = 8;
58
+ }
59
+ break;
60
+ }
61
+ case 3: {
62
+ matchResult = 5;
63
+ oa_1 = hc[0].fields[0];
64
+ break;
65
+ }
66
+ case 0: {
67
+ switch (hc[1].tag) {
68
+ case 2: {
69
+ matchResult = 6;
70
+ oa_2 = hc[0].fields[0];
71
+ unit = hc[1].fields[1];
72
+ v_4 = hc[1].fields[0];
73
+ break;
74
+ }
75
+ case 0: {
76
+ matchResult = 7;
77
+ oa_3 = hc[0].fields[0];
78
+ t = hc[1].fields[0];
79
+ break;
80
+ }
81
+ default:
82
+ matchResult = 8;
83
+ }
84
+ break;
85
+ }
86
+ default:
87
+ matchResult = 8;
88
+ }
89
+ switch (matchResult) {
90
+ case 0:
91
+ return Protocol_setProtocolType(p, oa);
92
+ case 1:
93
+ return Protocol_setVersion(p, v);
94
+ case 2:
95
+ return Protocol_setUri(p, v_1);
96
+ case 3:
97
+ return Protocol_setDescription(p, v_2);
98
+ case 4:
99
+ return Protocol_setName(p, v_3);
100
+ case 5:
101
+ return Protocol_addParameter(ProtocolParameter_create_Z6C54B221(void 0, oa_1), p);
102
+ case 6:
103
+ return Protocol_addComponent(Component_create_61502994(void 0, Value_fromString_Z721C83C5(v_4), unit, oa_2), p);
104
+ case 7:
105
+ return Protocol_addComponent(Component_create_61502994(void 0, new Value(0, [t]), void 0, oa_3), p);
106
+ default:
107
+ return p;
108
+ }
109
+ }, Protocol_create_Z7DFD6E67(void 0, tableName), row);
110
+ }
111
+