@nfdi4plants/arctrl 2.0.0-alpha.2 → 2.0.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARC.js +110 -15
- package/Contract/ARC.js +9 -1
- package/Contract/Datamap.js +180 -0
- package/Core/ArcTypes.js +148 -121
- package/Core/Conversion.js +99 -67
- package/Core/Data.js +119 -0
- package/Core/{Process/DataFile.js → DataFile.js} +3 -3
- package/Core/Helper/Identifier.js +40 -0
- package/Core/OntologyAnnotation.js +14 -4
- package/Core/Process/ColumnIndex.js +13 -3
- package/Core/Process/ProcessInput.js +5 -5
- package/Core/Process/ProcessOutput.js +5 -5
- package/Core/Process/Value.js +1 -1
- package/Core/Table/ArcTableAux.js +14 -3
- package/Core/Table/CompositeCell.js +67 -10
- package/Core/Table/CompositeColumn.js +9 -0
- package/Core/Table/CompositeHeader.js +58 -68
- package/Core/Table/DataMap.js +166 -0
- package/FileSystem/FileSystemTree.js +18 -4
- package/Json/Assay.js +4 -4
- package/Json/Process/Data.js +56 -18
- package/Json/Process/DataFile.js +5 -5
- package/Json/Process/PropertyValue.js +126 -5
- package/Json/Study.js +6 -6
- package/Json/Table/CompositeCell.js +7 -6
- package/Spreadsheet/AnnotationTable/ArcTable.js +9 -13
- package/Spreadsheet/AnnotationTable/CompositeCell.js +32 -50
- package/Spreadsheet/AnnotationTable/CompositeColumn.js +16 -10
- package/Spreadsheet/AnnotationTable/CompositeHeader.js +262 -143
- package/Spreadsheet/ArcAssay.js +2 -2
- package/Spreadsheet/ArcInvestigation.js +2 -2
- package/Spreadsheet/ArcStudy.js +2 -2
- package/Spreadsheet/DataMap.js +31 -0
- package/Spreadsheet/DataMapTable/DataMapColumn.js +36 -0
- package/Spreadsheet/DataMapTable/DataMapHeader.js +417 -0
- package/Spreadsheet/DataMapTable/DataMapTable.js +98 -0
- package/Spreadsheet/Metadata/Assays.js +2 -2
- package/Spreadsheet/Metadata/SparseTable.js +7 -7
- package/Spreadsheet/Metadata/Study.js +1 -1
- package/Spreadsheet/Template.js +2 -2
- package/Xlsx.js +29 -6
- package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsSpreadsheet.fableproj +9 -3
- package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsWorksheet.fs +1 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Cell.fs +23 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Cell.fs.js +21 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Row.fs +23 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Row.fs.js +19 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Table.fs +24 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Table.fs.js +15 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Value.fs +70 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Value.fs.js +48 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Workbook.fs +20 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Workbook.fs.js +21 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Worksheet.fs +49 -0
- package/fable_modules/FsSpreadsheet.6.1.2/Json/Worksheet.fs.js +44 -0
- package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/obj/Release/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +3 -3
- package/fable_modules/project_cracked.json +1 -1
- package/package.json +1 -1
- package/Core/Process/Data.js +0 -55
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Cells/FsCell.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Cells/FsCell.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Cells/FsCellsCollection.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Cells/FsCellsCollection.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/CellBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/CellBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/ColumnBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/ColumnBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/DSL.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/DSL.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Expression.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Expression.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Operators.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Operators.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/RowBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/RowBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/SheetBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/SheetBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/TableBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/TableBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Transform.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Transform.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Types.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/Types.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/WorkbookBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/DSL/WorkbookBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsAddress.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsAddress.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsColumn.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsColumn.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsRow.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsRow.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsWorkbook.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsWorkbook.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/FsWorksheet.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRange.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRange.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeAddress.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeAddress.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeBase.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeBase.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeColumn.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeColumn.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeRow.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Ranges/FsRangeRow.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/SheetBuilder.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/SheetBuilder.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Tables/FsTable.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Tables/FsTable.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Tables/FsTableField.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Tables/FsTableField.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Tables/FsTableRow.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/Tables/FsTableRow.fs.js +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/obj/Debug/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +0 -0
- /package/fable_modules/{FsSpreadsheet.5.1.3 → FsSpreadsheet.6.1.2}/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -0
package/Json/Process/Data.js
CHANGED
|
@@ -1,19 +1,57 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { URIModule_toString } from "../../Core/URI.js";
|
|
3
|
-
import { ofArray, singleton, choose } from "../../fable_modules/fable-library-js.4.16.0/List.js";
|
|
1
|
+
import { singleton, ofArray, choose } from "../../fable_modules/fable-library-js.4.16.0/List.js";
|
|
4
2
|
import { equals } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
|
|
5
3
|
import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
|
|
4
|
+
import { defaultSpaces, tryIncludeSeq, tryInclude } from "../Encode.js";
|
|
5
|
+
import { DataFile_ROCrate_decoder, DataFile_ROCrate_encoder, DataFile_ISAJson_decoder, DataFile_ISAJson_encoder } from "./DataFile.js";
|
|
6
|
+
import { Comment_ISAJson_decoder, Comment_ISAJson_encoder, Comment_ROCrate_decoder, Comment_ROCrate_encoder, Comment_decoder, Comment_encoder } from "../Comment.js";
|
|
7
|
+
import { string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
|
|
8
|
+
import { Data } from "../../Core/Data.js";
|
|
9
|
+
import { unwrap } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
|
|
10
|
+
import { Decode_objectNoAdditionalProperties, Decode_resizeArray, Decode_uri } from "../Decode.js";
|
|
11
|
+
import { decodeString, encodeString } from "../StringTable.js";
|
|
12
|
+
import { printf, toText, replace } from "../../fable_modules/fable-library-js.4.16.0/String.js";
|
|
13
|
+
import { URIModule_toString } from "../../Core/URI.js";
|
|
6
14
|
import { list as list_1 } from "../../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
|
|
7
|
-
import { defaultSpaces, tryIncludeListOpt, tryInclude } from "../Encode.js";
|
|
8
|
-
import { DataFile_ISAJson_decoder, DataFile_ISAJson_encoder, DataFile_ROCrate_decoder, DataFile_ROCrate_encoder } from "./DataFile.js";
|
|
9
|
-
import { Comment_ISAJson_decoder, Comment_ISAJson_encoder, Comment_ROCrate_decoder, Comment_ROCrate_encoder } from "../Comment.js";
|
|
10
15
|
import { context_jsonvalue } from "../context/rocrate/isa_data_context.js";
|
|
11
|
-
import { list as list_2, string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
|
|
12
|
-
import { Decode_objectNoAdditionalProperties, Decode_uri } from "../Decode.js";
|
|
13
|
-
import { Data } from "../../Core/Process/Data.js";
|
|
14
16
|
import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
|
|
15
17
|
import { toString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
|
|
16
18
|
|
|
19
|
+
export function Data_encoder(d) {
|
|
20
|
+
return new Json(5, [choose((tupledArg) => {
|
|
21
|
+
const v = tupledArg[1];
|
|
22
|
+
if (equals(v, new Json(3, []))) {
|
|
23
|
+
return void 0;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return [tupledArg[0], v];
|
|
27
|
+
}
|
|
28
|
+
}, ofArray([tryInclude("@id", (value) => (new Json(0, [value])), d.ID), tryInclude("name", (value_2) => (new Json(0, [value_2])), d.Name), tryInclude("dataType", DataFile_ISAJson_encoder, d.DataType), tryInclude("format", (value_4) => (new Json(0, [value_4])), d.Format), tryInclude("selectorFormat", (value_6) => (new Json(0, [value_6])), d.SelectorFormat), tryIncludeSeq("comments", Comment_encoder, d.Comments)]))]);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export const Data_decoder = object((get$) => {
|
|
32
|
+
let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5;
|
|
33
|
+
return new Data(unwrap((objectArg = get$.Optional, objectArg.Field("@id", Decode_uri))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("name", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("dataType", DataFile_ISAJson_decoder))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("format", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("selectorFormat", Decode_uri))), unwrap((arg_11 = Decode_resizeArray(Comment_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("comments", arg_11)))));
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
export function Data_compressedEncoder(stringTable, d) {
|
|
37
|
+
return new Json(5, [choose((tupledArg) => {
|
|
38
|
+
const v = tupledArg[1];
|
|
39
|
+
if (equals(v, new Json(3, []))) {
|
|
40
|
+
return void 0;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
return [tupledArg[0], v];
|
|
44
|
+
}
|
|
45
|
+
}, ofArray([tryInclude("i", (s) => encodeString(stringTable, s), d.ID), tryInclude("n", (s_1) => encodeString(stringTable, s_1), d.Name), tryInclude("d", DataFile_ISAJson_encoder, d.DataType), tryInclude("f", (s_2) => encodeString(stringTable, s_2), d.Format), tryInclude("s", (s_3) => encodeString(stringTable, s_3), d.SelectorFormat), tryIncludeSeq("c", Comment_encoder, d.Comments)]))]);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function Data_compressedDecoder(stringTable) {
|
|
49
|
+
return object((get$) => {
|
|
50
|
+
let arg_1, objectArg, arg_3, objectArg_1, objectArg_2, arg_7, objectArg_3, arg_9, objectArg_4, arg_11, objectArg_5;
|
|
51
|
+
return new Data(unwrap((arg_1 = decodeString(stringTable), (objectArg = get$.Optional, objectArg.Field("i", arg_1)))), unwrap((arg_3 = decodeString(stringTable), (objectArg_1 = get$.Optional, objectArg_1.Field("n", arg_3)))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("d", DataFile_ISAJson_decoder))), unwrap((arg_7 = decodeString(stringTable), (objectArg_3 = get$.Optional, objectArg_3.Field("f", arg_7)))), unwrap((arg_9 = decodeString(stringTable), (objectArg_4 = get$.Optional, objectArg_4.Field("s", arg_9)))), unwrap((arg_11 = Decode_resizeArray(Comment_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("c", arg_11)))));
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
|
|
17
55
|
export function Data_ROCrate_genID(d) {
|
|
18
56
|
const matchValue = d.ID;
|
|
19
57
|
if (matchValue == null) {
|
|
@@ -39,12 +77,12 @@ export function Data_ROCrate_encoder(oa) {
|
|
|
39
77
|
else {
|
|
40
78
|
return [tupledArg[0], v];
|
|
41
79
|
}
|
|
42
|
-
}, ofArray([["@id", new Json(0, [Data_ROCrate_genID(oa)])], ["@type", list_1(singleton(new Json(0, ["Data"])))], tryInclude("name", (value_2) => (new Json(0, [value_2])), oa.Name), tryInclude("type", DataFile_ROCrate_encoder, oa.DataType),
|
|
80
|
+
}, ofArray([["@id", new Json(0, [Data_ROCrate_genID(oa)])], ["@type", list_1(singleton(new Json(0, ["Data"])))], tryInclude("name", (value_2) => (new Json(0, [value_2])), oa.Name), tryInclude("type", DataFile_ROCrate_encoder, oa.DataType), tryInclude("encodingFormat", (value_5) => (new Json(0, [value_5])), oa.Format), tryInclude("usageInfo", (value_7) => (new Json(0, [value_7])), oa.SelectorFormat), tryIncludeSeq("comments", Comment_ROCrate_encoder, oa.Comments), ["@context", context_jsonvalue]]))]);
|
|
43
81
|
}
|
|
44
82
|
|
|
45
83
|
export const Data_ROCrate_decoder = object((get$) => {
|
|
46
|
-
let objectArg, objectArg_1, objectArg_2,
|
|
47
|
-
return new Data((objectArg = get$.Optional, objectArg.Field("@id", Decode_uri)), (objectArg_1 = get$.Optional, objectArg_1.Field("name", string)), (objectArg_2 = get$.Optional, objectArg_2.Field("type", DataFile_ROCrate_decoder)), (
|
|
84
|
+
let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, arg_11, objectArg_5;
|
|
85
|
+
return new Data(unwrap((objectArg = get$.Optional, objectArg.Field("@id", Decode_uri))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("name", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("type", DataFile_ROCrate_decoder))), unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("encodingFormat", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("usageInfo", Decode_uri))), unwrap((arg_11 = Decode_resizeArray(Comment_ROCrate_decoder), (objectArg_5 = get$.Optional, objectArg_5.Field("comments", arg_11)))));
|
|
48
86
|
});
|
|
49
87
|
|
|
50
88
|
export function Data_ISAJson_encoder(oa) {
|
|
@@ -56,17 +94,17 @@ export function Data_ISAJson_encoder(oa) {
|
|
|
56
94
|
else {
|
|
57
95
|
return [tupledArg[0], v];
|
|
58
96
|
}
|
|
59
|
-
}, ofArray([tryInclude("@id", (value) => (new Json(0, [value])), oa.ID), tryInclude("name", (value_2) => (new Json(0, [value_2])), oa.Name), tryInclude("type", DataFile_ISAJson_encoder, oa.DataType),
|
|
97
|
+
}, ofArray([tryInclude("@id", (value) => (new Json(0, [value])), oa.ID), tryInclude("name", (value_2) => (new Json(0, [value_2])), oa.Name), tryInclude("type", DataFile_ISAJson_encoder, oa.DataType), tryIncludeSeq("comments", Comment_ISAJson_encoder, oa.Comments)]))]);
|
|
60
98
|
}
|
|
61
99
|
|
|
62
100
|
export const Data_ISAJson_allowedFields = ofArray(["@id", "name", "type", "comments", "@type", "@context"]);
|
|
63
101
|
|
|
64
102
|
export const Data_ISAJson_decoder = Decode_objectNoAdditionalProperties(Data_ISAJson_allowedFields, (get$) => {
|
|
65
103
|
let objectArg, objectArg_1, objectArg_2, arg_7, objectArg_3;
|
|
66
|
-
return new Data((objectArg = get$.Optional, objectArg.Field("@id", Decode_uri)), (objectArg_1 = get$.Optional, objectArg_1.Field("name", string)), (objectArg_2 = get$.Optional, objectArg_2.Field("type", DataFile_ISAJson_decoder)), (arg_7 =
|
|
104
|
+
return new Data(unwrap((objectArg = get$.Optional, objectArg.Field("@id", Decode_uri))), unwrap((objectArg_1 = get$.Optional, objectArg_1.Field("name", string))), unwrap((objectArg_2 = get$.Optional, objectArg_2.Field("type", DataFile_ISAJson_decoder))), void 0, void 0, unwrap((arg_7 = Decode_resizeArray(Comment_ISAJson_decoder), (objectArg_3 = get$.Optional, objectArg_3.Field("comments", arg_7)))));
|
|
67
105
|
});
|
|
68
106
|
|
|
69
|
-
export function
|
|
107
|
+
export function ARCtrl_Data__Data_fromISAJsonString_Static_Z721C83C5(s) {
|
|
70
108
|
const matchValue = fromString(Data_ISAJson_decoder, s);
|
|
71
109
|
if (matchValue.tag === 1) {
|
|
72
110
|
throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
|
|
@@ -76,14 +114,14 @@ export function ARCtrl_Process_Data__Data_fromISAJsonString_Static_Z721C83C5(s)
|
|
|
76
114
|
}
|
|
77
115
|
}
|
|
78
116
|
|
|
79
|
-
export function
|
|
117
|
+
export function ARCtrl_Data__Data_toISAJsonString_Static_71136F3F(spaces) {
|
|
80
118
|
return (f) => {
|
|
81
119
|
const value = Data_ISAJson_encoder(f);
|
|
82
120
|
return toString(defaultSpaces(spaces), value);
|
|
83
121
|
};
|
|
84
122
|
}
|
|
85
123
|
|
|
86
|
-
export function
|
|
124
|
+
export function ARCtrl_Data__Data_fromROCrateJsonString_Static_Z721C83C5(s) {
|
|
87
125
|
const matchValue = fromString(Data_ROCrate_decoder, s);
|
|
88
126
|
if (matchValue.tag === 1) {
|
|
89
127
|
throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
|
|
@@ -93,7 +131,7 @@ export function ARCtrl_Process_Data__Data_fromROCrateJsonString_Static_Z721C83C5
|
|
|
93
131
|
}
|
|
94
132
|
}
|
|
95
133
|
|
|
96
|
-
export function
|
|
134
|
+
export function ARCtrl_Data__Data_toROCrateJsonString_Static_71136F3F(spaces) {
|
|
97
135
|
return (f) => {
|
|
98
136
|
const value = Data_ROCrate_encoder(f);
|
|
99
137
|
return toString(defaultSpaces(spaces), value);
|
package/Json/Process/DataFile.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ErrorReason$1, Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
|
|
2
2
|
import { string } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
|
|
3
3
|
import { FSharpResult$2 } from "../../fable_modules/fable-library-js.4.16.0/Result.js";
|
|
4
|
-
import { DataFile } from "../../Core/
|
|
4
|
+
import { DataFile } from "../../Core/DataFile.js";
|
|
5
5
|
import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
|
|
6
6
|
import { printf, toText } from "../../fable_modules/fable-library-js.4.16.0/String.js";
|
|
7
7
|
import { toString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
|
|
@@ -45,7 +45,7 @@ export const DataFile_ISAJson_encoder = DataFile_ROCrate_encoder;
|
|
|
45
45
|
|
|
46
46
|
export const DataFile_ISAJson_decoder = DataFile_ROCrate_decoder;
|
|
47
47
|
|
|
48
|
-
export function
|
|
48
|
+
export function ARCtrl_DataFile__DataFile_fromISAJsonString_Static_Z721C83C5(s) {
|
|
49
49
|
const matchValue = fromString(DataFile_ISAJson_decoder, s);
|
|
50
50
|
if (matchValue.tag === 1) {
|
|
51
51
|
throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
|
|
@@ -55,14 +55,14 @@ export function ARCtrl_Process_DataFile__DataFile_fromISAJsonString_Static_Z721C
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
export function
|
|
58
|
+
export function ARCtrl_DataFile__DataFile_toISAJsonString_Static_71136F3F(spaces) {
|
|
59
59
|
return (f) => {
|
|
60
60
|
const value = DataFile_ISAJson_encoder(f);
|
|
61
61
|
return toString(defaultSpaces(spaces), value);
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
export function
|
|
65
|
+
export function ARCtrl_DataFile__DataFile_fromROCrateJsonString_Static_Z721C83C5(s) {
|
|
66
66
|
const matchValue = fromString(DataFile_ROCrate_decoder, s);
|
|
67
67
|
if (matchValue.tag === 1) {
|
|
68
68
|
throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
|
|
@@ -72,7 +72,7 @@ export function ARCtrl_Process_DataFile__DataFile_fromROCrateJsonString_Static_Z
|
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
export function
|
|
75
|
+
export function ARCtrl_DataFile__DataFile_toROCrateJsonString_Static_71136F3F(spaces) {
|
|
76
76
|
return (f) => {
|
|
77
77
|
const value = DataFile_ROCrate_encoder(f);
|
|
78
78
|
return toString(defaultSpaces(spaces), value);
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
|
|
2
|
-
import { map } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
|
|
2
|
+
import { unwrap, map } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
|
|
3
3
|
import { ofArray, choose } from "../../fable_modules/fable-library-js.4.16.0/List.js";
|
|
4
4
|
import { equals } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
|
|
5
5
|
import { tryInclude } from "../Encode.js";
|
|
6
6
|
import { context_jsonvalue } from "../context/rocrate/property_value_context.js";
|
|
7
7
|
import { string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
|
|
8
8
|
import { OntologyAnnotation } from "../../Core/OntologyAnnotation.js";
|
|
9
|
+
import { AnnotationValue_decoder } from "../OntologyAnnotation.js";
|
|
9
10
|
import { Value } from "../../Core/Process/Value.js";
|
|
10
11
|
|
|
11
12
|
export function genID(p) {
|
|
12
13
|
const matchValue = p.GetCategory();
|
|
13
14
|
if (matchValue == null) {
|
|
14
|
-
return `#Empty${
|
|
15
|
+
return `#Empty${p.GetAdditionalType()}`;
|
|
15
16
|
}
|
|
16
17
|
else {
|
|
17
|
-
|
|
18
|
+
const t = matchValue;
|
|
19
|
+
return `${p.GetAdditionalType()}/${t}${p.GetValue()}${p.GetUnit()}`;
|
|
18
20
|
}
|
|
19
21
|
}
|
|
20
22
|
|
|
@@ -75,8 +77,127 @@ export function encoder(pv) {
|
|
|
75
77
|
|
|
76
78
|
export function decoder(create) {
|
|
77
79
|
return object((get$) => {
|
|
78
|
-
let
|
|
79
|
-
|
|
80
|
+
let value, objectArg_4, code_4, objectArg_5;
|
|
81
|
+
let category;
|
|
82
|
+
let name;
|
|
83
|
+
const objectArg = get$.Optional;
|
|
84
|
+
name = objectArg.Field("category", string);
|
|
85
|
+
let code;
|
|
86
|
+
const objectArg_1 = get$.Optional;
|
|
87
|
+
code = objectArg_1.Field("categoryCode", string);
|
|
88
|
+
let matchResult, code_1;
|
|
89
|
+
if (name == null) {
|
|
90
|
+
if (code != null) {
|
|
91
|
+
if (code === "") {
|
|
92
|
+
matchResult = 0;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
matchResult = 2;
|
|
96
|
+
code_1 = code;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
matchResult = 0;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else if (code != null) {
|
|
104
|
+
if (code === "") {
|
|
105
|
+
matchResult = 1;
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
matchResult = 2;
|
|
109
|
+
code_1 = code;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
matchResult = 1;
|
|
114
|
+
}
|
|
115
|
+
switch (matchResult) {
|
|
116
|
+
case 0: {
|
|
117
|
+
category = void 0;
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
case 1: {
|
|
121
|
+
try {
|
|
122
|
+
category = OntologyAnnotation.create(name);
|
|
123
|
+
}
|
|
124
|
+
catch (err) {
|
|
125
|
+
throw new Error(`Error while decoding category (name:${name}): ${err}`);
|
|
126
|
+
}
|
|
127
|
+
break;
|
|
128
|
+
}
|
|
129
|
+
default:
|
|
130
|
+
try {
|
|
131
|
+
category = OntologyAnnotation.fromTermAnnotation(code_1, unwrap(name));
|
|
132
|
+
}
|
|
133
|
+
catch (err_1) {
|
|
134
|
+
throw new Error(`Error while decoding category (name:${name}, code:${code_1}): ${err_1}`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
let unit;
|
|
138
|
+
let name_1;
|
|
139
|
+
const objectArg_2 = get$.Optional;
|
|
140
|
+
name_1 = objectArg_2.Field("unit", string);
|
|
141
|
+
let code_2;
|
|
142
|
+
const objectArg_3 = get$.Optional;
|
|
143
|
+
code_2 = objectArg_3.Field("unitCode", string);
|
|
144
|
+
let matchResult_1, code_3;
|
|
145
|
+
if (name_1 == null) {
|
|
146
|
+
if (code_2 != null) {
|
|
147
|
+
if (code_2 === "") {
|
|
148
|
+
matchResult_1 = 0;
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
matchResult_1 = 2;
|
|
152
|
+
code_3 = code_2;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
matchResult_1 = 0;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
else if (code_2 != null) {
|
|
160
|
+
if (code_2 === "") {
|
|
161
|
+
matchResult_1 = 1;
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
matchResult_1 = 2;
|
|
165
|
+
code_3 = code_2;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
matchResult_1 = 1;
|
|
170
|
+
}
|
|
171
|
+
switch (matchResult_1) {
|
|
172
|
+
case 0: {
|
|
173
|
+
unit = void 0;
|
|
174
|
+
break;
|
|
175
|
+
}
|
|
176
|
+
case 1: {
|
|
177
|
+
try {
|
|
178
|
+
unit = OntologyAnnotation.create(name_1);
|
|
179
|
+
}
|
|
180
|
+
catch (err_2) {
|
|
181
|
+
throw new Error(`Error while decoding unit (name:${name_1}): ${err_2}`);
|
|
182
|
+
}
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
default:
|
|
186
|
+
try {
|
|
187
|
+
unit = OntologyAnnotation.fromTermAnnotation(code_3, unwrap(name_1));
|
|
188
|
+
}
|
|
189
|
+
catch (err_3) {
|
|
190
|
+
throw new Error(`Error while decoding unit (name:${name_1}, code:${code_3}): ${err_3}`);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
return create(category, (value = ((objectArg_4 = get$.Optional, objectArg_4.Field("value", AnnotationValue_decoder))), (code_4 = ((objectArg_5 = get$.Optional, objectArg_5.Field("valueCode", string))), ((value == null) && (code_4 == null)) ? void 0 : (() => {
|
|
194
|
+
try {
|
|
195
|
+
return Value.fromOptions(value, void 0, code_4);
|
|
196
|
+
}
|
|
197
|
+
catch (err_4) {
|
|
198
|
+
throw new Error(`Error while decoding value ${value},${code_4}: ${err_4}`);
|
|
199
|
+
}
|
|
200
|
+
})())), unit);
|
|
80
201
|
});
|
|
81
202
|
}
|
|
82
203
|
|
package/Json/Study.js
CHANGED
|
@@ -13,7 +13,7 @@ import { Comment_ISAJson_decoder, Comment_ISAJson_encoder, Comment_ROCrate_decod
|
|
|
13
13
|
import { list as list_2, string, object } from "../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
|
|
14
14
|
import { Decode_objectNoAdditionalProperties, Decode_resizeArray } from "./Decode.js";
|
|
15
15
|
import { toFail, printf, toText, replace } from "../fable_modules/fable-library-js.4.16.0/String.js";
|
|
16
|
-
import {
|
|
16
|
+
import { Study_fileNameFromIdentifier, createMissingIdentifier, Study_tryIdentifierFromFileName, Study_tryFileNameFromIdentifier } from "../Core/Helper/Identifier.js";
|
|
17
17
|
import { Person_removeSourceAssayComments, Person_getSourceAssayIdentifiersFromComments, Person_setSourceAssayComment, ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D, ARCtrl_ArcTables__ArcTables_GetProcesses } from "../Core/Conversion.js";
|
|
18
18
|
import { list as list_1 } from "../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
|
|
19
19
|
import { Process_ISAJson_decoder, Process_ISAJson_encoder, Process_ROCrate_decoder, Process_ROCrate_encoder } from "./Process/Process.js";
|
|
@@ -55,7 +55,7 @@ export function Study_encoder(study) {
|
|
|
55
55
|
|
|
56
56
|
export const Study_decoder = object((get$) => {
|
|
57
57
|
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;
|
|
58
|
-
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((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)))));
|
|
58
|
+
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
59
|
});
|
|
60
60
|
|
|
61
61
|
export function Study_encoderCompressed(stringTable, oaTable, cellTable, study) {
|
|
@@ -73,7 +73,7 @@ export function Study_encoderCompressed(stringTable, oaTable, cellTable, study)
|
|
|
73
73
|
export function Study_decoderCompressed(stringTable, oaTable, cellTable) {
|
|
74
74
|
return object((get$) => {
|
|
75
75
|
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;
|
|
76
|
-
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 = 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)))));
|
|
76
|
+
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
77
|
});
|
|
78
78
|
}
|
|
79
79
|
|
|
@@ -115,7 +115,7 @@ export const Study_ROCrate_decoder = object((get$) => {
|
|
|
115
115
|
return Array.from(collection);
|
|
116
116
|
}, assays);
|
|
117
117
|
const tables = map((ps) => ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D(ps).Tables, (arg_6 = list_2(Process_ROCrate_decoder), (objectArg_2 = get$.Optional, objectArg_2.Field("processSequence", arg_6))));
|
|
118
|
-
return [new ArcStudy(identifier, unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("title", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("description", string))), unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("submissionDate", string))), unwrap((objectArg_6 = get$.Optional, objectArg_6.Field("publicReleaseDate", string))), unwrap((arg_16 = Decode_resizeArray(Publication_ROCrate_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("publications", arg_16)))), unwrap((arg_18 = Decode_resizeArray(Person_ROCrate_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("people", arg_18)))), unwrap((arg_20 = Decode_resizeArray(OntologyAnnotation_ROCrate_decoderDefinedTerm), (objectArg_9 = get$.Optional, objectArg_9.Field("studyDesignDescriptors", arg_20)))), unwrap(tables), unwrap(assayIdentifiers), unwrap((arg_22 = Decode_resizeArray(Comment_ROCrate_decoder), (objectArg_10 = get$.Optional, objectArg_10.Field("comments", arg_22))))), defaultArg(assays, empty())];
|
|
118
|
+
return [new ArcStudy(identifier, unwrap((objectArg_3 = get$.Optional, objectArg_3.Field("title", string))), unwrap((objectArg_4 = get$.Optional, objectArg_4.Field("description", string))), unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("submissionDate", string))), unwrap((objectArg_6 = get$.Optional, objectArg_6.Field("publicReleaseDate", string))), unwrap((arg_16 = Decode_resizeArray(Publication_ROCrate_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("publications", arg_16)))), unwrap((arg_18 = Decode_resizeArray(Person_ROCrate_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("people", arg_18)))), unwrap((arg_20 = Decode_resizeArray(OntologyAnnotation_ROCrate_decoderDefinedTerm), (objectArg_9 = get$.Optional, objectArg_9.Field("studyDesignDescriptors", arg_20)))), unwrap(tables), void 0, unwrap(assayIdentifiers), unwrap((arg_22 = Decode_resizeArray(Comment_ROCrate_decoder), (objectArg_10 = get$.Optional, objectArg_10.Field("comments", arg_22))))), defaultArg(assays, empty())];
|
|
119
119
|
});
|
|
120
120
|
|
|
121
121
|
/**
|
|
@@ -123,7 +123,7 @@ export const Study_ROCrate_decoder = object((get$) => {
|
|
|
123
123
|
*/
|
|
124
124
|
export function Study_ISAJson_encoder(assays, s) {
|
|
125
125
|
const study = s.Copy(true);
|
|
126
|
-
const fileName =
|
|
126
|
+
const fileName = Study_fileNameFromIdentifier(study.Identifier);
|
|
127
127
|
let assays_1;
|
|
128
128
|
const n = [];
|
|
129
129
|
let enumerator = getEnumerator(Study_Helper_getAssayInformation(assays, study));
|
|
@@ -227,7 +227,7 @@ export const Study_ISAJson_decoder = Decode_objectNoAdditionalProperties(Study_I
|
|
|
227
227
|
const collection = map_1((a_1) => a_1.Identifier, arg_11);
|
|
228
228
|
return Array.from(collection);
|
|
229
229
|
}, assays);
|
|
230
|
-
return [new ArcStudy(identifier, unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("title", string))), unwrap((objectArg_6 = get$.Optional, objectArg_6.Field("description", string))), unwrap((objectArg_7 = get$.Optional, objectArg_7.Field("submissionDate", string))), unwrap((objectArg_8 = get$.Optional, objectArg_8.Field("publicReleaseDate", string))), unwrap((arg_21 = Decode_resizeArray(Publication_ISAJson_decoder), (objectArg_9 = get$.Optional, objectArg_9.Field("publications", arg_21)))), unwrap((persons.length === 0) ? void 0 : persons), unwrap((arg_23 = Decode_resizeArray(OntologyAnnotation_ISAJson_decoder), (objectArg_10 = get$.Optional, objectArg_10.Field("studyDesignDescriptors", arg_23)))), unwrap(tables), unwrap(assayIdentifiers), unwrap((arg_25 = Decode_resizeArray(Comment_ISAJson_decoder), (objectArg_11 = get$.Optional, objectArg_11.Field("comments", arg_25))))), defaultArg(assays, empty())];
|
|
230
|
+
return [new ArcStudy(identifier, unwrap((objectArg_5 = get$.Optional, objectArg_5.Field("title", string))), unwrap((objectArg_6 = get$.Optional, objectArg_6.Field("description", string))), unwrap((objectArg_7 = get$.Optional, objectArg_7.Field("submissionDate", string))), unwrap((objectArg_8 = get$.Optional, objectArg_8.Field("publicReleaseDate", string))), unwrap((arg_21 = Decode_resizeArray(Publication_ISAJson_decoder), (objectArg_9 = get$.Optional, objectArg_9.Field("publications", arg_21)))), unwrap((persons.length === 0) ? void 0 : persons), unwrap((arg_23 = Decode_resizeArray(OntologyAnnotation_ISAJson_decoder), (objectArg_10 = get$.Optional, objectArg_10.Field("studyDesignDescriptors", arg_23)))), unwrap(tables), void 0, unwrap(assayIdentifiers), unwrap((arg_25 = Decode_resizeArray(Comment_ISAJson_decoder), (objectArg_11 = get$.Optional, objectArg_11.Field("comments", arg_25))))), defaultArg(assays, empty())];
|
|
231
231
|
});
|
|
232
232
|
|
|
233
233
|
export function ARCtrl_ArcStudy__ArcStudy_fromJsonString_Static_Z721C83C5(s) {
|
|
@@ -1,6 +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
5
|
import { list } from "../../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
|
|
5
6
|
import { index, string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
|
|
6
7
|
import { CompositeCell } from "../../Core/Table/CompositeCell.js";
|
|
@@ -14,31 +15,31 @@ import { unwrap } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
|
|
|
14
15
|
|
|
15
16
|
export function CompositeCell_encoder(cc) {
|
|
16
17
|
const oaToJsonString = OntologyAnnotation_encoder;
|
|
17
|
-
const patternInput = (cc.tag === 0) ? ["Term", singleton(oaToJsonString(cc.fields[0]))] : ((cc.tag === 2) ? ["Unitized", ofArray([new Json(0, [cc.fields[0]]), oaToJsonString(cc.fields[1])])] : ["FreeText", singleton(new Json(0, [cc.fields[0]]))]);
|
|
18
|
+
const patternInput = (cc.tag === 0) ? ["Term", singleton(oaToJsonString(cc.fields[0]))] : ((cc.tag === 2) ? ["Unitized", ofArray([new Json(0, [cc.fields[0]]), oaToJsonString(cc.fields[1])])] : ((cc.tag === 3) ? ["Data", singleton(Data_encoder(cc.fields[0]))] : ["FreeText", singleton(new Json(0, [cc.fields[0]]))]));
|
|
18
19
|
return new Json(5, [[["celltype", new Json(0, [patternInput[0]])], ["values", list(patternInput[1])]]]);
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
export const CompositeCell_decoder = object((get$) => {
|
|
22
|
-
let arg_3, objectArg_1, arg_5, objectArg_2, arg_7, objectArg_3, arg_9, objectArg_4;
|
|
23
|
+
let arg_3, objectArg_1, arg_5, objectArg_2, arg_7, objectArg_3, arg_9, objectArg_4, arg_11, objectArg_5;
|
|
23
24
|
let matchValue;
|
|
24
25
|
const objectArg = get$.Required;
|
|
25
26
|
matchValue = objectArg.Field("celltype", string);
|
|
26
|
-
return (matchValue === "FreeText") ? (new CompositeCell(1, [(arg_3 = index(0, string), (objectArg_1 = get$.Required, objectArg_1.Field("values", arg_3)))])) : ((matchValue === "Term") ? (new CompositeCell(0, [(arg_5 = index(0, OntologyAnnotation_decoder), (objectArg_2 = get$.Required, objectArg_2.Field("values", arg_5)))])) : ((matchValue === "Unitized") ? (new CompositeCell(2, [(arg_7 = index(0, string), (objectArg_3 = get$.Required, objectArg_3.Field("values", arg_7))), (arg_9 = index(1, OntologyAnnotation_decoder), (objectArg_4 = get$.Required, objectArg_4.Field("values", arg_9)))])) : toFail(printf("Error reading CompositeCell from json string: %A"))(matchValue)));
|
|
27
|
+
return (matchValue === "FreeText") ? (new CompositeCell(1, [(arg_3 = index(0, string), (objectArg_1 = get$.Required, objectArg_1.Field("values", arg_3)))])) : ((matchValue === "Term") ? (new CompositeCell(0, [(arg_5 = index(0, OntologyAnnotation_decoder), (objectArg_2 = get$.Required, objectArg_2.Field("values", arg_5)))])) : ((matchValue === "Unitized") ? (new CompositeCell(2, [(arg_7 = index(0, string), (objectArg_3 = get$.Required, objectArg_3.Field("values", arg_7))), (arg_9 = index(1, OntologyAnnotation_decoder), (objectArg_4 = get$.Required, objectArg_4.Field("values", arg_9)))])) : ((matchValue === "Data") ? (new CompositeCell(3, [(arg_11 = index(0, Data_decoder), (objectArg_5 = get$.Required, objectArg_5.Field("values", arg_11)))])) : toFail(printf("Error reading CompositeCell from json string: %A"))(matchValue))));
|
|
27
28
|
});
|
|
28
29
|
|
|
29
30
|
export function CompositeCell_encoderCompressed(stringTable, oaTable, cc) {
|
|
30
|
-
const patternInput = (cc.tag === 0) ? ["Term", singleton(encodeOA(oaTable, cc.fields[0]))] : ((cc.tag === 2) ? ["Unitized", ofArray([encodeString(stringTable, cc.fields[0]), encodeOA(oaTable, cc.fields[1])])] : ["FreeText", singleton(encodeString(stringTable, cc.fields[0]))]);
|
|
31
|
+
const patternInput = (cc.tag === 0) ? ["Term", singleton(encodeOA(oaTable, cc.fields[0]))] : ((cc.tag === 2) ? ["Unitized", ofArray([encodeString(stringTable, cc.fields[0]), encodeOA(oaTable, cc.fields[1])])] : ((cc.tag === 3) ? ["Data", singleton(Data_compressedEncoder(stringTable, cc.fields[0]))] : ["FreeText", singleton(encodeString(stringTable, cc.fields[0]))]));
|
|
31
32
|
return new Json(5, [[["t", encodeString(stringTable, patternInput[0])], ["v", list(patternInput[1])]]]);
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
export function CompositeCell_decoderCompressed(stringTable, oaTable) {
|
|
35
36
|
return object((get$) => {
|
|
36
|
-
let arg_3, objectArg_1, arg_5, objectArg_2, arg_7, objectArg_3, arg_9, objectArg_4;
|
|
37
|
+
let arg_3, objectArg_1, arg_5, objectArg_2, arg_7, objectArg_3, arg_9, objectArg_4, arg_11, objectArg_5;
|
|
37
38
|
let matchValue;
|
|
38
39
|
const arg_1 = decodeString(stringTable);
|
|
39
40
|
const objectArg = get$.Required;
|
|
40
41
|
matchValue = objectArg.Field("t", arg_1);
|
|
41
|
-
return (matchValue === "FreeText") ? (new CompositeCell(1, [(arg_3 = index(0, decodeString(stringTable)), (objectArg_1 = get$.Required, objectArg_1.Field("v", arg_3)))])) : ((matchValue === "Term") ? (new CompositeCell(0, [(arg_5 = index(0, decodeOA(oaTable)), (objectArg_2 = get$.Required, objectArg_2.Field("v", arg_5)))])) : ((matchValue === "Unitized") ? (new CompositeCell(2, [(arg_7 = index(0, decodeString(stringTable)), (objectArg_3 = get$.Required, objectArg_3.Field("v", arg_7))), (arg_9 = index(1, decodeOA(oaTable)), (objectArg_4 = get$.Required, objectArg_4.Field("v", arg_9)))])) : toFail(printf("Error reading CompositeCell from json string: %A"))(matchValue)));
|
|
42
|
+
return (matchValue === "FreeText") ? (new CompositeCell(1, [(arg_3 = index(0, decodeString(stringTable)), (objectArg_1 = get$.Required, objectArg_1.Field("v", arg_3)))])) : ((matchValue === "Term") ? (new CompositeCell(0, [(arg_5 = index(0, decodeOA(oaTable)), (objectArg_2 = get$.Required, objectArg_2.Field("v", arg_5)))])) : ((matchValue === "Unitized") ? (new CompositeCell(2, [(arg_7 = index(0, decodeString(stringTable)), (objectArg_3 = get$.Required, objectArg_3.Field("v", arg_7))), (arg_9 = index(1, decodeOA(oaTable)), (objectArg_4 = get$.Required, objectArg_4.Field("v", arg_9)))])) : ((matchValue === "Data") ? (new CompositeCell(3, [(arg_11 = index(0, Data_compressedDecoder(stringTable)), (objectArg_5 = get$.Required, objectArg_5.Field("v", arg_11)))])) : toFail(printf("Error reading CompositeCell from json string: %A"))(matchValue))));
|
|
42
43
|
});
|
|
43
44
|
}
|
|
44
45
|
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import { iterateIndexed, length,
|
|
2
|
-
import { tryParseReferenceColumnHeader } from "../../Core/Helper/Regex.js";
|
|
1
|
+
import { iterateIndexed, length, sortBy, collect, toArray, exists, ofArray, empty, tail, head, isEmpty, cons, singleton, fold, map, reverse } from "../../fable_modules/fable-library-js.4.16.0/List.js";
|
|
3
2
|
import { map as map_1, toList, tryFind } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
|
|
4
3
|
import { toFsColumns, fixDeprecatedIOHeader, fromFsColumns } from "./CompositeColumn.js";
|
|
5
4
|
import { printf, toFail } from "../../fable_modules/fable-library-js.4.16.0/String.js";
|
|
6
5
|
import { ArcTable } from "../../Core/Table/ArcTable.js";
|
|
7
|
-
import { FsWorksheet } from "../../fable_modules/FsSpreadsheet.
|
|
6
|
+
import { FsWorksheet } from "../../fable_modules/FsSpreadsheet.6.1.2/FsWorksheet.fs.js";
|
|
8
7
|
import { comparePrimitives } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
|
|
9
|
-
import { FsRangeAddress_$ctor_7E77A4A0 } from "../../fable_modules/FsSpreadsheet.
|
|
10
|
-
import { FsAddress_$ctor_Z37302880 } from "../../fable_modules/FsSpreadsheet.
|
|
11
|
-
import { Dictionary_tryGet } from "../../fable_modules/FsSpreadsheet.
|
|
8
|
+
import { FsRangeAddress_$ctor_7E77A4A0 } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeAddress.fs.js";
|
|
9
|
+
import { FsAddress_$ctor_Z37302880 } from "../../fable_modules/FsSpreadsheet.6.1.2/FsAddress.fs.js";
|
|
10
|
+
import { Dictionary_tryGet } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCellsCollection.fs.js";
|
|
12
11
|
import { addToDict } from "../../fable_modules/fable-library-js.4.16.0/MapUtil.js";
|
|
13
|
-
import { FsRangeBase__Cell_Z3407A44B } from "../../fable_modules/FsSpreadsheet.
|
|
12
|
+
import { FsRangeBase__Cell_Z3407A44B } from "../../fable_modules/FsSpreadsheet.6.1.2/Ranges/FsRangeBase.fs.js";
|
|
14
13
|
|
|
15
14
|
/**
|
|
16
15
|
* Iterates over elements of the input list and groups adjacent elements.
|
|
@@ -62,15 +61,12 @@ export function classifyColumnOrder(column) {
|
|
|
62
61
|
return classifyHeaderOrder(column.Header);
|
|
63
62
|
}
|
|
64
63
|
|
|
64
|
+
export const helperColumnStrings = ofArray(["Term Source REF", "Term Accession Number", "Unit", "Data Format", "Data Selector Format"]);
|
|
65
|
+
|
|
65
66
|
export function groupColumnsByHeader(columns) {
|
|
66
67
|
return Aux_List_groupWhen((c) => {
|
|
67
68
|
const v = c.Item(1).ValueAsString();
|
|
68
|
-
|
|
69
|
-
return !(v.indexOf("Unit") === 0);
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
return false;
|
|
73
|
-
}
|
|
69
|
+
return !exists((s) => (v.indexOf(s) === 0), helperColumnStrings);
|
|
74
70
|
}, columns);
|
|
75
71
|
}
|
|
76
72
|
|
|
@@ -1,56 +1,33 @@
|
|
|
1
|
-
import { singleton, ofArray,
|
|
1
|
+
import { singleton, ofArray, item, map } from "../../fable_modules/fable-library-js.4.16.0/List.js";
|
|
2
|
+
import { defaultArg, unwrap, map as map_1 } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
|
|
2
3
|
import { CompositeCell } from "../../Core/Table/CompositeCell.js";
|
|
3
|
-
import {
|
|
4
|
-
import { FsCell } from "../../fable_modules/FsSpreadsheet.5.1.3/Cells/FsCell.fs.js";
|
|
5
|
-
import { defaultArg } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
|
|
4
|
+
import { FsCell } from "../../fable_modules/FsSpreadsheet.6.1.2/Cells/FsCell.fs.js";
|
|
6
5
|
|
|
7
|
-
export function
|
|
6
|
+
export function termFromFsCells(tsrCol, tanCol, cells) {
|
|
8
7
|
const cellValues = map((c) => c.ValueAsString(), cells);
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
else {
|
|
33
|
-
matchResult = 3;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
matchResult = 0;
|
|
38
|
-
v = head(cellValues);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
matchResult = 3;
|
|
43
|
-
}
|
|
44
|
-
switch (matchResult) {
|
|
45
|
-
case 0:
|
|
46
|
-
return CompositeCell.createFreeText(v);
|
|
47
|
-
case 1:
|
|
48
|
-
return CompositeCell.createTermFromString(v1, v2, v3);
|
|
49
|
-
case 2:
|
|
50
|
-
return CompositeCell.createUnitizedFromString(v1_1, v2_1, v3_1, v4);
|
|
51
|
-
default:
|
|
52
|
-
return toFail(printf("Dafuq"));
|
|
53
|
-
}
|
|
8
|
+
const tan = map_1((i) => item(i, cellValues), tanCol);
|
|
9
|
+
const tsr = map_1((i_1) => item(i_1, cellValues), tsrCol);
|
|
10
|
+
return CompositeCell.createTermFromString(item(0, cellValues), unwrap(tsr), unwrap(tan));
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export function unitizedFromFsCells(unitCol, tsrCol, tanCol, cells) {
|
|
14
|
+
const cellValues = map((c) => c.ValueAsString(), cells);
|
|
15
|
+
const unit = item(unitCol, cellValues);
|
|
16
|
+
const tan = map_1((i) => item(i, cellValues), tanCol);
|
|
17
|
+
const tsr = map_1((i_1) => item(i_1, cellValues), tsrCol);
|
|
18
|
+
return CompositeCell.createUnitizedFromString(item(0, cellValues), unit, unwrap(tsr), unwrap(tan));
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function freeTextFromFsCells(cells) {
|
|
22
|
+
const cellValues = map((c) => c.ValueAsString(), cells);
|
|
23
|
+
return CompositeCell.createFreeText(item(0, cellValues));
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export function dataFromFsCells(format, selectorFormat, cells) {
|
|
27
|
+
const cellValues = map((c) => c.ValueAsString(), cells);
|
|
28
|
+
const format_1 = map_1((i) => item(i, cellValues), format);
|
|
29
|
+
const selectorFormat_1 = map_1((i_1) => item(i_1, cellValues), selectorFormat);
|
|
30
|
+
return CompositeCell.createDataFromString(item(0, cellValues), unwrap(format_1), unwrap(selectorFormat_1));
|
|
54
31
|
}
|
|
55
32
|
|
|
56
33
|
export function toFsCells(isTerm, hasUnit, cell) {
|
|
@@ -64,6 +41,11 @@ export function toFsCells(isTerm, hasUnit, cell) {
|
|
|
64
41
|
}
|
|
65
42
|
case 2:
|
|
66
43
|
return ofArray([new FsCell(cell.fields[0]), new FsCell(cell.fields[1].NameText), new FsCell(defaultArg(cell.fields[1].TermSourceREF, "")), new FsCell(cell.fields[1].TermAccessionOntobeeUrl)]);
|
|
44
|
+
case 3: {
|
|
45
|
+
const format = new FsCell(defaultArg(cell.fields[0].Format, ""));
|
|
46
|
+
const selectorFormat = new FsCell(defaultArg(cell.fields[0].SelectorFormat, ""));
|
|
47
|
+
return ofArray([new FsCell(defaultArg(cell.fields[0].Name, "")), format, selectorFormat]);
|
|
48
|
+
}
|
|
67
49
|
default:
|
|
68
50
|
if (hasUnit) {
|
|
69
51
|
return ofArray([new FsCell(cell.fields[0]), new FsCell(""), new FsCell(""), new FsCell("")]);
|