@nfdi4plants/arctrl 2.0.0-beta.1 → 2.0.0-beta.8

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 (163) hide show
  1. package/ARC.js +12 -8
  2. package/Contract/ArcAssay.js +4 -4
  3. package/Contract/ArcStudy.js +3 -3
  4. package/Contract/Datamap.js +1 -1
  5. package/Contract/ValidationPackagesConfig.js +95 -0
  6. package/Core/ArcTypes.js +4 -4
  7. package/Core/Conversion.js +13 -13
  8. package/Core/DataContext.js +53 -6
  9. package/Core/{Table/DataMap.js → DataMap.js} +34 -22
  10. package/Core/Process/Component.js +15 -5
  11. package/Core/Process/FactorValue.js +14 -5
  12. package/Core/Process/MaterialAttributeValue.js +14 -5
  13. package/Core/Process/ProcessParameterValue.js +11 -2
  14. package/Core/Table/CompositeCell.js +12 -23
  15. package/Core/{Process/Value.js → Value.js} +9 -9
  16. package/Json/Assay.js +10 -9
  17. package/Json/{Process/Data.js → Data.js} +17 -17
  18. package/Json/{Process/DataFile.js → DataFile.js} +9 -9
  19. package/Json/DataMap/DataContext.js +30 -0
  20. package/Json/DataMap/DataMap.js +25 -0
  21. package/Json/Encode.js +10 -1
  22. package/Json/Process/Component.js +1 -1
  23. package/Json/Process/FactorValue.js +1 -1
  24. package/Json/Process/MaterialAttributeValue.js +1 -1
  25. package/Json/Process/ProcessInput.js +1 -1
  26. package/Json/Process/ProcessOutput.js +1 -1
  27. package/Json/Process/ProcessParameterValue.js +2 -2
  28. package/Json/Process/Value.js +3 -3
  29. package/Json/{Process/PropertyValue.js → PropertyValue.js} +30 -21
  30. package/Json/Study.js +9 -8
  31. package/Json/Table/CompositeCell.js +1 -1
  32. package/Json/context/rocrate/isa_data_context.js +2 -2
  33. package/Json/context/rocrate/isa_investigation_context.js +1 -1
  34. package/Json/context/rocrate/property_value_context.js +1 -1
  35. package/Spreadsheet/AnnotationTable/ArcTable.js +5 -5
  36. package/Spreadsheet/AnnotationTable/CompositeColumn.js +10 -8
  37. package/Spreadsheet/ArcAssay.js +32 -16
  38. package/Spreadsheet/ArcInvestigation.js +2 -2
  39. package/Spreadsheet/ArcStudy.js +26 -10
  40. package/Spreadsheet/DataMap.js +2 -2
  41. package/Spreadsheet/DataMapTable/DataMapColumn.js +1 -1
  42. package/Spreadsheet/DataMapTable/DataMapHeader.js +1 -1
  43. package/Spreadsheet/DataMapTable/DataMapTable.js +8 -8
  44. package/Spreadsheet/Metadata/SparseTable.js +7 -7
  45. package/Spreadsheet/Template.js +2 -2
  46. package/ValidationPackages/ValidationPackage.js +54 -0
  47. package/ValidationPackages/ValidationPackagesConfig.js +55 -0
  48. package/Xlsx.js +9 -9
  49. package/Yaml/Encode.js +8 -0
  50. package/Yaml/ValidationPackage.js +47 -0
  51. package/Yaml/ValidationPackagesConfig.js +48 -0
  52. package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsSpreadsheet.fableproj +1 -0
  53. package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsWorksheet.fs +4 -0
  54. package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsWorksheet.fs.js +9 -1
  55. package/fable_modules/FsSpreadsheet.6.2.0/Json/Cell.fs +45 -0
  56. package/fable_modules/FsSpreadsheet.6.2.0/Json/Cell.fs.js +38 -0
  57. package/fable_modules/FsSpreadsheet.6.2.0/Json/Column.fs +28 -0
  58. package/fable_modules/FsSpreadsheet.6.2.0/Json/Column.fs.js +24 -0
  59. package/fable_modules/FsSpreadsheet.6.2.0/Json/Row.fs +28 -0
  60. package/fable_modules/FsSpreadsheet.6.2.0/Json/Row.fs.js +24 -0
  61. package/fable_modules/FsSpreadsheet.6.2.0/Json/Workbook.fs +33 -0
  62. package/fable_modules/FsSpreadsheet.6.2.0/Json/Workbook.fs.js +35 -0
  63. package/fable_modules/FsSpreadsheet.6.2.0/Json/Worksheet.fs +148 -0
  64. package/fable_modules/FsSpreadsheet.6.2.0/Json/Worksheet.fs.js +109 -0
  65. package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/obj/Release/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +3 -3
  66. package/fable_modules/YAMLicious.0.0.1/Decode.fs +374 -0
  67. package/fable_modules/YAMLicious.0.0.1/Decode.fs.js +1684 -0
  68. package/fable_modules/YAMLicious.0.0.1/Encode.fs +148 -0
  69. package/fable_modules/YAMLicious.0.0.1/Encode.fs.js +74 -0
  70. package/fable_modules/YAMLicious.0.0.1/Interop/JsInterop.fs +14 -0
  71. package/fable_modules/YAMLicious.0.0.1/Interop/JsInterop.fs.js +11 -0
  72. package/fable_modules/YAMLicious.0.0.1/Interop/PyInterop.fs +9 -0
  73. package/fable_modules/YAMLicious.0.0.1/Library.fs +138 -0
  74. package/fable_modules/YAMLicious.0.0.1/Library.fs.js +7 -0
  75. package/fable_modules/YAMLicious.0.0.1/Persil.fs +86 -0
  76. package/fable_modules/YAMLicious.0.0.1/Persil.fs.js +49 -0
  77. package/fable_modules/YAMLicious.0.0.1/Preprocessing.fs +59 -0
  78. package/fable_modules/YAMLicious.0.0.1/Preprocessing.fs.js +102 -0
  79. package/fable_modules/YAMLicious.0.0.1/Reader.fs +295 -0
  80. package/fable_modules/YAMLicious.0.0.1/Reader.fs.js +530 -0
  81. package/fable_modules/YAMLicious.0.0.1/Regex.fs +108 -0
  82. package/fable_modules/YAMLicious.0.0.1/Regex.fs.js +19 -0
  83. package/fable_modules/YAMLicious.0.0.1/RegexActivePatterns.fs +166 -0
  84. package/fable_modules/YAMLicious.0.0.1/RegexActivePatterns.fs.js +225 -0
  85. package/fable_modules/YAMLicious.0.0.1/Writer.fs +84 -0
  86. package/fable_modules/YAMLicious.0.0.1/Writer.fs.js +161 -0
  87. package/fable_modules/YAMLicious.0.0.1/YAMLicious.fableproj +39 -0
  88. package/fable_modules/YAMLicious.0.0.1/YAMLiciousTypes.fs +82 -0
  89. package/fable_modules/YAMLicious.0.0.1/YAMLiciousTypes.fs.js +130 -0
  90. package/fable_modules/YAMLicious.0.0.1/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  91. package/fable_modules/YAMLicious.0.0.1/obj/Debug/netstandard2.0/YAMLicious.AssemblyInfo.fs +19 -0
  92. package/fable_modules/YAMLicious.0.0.1/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  93. package/fable_modules/YAMLicious.0.0.1/obj/Release/netstandard2.0/YAMLicious.AssemblyInfo.fs +19 -0
  94. package/fable_modules/project_cracked.json +1 -1
  95. package/index.js +1 -0
  96. package/package.json +1 -1
  97. package/fable_modules/FsSpreadsheet.6.1.2/Json/Cell.fs +0 -23
  98. package/fable_modules/FsSpreadsheet.6.1.2/Json/Cell.fs.js +0 -21
  99. package/fable_modules/FsSpreadsheet.6.1.2/Json/Row.fs +0 -23
  100. package/fable_modules/FsSpreadsheet.6.1.2/Json/Row.fs.js +0 -19
  101. package/fable_modules/FsSpreadsheet.6.1.2/Json/Workbook.fs +0 -20
  102. package/fable_modules/FsSpreadsheet.6.1.2/Json/Workbook.fs.js +0 -21
  103. package/fable_modules/FsSpreadsheet.6.1.2/Json/Worksheet.fs +0 -49
  104. package/fable_modules/FsSpreadsheet.6.1.2/Json/Worksheet.fs.js +0 -44
  105. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Cells/FsCell.fs +0 -0
  106. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Cells/FsCell.fs.js +0 -0
  107. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Cells/FsCellsCollection.fs +0 -0
  108. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Cells/FsCellsCollection.fs.js +0 -0
  109. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/CellBuilder.fs +0 -0
  110. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/CellBuilder.fs.js +0 -0
  111. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/ColumnBuilder.fs +0 -0
  112. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/ColumnBuilder.fs.js +0 -0
  113. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/DSL.fs +0 -0
  114. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/DSL.fs.js +0 -0
  115. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Expression.fs +0 -0
  116. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Expression.fs.js +0 -0
  117. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Operators.fs +0 -0
  118. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Operators.fs.js +0 -0
  119. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/RowBuilder.fs +0 -0
  120. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/RowBuilder.fs.js +0 -0
  121. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/SheetBuilder.fs +0 -0
  122. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/SheetBuilder.fs.js +0 -0
  123. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/TableBuilder.fs +0 -0
  124. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/TableBuilder.fs.js +0 -0
  125. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Transform.fs +0 -0
  126. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Transform.fs.js +0 -0
  127. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Types.fs +0 -0
  128. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/Types.fs.js +0 -0
  129. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/WorkbookBuilder.fs +0 -0
  130. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/DSL/WorkbookBuilder.fs.js +0 -0
  131. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsAddress.fs +0 -0
  132. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsAddress.fs.js +0 -0
  133. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsColumn.fs +0 -0
  134. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsColumn.fs.js +0 -0
  135. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsRow.fs +0 -0
  136. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsRow.fs.js +0 -0
  137. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsWorkbook.fs +0 -0
  138. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/FsWorkbook.fs.js +0 -0
  139. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Json/Table.fs +0 -0
  140. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Json/Table.fs.js +0 -0
  141. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Json/Value.fs +0 -0
  142. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Json/Value.fs.js +0 -0
  143. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRange.fs +0 -0
  144. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRange.fs.js +0 -0
  145. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeAddress.fs +0 -0
  146. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeAddress.fs.js +0 -0
  147. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeBase.fs +0 -0
  148. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeBase.fs.js +0 -0
  149. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeColumn.fs +0 -0
  150. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeColumn.fs.js +0 -0
  151. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeRow.fs +0 -0
  152. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Ranges/FsRangeRow.fs.js +0 -0
  153. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/SheetBuilder.fs +0 -0
  154. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/SheetBuilder.fs.js +0 -0
  155. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Tables/FsTable.fs +0 -0
  156. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Tables/FsTable.fs.js +0 -0
  157. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Tables/FsTableField.fs +0 -0
  158. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Tables/FsTableField.fs.js +0 -0
  159. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Tables/FsTableRow.fs +0 -0
  160. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/Tables/FsTableRow.fs.js +0 -0
  161. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -0
  162. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/obj/Debug/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +0 -0
  163. /package/fable_modules/{FsSpreadsheet.6.1.2 → FsSpreadsheet.6.2.0}/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -0
package/Json/Study.js CHANGED
@@ -9,6 +9,7 @@ import { Publication_ISAJson_decoder, Publication_ISAJson_encoder, Publication_R
9
9
  import { Person_ISAJson_decoder, Person_ISAJson_encoder, Person_ROCrate_decoder, Person_ROCrate_encoder, Person_decoder, Person_encoder } from "./Person.js";
10
10
  import { OntologyAnnotation_ISAJson_decoder, OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ROCrate_decoderDefinedTerm, OntologyAnnotation_ROCrate_encoderDefinedTerm, OntologyAnnotation_decoder, OntologyAnnotation_encoder } from "./OntologyAnnotation.js";
11
11
  import { ArcTable_decoderCompressed, ArcTable_encoderCompressed, ArcTable_decoder, ArcTable_encoder } from "./Table/ArcTable.js";
12
+ import { decoderCompressed, encoderCompressed, decoder as decoder_1, encoder as encoder_4 } from "./DataMap/DataMap.js";
12
13
  import { Comment_ISAJson_decoder, Comment_ISAJson_encoder, Comment_ROCrate_decoder, Comment_ROCrate_encoder, Comment_decoder, Comment_encoder } from "./Comment.js";
13
14
  import { list as list_2, string, object } from "../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
14
15
  import { Decode_objectNoAdditionalProperties, Decode_resizeArray } from "./Decode.js";
@@ -22,7 +23,7 @@ import { context_jsonvalue } from "./context/rocrate/isa_study_context.js";
22
23
  import { getProtocols, getCharacteristics, getFactors, getUnits } from "../Core/Process/ProcessSequence.js";
23
24
  import { Factor_ISAJson_encoder } from "./Process/Factor.js";
24
25
  import { MaterialAttribute_ISAJson_encoder } from "./Process/MaterialAttribute.js";
25
- import { encoder as encoder_4 } from "./Process/StudyMaterials.js";
26
+ import { encoder as encoder_5 } from "./Process/StudyMaterials.js";
26
27
  import { Protocol_ISAJson_encoder } from "./Process/Protocol.js";
27
28
  import { encode } from "./IDTable.js";
28
29
  import { isEmpty } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
@@ -51,12 +52,12 @@ export function Study_encoder(study) {
51
52
  else {
52
53
  return [tupledArg[0], v];
53
54
  }
54
- }, ofArray([["Identifier", new Json(0, [study.Identifier])], tryInclude("Title", (value_1) => (new Json(0, [value_1])), study.Title), tryInclude("Description", (value_3) => (new Json(0, [value_3])), study.Description), tryInclude("SubmissionDate", (value_5) => (new Json(0, [value_5])), study.SubmissionDate), tryInclude("PublicReleaseDate", (value_7) => (new Json(0, [value_7])), study.PublicReleaseDate), tryIncludeSeq("Publications", Publication_encoder, study.Publications), tryIncludeSeq("Contacts", Person_encoder, study.Contacts), tryIncludeSeq("StudyDesignDescriptors", OntologyAnnotation_encoder, study.StudyDesignDescriptors), tryIncludeSeq("Tables", ArcTable_encoder, study.Tables), tryIncludeSeq("RegisteredAssayIdentifiers", (value_9) => (new Json(0, [value_9])), study.RegisteredAssayIdentifiers), tryIncludeSeq("Comments", Comment_encoder, study.Comments)]))]);
55
+ }, ofArray([["Identifier", new Json(0, [study.Identifier])], tryInclude("Title", (value_1) => (new Json(0, [value_1])), study.Title), tryInclude("Description", (value_3) => (new Json(0, [value_3])), study.Description), tryInclude("SubmissionDate", (value_5) => (new Json(0, [value_5])), study.SubmissionDate), tryInclude("PublicReleaseDate", (value_7) => (new Json(0, [value_7])), study.PublicReleaseDate), tryIncludeSeq("Publications", Publication_encoder, study.Publications), tryIncludeSeq("Contacts", Person_encoder, study.Contacts), tryIncludeSeq("StudyDesignDescriptors", OntologyAnnotation_encoder, study.StudyDesignDescriptors), tryIncludeSeq("Tables", ArcTable_encoder, study.Tables), tryInclude("DataMap", encoder_4, study.DataMap), tryIncludeSeq("RegisteredAssayIdentifiers", (value_9) => (new Json(0, [value_9])), study.RegisteredAssayIdentifiers), tryIncludeSeq("Comments", Comment_encoder, study.Comments)]))]);
55
56
  }
56
57
 
57
58
  export const Study_decoder = object((get$) => {
58
- let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9, arg_21, objectArg_10;
59
- return new ArcStudy((objectArg = get$.Required, objectArg.Field("Identifier", string)), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("Title", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("Description", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("SubmissionDate", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("PublicReleaseDate", string))), unwrap((arg_11 = Decode_resizeArray(Publication_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("Publications", arg_11)))), unwrap((arg_13 = Decode_resizeArray(Person_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("Contacts", arg_13)))), unwrap((arg_15 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("StudyDesignDescriptors", arg_15)))), unwrap((arg_17 = Decode_resizeArray(ArcTable_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("Tables", arg_17)))), void 0, unwrap((arg_19 = Decode_resizeArray(string), (objectArg_9 = get$.Optional, objectArg_9.Field("RegisteredAssayIdentifiers", arg_19)))), unwrap((arg_21 = Decode_resizeArray(Comment_decoder), (objectArg_10 = get$.Optional, objectArg_10.Field("Comments", arg_21)))));
59
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, objectArg_9, arg_21, objectArg_10, arg_23, objectArg_11;
60
+ return new ArcStudy((objectArg = get$.Required, objectArg.Field("Identifier", string)), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("Title", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("Description", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("SubmissionDate", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("PublicReleaseDate", string))), unwrap((arg_11 = Decode_resizeArray(Publication_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("Publications", arg_11)))), unwrap((arg_13 = Decode_resizeArray(Person_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("Contacts", arg_13)))), unwrap((arg_15 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("StudyDesignDescriptors", arg_15)))), unwrap((arg_17 = Decode_resizeArray(ArcTable_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("Tables", arg_17)))), unwrap((objectArg_9 = get$.Optional, objectArg_9.Field("DataMap", decoder_1))), unwrap((arg_21 = Decode_resizeArray(string), (objectArg_10 = get$.Optional, objectArg_10.Field("RegisteredAssayIdentifiers", arg_21)))), unwrap((arg_23 = Decode_resizeArray(Comment_decoder), (objectArg_11 = get$.Optional, objectArg_11.Field("Comments", arg_23)))));
60
61
  });
61
62
 
62
63
  export function Study_encoderCompressed(stringTable, oaTable, cellTable, study) {
@@ -68,13 +69,13 @@ export function Study_encoderCompressed(stringTable, oaTable, cellTable, study)
68
69
  else {
69
70
  return [tupledArg[0], v];
70
71
  }
71
- }, ofArray([["Identifier", new Json(0, [study.Identifier])], tryInclude("Title", (value_1) => (new Json(0, [value_1])), study.Title), tryInclude("Description", (value_3) => (new Json(0, [value_3])), study.Description), tryInclude("SubmissionDate", (value_5) => (new Json(0, [value_5])), study.SubmissionDate), tryInclude("PublicReleaseDate", (value_7) => (new Json(0, [value_7])), study.PublicReleaseDate), tryIncludeSeq("Publications", Publication_encoder, study.Publications), tryIncludeSeq("Contacts", Person_encoder, study.Contacts), tryIncludeSeq("StudyDesignDescriptors", OntologyAnnotation_encoder, study.StudyDesignDescriptors), tryIncludeSeq("Tables", (table) => ArcTable_encoderCompressed(stringTable, oaTable, cellTable, table), study.Tables), tryIncludeSeq("RegisteredAssayIdentifiers", (value_9) => (new Json(0, [value_9])), study.RegisteredAssayIdentifiers), tryIncludeSeq("Comments", Comment_encoder, study.Comments)]))]);
72
+ }, ofArray([["Identifier", new Json(0, [study.Identifier])], tryInclude("Title", (value_1) => (new Json(0, [value_1])), study.Title), tryInclude("Description", (value_3) => (new Json(0, [value_3])), study.Description), tryInclude("SubmissionDate", (value_5) => (new Json(0, [value_5])), study.SubmissionDate), tryInclude("PublicReleaseDate", (value_7) => (new Json(0, [value_7])), study.PublicReleaseDate), tryIncludeSeq("Publications", Publication_encoder, study.Publications), tryIncludeSeq("Contacts", Person_encoder, study.Contacts), tryIncludeSeq("StudyDesignDescriptors", OntologyAnnotation_encoder, study.StudyDesignDescriptors), tryIncludeSeq("Tables", (table) => ArcTable_encoderCompressed(stringTable, oaTable, cellTable, table), study.Tables), tryInclude("DataMap", (dm) => encoderCompressed(stringTable, oaTable, cellTable, dm), study.DataMap), tryIncludeSeq("RegisteredAssayIdentifiers", (value_9) => (new Json(0, [value_9])), study.RegisteredAssayIdentifiers), tryIncludeSeq("Comments", Comment_encoder, study.Comments)]))]);
72
73
  }
73
74
 
74
75
  export function Study_decoderCompressed(stringTable, oaTable, cellTable) {
75
76
  return object((get$) => {
76
- let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9, arg_21, objectArg_10;
77
- return new ArcStudy((objectArg = get$.Required, objectArg.Field("Identifier", string)), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("Title", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("Description", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("SubmissionDate", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("PublicReleaseDate", string))), unwrap((arg_11 = Decode_resizeArray(Publication_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("Publications", arg_11)))), unwrap((arg_13 = Decode_resizeArray(Person_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("Contacts", arg_13)))), unwrap((arg_15 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("StudyDesignDescriptors", arg_15)))), unwrap((arg_17 = Decode_resizeArray(ArcTable_decoderCompressed(stringTable, oaTable, cellTable)), (objectArg_8 = get$.Optional, objectArg_8.Field("Tables", arg_17)))), void 0, unwrap((arg_19 = Decode_resizeArray(string), (objectArg_9 = get$.Optional, objectArg_9.Field("RegisteredAssayIdentifiers", arg_19)))), unwrap((arg_21 = Decode_resizeArray(Comment_decoder), (objectArg_10 = get$.Optional, objectArg_10.Field("Comments", arg_21)))));
77
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, arg_19, objectArg_9, arg_21, objectArg_10, arg_23, objectArg_11;
78
+ return new ArcStudy((objectArg = get$.Required, objectArg.Field("Identifier", string)), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("Title", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("Description", string))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("SubmissionDate", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("PublicReleaseDate", string))), unwrap((arg_11 = Decode_resizeArray(Publication_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("Publications", arg_11)))), unwrap((arg_13 = Decode_resizeArray(Person_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("Contacts", arg_13)))), unwrap((arg_15 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("StudyDesignDescriptors", arg_15)))), unwrap((arg_17 = Decode_resizeArray(ArcTable_decoderCompressed(stringTable, oaTable, cellTable)), (objectArg_8 = get$.Optional, objectArg_8.Field("Tables", arg_17)))), unwrap((arg_19 = decoderCompressed(stringTable, oaTable, cellTable), (objectArg_9 = get$.Optional, objectArg_9.Field("DataMap", arg_19)))), unwrap((arg_21 = Decode_resizeArray(string), (objectArg_10 = get$.Optional, objectArg_10.Field("RegisteredAssayIdentifiers", arg_21)))), unwrap((arg_23 = Decode_resizeArray(Comment_decoder), (objectArg_11 = get$.Optional, objectArg_11.Field("Comments", arg_23)))));
78
79
  });
79
80
  }
80
81
 
@@ -156,7 +157,7 @@ export function Study_ISAJson_encoder(idMap, assays, s) {
156
157
  const encodedUnits = tryIncludeList("unitCategories", (oa) => OntologyAnnotation_ISAJson_encoder(idMap, oa), getUnits(processes));
157
158
  const encodedFactors = tryIncludeList("factors", (value_1) => Factor_ISAJson_encoder(idMap, value_1), getFactors(processes));
158
159
  const encodedCharacteristics = tryIncludeList("characteristicCategories", (value_3) => MaterialAttribute_ISAJson_encoder(idMap, value_3), getCharacteristics(processes));
159
- const encodedMaterials = tryInclude("materials", (ps) => encoder_4(idMap, ps), Option_fromValueWithDefault(empty(), processes));
160
+ const encodedMaterials = tryInclude("materials", (ps) => encoder_5(idMap, ps), Option_fromValueWithDefault(empty(), processes));
160
161
  let encodedProtocols;
161
162
  const value_5 = getProtocols(processes);
162
163
  encodedProtocols = tryIncludeList("protocols", (studyName = s_1.Identifier, (oa_1) => Protocol_ISAJson_encoder(studyName, void 0, void 0, idMap, oa_1)), value_5);
@@ -1,7 +1,7 @@
1
1
  import { OntologyAnnotation_decoder, OntologyAnnotation_encoder } from "../OntologyAnnotation.js";
2
2
  import { ofArray, singleton } from "../../fable_modules/fable-library-js.4.16.0/List.js";
3
3
  import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
4
- import { Data_compressedDecoder, Data_compressedEncoder, Data_decoder, Data_encoder } from "../Process/Data.js";
4
+ import { Data_compressedDecoder, Data_compressedEncoder, Data_decoder, Data_encoder } from "../Data.js";
5
5
  import { list } from "../../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
6
6
  import { index, string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
7
7
  import { CompositeCell } from "../../Core/Table/CompositeCell.js";
@@ -19,7 +19,7 @@ export function IContext_$reflection() {
19
19
  return record_type("ARCtrl.Json.ROCrateContext.Data.IContext", [], IContext, () => [["sdo", string_type], ["arc", string_type], ["Data", string_type], ["ArcData", string_type], ["type", string_type], ["name", string_type], ["comments", string_type]]);
20
20
  }
21
21
 
22
- export const context_jsonvalue = new Json(5, [[["sdo", new Json(0, ["http://schema.org/"])], ["Data", new Json(0, ["sdo:MediaObject"])], ["type", new Json(0, ["sdo:disambiguatingDescription"])], ["name", new Json(0, ["sdo:name"])], ["comments", new Json(0, ["sdo:comment"])]]]);
22
+ export const context_jsonvalue = new Json(5, [[["sdo", new Json(0, ["http://schema.org/"])], ["Data", new Json(0, ["sdo:MediaObject"])], ["type", new Json(0, ["sdo:disambiguatingDescription"])], ["encodingFormat", new Json(0, ["sdo:encodingFormat"])], ["usageInfo", new Json(0, ["sdo:usageInfo"])], ["name", new Json(0, ["sdo:name"])], ["comments", new Json(0, ["sdo:comment"])]]]);
23
23
 
24
- export const context_str = "\r\n{\r\n \"@context\": {\r\n \"sdo\": \"http://schema.org/\",\r\n \"arc\": \"http://purl.org/nfdi4plants/ontology/\",\r\n\r\n \"Data\": \"sdo:MediaObject\",\r\n \"ArcData\": \"arc:ARC#ARC_00000076\",\r\n\r\n \"type\": \"arc:ARC#ARC_00000107\",\r\n\r\n \"name\": \"sdo:name\",\r\n \"comments\": \"sdo:disambiguatingDescription\"\r\n }\r\n}\r\n ";
24
+ export const context_str = "\n{\n \"@context\": {\n \"sdo\": \"http://schema.org/\",\n \"arc\": \"http://purl.org/nfdi4plants/ontology/\",\n\n \"Data\": \"sdo:MediaObject\",\n \"ArcData\": \"arc:ARC#ARC_00000076\",\n\n \"type\": \"arc:ARC#ARC_00000107\",\n\n \"name\": \"sdo:name\",\n \"comments\": \"sdo:disambiguatingDescription\"\n }\n}\n ";
25
25
 
@@ -29,5 +29,5 @@ export function IContext_$reflection() {
29
29
 
30
30
  export const context_jsonvalue = new Json(5, [[["sdo", new Json(0, ["http://schema.org/"])], ["Investigation", new Json(0, ["sdo:Dataset"])], ["identifier", new Json(0, ["sdo:identifier"])], ["title", new Json(0, ["sdo:headline"])], ["additionalType", new Json(0, ["sdo:additionalType"])], ["description", new Json(0, ["sdo:description"])], ["submissionDate", new Json(0, ["sdo:dateCreated"])], ["publicReleaseDate", new Json(0, ["sdo:datePublished"])], ["publications", new Json(0, ["sdo:citation"])], ["people", new Json(0, ["sdo:creator"])], ["studies", new Json(0, ["sdo:hasPart"])], ["ontologySourceReferences", new Json(0, ["sdo:mentions"])], ["comments", new Json(0, ["sdo:comment"])], ["filename", new Json(0, ["sdo:alternateName"])]]]);
31
31
 
32
- export const context_str = "\r\n{\r\n \"@context\": {\r\n \"sdo\": \"http://schema.org/\",\r\n \"arc\": \"http://purl.org/nfdi4plants/ontology/\",\r\n\r\n \"Investigation\": \"sdo:Dataset\",\r\n\r\n \"identifier\" : \"sdo:identifier\",\r\n \"title\": \"sdo:headline\",\r\n \"description\": \"sdo:description\",\r\n \"submissionDate\": \"sdo:dateCreated\",\r\n \"publicReleaseDate\": \"sdo:datePublished\",\r\n \"publications\": \"sdo:citation\",\r\n \"people\": \"sdo:creator\",\r\n \"studies\": \"sdo:hasPart\",\r\n \"ontologySourceReferences\": \"sdo:mentions\",\r\n \"comments\": \"sdo:disambiguatingDescription\",\r\n\r\n \"publications?\": \"sdo:subjectOf?\",\r\n \"filename\": \"sdo:alternateName\"\r\n }\r\n}\r\n ";
32
+ export const context_str = "\n{\n \"@context\": {\n \"sdo\": \"http://schema.org/\",\n \"arc\": \"http://purl.org/nfdi4plants/ontology/\",\n\n \"Investigation\": \"sdo:Dataset\",\n\n \"identifier\" : \"sdo:identifier\",\n \"title\": \"sdo:headline\",\n \"description\": \"sdo:description\",\n \"submissionDate\": \"sdo:dateCreated\",\n \"publicReleaseDate\": \"sdo:datePublished\",\n \"publications\": \"sdo:citation\",\n \"people\": \"sdo:creator\",\n \"studies\": \"sdo:hasPart\",\n \"ontologySourceReferences\": \"sdo:mentions\",\n \"comments\": \"sdo:disambiguatingDescription\",\n\n \"publications?\": \"sdo:SubjectOf?\",\n \"filename\": \"sdo:alternateName\"\n }\n}\n ";
33
33
 
@@ -1,4 +1,4 @@
1
1
  import { Json } from "../../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
2
2
 
3
- export const context_jsonvalue = new Json(5, [[["sdo", new Json(0, ["http://schema.org/"])], ["additionalType", new Json(0, ["sdo:additionalType"])], ["category", new Json(0, ["sdo:name"])], ["categoryCode", new Json(0, ["sdo:propertyID"])], ["value", new Json(0, ["sdo:value"])], ["valueCode", new Json(0, ["sdo:valueReference"])], ["unit", new Json(0, ["sdo:unitText"])], ["unitCode", new Json(0, ["sdo:unitCode"])], ["comments", new Json(0, ["sdo:disambiguatingDescription"])]]]);
3
+ export const context_jsonvalue = new Json(5, [[["sdo", new Json(0, ["http://schema.org/"])], ["additionalType", new Json(0, ["sdo:additionalType"])], ["alternateName", new Json(0, ["sdo:alternateName"])], ["measurementMethod", new Json(0, ["sdo:measurementMethod"])], ["description", new Json(0, ["sdo:description"])], ["category", new Json(0, ["sdo:name"])], ["categoryCode", new Json(0, ["sdo:propertyID"])], ["value", new Json(0, ["sdo:value"])], ["valueCode", new Json(0, ["sdo:valueReference"])], ["unit", new Json(0, ["sdo:unitText"])], ["unitCode", new Json(0, ["sdo:unitCode"])], ["comments", new Json(0, ["sdo:disambiguatingDescription"])]]]);
4
4
 
@@ -3,13 +3,13 @@ import { item, map as map_1 } from "../../fable_modules/fable-library-js.4.16.0/
3
3
  import { singleton as singleton_1, collect, map as map_2, delay, toArray as toArray_1, tryFind } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
4
4
  import { toStringCellColumns, fixDeprecatedIOHeader, fromStringCellColumns } from "./CompositeColumn.js";
5
5
  import { printf, toFail } from "../../fable_modules/fable-library-js.4.16.0/String.js";
6
- import { Dictionary_tryGet, FsCellsCollection__TryGetCell_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCellsCollection.fs.js";
6
+ import { Dictionary_tryGet, FsCellsCollection__TryGetCell_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.2.0/Cells/FsCellsCollection.fs.js";
7
7
  import { rangeDouble } from "../../fable_modules/fable-library-js.4.16.0/Range.js";
8
- import { FsAddress_$ctor_Z37302880, FsAddress__get_ColumnNumber, FsAddress__get_RowNumber } from "../../fable_modules/FsSpreadsheet.6.1.2/FsAddress.fs.js";
9
- import { FsRangeAddress_$ctor_7E77A4A0, FsRangeAddress__get_LastAddress } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeAddress.fs.js";
10
- import { FsRangeBase__Cell_Z3407A44B, FsRangeBase__get_RangeAddress } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeBase.fs.js";
8
+ import { FsAddress_$ctor_Z37302880, FsAddress__get_ColumnNumber, FsAddress__get_RowNumber } from "../../fable_modules/FsSpreadsheet.6.2.0/FsAddress.fs.js";
9
+ import { FsRangeAddress_$ctor_7E77A4A0, FsRangeAddress__get_LastAddress } from "../../fable_modules/FsSpreadsheet.6.2.0/Ranges/FsRangeAddress.fs.js";
10
+ import { FsRangeBase__Cell_Z3407A44B, FsRangeBase__get_RangeAddress } from "../../fable_modules/FsSpreadsheet.6.2.0/Ranges/FsRangeBase.fs.js";
11
11
  import { ArcTable } from "../../Core/Table/ArcTable.js";
12
- import { FsWorksheet } from "../../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
12
+ import { FsWorksheet } from "../../fable_modules/FsSpreadsheet.6.2.0/FsWorksheet.fs.js";
13
13
  import { comparePrimitives } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
14
14
  import { addToDict } from "../../fable_modules/fable-library-js.4.16.0/MapUtil.js";
15
15
 
@@ -1,4 +1,4 @@
1
- import { map, setItem, item, skip } from "../../fable_modules/fable-library-js.4.16.0/Array.js";
1
+ import { tryItem, map, setItem, item, skip } from "../../fable_modules/fable-library-js.4.16.0/Array.js";
2
2
  import { CompositeHeader, IOType } from "../../Core/Table/CompositeHeader.js";
3
3
  import { toString } from "../../fable_modules/fable-library-js.4.16.0/Types.js";
4
4
  import { toStringCells, fromStringCells } from "./CompositeHeader.js";
@@ -6,8 +6,9 @@ import { empty, singleton, append, toList, exists, map as map_1, delay, toArray
6
6
  import { rangeDouble } from "../../fable_modules/fable-library-js.4.16.0/Range.js";
7
7
  import { CompositeColumn } from "../../Core/Table/CompositeColumn.js";
8
8
  import { toStringCells as toStringCells_1 } from "./CompositeCell.js";
9
+ import { defaultArg } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
9
10
  import { map as map_2, singleton as singleton_1, ofArray } from "../../fable_modules/fable-library-js.4.16.0/List.js";
10
- import { FsCell } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCell.fs.js";
11
+ import { FsCell } from "../../fable_modules/FsSpreadsheet.6.2.0/Cells/FsCell.fs.js";
11
12
 
12
13
  /**
13
14
  * Checks if the column header is a deprecated IO Header. If so, fixes it.
@@ -53,19 +54,20 @@ export function fromFsColumns(columns) {
53
54
  export function toStringCellColumns(column) {
54
55
  const hasUnit = exists((c) => c.isUnitized, column.Cells);
55
56
  const isTerm = column.Header.IsTermColumn;
56
- const isData = column.Header.IsDataColumn;
57
+ const isData = column.Header.IsDataColumn && exists((c_1) => c_1.isData, column.Cells);
57
58
  const header = toStringCells(hasUnit, column.Header);
58
59
  const cells = map((cell) => toStringCells_1(isTerm, hasUnit, cell), column.Cells);
60
+ const getCellOrDefault = (ri, ci, cells_1) => defaultArg(tryItem(ci, item(ri, cells_1)), "");
59
61
  if (hasUnit) {
60
- return ofArray([toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i) => item(0, item(i, cells)), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(1, header)), delay(() => map_1((i_1) => item(1, item(i_1, cells)), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(2, header)), delay(() => map_1((i_2) => item(2, item(i_2, cells)), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(3, header)), delay(() => map_1((i_3) => item(3, item(i_3, cells)), rangeDouble(0, 1, column.Cells.length - 1))))))]);
62
+ return ofArray([toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i) => getCellOrDefault(i, 0, cells), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(1, header)), delay(() => map_1((i_1) => getCellOrDefault(i_1, 1, cells), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(2, header)), delay(() => map_1((i_2) => getCellOrDefault(i_2, 2, cells), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(3, header)), delay(() => map_1((i_3) => getCellOrDefault(i_3, 3, cells), rangeDouble(0, 1, column.Cells.length - 1))))))]);
61
63
  }
62
64
  else if (isTerm) {
63
- return ofArray([toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i_4) => item(0, item(i_4, cells)), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(1, header)), delay(() => map_1((i_5) => item(1, item(i_5, cells)), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(2, header)), delay(() => map_1((i_6) => item(2, item(i_6, cells)), rangeDouble(0, 1, column.Cells.length - 1))))))]);
65
+ return ofArray([toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i_4) => getCellOrDefault(i_4, 0, cells), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(1, header)), delay(() => map_1((i_5) => getCellOrDefault(i_5, 1, cells), rangeDouble(0, 1, column.Cells.length - 1)))))), toList(delay(() => append(singleton(item(2, header)), delay(() => map_1((i_6) => getCellOrDefault(i_6, 2, cells), rangeDouble(0, 1, column.Cells.length - 1))))))]);
64
66
  }
65
67
  else if (isData) {
66
- const hasFormat = exists((c_1) => (c_1.AsData.Format != null), column.Cells);
67
- const hasSelectorFormat = exists((c_2) => (c_2.AsData.SelectorFormat != null), column.Cells);
68
- return toList(delay(() => append(singleton(toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i_7) => item(0, item(i_7, cells)), rangeDouble(0, 1, column.Cells.length - 1))))))), delay(() => append(hasFormat ? singleton(toList(delay(() => append(singleton(item(1, header)), delay(() => map_1((i_8) => item(1, item(i_8, cells)), rangeDouble(0, 1, column.Cells.length - 1))))))) : empty(), delay(() => (hasSelectorFormat ? singleton(toList(delay(() => append(singleton(item(2, header)), delay(() => map_1((i_9) => item(2, item(i_9, cells)), rangeDouble(0, 1, column.Cells.length - 1))))))) : empty())))))));
68
+ const hasFormat = exists((c_2) => (c_2.ToDataCell().AsData.Format != null), column.Cells);
69
+ const hasSelectorFormat = exists((c_3) => (c_3.ToDataCell().AsData.SelectorFormat != null), column.Cells);
70
+ return toList(delay(() => append(singleton(toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i_7) => getCellOrDefault(i_7, 0, cells), rangeDouble(0, 1, column.Cells.length - 1))))))), delay(() => append(hasFormat ? singleton(toList(delay(() => append(singleton(item(1, header)), delay(() => map_1((i_8) => getCellOrDefault(i_8, 1, cells), rangeDouble(0, 1, column.Cells.length - 1))))))) : empty(), delay(() => (hasSelectorFormat ? singleton(toList(delay(() => append(singleton(item(2, header)), delay(() => map_1((i_9) => getCellOrDefault(i_9, 2, cells), rangeDouble(0, 1, column.Cells.length - 1))))))) : empty())))))));
69
71
  }
70
72
  else {
71
73
  return singleton_1(toList(delay(() => append(singleton(item(0, header)), delay(() => map_1((i_10) => item(0, item(i_10, cells)), rangeDouble(0, 1, column.Cells.length - 1)))))));
@@ -1,5 +1,5 @@
1
- import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
2
- import { iterate, isEmpty as isEmpty_1, choose, tryHead, head, exists, map, singleton, append, delay, iterateIndexed } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
1
+ import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorksheet.fs.js";
2
+ import { iterate, isEmpty as isEmpty_1, tryPick, choose, tryHead, head, exists, map, singleton, append, delay, iterateIndexed } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
3
3
  import { SparseRowModule_tryGetValueAt, SparseRowModule_fromFsRow, SparseRowModule_fromValues, SparseRowModule_writeToSheet } from "./Metadata/SparseTable.js";
4
4
  import { fromRows as fromRows_1, toRows as toRows_1 } from "./Metadata/Assays.js";
5
5
  import { empty, isEmpty, ofSeq, singleton as singleton_1 } from "../fable_modules/fable-library-js.4.16.0/List.js";
@@ -8,11 +8,12 @@ import { toConsole, printf, toFail } from "../fable_modules/fable-library-js.4.1
8
8
  import { getEnumerator } from "../fable_modules/fable-library-js.4.16.0/Util.js";
9
9
  import { ArcAssay } from "../Core/ArcTypes.js";
10
10
  import { createMissingIdentifier } from "../Core/Helper/Identifier.js";
11
- import { defaultArg } from "../fable_modules/fable-library-js.4.16.0/Option.js";
12
- import { toFsWorksheet, tryFromFsWorksheet } from "./AnnotationTable/ArcTable.js";
13
- import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorkbook.fs.js";
11
+ import { toArray, defaultArg } from "../fable_modules/fable-library-js.4.16.0/Option.js";
12
+ import { toFsWorksheet as toFsWorksheet_1, tryFromFsWorksheet } from "./AnnotationTable/ArcTable.js";
13
+ import { toFsWorksheet, tryFromFsWorksheet as tryFromFsWorksheet_1 } from "./DataMapTable/DataMapTable.js";
14
+ import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorkbook.fs.js";
14
15
 
15
- export function toMetadataSheet(assay) {
16
+ export function ArcAssay_toMetadataSheet(assay) {
16
17
  let assay_1;
17
18
  const sheet = new FsWorksheet("isa_assay");
18
19
  iterateIndexed((rowI, r) => {
@@ -21,7 +22,7 @@ export function toMetadataSheet(assay) {
21
22
  return sheet;
22
23
  }
23
24
 
24
- export function fromMetadataSheet(sheet) {
25
+ export function ArcAssay_fromMetadataSheet(sheet) {
25
26
  try {
26
27
  const rows_1 = map(SparseRowModule_fromFsRow, sheet.Rows);
27
28
  const patternInput = exists((row) => {
@@ -117,7 +118,7 @@ export function fromMetadataSheet(sheet) {
117
118
  /**
118
119
  * Reads an assay from a spreadsheet
119
120
  */
120
- export function fromFsWorkbook(doc) {
121
+ export function ARCtrl_ArcAssay__ArcAssay_fromFsWorkbook_Static_32154C9D(doc) {
121
122
  try {
122
123
  let assayMetaData;
123
124
  const matchValue = doc.TryGetWorksheetByName("isa_assay");
@@ -128,16 +129,19 @@ export function fromFsWorkbook(doc) {
128
129
  assayMetaData = ArcAssay.create(createMissingIdentifier());
129
130
  }
130
131
  else {
131
- assayMetaData = fromMetadataSheet(matchValue_1);
132
+ assayMetaData = ArcAssay_fromMetadataSheet(matchValue_1);
132
133
  }
133
134
  }
134
135
  else {
135
- assayMetaData = fromMetadataSheet(matchValue);
136
+ assayMetaData = ArcAssay_fromMetadataSheet(matchValue);
136
137
  }
137
- const annotationTables = choose(tryFromFsWorksheet, doc.GetWorksheets());
138
+ const sheets = doc.GetWorksheets();
139
+ const annotationTables = choose(tryFromFsWorksheet, sheets);
140
+ const datamapSheet = tryPick(tryFromFsWorksheet_1, sheets);
138
141
  if (!isEmpty_1(annotationTables)) {
139
142
  assayMetaData.Tables = Array.from(annotationTables);
140
143
  }
144
+ assayMetaData.DataMap = datamapSheet;
141
145
  return assayMetaData;
142
146
  }
143
147
  catch (err) {
@@ -146,13 +150,25 @@ export function fromFsWorkbook(doc) {
146
150
  }
147
151
  }
148
152
 
149
- export function toFsWorkbook(assay) {
153
+ /**
154
+ * Write an assay to a spreadsheet
155
+ *
156
+ * If datamapSheet is true, the datamap will be written to a worksheet inside assay workbook.
157
+ */
158
+ export function ARCtrl_ArcAssay__ArcAssay_toFsWorkbook_Static_Z2508BE4F(assay, datamapSheet) {
159
+ const datamapSheet_1 = defaultArg(datamapSheet, true);
150
160
  const doc = new FsWorkbook();
151
- const metaDataSheet = toMetadataSheet(assay);
161
+ const metaDataSheet = ArcAssay_toMetadataSheet(assay);
152
162
  doc.AddWorksheet(metaDataSheet);
153
- iterate((arg) => {
154
- const sheet = toFsWorksheet(arg);
155
- doc.AddWorksheet(sheet);
163
+ if (datamapSheet_1) {
164
+ iterate((arg) => {
165
+ const sheet = toFsWorksheet(arg);
166
+ doc.AddWorksheet(sheet);
167
+ }, toArray(assay.DataMap));
168
+ }
169
+ iterate((arg_1) => {
170
+ const sheet_1 = toFsWorksheet_1(arg_1);
171
+ doc.AddWorksheet(sheet_1);
156
172
  }, assay.Tables);
157
173
  return doc;
158
174
  }
@@ -17,8 +17,8 @@ import { toRows as toRows_4, fromRows as fromRows_4 } from "./Metadata/Study.js"
17
17
  import { iterateIndexed, map as map_1, toList, collect, singleton, append as append_1, delay } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
18
18
  import { tryFind, ofList } from "../fable_modules/fable-library-js.4.16.0/Map.js";
19
19
  import { printf, toFail } from "../fable_modules/fable-library-js.4.16.0/String.js";
20
- import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
21
- import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorkbook.fs.js";
20
+ import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorksheet.fs.js";
21
+ import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorkbook.fs.js";
22
22
 
23
23
  export class InvestigationInfo extends Record {
24
24
  constructor(Identifier, Title, Description, SubmissionDate, PublicReleaseDate, Comments) {
@@ -1,16 +1,17 @@
1
- import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
2
- import { map, append, iterateIndexed } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
1
+ import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorksheet.fs.js";
2
+ import { iterate, tryPick, map, append, iterateIndexed } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
3
3
  import { SparseRowModule_fromFsRow, SparseRowModule_fromValues, SparseRowModule_writeToSheet } from "./Metadata/SparseTable.js";
4
4
  import { fromRows as fromRows_1, toRows } from "./Metadata/Study.js";
5
5
  import { toConsole, printf, toFail } from "../fable_modules/fable-library-js.4.16.0/String.js";
6
- import { defaultArg } from "../fable_modules/fable-library-js.4.16.0/Option.js";
6
+ import { toArray, defaultArg } from "../fable_modules/fable-library-js.4.16.0/Option.js";
7
7
  import { getEnumerator } from "../fable_modules/fable-library-js.4.16.0/Util.js";
8
8
  import { ArcStudy } from "../Core/ArcTypes.js";
9
9
  import { createMissingIdentifier } from "../Core/Helper/Identifier.js";
10
10
  import { empty } from "../fable_modules/fable-library-js.4.16.0/List.js";
11
11
  import { ResizeArray_iter, ResizeArray_isEmpty, ResizeArray_choose } from "../Core/Helper/Collections.js";
12
- import { toFsWorksheet, tryFromFsWorksheet } from "./AnnotationTable/ArcTable.js";
13
- import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorkbook.fs.js";
12
+ import { toFsWorksheet as toFsWorksheet_1, tryFromFsWorksheet } from "./AnnotationTable/ArcTable.js";
13
+ import { toFsWorksheet, tryFromFsWorksheet as tryFromFsWorksheet_1 } from "./DataMapTable/DataMapTable.js";
14
+ import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorkbook.fs.js";
14
15
 
15
16
  export function ArcStudy_toMetadataSheet(study, assays) {
16
17
  let source_1;
@@ -53,10 +54,13 @@ export function ARCtrl_ArcStudy__ArcStudy_fromFsWorkbook_Static_32154C9D(doc) {
53
54
  patternInput = ArcStudy_fromMetadataSheet(matchValue);
54
55
  }
55
56
  const studyMetadata = patternInput[0];
56
- const annotationTables = ResizeArray_choose(tryFromFsWorksheet, doc.GetWorksheets());
57
+ const sheets = doc.GetWorksheets();
58
+ const annotationTables = ResizeArray_choose(tryFromFsWorksheet, sheets);
59
+ const datamapSheet = tryPick(tryFromFsWorksheet_1, sheets);
57
60
  if (!ResizeArray_isEmpty(annotationTables)) {
58
61
  studyMetadata.Tables = annotationTables;
59
62
  }
63
+ studyMetadata.DataMap = datamapSheet;
60
64
  return [studyMetadata, patternInput[1]];
61
65
  }
62
66
  catch (err) {
@@ -65,13 +69,25 @@ export function ARCtrl_ArcStudy__ArcStudy_fromFsWorkbook_Static_32154C9D(doc) {
65
69
  }
66
70
  }
67
71
 
68
- export function ARCtrl_ArcStudy__ArcStudy_toFsWorkbook_Static_353D0DB7(study, assays) {
72
+ /**
73
+ * Write a study to a spreadsheet
74
+ *
75
+ * If datamapSheet is true, the datamap will be written to a worksheet inside study workbook. Default: true
76
+ */
77
+ export function ARCtrl_ArcStudy__ArcStudy_toFsWorkbook_Static_Z4CEFA522(study, assays, datamapSheet) {
78
+ const datamapSheet_1 = defaultArg(datamapSheet, true);
69
79
  const doc = new FsWorkbook();
70
80
  const metaDataSheet = ArcStudy_toMetadataSheet(study, assays);
71
81
  doc.AddWorksheet(metaDataSheet);
72
- ResizeArray_iter((arg) => {
73
- const sheet = toFsWorksheet(arg);
74
- doc.AddWorksheet(sheet);
82
+ if (datamapSheet_1) {
83
+ iterate((arg) => {
84
+ const sheet = toFsWorksheet(arg);
85
+ doc.AddWorksheet(sheet);
86
+ }, toArray(study.DataMap));
87
+ }
88
+ ResizeArray_iter((arg_1) => {
89
+ const sheet_1 = toFsWorksheet_1(arg_1);
90
+ doc.AddWorksheet(sheet_1);
75
91
  }, study.Tables);
76
92
  return doc;
77
93
  }
@@ -1,10 +1,10 @@
1
1
  import { printf, toFail } from "../fable_modules/fable-library-js.4.16.0/String.js";
2
2
  import { tryPick } from "../fable_modules/fable-library-js.4.16.0/Seq.js";
3
3
  import { toFsWorksheet, tryFromFsWorksheet } from "./DataMapTable/DataMapTable.js";
4
- import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorkbook.fs.js";
4
+ import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorkbook.fs.js";
5
5
 
6
6
  /**
7
- * Reads an assay from a spreadsheet
7
+ * Reads an datamap from a spreadsheet
8
8
  */
9
9
  export function fromFsWorkbook(doc) {
10
10
  try {
@@ -4,7 +4,7 @@ import { tryFind, singleton as singleton_1, append, delay, map as map_1, collect
4
4
  import { distinct } from "../../fable_modules/fable-library-js.4.16.0/Seq2.js";
5
5
  import { bind, defaultArg } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
6
6
  import { stringHash } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
7
- import { FsCell } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCell.fs.js";
7
+ import { FsCell } from "../../fable_modules/FsSpreadsheet.6.2.0/Cells/FsCell.fs.js";
8
8
  import { DataContext__get_GeneratedBy, DataContext__get_Description, DataContext__get_ObjectType, DataContext__get_Unit, DataContext__get_Explication } from "../../Core/DataContext.js";
9
9
 
10
10
  export function setFromFsColumns(dc, columns) {
@@ -7,7 +7,7 @@ import { Comment$ } from "../../Core/Comment.js";
7
7
  import { ActivePatterns_$007CComment$007C_$007C } from "../../Core/Helper/Regex.js";
8
8
  import { printf, toFail, join } from "../../fable_modules/fable-library-js.4.16.0/String.js";
9
9
  import { map as map_2, append, delay, toList } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
10
- import { FsCell } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCell.fs.js";
10
+ import { FsCell } from "../../fable_modules/FsSpreadsheet.6.2.0/Cells/FsCell.fs.js";
11
11
 
12
12
  export function ActivePattern_ontologyAnnotationFromFsCells(tsrCol, tanCol, cells) {
13
13
  const cellValues = map((c) => c.ValueAsString(), cells);
@@ -1,17 +1,17 @@
1
1
  import { iterateIndexed, head, length, iterate, exists, ofArray } from "../../fable_modules/fable-library-js.4.16.0/List.js";
2
2
  import { Aux_List_groupWhen } from "../AnnotationTable/ArcTable.js";
3
3
  import { toList, map, delay, toArray, item, tryFind } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
4
- import { DataContext_$ctor_Z2FD70A12 } from "../../Core/DataContext.js";
4
+ import { DataContext_$ctor_Z780A8A2A } from "../../Core/DataContext.js";
5
5
  import { rangeDouble } from "../../fable_modules/fable-library-js.4.16.0/Range.js";
6
6
  import { toFsColumns, setFromFsColumns } from "./DataMapColumn.js";
7
7
  import { printf, toFail } from "../../fable_modules/fable-library-js.4.16.0/String.js";
8
- import { DataMap__get_DataContexts, DataMap_$ctor_4E3220A7 } from "../../Core/Table/DataMap.js";
9
- import { FsWorksheet } from "../../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
10
- import { FsRangeAddress_$ctor_7E77A4A0 } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeAddress.fs.js";
11
- import { FsAddress_$ctor_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.1.2/FsAddress.fs.js";
12
- import { Dictionary_tryGet } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCellsCollection.fs.js";
8
+ import { DataMap__get_DataContexts, DataMap_$ctor_4E3220A7 } from "../../Core/DataMap.js";
9
+ import { FsWorksheet } from "../../fable_modules/FsSpreadsheet.6.2.0/FsWorksheet.fs.js";
10
+ import { FsRangeAddress_$ctor_7E77A4A0 } from "../../fable_modules/FsSpreadsheet.6.2.0/Ranges/FsRangeAddress.fs.js";
11
+ import { FsAddress_$ctor_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.2.0/FsAddress.fs.js";
12
+ import { Dictionary_tryGet } from "../../fable_modules/FsSpreadsheet.6.2.0/Cells/FsCellsCollection.fs.js";
13
13
  import { addToDict } from "../../fable_modules/fable-library-js.4.16.0/MapUtil.js";
14
- import { FsRangeBase__Cell_Z3407A44B } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeBase.fs.js";
14
+ import { FsRangeBase__Cell_Z3407A44B } from "../../fable_modules/FsSpreadsheet.6.2.0/Ranges/FsRangeBase.fs.js";
15
15
 
16
16
  export const helperColumnStrings = ofArray(["Term Source REF", "Term Accession Number", "Data Format", "Data Selector Format"]);
17
17
 
@@ -34,7 +34,7 @@ export function tryDataMapTable(sheet) {
34
34
  */
35
35
  export function composeColumns(columns) {
36
36
  const l = (item(0, columns).MaxRowIndex - 1) | 0;
37
- const dc = Array.from(toArray(delay(() => map((i) => DataContext_$ctor_Z2FD70A12(), rangeDouble(0, 1, l - 1)))));
37
+ const dc = Array.from(toArray(delay(() => map((i) => DataContext_$ctor_Z780A8A2A(), rangeDouble(0, 1, l - 1)))));
38
38
  iterate((arg) => {
39
39
  setFromFsColumns(dc, arg);
40
40
  }, groupColumnsByHeader(toList(columns)));
@@ -2,14 +2,14 @@ import { append as append_1, delay, tryItem, length as length_1, isEmpty, iterat
2
2
  import { defaultArg, map as map_1 } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
3
3
  import { tryFind, ofSeq } from "../../fable_modules/fable-library-js.4.16.0/Map.js";
4
4
  import { arrayHash, equalArrays, equals, comparePrimitives } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
5
- import { RowBuilder_get_Empty, RowBuilder__Combine_19F30600, RowBuilder_$ctor } from "../../fable_modules/FsSpreadsheet.6.1.2/DSL/RowBuilder.fs.js";
6
- import { CellBuilder_$ctor, CellBuilder__AsCellElement_6F87C2ED } from "../../fable_modules/FsSpreadsheet.6.1.2/DSL/CellBuilder.fs.js";
7
- import { Messages_format, SheetEntity$1_some_2B595 } from "../../fable_modules/FsSpreadsheet.6.1.2/DSL/Types.fs.js";
8
- import { DataType } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCell.fs.js";
5
+ import { RowBuilder_get_Empty, RowBuilder__Combine_19F30600, RowBuilder_$ctor } from "../../fable_modules/FsSpreadsheet.6.2.0/DSL/RowBuilder.fs.js";
6
+ import { CellBuilder_$ctor, CellBuilder__AsCellElement_6F87C2ED } from "../../fable_modules/FsSpreadsheet.6.2.0/DSL/CellBuilder.fs.js";
7
+ import { Messages_format, SheetEntity$1_some_2B595 } from "../../fable_modules/FsSpreadsheet.6.2.0/DSL/Types.fs.js";
8
+ import { DataType } from "../../fable_modules/FsSpreadsheet.6.2.0/Cells/FsCell.fs.js";
9
9
  import { map as map_2, initialize as initialize_1, exists, find, cons, append, empty, singleton } from "../../fable_modules/fable-library-js.4.16.0/List.js";
10
- import { ColumnIndex, RowElement } from "../../fable_modules/FsSpreadsheet.6.1.2/DSL/Types.fs.js";
11
- import { FsRangeAddress_$ctor_7E77A4A0 } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeAddress.fs.js";
12
- import { FsAddress_$ctor_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.1.2/FsAddress.fs.js";
10
+ import { ColumnIndex, RowElement } from "../../fable_modules/FsSpreadsheet.6.2.0/DSL/Types.fs.js";
11
+ import { FsRangeAddress_$ctor_7E77A4A0 } from "../../fable_modules/FsSpreadsheet.6.2.0/Ranges/FsRangeAddress.fs.js";
12
+ import { FsAddress_$ctor_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.2.0/FsAddress.fs.js";
13
13
  import { Record } from "../../fable_modules/fable-library-js.4.16.0/Types.js";
14
14
  import { record_type, list_type, class_type, tuple_type, int32_type, string_type } from "../../fable_modules/fable-library-js.4.16.0/Reflection.js";
15
15
  import { Seq_trySkip, Dictionary_tryGetValue } from "../CollectionAux.js";
@@ -15,10 +15,10 @@ import { toArray } from "../fable_modules/fable-library-js.4.16.0/Option.js";
15
15
  import { toRows as toRows_1, fromRows as fromRows_1 } from "./Metadata/Contacts.js";
16
16
  import { parse } from "../fable_modules/fable-library-js.4.16.0/Guid.js";
17
17
  import { Template, Organisation } from "../Core/Template.js";
18
- import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
18
+ import { FsWorksheet } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorksheet.fs.js";
19
19
  import { toFsWorksheet, tryFromFsWorksheet } from "./AnnotationTable/ArcTable.js";
20
20
  import { now } from "../fable_modules/fable-library-js.4.16.0/Date.js";
21
- import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.1.2/FsWorkbook.fs.js";
21
+ import { FsWorkbook } from "../fable_modules/FsSpreadsheet.6.2.0/FsWorkbook.fs.js";
22
22
 
23
23
  export class TemplateReadError extends FSharpException {
24
24
  constructor(Data0) {
@@ -0,0 +1,54 @@
1
+ import { unwrap } from "../fable_modules/fable-library-js.4.16.0/Option.js";
2
+ import { stringHash, equals } from "../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { boxHashOption, boxHashArray } from "../Core/Helper/HashCodes.js";
4
+ import { class_type } from "../fable_modules/fable-library-js.4.16.0/Reflection.js";
5
+
6
+ export class ValidationPackage {
7
+ constructor(name, version) {
8
+ this._name = name;
9
+ this._version = version;
10
+ }
11
+ get Name() {
12
+ const this$ = this;
13
+ return this$._name;
14
+ }
15
+ set Name(name) {
16
+ const this$ = this;
17
+ this$._name = name;
18
+ }
19
+ get Version() {
20
+ const this$ = this;
21
+ return unwrap(this$._version);
22
+ }
23
+ set Version(version) {
24
+ const this$ = this;
25
+ this$._version = version;
26
+ }
27
+ static make(name, version) {
28
+ return new ValidationPackage(name, unwrap(version));
29
+ }
30
+ Copy() {
31
+ const this$ = this;
32
+ const name = this$.Name;
33
+ const version = this$.Version;
34
+ return ValidationPackage.make(name, version);
35
+ }
36
+ Equals(obj) {
37
+ let other_vp;
38
+ const this$ = this;
39
+ return (obj instanceof ValidationPackage) && ((other_vp = obj, (other_vp.Name === this$.Name) && equals(other_vp.Version, this$.Version)));
40
+ }
41
+ GetHashCode() {
42
+ const this$ = this;
43
+ return boxHashArray([stringHash(this$.Name), boxHashOption(this$.Version)]) | 0;
44
+ }
45
+ }
46
+
47
+ export function ValidationPackage_$reflection() {
48
+ return class_type("ARCtrl.ValidationPackages.ValidationPackage", void 0, ValidationPackage);
49
+ }
50
+
51
+ export function ValidationPackage_$ctor_27AED5E3(name, version) {
52
+ return new ValidationPackage(name, version);
53
+ }
54
+
@@ -0,0 +1,55 @@
1
+ import { unwrap } from "../fable_modules/fable-library-js.4.16.0/Option.js";
2
+ import { equalsWith } from "../fable_modules/fable-library-js.4.16.0/Array.js";
3
+ import { identityHash, equals } from "../fable_modules/fable-library-js.4.16.0/Util.js";
4
+ import { boxHashOption, boxHashArray } from "../Core/Helper/HashCodes.js";
5
+ import { class_type } from "../fable_modules/fable-library-js.4.16.0/Reflection.js";
6
+
7
+ export class ValidationPackagesConfig {
8
+ constructor(validation_packages, arc_specification) {
9
+ this._validation_packages = validation_packages;
10
+ this._arc_specification = arc_specification;
11
+ }
12
+ get ValidationPackages() {
13
+ const this$ = this;
14
+ return this$._validation_packages;
15
+ }
16
+ set ValidationPackages(validation_packages) {
17
+ const this$ = this;
18
+ this$._validation_packages = validation_packages;
19
+ }
20
+ get ARCSpecification() {
21
+ const this$ = this;
22
+ return unwrap(this$._arc_specification);
23
+ }
24
+ set ARCSpecification(arc_specification) {
25
+ const this$ = this;
26
+ this$._arc_specification = arc_specification;
27
+ }
28
+ static make(validation_packages, arc_specification) {
29
+ return new ValidationPackagesConfig(validation_packages, unwrap(arc_specification));
30
+ }
31
+ Copy() {
32
+ const this$ = this;
33
+ const validation_packages = this$.ValidationPackages;
34
+ const arc_specification = this$.ARCSpecification;
35
+ return ValidationPackagesConfig.make(validation_packages, arc_specification);
36
+ }
37
+ Equals(obj) {
38
+ let other_vpc;
39
+ const this$ = this;
40
+ return (obj instanceof ValidationPackagesConfig) && ((other_vpc = obj, equalsWith(equals, other_vpc.ValidationPackages, this$.ValidationPackages) && equals(other_vpc.ARCSpecification, this$.ARCSpecification)));
41
+ }
42
+ GetHashCode() {
43
+ const this$ = this;
44
+ return boxHashArray([identityHash(this$.ValidationPackages), boxHashOption(this$.ARCSpecification)]) | 0;
45
+ }
46
+ }
47
+
48
+ export function ValidationPackagesConfig_$reflection() {
49
+ return class_type("ARCtrl.ValidationPackages.ValidationPackagesConfig", void 0, ValidationPackagesConfig);
50
+ }
51
+
52
+ export function ValidationPackagesConfig_$ctor_376974AD(validation_packages, arc_specification) {
53
+ return new ValidationPackagesConfig(validation_packages, arc_specification);
54
+ }
55
+