@nfdi4plants/arctrl 1.0.0-beta.4 → 1.0.0-beta.6

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 (244) hide show
  1. package/ARC.js +84 -25
  2. package/Contract/Contract.js +16 -5
  3. package/Contracts/Contracts.ARCtrl.js +1 -3
  4. package/Contracts/Contracts.ArcTypes.js +269 -0
  5. package/Contracts/Contracts.Git.js +4 -4
  6. package/FileSystem/Commit.js +2 -2
  7. package/FileSystem/FileSystem.js +4 -4
  8. package/FileSystem/FileSystemTree.js +8 -8
  9. package/FileSystem/Path.js +2 -2
  10. package/FileSystemTree.js +1 -1
  11. package/ISA/ISA/ArcTypes/ArcTable.js +39 -13
  12. package/ISA/ISA/ArcTypes/ArcTableAux.js +12 -12
  13. package/ISA/ISA/ArcTypes/ArcTables.js +24 -14
  14. package/ISA/ISA/ArcTypes/ArcTypes.js +143 -61
  15. package/ISA/ISA/ArcTypes/CompositeCell.js +8 -4
  16. package/ISA/ISA/ArcTypes/CompositeColumn.js +26 -5
  17. package/ISA/ISA/ArcTypes/CompositeHeader.js +32 -8
  18. package/ISA/ISA/ArcTypes/CompositeRow.js +1 -1
  19. package/ISA/ISA/Builder/Types.js +5 -5
  20. package/ISA/ISA/Fable.js +5 -5
  21. package/ISA/ISA/Helper.js +163 -9
  22. package/ISA/ISA/Identifier.js +3 -3
  23. package/ISA/ISA/JsonTypes/AnnotationValue.js +5 -5
  24. package/ISA/ISA/JsonTypes/Assay.js +8 -8
  25. package/ISA/ISA/JsonTypes/AssayMaterials.js +4 -4
  26. package/ISA/ISA/JsonTypes/ColumnIndex.js +5 -5
  27. package/ISA/ISA/JsonTypes/Comment.js +3 -3
  28. package/ISA/ISA/JsonTypes/CommentList.js +4 -4
  29. package/ISA/ISA/JsonTypes/Component.js +5 -5
  30. package/ISA/ISA/JsonTypes/Data.js +4 -4
  31. package/ISA/ISA/JsonTypes/DataFile.js +2 -2
  32. package/ISA/ISA/JsonTypes/Factor.js +6 -6
  33. package/ISA/ISA/JsonTypes/FactorValue.js +5 -5
  34. package/ISA/ISA/JsonTypes/Investigation.js +6 -6
  35. package/ISA/ISA/JsonTypes/Material.js +5 -5
  36. package/ISA/ISA/JsonTypes/MaterialAttribute.js +3 -3
  37. package/ISA/ISA/JsonTypes/MaterialAttributeValue.js +5 -5
  38. package/ISA/ISA/JsonTypes/MaterialType.js +2 -2
  39. package/ISA/ISA/JsonTypes/OntologyAnnotation.js +6 -6
  40. package/ISA/ISA/JsonTypes/OntologySourceReference.js +6 -6
  41. package/ISA/ISA/JsonTypes/Person.js +7 -7
  42. package/ISA/ISA/JsonTypes/Process.js +10 -10
  43. package/ISA/ISA/JsonTypes/ProcessInput.js +5 -5
  44. package/ISA/ISA/JsonTypes/ProcessOutput.js +5 -5
  45. package/ISA/ISA/JsonTypes/ProcessParameterValue.js +5 -5
  46. package/ISA/ISA/JsonTypes/ProcessSequence.js +6 -6
  47. package/ISA/ISA/JsonTypes/Protocol.js +6 -6
  48. package/ISA/ISA/JsonTypes/ProtocolParameter.js +3 -3
  49. package/ISA/ISA/JsonTypes/Publication.js +6 -6
  50. package/ISA/ISA/JsonTypes/Sample.js +5 -5
  51. package/ISA/ISA/JsonTypes/Source.js +5 -5
  52. package/ISA/ISA/JsonTypes/Study.js +8 -8
  53. package/ISA/ISA/JsonTypes/StudyMaterials.js +4 -4
  54. package/ISA/ISA/JsonTypes/Value.js +7 -7
  55. package/ISA/ISA/Regex.js +3 -3
  56. package/ISA/ISA/UIHelper.js +19 -0
  57. package/ISA/ISA.Json/Assay.js +3 -3
  58. package/ISA/ISA.Json/Comment.js +5 -5
  59. package/ISA/ISA.Json/ConverterOptions.js +1 -1
  60. package/ISA/ISA.Json/Data.js +5 -5
  61. package/ISA/ISA.Json/Decode.js +4 -4
  62. package/ISA/ISA.Json/Factor.js +5 -5
  63. package/ISA/ISA.Json/GEncode.js +3 -3
  64. package/ISA/ISA.Json/Investigation.js +4 -4
  65. package/ISA/ISA.Json/Material.js +5 -5
  66. package/ISA/ISA.Json/Ontology.js +6 -6
  67. package/ISA/ISA.Json/Person.js +5 -5
  68. package/ISA/ISA.Json/Process.js +5 -5
  69. package/ISA/ISA.Json/Protocol.js +6 -6
  70. package/ISA/ISA.Json/Publication.js +4 -4
  71. package/ISA/ISA.Json/Study.js +4 -4
  72. package/ISA/ISA.Json/Validation/Fable.js +6 -6
  73. package/ISA/ISA.Json/Validation/JsonSchemaValidation.js +1 -1
  74. package/ISA/ISA.Json/Validation/ValidationResult.js +2 -2
  75. package/ISA/ISA.Spreadsheet/AnnotationTable/ArcTable.js +4 -4
  76. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeCell.js +2 -2
  77. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeColumn.js +5 -5
  78. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeHeader.js +4 -4
  79. package/ISA/ISA.Spreadsheet/ArcAssay.js +5 -5
  80. package/ISA/ISA.Spreadsheet/ArcInvestigation.js +15 -12
  81. package/ISA/ISA.Spreadsheet/ArcStudy.js +5 -5
  82. package/ISA/ISA.Spreadsheet/CollectionAux.js +7 -7
  83. package/ISA/ISA.Spreadsheet/Metadata/Assays.js +5 -5
  84. package/ISA/ISA.Spreadsheet/Metadata/Comment.js +3 -3
  85. package/ISA/ISA.Spreadsheet/Metadata/Contacts.js +5 -5
  86. package/ISA/ISA.Spreadsheet/Metadata/Conversions.js +5 -5
  87. package/ISA/ISA.Spreadsheet/Metadata/DesignDescriptors.js +1 -1
  88. package/ISA/ISA.Spreadsheet/Metadata/Factors.js +5 -5
  89. package/ISA/ISA.Spreadsheet/Metadata/OntologyAnnotation.js +5 -5
  90. package/ISA/ISA.Spreadsheet/Metadata/OntologySourceReference.js +5 -5
  91. package/ISA/ISA.Spreadsheet/Metadata/Protocols.js +5 -5
  92. package/ISA/ISA.Spreadsheet/Metadata/Publication.js +5 -5
  93. package/ISA/ISA.Spreadsheet/Metadata/SparseTable.js +10 -10
  94. package/ISA/ISA.Spreadsheet/Metadata/Study.js +8 -8
  95. package/Path.js +10 -0
  96. package/SemVer.js +7 -7
  97. package/Templates/Template.Json.js +7 -7
  98. package/Templates/Template.Spreadsheet.js +10 -10
  99. package/Templates/Template.Web.js +4 -4
  100. package/Templates/Template.js +7 -7
  101. package/Templates/Templates.js +5 -5
  102. package/WebRequest/WebRequest.js +4 -4
  103. package/fable_modules/Fable.Fetch.2.6.0/Fetch.fs.js +7 -7
  104. package/fable_modules/Fable.Promise.2.2.2/Promise.fs.js +3 -3
  105. package/fable_modules/Fable.SimpleHttp.3.5.0/Http.fs.js +8 -8
  106. package/fable_modules/Fable.SimpleHttp.3.5.0/Types.fs.js +2 -2
  107. package/fable_modules/FsSpreadsheet.5.0.1/Cells/FsCell.fs.js +14 -14
  108. package/fable_modules/FsSpreadsheet.5.0.1/Cells/FsCellsCollection.fs.js +6 -6
  109. package/fable_modules/FsSpreadsheet.5.0.1/DSL/CellBuilder.fs.js +4 -4
  110. package/fable_modules/FsSpreadsheet.5.0.1/DSL/ColumnBuilder.fs.js +3 -3
  111. package/fable_modules/FsSpreadsheet.5.0.1/DSL/DSL.fs.js +2 -2
  112. package/fable_modules/FsSpreadsheet.5.0.1/DSL/Expression.fs.js +1 -1
  113. package/fable_modules/FsSpreadsheet.5.0.1/DSL/RowBuilder.fs.js +3 -3
  114. package/fable_modules/FsSpreadsheet.5.0.1/DSL/SheetBuilder.fs.js +3 -3
  115. package/fable_modules/FsSpreadsheet.5.0.1/DSL/TableBuilder.fs.js +3 -3
  116. package/fable_modules/FsSpreadsheet.5.0.1/DSL/Transform.fs.js +6 -6
  117. package/fable_modules/FsSpreadsheet.5.0.1/DSL/Types.fs.js +4 -4
  118. package/fable_modules/FsSpreadsheet.5.0.1/DSL/WorkbookBuilder.fs.js +3 -3
  119. package/fable_modules/FsSpreadsheet.5.0.1/FsAddress.fs.js +5 -5
  120. package/fable_modules/FsSpreadsheet.5.0.1/FsColumn.fs.js +3 -3
  121. package/fable_modules/FsSpreadsheet.5.0.1/FsRow.fs.js +3 -3
  122. package/fable_modules/FsSpreadsheet.5.0.1/FsWorkbook.fs.js +6 -6
  123. package/fable_modules/FsSpreadsheet.5.0.1/FsWorksheet.fs.js +9 -9
  124. package/fable_modules/FsSpreadsheet.5.0.1/Ranges/FsRange.fs.js +3 -3
  125. package/fable_modules/FsSpreadsheet.5.0.1/Ranges/FsRangeAddress.fs.js +2 -2
  126. package/fable_modules/FsSpreadsheet.5.0.1/Ranges/FsRangeBase.fs.js +3 -3
  127. package/fable_modules/FsSpreadsheet.5.0.1/Ranges/FsRangeColumn.fs.js +3 -3
  128. package/fable_modules/FsSpreadsheet.5.0.1/Ranges/FsRangeRow.fs.js +1 -1
  129. package/fable_modules/FsSpreadsheet.5.0.1/SheetBuilder.fs.js +8 -8
  130. package/fable_modules/FsSpreadsheet.5.0.1/Tables/FsTable.fs.js +7 -7
  131. package/fable_modules/FsSpreadsheet.5.0.1/Tables/FsTableField.fs.js +4 -4
  132. package/fable_modules/FsSpreadsheet.5.0.1/Tables/FsTableRow.fs.js +1 -1
  133. package/fable_modules/Thoth.Json.10.1.0/Decode.fs.js +20 -20
  134. package/fable_modules/Thoth.Json.10.1.0/Encode.fs.js +13 -13
  135. package/fable_modules/Thoth.Json.10.1.0/Extra.fs.js +2 -2
  136. package/fable_modules/Thoth.Json.10.1.0/Types.fs.js +6 -6
  137. package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Util.js +1 -2
  138. package/fable_modules/project_cracked.json +1 -1
  139. package/package.json +1 -1
  140. package/Contracts/Contracts.ArcAssay.js +0 -65
  141. package/Contracts/Contracts.ArcInvestigation.js +0 -58
  142. package/Contracts/Contracts.ArcStudy.js +0 -65
  143. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Array.d.ts +0 -0
  144. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Array.js +0 -0
  145. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Async.d.ts +0 -0
  146. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Async.js +0 -0
  147. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/AsyncBuilder.d.ts +0 -0
  148. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/AsyncBuilder.js +0 -0
  149. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/BigInt.d.ts +0 -0
  150. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/BigInt.js +0 -0
  151. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/BitConverter.d.ts +0 -0
  152. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/BitConverter.js +0 -0
  153. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Boolean.d.ts +0 -0
  154. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Boolean.js +0 -0
  155. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/CHANGELOG.md +0 -0
  156. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Char.d.ts +0 -0
  157. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Char.js +0 -0
  158. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Choice.d.ts +0 -0
  159. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Choice.js +0 -0
  160. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Date.d.ts +0 -0
  161. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Date.js +0 -0
  162. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/DateOffset.d.ts +0 -0
  163. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/DateOffset.js +0 -0
  164. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/DateOnly.d.ts +0 -0
  165. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/DateOnly.js +0 -0
  166. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Decimal.d.ts +0 -0
  167. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Decimal.js +0 -0
  168. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Double.d.ts +0 -0
  169. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Double.js +0 -0
  170. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Encoding.d.ts +0 -0
  171. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Encoding.js +0 -0
  172. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Event.d.ts +0 -0
  173. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Event.js +0 -0
  174. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/FSharp.Collections.d.ts +0 -0
  175. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/FSharp.Collections.js +0 -0
  176. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/FSharp.Core.d.ts +0 -0
  177. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/FSharp.Core.js +0 -0
  178. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Global.d.ts +0 -0
  179. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Global.js +0 -0
  180. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Guid.d.ts +0 -0
  181. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Guid.js +0 -0
  182. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Int32.d.ts +0 -0
  183. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Int32.js +0 -0
  184. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/List.d.ts +0 -0
  185. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/List.js +0 -0
  186. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Long.d.ts +0 -0
  187. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Long.js +0 -0
  188. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MailboxProcessor.d.ts +0 -0
  189. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MailboxProcessor.js +0 -0
  190. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Map.d.ts +0 -0
  191. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Map.js +0 -0
  192. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MapUtil.d.ts +0 -0
  193. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MapUtil.js +0 -0
  194. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MutableMap.d.ts +0 -0
  195. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MutableMap.js +0 -0
  196. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MutableSet.d.ts +0 -0
  197. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/MutableSet.js +0 -0
  198. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Native.d.ts +0 -0
  199. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Native.js +0 -0
  200. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Numeric.d.ts +0 -0
  201. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Numeric.js +0 -0
  202. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Observable.d.ts +0 -0
  203. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Observable.js +0 -0
  204. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Option.d.ts +0 -0
  205. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Option.js +0 -0
  206. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/README.md +0 -0
  207. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Random.d.ts +0 -0
  208. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Random.js +0 -0
  209. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Range.d.ts +0 -0
  210. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Range.js +0 -0
  211. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Reflection.d.ts +0 -0
  212. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Reflection.js +0 -0
  213. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/RegExp.d.ts +0 -0
  214. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/RegExp.js +0 -0
  215. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Seq.d.ts +0 -0
  216. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Seq.js +0 -0
  217. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Seq2.d.ts +0 -0
  218. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Seq2.js +0 -0
  219. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Set.d.ts +0 -0
  220. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Set.js +0 -0
  221. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/String.d.ts +0 -0
  222. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/String.js +0 -0
  223. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/System.Collections.Generic.d.ts +0 -0
  224. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/System.Collections.Generic.js +0 -0
  225. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/System.Text.d.ts +0 -0
  226. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/System.Text.js +0 -0
  227. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/SystemException.d.ts +0 -0
  228. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/SystemException.js +0 -0
  229. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/TimeOnly.d.ts +0 -0
  230. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/TimeOnly.js +0 -0
  231. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/TimeSpan.d.ts +0 -0
  232. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/TimeSpan.js +0 -0
  233. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Timer.d.ts +0 -0
  234. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Timer.js +0 -0
  235. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Types.d.ts +0 -0
  236. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Types.js +0 -0
  237. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Unicode.13.0.0.d.ts +0 -0
  238. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Unicode.13.0.0.js +0 -0
  239. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Uri.d.ts +0 -0
  240. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Uri.js +0 -0
  241. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/Util.d.ts +0 -0
  242. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/lib/big.d.ts +0 -0
  243. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/lib/big.js +0 -0
  244. /package/fable_modules/{fable-library.4.4.1 → fable-library.4.5.0}/package.json +0 -0
@@ -1,23 +1,23 @@
1
- import { getItemFromDict, addToDict } from "../../../fable_modules/fable-library.4.4.1/MapUtil.js";
2
- import { map as map_1, defaultArg, unwrap, value as value_9, some } from "../../../fable_modules/fable-library.4.4.1/Option.js";
3
- import { empty as empty_2, singleton as singleton_1, append, delay, map, tryPick, toList, indexed, initialize, filter, tryFindIndex, maxBy } from "../../../fable_modules/fable-library.4.4.1/Seq.js";
4
- import { arrayHash, equalArrays, stringHash, int32ToString, compareArrays, disposeSafe, getEnumerator, compare, equals, comparePrimitives } from "../../../fable_modules/fable-library.4.4.1/Util.js";
5
- import { pick, exists, zip, append as append_1, sortBy, tryPick as tryPick_1, collect, mapIndexed, item, length, map as map_2, ofArray, singleton, choose, ofSeq, empty as empty_1, head, tail as tail_1, isEmpty, cons } from "../../../fable_modules/fable-library.4.4.1/List.js";
1
+ import { getItemFromDict, addToDict } from "../../../fable_modules/fable-library.4.5.0/MapUtil.js";
2
+ import { map as map_1, defaultArg, unwrap, value as value_9, some } from "../../../fable_modules/fable-library.4.5.0/Option.js";
3
+ import { empty as empty_2, singleton as singleton_1, append, delay, map, tryPick, toList, indexed, initialize, filter, tryFindIndex, maxBy } from "../../../fable_modules/fable-library.4.5.0/Seq.js";
4
+ import { arrayHash, equalArrays, stringHash, int32ToString, compareArrays, disposeSafe, getEnumerator, compare, equals, comparePrimitives } from "../../../fable_modules/fable-library.4.5.0/Util.js";
5
+ import { pick, exists, zip, append as append_1, sortBy, tryPick as tryPick_1, collect, mapIndexed, item, length, map as map_2, ofArray, singleton, choose, ofSeq, empty as empty_1, head, tail as tail_1, isEmpty, cons } from "../../../fable_modules/fable-library.4.5.0/List.js";
6
6
  import { CompositeCell } from "./CompositeCell.js";
7
- import { max } from "../../../fable_modules/fable-library.4.4.1/Double.js";
8
- import { iterateIndexed } from "../../../fable_modules/fable-library.4.4.1/Array.js";
9
- import { FSharpSet__get_MinimumElement, FSharpSet__get_IsEmpty, difference, ofSeq as ofSeq_1 } from "../../../fable_modules/fable-library.4.4.1/Set.js";
7
+ import { max } from "../../../fable_modules/fable-library.4.5.0/Double.js";
8
+ import { iterateIndexed } from "../../../fable_modules/fable-library.4.5.0/Array.js";
9
+ import { FSharpSet__get_MinimumElement, FSharpSet__get_IsEmpty, difference, ofSeq as ofSeq_1 } from "../../../fable_modules/fable-library.4.5.0/Set.js";
10
10
  import { Value_fromString_Z721C83C5, Value as Value_1 } from "../JsonTypes/Value.js";
11
11
  import { Component_fromOptions } from "../JsonTypes/Component.js";
12
12
  import { ProcessParameterValue_create_569825F3 } from "../JsonTypes/ProcessParameterValue.js";
13
13
  import { ProtocolParameter_create_Z6C54B221 } from "../JsonTypes/ProtocolParameter.js";
14
14
  import { FactorValue_create_18335379 } from "../JsonTypes/FactorValue.js";
15
15
  import { Factor } from "../JsonTypes/Factor.js";
16
- import { toString } from "../../../fable_modules/fable-library.4.4.1/Types.js";
16
+ import { toString } from "../../../fable_modules/fable-library.4.5.0/Types.js";
17
17
  import { MaterialAttributeValue_create_7F714043 } from "../JsonTypes/MaterialAttributeValue.js";
18
18
  import { MaterialAttribute_create_Z6C54B221 } from "../JsonTypes/MaterialAttribute.js";
19
19
  import { ProcessInput_getCharacteristicValues_102B6859, ProcessInput__isMaterial, ProcessInput__isData, ProcessInput_setCharacteristicValues, ProcessInput__get_Name, ProcessInput__isSource, ProcessInput__isSample, ProcessInput, ProcessInput_createDerivedData_Z721C83C5, ProcessInput_createRawData_Z721C83C5, ProcessInput_createImageFile_Z721C83C5, ProcessInput_createMaterial_2363974C, ProcessInput_createSample_Z6DF16D07, ProcessInput_createSource_7888CE42 } from "../JsonTypes/ProcessInput.js";
20
- import { remove, printf, toFail } from "../../../fable_modules/fable-library.4.4.1/String.js";
20
+ import { remove, printf, toFail } from "../../../fable_modules/fable-library.4.5.0/String.js";
21
21
  import { ProcessOutput_getFactorValues_11830B70, ProcessOutput__isMaterial, ProcessOutput__isData, ProcessOutput_setFactorValues, ProcessOutput__get_Name, ProcessOutput__isSample, ProcessOutput, ProcessOutput_createDerivedData_Z721C83C5, ProcessOutput_createRawData_Z721C83C5, ProcessOutput_createImageFile_Z721C83C5, ProcessOutput_createMaterial_2363974C, ProcessOutput_createSample_Z6DF16D07 } from "../JsonTypes/ProcessOutput.js";
22
22
  import { IOType, CompositeHeader } from "./CompositeHeader.js";
23
23
  import { tryGetFactorColumnIndex, tryGetCharacteristicColumnIndex, tryGetComponentIndex, tryGetParameterColumnIndex, ARCtrl_ISA_OntologyAnnotation__OntologyAnnotation_SetColumnIndex_Z524259A4 } from "../JsonTypes/ColumnIndex.js";
@@ -26,9 +26,9 @@ import { Sample_create_E50ED22 } from "../JsonTypes/Sample.js";
26
26
  import { Process_create_Z42860F3E, Process_decomposeName_Z721C83C5, Process_make, Process_composeName } from "../JsonTypes/Process.js";
27
27
  import { List_tryPickAndRemove, Option_fromValueWithDefault } from "../Helper.js";
28
28
  import { Protocol_make } from "../JsonTypes/Protocol.js";
29
- import { List_groupBy } from "../../../fable_modules/fable-library.4.4.1/Seq2.js";
29
+ import { List_groupBy } from "../../../fable_modules/fable-library.4.5.0/Seq2.js";
30
30
  import { createMissingIdentifier } from "../Identifier.js";
31
- import { Dictionary } from "../../../fable_modules/fable-library.4.4.1/MutableMap.js";
31
+ import { Dictionary } from "../../../fable_modules/fable-library.4.5.0/MutableMap.js";
32
32
 
33
33
  /**
34
34
  * Returns the dictionary with the binding added to the given dictionary.
@@ -1,17 +1,17 @@
1
- import { append, toArray, reduce, choose, map as map_1, delay, toList, length, findIndex, tryFindIndex } from "../../../fable_modules/fable-library.4.4.1/Seq.js";
1
+ import { append, toArray, reduce, choose, map as map_1, delay, toList, length, findIndex, tryFindIndex } from "../../../fable_modules/fable-library.4.5.0/Seq.js";
2
2
  import { Dict_tryFind } from "../Helper.js";
3
- import { addToSet, addToDict } from "../../../fable_modules/fable-library.4.4.1/MapUtil.js";
4
- import { toIterator, equals, comparePrimitives, stringHash, compare, disposeSafe, getEnumerator } from "../../../fable_modules/fable-library.4.4.1/Util.js";
5
- import { bind, map as map_3, unwrap, defaultArg, value as value_2 } from "../../../fable_modules/fable-library.4.4.1/Option.js";
6
- import { collect as collect_1, map as map_4, insertRangeInPlace, fold } from "../../../fable_modules/fable-library.4.4.1/Array.js";
3
+ import { addToSet, addToDict } from "../../../fable_modules/fable-library.4.5.0/MapUtil.js";
4
+ import { toIterator, equals, comparePrimitives, stringHash, compare, disposeSafe, getEnumerator } from "../../../fable_modules/fable-library.4.5.0/Util.js";
5
+ import { bind, map as map_3, unwrap, defaultArg, value as value_2 } from "../../../fable_modules/fable-library.4.5.0/Option.js";
6
+ import { collect as collect_1, map as map_4, insertRangeInPlace, fold } from "../../../fable_modules/fable-library.4.5.0/Array.js";
7
7
  import { CompositeHeader } from "./CompositeHeader.js";
8
- import { Array_groupBy, distinct } from "../../../fable_modules/fable-library.4.4.1/Seq2.js";
9
- import { FSharpSet__get_IsEmpty, ofSeq, intersect } from "../../../fable_modules/fable-library.4.4.1/Set.js";
8
+ import { Array_groupBy, distinct } from "../../../fable_modules/fable-library.4.5.0/Seq2.js";
9
+ import { FSharpSet__get_IsEmpty, ofSeq, intersect } from "../../../fable_modules/fable-library.4.5.0/Set.js";
10
10
  import { ArcTable } from "./ArcTable.js";
11
- import { map as map_2, collect } from "../../../fable_modules/fable-library.4.4.1/List.js";
11
+ import { map as map_2, collect } from "../../../fable_modules/fable-library.4.5.0/List.js";
12
12
  import { Unchecked_fillMissingCells, ProcessParsing_groupProcesses, ProcessParsing_processToRows, ProcessParsing_alignByHeaders } from "./ArcTableAux.js";
13
- import { tryFind, ofSeq as ofSeq_1 } from "../../../fable_modules/fable-library.4.4.1/Map.js";
14
- import { class_type } from "../../../fable_modules/fable-library.4.4.1/Reflection.js";
13
+ import { tryFind, ofSeq as ofSeq_1 } from "../../../fable_modules/fable-library.4.5.0/Map.js";
14
+ import { class_type } from "../../../fable_modules/fable-library.4.5.0/Reflection.js";
15
15
 
16
16
  /**
17
17
  * If a table with the given name exists in the TableList, returns it, else returns None.
@@ -60,7 +60,7 @@ export function ArcTablesAux_getIOMap(tables) {
60
60
  }
61
61
  else {
62
62
  const ic = matchValue_1;
63
- const ioType_1 = value_2(ic.Header.tryInput());
63
+ const ioType_1 = value_2(ic.Header.TryInput());
64
64
  ic.Cells.forEach((c) => {
65
65
  includeInMap(c.ToFreeTextCell().AsFreeText, ioType_1);
66
66
  });
@@ -70,7 +70,7 @@ export function ArcTablesAux_getIOMap(tables) {
70
70
  }
71
71
  else {
72
72
  const oc = matchValue_2;
73
- const ioType_2 = value_2(oc.Header.tryOutput());
73
+ const ioType_2 = value_2(oc.Header.TryOutput());
74
74
  oc.Cells.forEach((c_1) => {
75
75
  includeInMap(c_1.ToFreeTextCell().AsFreeText, ioType_2);
76
76
  });
@@ -103,7 +103,7 @@ export function ArcTablesAux_applyIOMap(map, tables) {
103
103
  const newIO = matchValue_1;
104
104
  return io.Merge(newIO);
105
105
  }
106
- }, value_2(ic.Header.tryInput()), ic.Cells);
106
+ }, value_2(ic.Header.TryInput()), ic.Cells);
107
107
  table.UpdateHeader(index, new CompositeHeader(11, [newIOType]));
108
108
  }
109
109
  const matchValue_2 = table.TryGetOutputColumn();
@@ -121,7 +121,7 @@ export function ArcTablesAux_applyIOMap(map, tables) {
121
121
  const newIO_1 = matchValue_3;
122
122
  return io_1.Merge(newIO_1);
123
123
  }
124
- }, value_2(oc.Header.tryOutput()), oc.Cells);
124
+ }, value_2(oc.Header.TryOutput()), oc.Cells);
125
125
  table.UpdateHeader(index_1, new CompositeHeader(12, [newIOType_1]));
126
126
  }
127
127
  }
@@ -210,6 +210,10 @@ export class ArcTables {
210
210
  const __ = this;
211
211
  __["Tables@"] = v;
212
212
  }
213
+ get_Item(index) {
214
+ const this$ = this;
215
+ return this$.Tables[index];
216
+ }
213
217
  get TableNames() {
214
218
  const this$ = this;
215
219
  return toList(delay(() => map_1((s) => s.Name, this$.Tables)));
@@ -412,6 +416,12 @@ export class ArcTables {
412
416
  static ofSeq(tables) {
413
417
  return new ArcTables(Array.from(tables));
414
418
  }
419
+ MoveTable(oldIndex, newIndex) {
420
+ const this$ = this;
421
+ const table = this$.GetTableAt(oldIndex);
422
+ this$.Tables.splice(oldIndex, 1);
423
+ this$.Tables.splice(newIndex, 0, table);
424
+ }
415
425
  static fromProcesses(ps) {
416
426
  let collection;
417
427
  return new ArcTables((collection = map_2((tupledArg) => {
@@ -1,26 +1,26 @@
1
- import { map as map_1, defaultArg, unwrap } from "../../../fable_modules/fable-library.4.4.1/Option.js";
2
- import { concat, collect, append as append_4, tryFind, removeAt, tryFindIndex, item as item_1, map as map_2, delay, toList, fold, length, forAll, contains, filter, toArray } from "../../../fable_modules/fable-library.4.4.1/Seq.js";
3
- import { defaultOf, safeHash, equals, disposeSafe, getEnumerator, stringHash } from "../../../fable_modules/fable-library.4.4.1/Util.js";
4
- import { addRangeInPlace, tryFind as tryFind_1, removeInPlace, equalsWith, append as append_3, contains as contains_1, map } from "../../../fable_modules/fable-library.4.4.1/Array.js";
5
- import { distinctBy, Array_distinct } from "../../../fable_modules/fable-library.4.4.1/Seq2.js";
6
- import { printf, toText } from "../../../fable_modules/fable-library.4.4.1/String.js";
7
- import { create, match } from "../../../fable_modules/fable-library.4.4.1/RegExp.js";
1
+ import { map as map_1, defaultArg, unwrap } from "../../../fable_modules/fable-library.4.5.0/Option.js";
2
+ import { concat, collect, append as append_4, tryFind, removeAt, tryFindIndex, choose, item, map as map_2, delay, toList, fold, length, forAll, contains, filter, toArray } from "../../../fable_modules/fable-library.4.5.0/Seq.js";
3
+ import { defaultOf, safeHash, equals, disposeSafe, getEnumerator, stringHash } from "../../../fable_modules/fable-library.4.5.0/Util.js";
4
+ import { addRangeInPlace, tryFind as tryFind_1, removeInPlace, equalsWith, append as append_3, contains as contains_1, map } from "../../../fable_modules/fable-library.4.5.0/Array.js";
5
+ import { distinctBy, Array_distinct } from "../../../fable_modules/fable-library.4.5.0/Seq2.js";
6
+ import { printf, toText } from "../../../fable_modules/fable-library.4.5.0/String.js";
7
+ import { create, match } from "../../../fable_modules/fable-library.4.5.0/RegExp.js";
8
8
  import { OntologyAnnotation } from "../JsonTypes/OntologyAnnotation.js";
9
9
  import { Value_fromString_Z721C83C5, Value__get_Text } from "../JsonTypes/Value.js";
10
10
  import { AnnotationValue } from "../JsonTypes/AnnotationValue.js";
11
11
  import { ArcTablesAux_applyIOMap, ArcTablesAux_getIOMap, ArcTables_$reflection, ArcTables } from "./ArcTables.js";
12
12
  import { AssayMaterials_get_empty, AssayMaterials_create_Z253F0553 } from "../JsonTypes/AssayMaterials.js";
13
- import { HashCodes_boxHashOption, HashCodes_boxHashArray, Option_fromValueWithDefault } from "../Helper.js";
14
- import { unzip, ofSeq, map as map_3, toArray as toArray_1, ofArray, empty } from "../../../fable_modules/fable-library.4.4.1/List.js";
13
+ import { ResizeArray_map, HashCodes_boxHashOption, HashCodes_boxHashArray, Option_fromValueWithDefault } from "../Helper.js";
14
+ import { unzip, ofSeq, map as map_3, toArray as toArray_1, ofArray, empty } from "../../../fable_modules/fable-library.4.5.0/List.js";
15
15
  import { getSources, getProtocols, getUnits, getCharacteristics, getData, getMaterials, getSamples } from "../JsonTypes/ProcessSequence.js";
16
16
  import { Assay_create_3D372A24 } from "../JsonTypes/Assay.js";
17
17
  import { Study_identifierFromFileName, Study_fileNameFromIdentifier, Assay_identifierFromFileName, createMissingIdentifier, Assay_fileNameFromIdentifier, isMissingIdentifier } from "../Identifier.js";
18
- import { rangeDouble } from "../../../fable_modules/fable-library.4.4.1/Range.js";
19
- import { class_type } from "../../../fable_modules/fable-library.4.4.1/Reflection.js";
18
+ import { rangeDouble } from "../../../fable_modules/fable-library.4.5.0/Range.js";
19
+ import { class_type } from "../../../fable_modules/fable-library.4.5.0/Reflection.js";
20
20
  import { StudyMaterials_get_empty, StudyMaterials_create_1BE9FA55 } from "../JsonTypes/StudyMaterials.js";
21
21
  import { Study_create_Z2D28E954 } from "../JsonTypes/Study.js";
22
22
  import { Investigation_create_4AD66BBE } from "../JsonTypes/Investigation.js";
23
- import { FSharpRef } from "../../../fable_modules/fable-library.4.4.1/Types.js";
23
+ import { FSharpRef } from "../../../fable_modules/fable-library.4.5.0/Types.js";
24
24
 
25
25
  export class ArcAssay extends ArcTables {
26
26
  constructor(identifier, measurementType, technologyType, technologyPlatform, tables, performers, comments) {
@@ -510,21 +510,21 @@ export class ArcAssay extends ArcTables {
510
510
  else {
511
511
  return false;
512
512
  }
513
- }, true, toList(delay(() => map_2((i_1) => equals(item_1(i_1, a), item_1(i_1, b)), rangeDouble(0, 1, length(a) - 1))))))), (a_1 = this$.Performers, (b_1 = other.Performers, (length(a_1) === length(b_1)) && fold((acc_1, e_1) => {
513
+ }, true, toList(delay(() => map_2((i_1) => equals(item(i_1, a), item(i_1, b)), rangeDouble(0, 1, length(a) - 1))))))), (a_1 = this$.Performers, (b_1 = other.Performers, (length(a_1) === length(b_1)) && fold((acc_1, e_1) => {
514
514
  if (acc_1) {
515
515
  return e_1;
516
516
  }
517
517
  else {
518
518
  return false;
519
519
  }
520
- }, true, toList(delay(() => map_2((i_2) => equals(item_1(i_2, a_1), item_1(i_2, b_1)), rangeDouble(0, 1, length(a_1) - 1))))))), (a_2 = this$.Comments, (b_2 = other.Comments, (length(a_2) === length(b_2)) && fold((acc_2, e_2) => {
520
+ }, true, toList(delay(() => map_2((i_2) => equals(item(i_2, a_1), item(i_2, b_1)), rangeDouble(0, 1, length(a_1) - 1))))))), (a_2 = this$.Comments, (b_2 = other.Comments, (length(a_2) === length(b_2)) && fold((acc_2, e_2) => {
521
521
  if (acc_2) {
522
522
  return e_2;
523
523
  }
524
524
  else {
525
525
  return false;
526
526
  }
527
- }, true, toList(delay(() => map_2((i_3) => equals(item_1(i_3, a_2), item_1(i_3, b_2)), rangeDouble(0, 1, length(a_2) - 1)))))))]);
527
+ }, true, toList(delay(() => map_2((i_3) => equals(item(i_3, a_2), item(i_3, b_2)), rangeDouble(0, 1, length(a_2) - 1)))))))]);
528
528
  }
529
529
  ReferenceEquals(other) {
530
530
  const this$ = this;
@@ -697,23 +697,8 @@ export class ArcStudy extends ArcTables {
697
697
  else {
698
698
  throw new Error("Cannot execute this function. Object is not part of ArcInvestigation.");
699
699
  }
700
- const assays = [];
701
- let enumerator = getEnumerator(inv.Assays);
702
- try {
703
- while (enumerator["System.Collections.IEnumerator.MoveNext"]()) {
704
- const assay = enumerator["System.Collections.Generic.IEnumerator`1.get_Current"]();
705
- if (contains(assay.Identifier, this$.RegisteredAssayIdentifiers, {
706
- Equals: (x, y) => (x === y),
707
- GetHashCode: stringHash,
708
- })) {
709
- void (assays.push(assay));
710
- }
711
- }
712
- }
713
- finally {
714
- disposeSafe(enumerator);
715
- }
716
- return assays;
700
+ const collection = choose((assayIdentifier) => inv.TryGetAssay(assayIdentifier), this$.RegisteredAssayIdentifiers);
701
+ return Array.from(collection);
717
702
  }
718
703
  AddRegisteredAssay(assay) {
719
704
  const this$ = this;
@@ -812,12 +797,19 @@ export class ArcStudy extends ArcTables {
812
797
  const this$ = this;
813
798
  const matchValue = this$.Investigation;
814
799
  if (matchValue == null) {
815
- const collection = map_2((identifier) => ArcAssay.init(identifier), this$.RegisteredAssayIdentifiers);
816
- return Array.from(collection);
800
+ return ResizeArray_map((identifier_1) => ArcAssay.init(identifier_1), this$.RegisteredAssayIdentifiers);
817
801
  }
818
802
  else {
819
803
  const i = matchValue;
820
- return this$.RegisteredAssays;
804
+ return ResizeArray_map((identifier) => {
805
+ const matchValue_1 = i.TryGetAssay(identifier);
806
+ if (matchValue_1 == null) {
807
+ return ArcAssay.init(identifier);
808
+ }
809
+ else {
810
+ return matchValue_1;
811
+ }
812
+ }, this$.RegisteredAssayIdentifiers);
821
813
  }
822
814
  }
823
815
  static getRegisteredAssaysOrIdentifier() {
@@ -1154,49 +1146,49 @@ export class ArcStudy extends ArcTables {
1154
1146
  else {
1155
1147
  return false;
1156
1148
  }
1157
- }, true, toList(delay(() => map_2((i_1) => equals(item_1(i_1, a), item_1(i_1, b)), rangeDouble(0, 1, length(a) - 1))))))), (a_1 = this$.Contacts, (b_1 = other.Contacts, (length(a_1) === length(b_1)) && fold((acc_1, e_1) => {
1149
+ }, true, toList(delay(() => map_2((i_1) => equals(item(i_1, a), item(i_1, b)), rangeDouble(0, 1, length(a) - 1))))))), (a_1 = this$.Contacts, (b_1 = other.Contacts, (length(a_1) === length(b_1)) && fold((acc_1, e_1) => {
1158
1150
  if (acc_1) {
1159
1151
  return e_1;
1160
1152
  }
1161
1153
  else {
1162
1154
  return false;
1163
1155
  }
1164
- }, true, toList(delay(() => map_2((i_2) => equals(item_1(i_2, a_1), item_1(i_2, b_1)), rangeDouble(0, 1, length(a_1) - 1))))))), (a_2 = this$.StudyDesignDescriptors, (b_2 = other.StudyDesignDescriptors, (length(a_2) === length(b_2)) && fold((acc_2, e_2) => {
1156
+ }, true, toList(delay(() => map_2((i_2) => equals(item(i_2, a_1), item(i_2, b_1)), rangeDouble(0, 1, length(a_1) - 1))))))), (a_2 = this$.StudyDesignDescriptors, (b_2 = other.StudyDesignDescriptors, (length(a_2) === length(b_2)) && fold((acc_2, e_2) => {
1165
1157
  if (acc_2) {
1166
1158
  return e_2;
1167
1159
  }
1168
1160
  else {
1169
1161
  return false;
1170
1162
  }
1171
- }, true, toList(delay(() => map_2((i_3) => equals(item_1(i_3, a_2), item_1(i_3, b_2)), rangeDouble(0, 1, length(a_2) - 1))))))), (a_3 = this$.Tables, (b_3 = other.Tables, (length(a_3) === length(b_3)) && fold((acc_3, e_3) => {
1163
+ }, true, toList(delay(() => map_2((i_3) => equals(item(i_3, a_2), item(i_3, b_2)), rangeDouble(0, 1, length(a_2) - 1))))))), (a_3 = this$.Tables, (b_3 = other.Tables, (length(a_3) === length(b_3)) && fold((acc_3, e_3) => {
1172
1164
  if (acc_3) {
1173
1165
  return e_3;
1174
1166
  }
1175
1167
  else {
1176
1168
  return false;
1177
1169
  }
1178
- }, true, toList(delay(() => map_2((i_4) => equals(item_1(i_4, a_3), item_1(i_4, b_3)), rangeDouble(0, 1, length(a_3) - 1))))))), (a_4 = this$.RegisteredAssayIdentifiers, (b_4 = other.RegisteredAssayIdentifiers, (length(a_4) === length(b_4)) && fold((acc_4, e_4) => {
1170
+ }, true, toList(delay(() => map_2((i_4) => equals(item(i_4, a_3), item(i_4, b_3)), rangeDouble(0, 1, length(a_3) - 1))))))), (a_4 = this$.RegisteredAssayIdentifiers, (b_4 = other.RegisteredAssayIdentifiers, (length(a_4) === length(b_4)) && fold((acc_4, e_4) => {
1179
1171
  if (acc_4) {
1180
1172
  return e_4;
1181
1173
  }
1182
1174
  else {
1183
1175
  return false;
1184
1176
  }
1185
- }, true, toList(delay(() => map_2((i_5) => (item_1(i_5, a_4) === item_1(i_5, b_4)), rangeDouble(0, 1, length(a_4) - 1))))))), (a_5 = this$.Factors, (b_5 = other.Factors, (length(a_5) === length(b_5)) && fold((acc_5, e_5) => {
1177
+ }, true, toList(delay(() => map_2((i_5) => (item(i_5, a_4) === item(i_5, b_4)), rangeDouble(0, 1, length(a_4) - 1))))))), (a_5 = this$.Factors, (b_5 = other.Factors, (length(a_5) === length(b_5)) && fold((acc_5, e_5) => {
1186
1178
  if (acc_5) {
1187
1179
  return e_5;
1188
1180
  }
1189
1181
  else {
1190
1182
  return false;
1191
1183
  }
1192
- }, true, toList(delay(() => map_2((i_6) => equals(item_1(i_6, a_5), item_1(i_6, b_5)), rangeDouble(0, 1, length(a_5) - 1))))))), (a_6 = this$.Comments, (b_6 = other.Comments, (length(a_6) === length(b_6)) && fold((acc_6, e_6) => {
1184
+ }, true, toList(delay(() => map_2((i_6) => equals(item(i_6, a_5), item(i_6, b_5)), rangeDouble(0, 1, length(a_5) - 1))))))), (a_6 = this$.Comments, (b_6 = other.Comments, (length(a_6) === length(b_6)) && fold((acc_6, e_6) => {
1193
1185
  if (acc_6) {
1194
1186
  return e_6;
1195
1187
  }
1196
1188
  else {
1197
1189
  return false;
1198
1190
  }
1199
- }, true, toList(delay(() => map_2((i_7) => equals(item_1(i_7, a_6), item_1(i_7, b_6)), rangeDouble(0, 1, length(a_6) - 1)))))))]);
1191
+ }, true, toList(delay(() => map_2((i_7) => equals(item(i_7, a_6), item(i_7, b_6)), rangeDouble(0, 1, length(a_6) - 1)))))))]);
1200
1192
  }
1201
1193
  ReferenceEquals(other) {
1202
1194
  const this$ = this;
@@ -1257,7 +1249,7 @@ export class ArcInvestigation {
1257
1249
  const registeredStudyIdentifiers_1 = defaultArg(registeredStudyIdentifiers, []);
1258
1250
  const comments_1 = defaultArg(comments, []);
1259
1251
  const remarks_1 = defaultArg(remarks, []);
1260
- this["identifier@1144"] = identifier;
1252
+ this["identifier@1148"] = identifier;
1261
1253
  this["Title@"] = title;
1262
1254
  this["Description@"] = description;
1263
1255
  this["SubmissionDate@"] = submissionDate;
@@ -1270,15 +1262,15 @@ export class ArcInvestigation {
1270
1262
  this["RegisteredStudyIdentifiers@"] = registeredStudyIdentifiers_1;
1271
1263
  this["Comments@"] = comments_1;
1272
1264
  this["Remarks@"] = remarks_1;
1273
- this["init@1125"] = 1;
1265
+ this["init@1129"] = 1;
1274
1266
  }
1275
1267
  get Identifier() {
1276
1268
  const this$ = this;
1277
- return this$["identifier@1144"];
1269
+ return this$["identifier@1148"];
1278
1270
  }
1279
1271
  set Identifier(i) {
1280
1272
  const this$ = this;
1281
- this$["identifier@1144"] = i;
1273
+ this$["identifier@1148"] = i;
1282
1274
  }
1283
1275
  get Title() {
1284
1276
  const __ = this;
@@ -1427,10 +1419,43 @@ export class ArcInvestigation {
1427
1419
  return newInvestigation.InitAssay(assayIdentifier);
1428
1420
  };
1429
1421
  }
1422
+ DeleteAssayAt(index) {
1423
+ const this$ = this;
1424
+ this$.Assays.splice(index, 1);
1425
+ }
1426
+ static deleteAssayAt(index) {
1427
+ return (inv) => {
1428
+ const newInvestigation = inv.Copy();
1429
+ newInvestigation.DeleteAssayAt(index);
1430
+ return newInvestigation;
1431
+ };
1432
+ }
1433
+ DeleteAssay(assayIdentifier) {
1434
+ const this$ = this;
1435
+ const index = this$.GetAssayIndex(assayIdentifier) | 0;
1436
+ this$.DeleteAssayAt(index);
1437
+ }
1438
+ static deleteAssay(assayIdentifier) {
1439
+ return (inv) => {
1440
+ const newInv = inv.Copy();
1441
+ newInv.DeleteAssay(assayIdentifier);
1442
+ return newInv;
1443
+ };
1444
+ }
1430
1445
  RemoveAssayAt(index) {
1431
1446
  const this$ = this;
1447
+ const ident = this$.GetAssayAt(index).Identifier;
1432
1448
  this$.Assays.splice(index, 1);
1433
- this$.DeregisterMissingAssays();
1449
+ let enumerator = getEnumerator(this$.Studies);
1450
+ try {
1451
+ while (enumerator["System.Collections.IEnumerator.MoveNext"]()) {
1452
+ const study = enumerator["System.Collections.Generic.IEnumerator`1.get_Current"]();
1453
+ study.DeregisterAssay(ident);
1454
+ }
1455
+ }
1456
+ finally {
1457
+ disposeSafe(enumerator);
1458
+ }
1434
1459
  }
1435
1460
  static removeAssayAt(index) {
1436
1461
  return (inv) => {
@@ -1515,9 +1540,19 @@ export class ArcInvestigation {
1515
1540
  return newInvestigation.GetAssay(assayIdentifier);
1516
1541
  };
1517
1542
  }
1543
+ TryGetAssay(assayIdentifier) {
1544
+ const this$ = this;
1545
+ return tryFind((a) => (a.Identifier === assayIdentifier), this$.Assays);
1546
+ }
1547
+ static tryGetAssay(assayIdentifier) {
1548
+ return (inv) => {
1549
+ const newInvestigation = inv.Copy();
1550
+ return newInvestigation.TryGetAssay(assayIdentifier);
1551
+ };
1552
+ }
1518
1553
  get RegisteredStudies() {
1519
1554
  const this$ = this;
1520
- const collection = map_2((identifier) => this$.GetStudy(identifier), this$.RegisteredStudyIdentifiers);
1555
+ const collection = choose((identifier) => this$.TryGetStudy(identifier), this$.RegisteredStudyIdentifiers);
1521
1556
  return Array.from(collection);
1522
1557
  }
1523
1558
  get StudyCount() {
@@ -1526,7 +1561,7 @@ export class ArcInvestigation {
1526
1561
  }
1527
1562
  get StudyIdentifiers() {
1528
1563
  const this$ = this;
1529
- return map_2((x) => x.Identifier, this$.Studies);
1564
+ return toArray(map_2((x) => x.Identifier, this$.Studies));
1530
1565
  }
1531
1566
  AddStudy(study) {
1532
1567
  const this$ = this;
@@ -1597,9 +1632,34 @@ export class ArcInvestigation {
1597
1632
  return copy;
1598
1633
  };
1599
1634
  }
1635
+ DeleteStudyAt(index) {
1636
+ const this$ = this;
1637
+ this$.Studies.splice(index, 1);
1638
+ }
1639
+ static deleteStudyAt(index) {
1640
+ return (i) => {
1641
+ const copy = i.Copy();
1642
+ copy.DeleteStudyAt(index);
1643
+ return copy;
1644
+ };
1645
+ }
1646
+ DeleteStudy(studyIdentifier) {
1647
+ const this$ = this;
1648
+ const index = this$.Studies.findIndex((s) => (s.Identifier === studyIdentifier)) | 0;
1649
+ this$.DeleteStudyAt(index);
1650
+ }
1651
+ static deleteStudy(studyIdentifier) {
1652
+ return (i) => {
1653
+ const copy = i.Copy();
1654
+ copy.DeleteStudy(studyIdentifier);
1655
+ return copy;
1656
+ };
1657
+ }
1600
1658
  RemoveStudyAt(index) {
1601
1659
  const this$ = this;
1660
+ const ident = this$.GetStudyAt(index).Identifier;
1602
1661
  this$.Studies.splice(index, 1);
1662
+ this$.DeregisterStudy(ident);
1603
1663
  }
1604
1664
  static removeStudyAt(index) {
1605
1665
  return (inv) => {
@@ -1610,10 +1670,8 @@ export class ArcInvestigation {
1610
1670
  }
1611
1671
  RemoveStudy(studyIdentifier) {
1612
1672
  const this$ = this;
1613
- removeInPlace(this$.GetStudy(studyIdentifier), this$.Studies, {
1614
- Equals: equals,
1615
- GetHashCode: safeHash,
1616
- });
1673
+ const index = this$.GetStudyIndex(studyIdentifier) | 0;
1674
+ this$.RemoveStudyAt(index);
1617
1675
  }
1618
1676
  static removeStudy(studyIdentifier) {
1619
1677
  return (inv) => {
@@ -1684,6 +1742,16 @@ export class ArcInvestigation {
1684
1742
  return newInv.GetStudy(studyIdentifier);
1685
1743
  };
1686
1744
  }
1745
+ TryGetStudy(studyIdentifier) {
1746
+ const this$ = this;
1747
+ return tryFind((s) => (s.Identifier === studyIdentifier), this$.Studies);
1748
+ }
1749
+ static tryGetStudy(studyIdentifier) {
1750
+ return (inv) => {
1751
+ const newInv = inv.Copy();
1752
+ return newInv.TryGetStudy(studyIdentifier);
1753
+ };
1754
+ }
1687
1755
  RegisterAssayAt(studyIndex, assayIdentifier) {
1688
1756
  const this$ = this;
1689
1757
  const study = this$.GetStudyAt(studyIndex);
@@ -1745,6 +1813,20 @@ export class ArcInvestigation {
1745
1813
  return copy;
1746
1814
  };
1747
1815
  }
1816
+ DeregisterStudy(studyIdentifier) {
1817
+ const this$ = this;
1818
+ removeInPlace(studyIdentifier, this$.RegisteredStudyIdentifiers, {
1819
+ Equals: (x, y) => (x === y),
1820
+ GetHashCode: stringHash,
1821
+ });
1822
+ }
1823
+ static deregisterStudy(studyIdentifier) {
1824
+ return (i) => {
1825
+ const copy = i.Copy();
1826
+ copy.DeregisterStudy(studyIdentifier);
1827
+ return copy;
1828
+ };
1829
+ }
1748
1830
  GetAllPersons() {
1749
1831
  const this$ = this;
1750
1832
  const persons = [];
@@ -1921,56 +2003,56 @@ export class ArcInvestigation {
1921
2003
  else {
1922
2004
  return false;
1923
2005
  }
1924
- }, true, toList(delay(() => map_2((i_1) => equals(item_1(i_1, a), item_1(i_1, b)), rangeDouble(0, 1, length(a) - 1))))))), (a_1 = this$.Contacts, (b_1 = other.Contacts, (length(a_1) === length(b_1)) && fold((acc_1, e_1) => {
2006
+ }, true, toList(delay(() => map_2((i_1) => equals(item(i_1, a), item(i_1, b)), rangeDouble(0, 1, length(a) - 1))))))), (a_1 = this$.Contacts, (b_1 = other.Contacts, (length(a_1) === length(b_1)) && fold((acc_1, e_1) => {
1925
2007
  if (acc_1) {
1926
2008
  return e_1;
1927
2009
  }
1928
2010
  else {
1929
2011
  return false;
1930
2012
  }
1931
- }, true, toList(delay(() => map_2((i_2) => equals(item_1(i_2, a_1), item_1(i_2, b_1)), rangeDouble(0, 1, length(a_1) - 1))))))), (a_2 = this$.OntologySourceReferences, (b_2 = other.OntologySourceReferences, (length(a_2) === length(b_2)) && fold((acc_2, e_2) => {
2013
+ }, true, toList(delay(() => map_2((i_2) => equals(item(i_2, a_1), item(i_2, b_1)), rangeDouble(0, 1, length(a_1) - 1))))))), (a_2 = this$.OntologySourceReferences, (b_2 = other.OntologySourceReferences, (length(a_2) === length(b_2)) && fold((acc_2, e_2) => {
1932
2014
  if (acc_2) {
1933
2015
  return e_2;
1934
2016
  }
1935
2017
  else {
1936
2018
  return false;
1937
2019
  }
1938
- }, true, toList(delay(() => map_2((i_3) => equals(item_1(i_3, a_2), item_1(i_3, b_2)), rangeDouble(0, 1, length(a_2) - 1))))))), (a_3 = this$.Assays, (b_3 = other.Assays, (length(a_3) === length(b_3)) && fold((acc_3, e_3) => {
2020
+ }, true, toList(delay(() => map_2((i_3) => equals(item(i_3, a_2), item(i_3, b_2)), rangeDouble(0, 1, length(a_2) - 1))))))), (a_3 = this$.Assays, (b_3 = other.Assays, (length(a_3) === length(b_3)) && fold((acc_3, e_3) => {
1939
2021
  if (acc_3) {
1940
2022
  return e_3;
1941
2023
  }
1942
2024
  else {
1943
2025
  return false;
1944
2026
  }
1945
- }, true, toList(delay(() => map_2((i_4) => equals(item_1(i_4, a_3), item_1(i_4, b_3)), rangeDouble(0, 1, length(a_3) - 1))))))), (a_4 = this$.Studies, (b_4 = other.Studies, (length(a_4) === length(b_4)) && fold((acc_4, e_4) => {
2027
+ }, true, toList(delay(() => map_2((i_4) => equals(item(i_4, a_3), item(i_4, b_3)), rangeDouble(0, 1, length(a_3) - 1))))))), (a_4 = this$.Studies, (b_4 = other.Studies, (length(a_4) === length(b_4)) && fold((acc_4, e_4) => {
1946
2028
  if (acc_4) {
1947
2029
  return e_4;
1948
2030
  }
1949
2031
  else {
1950
2032
  return false;
1951
2033
  }
1952
- }, true, toList(delay(() => map_2((i_5) => equals(item_1(i_5, a_4), item_1(i_5, b_4)), rangeDouble(0, 1, length(a_4) - 1))))))), (a_5 = this$.RegisteredStudyIdentifiers, (b_5 = other.RegisteredStudyIdentifiers, (length(a_5) === length(b_5)) && fold((acc_5, e_5) => {
2034
+ }, true, toList(delay(() => map_2((i_5) => equals(item(i_5, a_4), item(i_5, b_4)), rangeDouble(0, 1, length(a_4) - 1))))))), (a_5 = this$.RegisteredStudyIdentifiers, (b_5 = other.RegisteredStudyIdentifiers, (length(a_5) === length(b_5)) && fold((acc_5, e_5) => {
1953
2035
  if (acc_5) {
1954
2036
  return e_5;
1955
2037
  }
1956
2038
  else {
1957
2039
  return false;
1958
2040
  }
1959
- }, true, toList(delay(() => map_2((i_6) => (item_1(i_6, a_5) === item_1(i_6, b_5)), rangeDouble(0, 1, length(a_5) - 1))))))), (a_6 = this$.Comments, (b_6 = other.Comments, (length(a_6) === length(b_6)) && fold((acc_6, e_6) => {
2041
+ }, true, toList(delay(() => map_2((i_6) => (item(i_6, a_5) === item(i_6, b_5)), rangeDouble(0, 1, length(a_5) - 1))))))), (a_6 = this$.Comments, (b_6 = other.Comments, (length(a_6) === length(b_6)) && fold((acc_6, e_6) => {
1960
2042
  if (acc_6) {
1961
2043
  return e_6;
1962
2044
  }
1963
2045
  else {
1964
2046
  return false;
1965
2047
  }
1966
- }, true, toList(delay(() => map_2((i_7) => equals(item_1(i_7, a_6), item_1(i_7, b_6)), rangeDouble(0, 1, length(a_6) - 1))))))), (a_7 = this$.Remarks, (b_7 = other.Remarks, (length(a_7) === length(b_7)) && fold((acc_7, e_7) => {
2048
+ }, true, toList(delay(() => map_2((i_7) => equals(item(i_7, a_6), item(i_7, b_6)), rangeDouble(0, 1, length(a_6) - 1))))))), (a_7 = this$.Remarks, (b_7 = other.Remarks, (length(a_7) === length(b_7)) && fold((acc_7, e_7) => {
1967
2049
  if (acc_7) {
1968
2050
  return e_7;
1969
2051
  }
1970
2052
  else {
1971
2053
  return false;
1972
2054
  }
1973
- }, true, toList(delay(() => map_2((i_8) => equals(item_1(i_8, a_7), item_1(i_8, b_7)), rangeDouble(0, 1, length(a_7) - 1)))))))]);
2055
+ }, true, toList(delay(() => map_2((i_8) => equals(item(i_8, a_7), item(i_8, b_7)), rangeDouble(0, 1, length(a_7) - 1)))))))]);
1974
2056
  }
1975
2057
  ReferenceEquals(other) {
1976
2058
  const this$ = this;
@@ -1,9 +1,9 @@
1
- import { int32ToString } from "../../../fable_modules/fable-library.4.4.1/Util.js";
2
- import { defaultArg } from "../../../fable_modules/fable-library.4.4.1/Option.js";
1
+ import { int32ToString } from "../../../fable_modules/fable-library.4.5.0/Util.js";
2
+ import { defaultArg } from "../../../fable_modules/fable-library.4.5.0/Option.js";
3
3
  import { OntologyAnnotation_$reflection, OntologyAnnotation } from "../JsonTypes/OntologyAnnotation.js";
4
4
  import { AnnotationValue } from "../JsonTypes/AnnotationValue.js";
5
- import { Union } from "../../../fable_modules/fable-library.4.4.1/Types.js";
6
- import { union_type, string_type } from "../../../fable_modules/fable-library.4.4.1/Reflection.js";
5
+ import { Union } from "../../../fable_modules/fable-library.4.5.0/Types.js";
6
+ import { union_type, string_type } from "../../../fable_modules/fable-library.4.5.0/Reflection.js";
7
7
 
8
8
  export class CompositeCell extends Union {
9
9
  constructor(tag, fields) {
@@ -89,6 +89,10 @@ export class CompositeCell extends Union {
89
89
  const this$ = this;
90
90
  return this$.tag === 1;
91
91
  }
92
+ GetEmptyCell() {
93
+ const this$ = this;
94
+ return (this$.tag === 2) ? CompositeCell.emptyUnitized : ((this$.tag === 1) ? CompositeCell.emptyFreeText : CompositeCell.emptyTerm);
95
+ }
92
96
  GetContent() {
93
97
  const this$ = this;
94
98
  switch (this$.tag) {
@@ -1,9 +1,9 @@
1
- import { defaultArg } from "../../../fable_modules/fable-library.4.4.1/Option.js";
2
- import { empty, singleton, collect, delay, toArray } from "../../../fable_modules/fable-library.4.4.1/Seq.js";
3
- import { Record } from "../../../fable_modules/fable-library.4.4.1/Types.js";
1
+ import { defaultArg } from "../../../fable_modules/fable-library.4.5.0/Option.js";
2
+ import { fold, empty, singleton, collect, delay, toArray } from "../../../fable_modules/fable-library.4.5.0/Seq.js";
3
+ import { CompositeCell_$reflection, CompositeCell } from "./CompositeCell.js";
4
+ import { Record } from "../../../fable_modules/fable-library.4.5.0/Types.js";
4
5
  import { CompositeHeader_$reflection } from "./CompositeHeader.js";
5
- import { CompositeCell_$reflection } from "./CompositeCell.js";
6
- import { record_type, array_type } from "../../../fable_modules/fable-library.4.4.1/Reflection.js";
6
+ import { record_type, array_type } from "../../../fable_modules/fable-library.4.5.0/Reflection.js";
7
7
 
8
8
  export class CompositeColumn extends Record {
9
9
  constructor(Header, Cells) {
@@ -40,6 +40,27 @@ export class CompositeColumn extends Record {
40
40
  const arr = toArray(delay(() => collect((cell) => (cell.isUnitized ? singleton(cell.AsUnitized[1]) : empty()), this$.Cells)));
41
41
  return (arr.length === 0) ? void 0 : arr;
42
42
  }
43
+ GetDefaultEmptyCell() {
44
+ const this$ = this;
45
+ if (!this$.Header.IsTermColumn) {
46
+ return CompositeCell.emptyFreeText;
47
+ }
48
+ else {
49
+ let patternInput;
50
+ const arg = [0, 0];
51
+ patternInput = fold((tupledArg, cell) => {
52
+ const units = tupledArg[0] | 0;
53
+ const terms = tupledArg[1] | 0;
54
+ if (cell.isUnitized) {
55
+ return [units + 1, terms];
56
+ }
57
+ else {
58
+ return [units, terms + 1];
59
+ }
60
+ }, [arg[0], arg[1]], this$.Cells);
61
+ return (patternInput[1] >= patternInput[0]) ? CompositeCell.emptyTerm : CompositeCell.emptyUnitized;
62
+ }
63
+ }
43
64
  }
44
65
 
45
66
  export function CompositeColumn_$reflection() {