@nfdi4plants/arctrl 1.0.0-alpha6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARCtrl.js +257 -0
- package/Contract/Contract.js +95 -0
- package/Contracts/Contracts.ARCtrl.js +35 -0
- package/Contracts/Contracts.ArcAssay.js +65 -0
- package/Contracts/Contracts.ArcInvestigation.js +58 -0
- package/Contracts/Contracts.ArcStudy.js +65 -0
- package/Contracts/Contracts.Git.js +91 -0
- package/FileSystem/Commit.js +18 -0
- package/FileSystem/DefaultGitignore.js +3 -0
- package/FileSystem/FileSystem.js +53 -0
- package/FileSystem/FileSystemTree.js +223 -0
- package/FileSystem/Path.js +38 -0
- package/FileSystemTree.js +51 -0
- package/ISA/ISA/ArcTypes/ArcTable.js +744 -0
- package/ISA/ISA/ArcTypes/ArcTableAux.js +1142 -0
- package/ISA/ISA/ArcTypes/ArcTables.js +380 -0
- package/ISA/ISA/ArcTypes/ArcTypes.js +2018 -0
- package/ISA/ISA/ArcTypes/CompositeCell.js +180 -0
- package/ISA/ISA/ArcTypes/CompositeColumn.js +42 -0
- package/ISA/ISA/ArcTypes/CompositeHeader.js +358 -0
- package/ISA/ISA/ArcTypes/CompositeRow.js +111 -0
- package/ISA/ISA/ArcTypes/IdentifierSetters.js +26 -0
- package/ISA/ISA/Builder/Types.js +243 -0
- package/ISA/ISA/Fable.js +50 -0
- package/ISA/ISA/Helper.js +326 -0
- package/ISA/ISA/Identifier.js +76 -0
- package/ISA/ISA/JsonTypes/AnnotationValue.js +56 -0
- package/ISA/ISA/JsonTypes/Assay.js +620 -0
- package/ISA/ISA/JsonTypes/AssayMaterials.js +39 -0
- package/ISA/ISA/JsonTypes/ColumnIndex.js +246 -0
- package/ISA/ISA/JsonTypes/Comment.js +58 -0
- package/ISA/ISA/JsonTypes/CommentList.js +139 -0
- package/ISA/ISA/JsonTypes/Component.js +158 -0
- package/ISA/ISA/JsonTypes/Data.js +55 -0
- package/ISA/ISA/JsonTypes/DataFile.js +68 -0
- package/ISA/ISA/JsonTypes/Factor.js +128 -0
- package/ISA/ISA/JsonTypes/FactorValue.js +109 -0
- package/ISA/ISA/JsonTypes/Investigation.js +204 -0
- package/ISA/ISA/JsonTypes/Material.js +66 -0
- package/ISA/ISA/JsonTypes/MaterialAttribute.js +101 -0
- package/ISA/ISA/JsonTypes/MaterialAttributeValue.js +126 -0
- package/ISA/ISA/JsonTypes/MaterialType.js +41 -0
- package/ISA/ISA/JsonTypes/OntologyAnnotation.js +219 -0
- package/ISA/ISA/JsonTypes/OntologySourceReference.js +85 -0
- package/ISA/ISA/JsonTypes/Person.js +137 -0
- package/ISA/ISA/JsonTypes/Process.js +401 -0
- package/ISA/ISA/JsonTypes/ProcessInput.js +297 -0
- package/ISA/ISA/JsonTypes/ProcessOutput.js +263 -0
- package/ISA/ISA/JsonTypes/ProcessParameterValue.js +129 -0
- package/ISA/ISA/JsonTypes/ProcessSequence.js +255 -0
- package/ISA/ISA/JsonTypes/Protocol.js +277 -0
- package/ISA/ISA/JsonTypes/ProtocolParameter.js +101 -0
- package/ISA/ISA/JsonTypes/Publication.js +105 -0
- package/ISA/ISA/JsonTypes/Sample.js +71 -0
- package/ISA/ISA/JsonTypes/Source.js +54 -0
- package/ISA/ISA/JsonTypes/Study.js +942 -0
- package/ISA/ISA/JsonTypes/StudyMaterials.js +45 -0
- package/ISA/ISA/JsonTypes/URI.js +19 -0
- package/ISA/ISA/JsonTypes/Value.js +210 -0
- package/ISA/ISA/Regex.js +588 -0
- package/ISA/ISA.Json/Assay.js +123 -0
- package/ISA/ISA.Json/Comment.js +84 -0
- package/ISA/ISA.Json/ConverterOptions.js +33 -0
- package/ISA/ISA.Json/Data.js +271 -0
- package/ISA/ISA.Json/Decode.js +46 -0
- package/ISA/ISA.Json/Factor.js +194 -0
- package/ISA/ISA.Json/GEncode.js +15 -0
- package/ISA/ISA.Json/Investigation.js +132 -0
- package/ISA/ISA.Json/Material.js +233 -0
- package/ISA/ISA.Json/Ontology.js +204 -0
- package/ISA/ISA.Json/Person.js +204 -0
- package/ISA/ISA.Json/Process.js +291 -0
- package/ISA/ISA.Json/Protocol.js +242 -0
- package/ISA/ISA.Json/Publication.js +92 -0
- package/ISA/ISA.Json/Study.js +230 -0
- package/ISA/ISA.Json/Validation/Fable.js +69 -0
- package/ISA/ISA.Json/Validation/JsonSchemaValidation.js +88 -0
- package/ISA/ISA.Json/Validation/ValidationResult.js +45 -0
- package/ISA/ISA.Spreadsheet/AnnotationTable/ArcTable.js +137 -0
- package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeCell.js +78 -0
- package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeColumn.js +59 -0
- package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeHeader.js +478 -0
- package/ISA/ISA.Spreadsheet/ArcAssay.js +150 -0
- package/ISA/ISA.Spreadsheet/ArcInvestigation.js +314 -0
- package/ISA/ISA.Spreadsheet/ArcStudy.js +67 -0
- package/ISA/ISA.Spreadsheet/CollectionAux.js +128 -0
- package/ISA/ISA.Spreadsheet/Metadata/Assays.js +81 -0
- package/ISA/ISA.Spreadsheet/Metadata/Comment.js +60 -0
- package/ISA/ISA.Spreadsheet/Metadata/Contacts.js +104 -0
- package/ISA/ISA.Spreadsheet/Metadata/Conversions.js +180 -0
- package/ISA/ISA.Spreadsheet/Metadata/DesignDescriptors.js +27 -0
- package/ISA/ISA.Spreadsheet/Metadata/Factors.js +85 -0
- package/ISA/ISA.Spreadsheet/Metadata/OntologyAnnotation.js +65 -0
- package/ISA/ISA.Spreadsheet/Metadata/OntologySourceReference.js +73 -0
- package/ISA/ISA.Spreadsheet/Metadata/Protocols.js +116 -0
- package/ISA/ISA.Spreadsheet/Metadata/Publication.js +96 -0
- package/ISA/ISA.Spreadsheet/Metadata/SparseTable.js +451 -0
- package/ISA/ISA.Spreadsheet/Metadata/Study.js +260 -0
- package/README.md +277 -0
- package/SemVer.js +60 -0
- package/Templates/Templates.Json.js +40 -0
- package/Templates/Templates.Spreadsheet.js +315 -0
- package/Templates/Templates.js +179 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCell.fs +387 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCell.fs.js +240 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCellsCollection.fs +725 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCellsCollection.fs.js +522 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/CellBuilder.fs +195 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/CellBuilder.fs.js +208 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/ColumnBuilder.fs +209 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/ColumnBuilder.fs.js +137 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/DSL.fs +61 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/DSL.fs.js +62 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Expression.fs +24 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Expression.fs.js +56 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Operators.fs +102 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Operators.fs.js +6 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/RowBuilder.fs +200 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/RowBuilder.fs.js +137 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/SheetBuilder.fs +139 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/SheetBuilder.fs.js +116 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/TableBuilder.fs +120 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/TableBuilder.fs.js +120 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Transform.fs +229 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Transform.fs.js +421 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Types.fs +151 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/Types.fs.js +277 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/WorkbookBuilder.fs +114 -0
- package/fable_modules/FsSpreadsheet.4.1.0/DSL/WorkbookBuilder.fs.js +104 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsAddress.fs +177 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsAddress.fs.js +249 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsColumn.fs +200 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsColumn.fs.js +125 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsRow.fs +202 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsRow.fs.js +135 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsSpreadsheet.fableproj +58 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsWorkbook.fs +183 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsWorkbook.fs.js +138 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsWorksheet.fs +628 -0
- package/fable_modules/FsSpreadsheet.4.1.0/FsWorksheet.fs.js +398 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRange.fs +19 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRange.fs.js +41 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeAddress.fs +222 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeAddress.fs.js +235 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeBase.fs +93 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeBase.fs.js +91 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeColumn.fs +65 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeColumn.fs.js +74 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeRow.fs +22 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeRow.fs.js +40 -0
- package/fable_modules/FsSpreadsheet.4.1.0/SheetBuilder.fs +249 -0
- package/fable_modules/FsSpreadsheet.4.1.0/SheetBuilder.fs.js +325 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTable.fs +455 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTable.fs.js +310 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableField.fs +140 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableField.fs.js +173 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableRow.fs +6 -0
- package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableRow.fs.js +17 -0
- package/fable_modules/FsSpreadsheet.4.1.0/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
- package/fable_modules/FsSpreadsheet.4.1.0/obj/Debug/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +19 -0
- package/fable_modules/FsSpreadsheet.4.1.0/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
- package/fable_modules/FsSpreadsheet.4.1.0/obj/Release/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +19 -0
- package/fable_modules/Thoth.Json.10.1.0/Decode.fs +1366 -0
- package/fable_modules/Thoth.Json.10.1.0/Decode.fs.js +1798 -0
- package/fable_modules/Thoth.Json.10.1.0/Encode.fs +621 -0
- package/fable_modules/Thoth.Json.10.1.0/Encode.fs.js +472 -0
- package/fable_modules/Thoth.Json.10.1.0/Extra.fs +31 -0
- package/fable_modules/Thoth.Json.10.1.0/Extra.fs.js +8 -0
- package/fable_modules/Thoth.Json.10.1.0/Thoth.Json.fableproj +30 -0
- package/fable_modules/Thoth.Json.10.1.0/Types.fs +59 -0
- package/fable_modules/Thoth.Json.10.1.0/Types.fs.js +98 -0
- package/fable_modules/Thoth.Json.10.1.0/obj/Release/netstandard2.0/Thoth.Json.AssemblyInfo.fs +19 -0
- package/fable_modules/Thoth.Json.10.1.0/package.json +5 -0
- package/fable_modules/fable-library.4.1.4/Array.d.ts +120 -0
- package/fable_modules/fable-library.4.1.4/Array.js +1204 -0
- package/fable_modules/fable-library.4.1.4/Async.d.ts +32 -0
- package/fable_modules/fable-library.4.1.4/Async.js +158 -0
- package/fable_modules/fable-library.4.1.4/AsyncBuilder.d.ts +59 -0
- package/fable_modules/fable-library.4.1.4/AsyncBuilder.js +183 -0
- package/fable_modules/fable-library.4.1.4/BigInt.d.ts +115 -0
- package/fable_modules/fable-library.4.1.4/BigInt.js +282 -0
- package/fable_modules/fable-library.4.1.4/BitConverter.d.ts +27 -0
- package/fable_modules/fable-library.4.1.4/BitConverter.js +138 -0
- package/fable_modules/fable-library.4.1.4/Boolean.d.ts +3 -0
- package/fable_modules/fable-library.4.1.4/Boolean.js +21 -0
- package/fable_modules/fable-library.4.1.4/Char.d.ts +65 -0
- package/fable_modules/fable-library.4.1.4/Char.js +169 -0
- package/fable_modules/fable-library.4.1.4/Choice.d.ts +138 -0
- package/fable_modules/fable-library.4.1.4/Choice.js +227 -0
- package/fable_modules/fable-library.4.1.4/Date.d.ts +70 -0
- package/fable_modules/fable-library.4.1.4/Date.js +451 -0
- package/fable_modules/fable-library.4.1.4/DateOffset.d.ts +63 -0
- package/fable_modules/fable-library.4.1.4/DateOffset.js +268 -0
- package/fable_modules/fable-library.4.1.4/DateOnly.d.ts +18 -0
- package/fable_modules/fable-library.4.1.4/DateOnly.js +124 -0
- package/fable_modules/fable-library.4.1.4/Decimal.d.ts +45 -0
- package/fable_modules/fable-library.4.1.4/Decimal.js +212 -0
- package/fable_modules/fable-library.4.1.4/Double.d.ts +11 -0
- package/fable_modules/fable-library.4.1.4/Double.js +46 -0
- package/fable_modules/fable-library.4.1.4/Encoding.d.ts +12 -0
- package/fable_modules/fable-library.4.1.4/Encoding.js +173 -0
- package/fable_modules/fable-library.4.1.4/Event.d.ts +31 -0
- package/fable_modules/fable-library.4.1.4/Event.js +93 -0
- package/fable_modules/fable-library.4.1.4/FSharp.Collections.d.ts +7 -0
- package/fable_modules/fable-library.4.1.4/FSharp.Collections.js +27 -0
- package/fable_modules/fable-library.4.1.4/FSharp.Core.d.ts +17 -0
- package/fable_modules/fable-library.4.1.4/FSharp.Core.js +69 -0
- package/fable_modules/fable-library.4.1.4/Global.d.ts +24 -0
- package/fable_modules/fable-library.4.1.4/Global.js +8 -0
- package/fable_modules/fable-library.4.1.4/Guid.d.ts +10 -0
- package/fable_modules/fable-library.4.1.4/Guid.js +142 -0
- package/fable_modules/fable-library.4.1.4/Int32.d.ts +28 -0
- package/fable_modules/fable-library.4.1.4/Int32.js +135 -0
- package/fable_modules/fable-library.4.1.4/List.d.ts +143 -0
- package/fable_modules/fable-library.4.1.4/List.js +1273 -0
- package/fable_modules/fable-library.4.1.4/Long.d.ts +3 -0
- package/fable_modules/fable-library.4.1.4/Long.js +46 -0
- package/fable_modules/fable-library.4.1.4/MailboxProcessor.d.ts +25 -0
- package/fable_modules/fable-library.4.1.4/MailboxProcessor.js +93 -0
- package/fable_modules/fable-library.4.1.4/Map.d.ts +178 -0
- package/fable_modules/fable-library.4.1.4/Map.js +1396 -0
- package/fable_modules/fable-library.4.1.4/MapUtil.d.ts +10 -0
- package/fable_modules/fable-library.4.1.4/MapUtil.js +112 -0
- package/fable_modules/fable-library.4.1.4/MutableMap.d.ts +52 -0
- package/fable_modules/fable-library.4.1.4/MutableMap.js +326 -0
- package/fable_modules/fable-library.4.1.4/MutableSet.d.ts +39 -0
- package/fable_modules/fable-library.4.1.4/MutableSet.js +232 -0
- package/fable_modules/fable-library.4.1.4/Native.d.ts +2 -0
- package/fable_modules/fable-library.4.1.4/Native.js +8 -0
- package/fable_modules/fable-library.4.1.4/Numeric.d.ts +19 -0
- package/fable_modules/fable-library.4.1.4/Numeric.js +71 -0
- package/fable_modules/fable-library.4.1.4/Observable.d.ts +32 -0
- package/fable_modules/fable-library.4.1.4/Observable.js +113 -0
- package/fable_modules/fable-library.4.1.4/Option.d.ts +28 -0
- package/fable_modules/fable-library.4.1.4/Option.js +96 -0
- package/fable_modules/fable-library.4.1.4/README.md +3 -0
- package/fable_modules/fable-library.4.1.4/Random.d.ts +37 -0
- package/fable_modules/fable-library.4.1.4/Random.js +170 -0
- package/fable_modules/fable-library.4.1.4/Range.d.ts +12 -0
- package/fable_modules/fable-library.4.1.4/Range.js +45 -0
- package/fable_modules/fable-library.4.1.4/Reflection.d.ts +119 -0
- package/fable_modules/fable-library.4.1.4/Reflection.js +461 -0
- package/fable_modules/fable-library.4.1.4/RegExp.d.ts +10 -0
- package/fable_modules/fable-library.4.1.4/RegExp.js +132 -0
- package/fable_modules/fable-library.4.1.4/Seq.d.ts +165 -0
- package/fable_modules/fable-library.4.1.4/Seq.js +1379 -0
- package/fable_modules/fable-library.4.1.4/Seq2.d.ts +18 -0
- package/fable_modules/fable-library.4.1.4/Seq2.js +111 -0
- package/fable_modules/fable-library.4.1.4/Set.d.ts +190 -0
- package/fable_modules/fable-library.4.1.4/Set.js +1789 -0
- package/fable_modules/fable-library.4.1.4/String.d.ts +49 -0
- package/fable_modules/fable-library.4.1.4/String.js +540 -0
- package/fable_modules/fable-library.4.1.4/System.Collections.Generic.d.ts +71 -0
- package/fable_modules/fable-library.4.1.4/System.Collections.Generic.js +307 -0
- package/fable_modules/fable-library.4.1.4/System.Text.d.ts +30 -0
- package/fable_modules/fable-library.4.1.4/System.Text.js +110 -0
- package/fable_modules/fable-library.4.1.4/SystemException.d.ts +5 -0
- package/fable_modules/fable-library.4.1.4/SystemException.js +5 -0
- package/fable_modules/fable-library.4.1.4/TimeOnly.d.ts +15 -0
- package/fable_modules/fable-library.4.1.4/TimeOnly.js +122 -0
- package/fable_modules/fable-library.4.1.4/TimeSpan.d.ts +34 -0
- package/fable_modules/fable-library.4.1.4/TimeSpan.js +177 -0
- package/fable_modules/fable-library.4.1.4/Timer.d.ts +19 -0
- package/fable_modules/fable-library.4.1.4/Timer.js +67 -0
- package/fable_modules/fable-library.4.1.4/Types.d.ts +58 -0
- package/fable_modules/fable-library.4.1.4/Types.js +208 -0
- package/fable_modules/fable-library.4.1.4/Unicode.13.0.0.d.ts +2 -0
- package/fable_modules/fable-library.4.1.4/Unicode.13.0.0.js +4 -0
- package/fable_modules/fable-library.4.1.4/Uri.d.ts +29 -0
- package/fable_modules/fable-library.4.1.4/Uri.js +142 -0
- package/fable_modules/fable-library.4.1.4/Util.d.ts +187 -0
- package/fable_modules/fable-library.4.1.4/Util.js +662 -0
- package/fable_modules/fable-library.4.1.4/lib/big.d.ts +338 -0
- package/fable_modules/fable-library.4.1.4/lib/big.js +826 -0
- package/fable_modules/fable-library.4.1.4/package.json +23 -0
- package/fable_modules/project_cracked.json +1 -0
- package/package.json +22 -0
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import { Record } from "../../../fable_modules/fable-library.4.1.4/Types.js";
|
|
2
|
+
import { getRecordFields, makeRecord, record_type, list_type, option_type, string_type } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
|
|
3
|
+
import { OntologyAnnotation_$reflection } from "./OntologyAnnotation.js";
|
|
4
|
+
import { ProtocolParameter_$reflection } from "./ProtocolParameter.js";
|
|
5
|
+
import { Component_$reflection } from "./Component.js";
|
|
6
|
+
import { Comment$_$reflection } from "./Comment.js";
|
|
7
|
+
import { empty, filter, map, singleton, append, exists, tryFind } from "../../../fable_modules/fable-library.4.1.4/List.js";
|
|
8
|
+
import { equals } from "../../../fable_modules/fable-library.4.1.4/Util.js";
|
|
9
|
+
import { map2 } from "../../../fable_modules/fable-library.4.1.4/Array.js";
|
|
10
|
+
import { Update_updateOnlyByExistingAppend, Update_updateOnlyByExisting, Update_updateAppend } from "../Helper.js";
|
|
11
|
+
import { defaultArg, map as map_1 } from "../../../fable_modules/fable-library.4.1.4/Option.js";
|
|
12
|
+
|
|
13
|
+
export class Protocol extends Record {
|
|
14
|
+
constructor(ID, Name, ProtocolType, Description, Uri, Version, Parameters, Components, Comments) {
|
|
15
|
+
super();
|
|
16
|
+
this.ID = ID;
|
|
17
|
+
this.Name = Name;
|
|
18
|
+
this.ProtocolType = ProtocolType;
|
|
19
|
+
this.Description = Description;
|
|
20
|
+
this.Uri = Uri;
|
|
21
|
+
this.Version = Version;
|
|
22
|
+
this.Parameters = Parameters;
|
|
23
|
+
this.Components = Components;
|
|
24
|
+
this.Comments = Comments;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function Protocol_$reflection() {
|
|
29
|
+
return record_type("ARCtrl.ISA.Protocol", [], Protocol, () => [["ID", option_type(string_type)], ["Name", option_type(string_type)], ["ProtocolType", option_type(OntologyAnnotation_$reflection())], ["Description", option_type(string_type)], ["Uri", option_type(string_type)], ["Version", option_type(string_type)], ["Parameters", option_type(list_type(ProtocolParameter_$reflection()))], ["Components", option_type(list_type(Component_$reflection()))], ["Comments", option_type(list_type(Comment$_$reflection()))]]);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function Protocol_make(id, name, protocolType, description, uri, version, parameters, components, comments) {
|
|
33
|
+
return new Protocol(id, name, protocolType, description, uri, version, parameters, components, comments);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export function Protocol_create_Z7DFD6E67(Id, Name, ProtocolType, Description, Uri, Version, Parameters, Components, Comments) {
|
|
37
|
+
return Protocol_make(Id, Name, ProtocolType, Description, Uri, Version, Parameters, Components, Comments);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export function Protocol_get_empty() {
|
|
41
|
+
return Protocol_create_Z7DFD6E67();
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* If a protocol with the given identfier exists in the list, returns it
|
|
46
|
+
*/
|
|
47
|
+
export function Protocol_tryGetByName(name, protocols) {
|
|
48
|
+
return tryFind((p) => equals(p.Name, name), protocols);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* If a protocol with the given name exists in the list exists, returns true
|
|
53
|
+
*/
|
|
54
|
+
export function Protocol_existsByName(name, protocols) {
|
|
55
|
+
return exists((p) => equals(p.Name, name), protocols);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Adds the given protocol to the protocols
|
|
60
|
+
*/
|
|
61
|
+
export function Protocol_add(protocols, protocol) {
|
|
62
|
+
return append(protocols, singleton(protocol));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Updates all protocols for which the predicate returns true with the given protocol values
|
|
67
|
+
*/
|
|
68
|
+
export function Protocol_updateBy(predicate, updateOption, protocol, protocols) {
|
|
69
|
+
if (exists(predicate, protocols)) {
|
|
70
|
+
return map((p) => {
|
|
71
|
+
if (predicate(p)) {
|
|
72
|
+
const this$ = updateOption;
|
|
73
|
+
const recordType_1 = p;
|
|
74
|
+
const recordType_2 = protocol;
|
|
75
|
+
return (this$.tag === 2) ? makeRecord(Protocol_$reflection(), map2(Update_updateAppend, getRecordFields(recordType_1), getRecordFields(recordType_2))) : ((this$.tag === 1) ? makeRecord(Protocol_$reflection(), map2(Update_updateOnlyByExisting, getRecordFields(recordType_1), getRecordFields(recordType_2))) : ((this$.tag === 3) ? makeRecord(Protocol_$reflection(), map2(Update_updateOnlyByExistingAppend, getRecordFields(recordType_1), getRecordFields(recordType_2))) : recordType_2));
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
return p;
|
|
79
|
+
}
|
|
80
|
+
}, protocols);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
return protocols;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Updates all protocols with the same name as the given protocol with its values
|
|
89
|
+
*/
|
|
90
|
+
export function Protocol_updateByName(updateOption, protocol, protocols) {
|
|
91
|
+
return Protocol_updateBy((p) => equals(p.Name, protocol.Name), updateOption, protocol, protocols);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* If a protocol with the given name exists in the list, removes it
|
|
96
|
+
*/
|
|
97
|
+
export function Protocol_removeByName(name, protocols) {
|
|
98
|
+
return filter((p) => !equals(p.Name, name), protocols);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Returns comments of a protocol
|
|
103
|
+
*/
|
|
104
|
+
export function Protocol_getComments_Z5F51792E(protocol) {
|
|
105
|
+
return protocol.Comments;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Applies function f on comments of a protocol
|
|
110
|
+
*/
|
|
111
|
+
export function Protocol_mapComments(f, protocol) {
|
|
112
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, map_1(f, protocol.Comments));
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Replaces comments of a protocol by given comment list
|
|
117
|
+
*/
|
|
118
|
+
export function Protocol_setComments(protocol, comments) {
|
|
119
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, comments);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Returns protocol type of a protocol
|
|
124
|
+
*/
|
|
125
|
+
export function Protocol_getProtocolType_Z5F51792E(protocol) {
|
|
126
|
+
return protocol.ProtocolType;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Applies function f on protocol type of a protocol
|
|
131
|
+
*/
|
|
132
|
+
export function Protocol_mapProtocolType(f, protocol) {
|
|
133
|
+
return new Protocol(protocol.ID, protocol.Name, map_1(f, protocol.ProtocolType), protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Replaces protocol type of a protocol by given protocol type
|
|
138
|
+
*/
|
|
139
|
+
export function Protocol_setProtocolType(protocol, protocolType) {
|
|
140
|
+
return new Protocol(protocol.ID, protocol.Name, protocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* Returns protocol version of a protocol
|
|
145
|
+
*/
|
|
146
|
+
export function Protocol_getVersion_Z5F51792E(protocol) {
|
|
147
|
+
return protocol.Version;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Applies function f on protocol version of a protocol
|
|
152
|
+
*/
|
|
153
|
+
export function Protocol_mapVersion(f, protocol) {
|
|
154
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, map_1(f, protocol.Version), protocol.Parameters, protocol.Components, protocol.Comments);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Replaces protocol version of a protocol by given protocol version
|
|
159
|
+
*/
|
|
160
|
+
export function Protocol_setVersion(protocol, version) {
|
|
161
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Protocol Name
|
|
166
|
+
* Returns protocol name of a protocol
|
|
167
|
+
*/
|
|
168
|
+
export function Protocol_getName_Z5F51792E(protocol) {
|
|
169
|
+
return protocol.Name;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* Applies function f on protocol name of a protocol
|
|
174
|
+
*/
|
|
175
|
+
export function Protocol_mapName(f, protocol) {
|
|
176
|
+
return new Protocol(protocol.ID, map_1(f, protocol.Name), protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Replaces protocol name of a protocol by given protocol name
|
|
181
|
+
*/
|
|
182
|
+
export function Protocol_setName(protocol, name) {
|
|
183
|
+
return new Protocol(protocol.ID, name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* Returns protocol description of a protocol
|
|
188
|
+
*/
|
|
189
|
+
export function Protocol_getDescription_Z5F51792E(protocol) {
|
|
190
|
+
return protocol.Description;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* Applies function f on protocol description of a protocol
|
|
195
|
+
*/
|
|
196
|
+
export function Protocol_mapDescription(f, protocol) {
|
|
197
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, map_1(f, protocol.Description), protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Replaces protocol description of a protocol by given protocol description
|
|
202
|
+
*/
|
|
203
|
+
export function Protocol_setDescription(protocol, description) {
|
|
204
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, description, protocol.Uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Returns protocol URI of a protocol
|
|
209
|
+
*/
|
|
210
|
+
export function Protocol_getUri_Z5F51792E(protocol) {
|
|
211
|
+
return protocol.Uri;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* Applies function f on protocol URI of a protocol
|
|
216
|
+
*/
|
|
217
|
+
export function Protocol_mapUri(f, protocol) {
|
|
218
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, map_1(f, protocol.Uri), protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Replaces protocol URI of a protocol by given protocol URI
|
|
223
|
+
*/
|
|
224
|
+
export function Protocol_setUri(protocol, uri) {
|
|
225
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, uri, protocol.Version, protocol.Parameters, protocol.Components, protocol.Comments);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* Returns components of a protocol
|
|
230
|
+
*/
|
|
231
|
+
export function Protocol_getComponents_Z5F51792E(protocol) {
|
|
232
|
+
return protocol.Components;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* Applies function f on components of a protocol
|
|
237
|
+
*/
|
|
238
|
+
export function Protocol_mapComponents(f, protocol) {
|
|
239
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, map_1(f, protocol.Components), protocol.Comments);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
/**
|
|
243
|
+
* Replaces components of a protocol by given component list
|
|
244
|
+
*/
|
|
245
|
+
export function Protocol_setComponents(protocol, components) {
|
|
246
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, protocol.Parameters, components, protocol.Comments);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
export function Protocol_addComponent(comp, protocol) {
|
|
250
|
+
return Protocol_setComponents(protocol, append(defaultArg(protocol.Components, empty()), singleton(comp)));
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* Returns protocol parameters of a protocol
|
|
255
|
+
*/
|
|
256
|
+
export function Protocol_getParameters_Z5F51792E(protocol) {
|
|
257
|
+
return protocol.Parameters;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
/**
|
|
261
|
+
* Applies function f on protocol parameters of a protocol
|
|
262
|
+
*/
|
|
263
|
+
export function Protocol_mapParameters(f, protocol) {
|
|
264
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, map_1(f, protocol.Parameters), protocol.Components, protocol.Comments);
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
/**
|
|
268
|
+
* Replaces protocol parameters of a protocol by given protocol parameter list
|
|
269
|
+
*/
|
|
270
|
+
export function Protocol_setParameters(protocol, parameters) {
|
|
271
|
+
return new Protocol(protocol.ID, protocol.Name, protocol.ProtocolType, protocol.Description, protocol.Uri, protocol.Version, parameters, protocol.Components, protocol.Comments);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
export function Protocol_addParameter(parameter, protocol) {
|
|
275
|
+
return Protocol_setParameters(protocol, append(defaultArg(protocol.Parameters, empty()), singleton(parameter)));
|
|
276
|
+
}
|
|
277
|
+
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Record, toString } from "../../../fable_modules/fable-library.4.1.4/Types.js";
|
|
2
|
+
import { record_type, option_type, string_type } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
|
|
3
|
+
import { OntologyAnnotation, OntologyAnnotation_$reflection } from "./OntologyAnnotation.js";
|
|
4
|
+
import { bind, map, defaultArg, unwrap } from "../../../fable_modules/fable-library.4.1.4/Option.js";
|
|
5
|
+
import { Option_fromValueWithDefault } from "../Helper.js";
|
|
6
|
+
|
|
7
|
+
export class ProtocolParameter extends Record {
|
|
8
|
+
constructor(ID, ParameterName) {
|
|
9
|
+
super();
|
|
10
|
+
this.ID = ID;
|
|
11
|
+
this.ParameterName = ParameterName;
|
|
12
|
+
}
|
|
13
|
+
Print() {
|
|
14
|
+
const this$ = this;
|
|
15
|
+
return toString(this$);
|
|
16
|
+
}
|
|
17
|
+
PrintCompact() {
|
|
18
|
+
const this$ = this;
|
|
19
|
+
return "OA " + ProtocolParameter__get_NameText(this$);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export function ProtocolParameter_$reflection() {
|
|
24
|
+
return record_type("ARCtrl.ISA.ProtocolParameter", [], ProtocolParameter, () => [["ID", option_type(string_type)], ["ParameterName", option_type(OntologyAnnotation_$reflection())]]);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function ProtocolParameter_make(id, parameterName) {
|
|
28
|
+
return new ProtocolParameter(id, parameterName);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function ProtocolParameter_create_Z6C54B221(Id, ParameterName) {
|
|
32
|
+
return ProtocolParameter_make(Id, ParameterName);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function ProtocolParameter_get_empty() {
|
|
36
|
+
return ProtocolParameter_create_Z6C54B221();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Create a ISAJson Protocol Parameter from ISATab string entries
|
|
41
|
+
*/
|
|
42
|
+
export function ProtocolParameter_fromString_Z2304A83C(term, source, accession, comments) {
|
|
43
|
+
const oa = OntologyAnnotation.fromString(term, source, accession, unwrap(comments));
|
|
44
|
+
return ProtocolParameter_make(void 0, Option_fromValueWithDefault(OntologyAnnotation.empty, oa));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Get ISATab string entries from an ISAJson ProtocolParameter object (name,source,accession)
|
|
49
|
+
*/
|
|
50
|
+
export function ProtocolParameter_toString_Z3A4310A5(pp) {
|
|
51
|
+
const value = {
|
|
52
|
+
TermAccessionNumber: "",
|
|
53
|
+
TermName: "",
|
|
54
|
+
TermSourceREF: "",
|
|
55
|
+
};
|
|
56
|
+
return defaultArg(map((arg) => OntologyAnnotation.toString(arg), pp.ParameterName), value);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Returns the name of the parameter as string
|
|
61
|
+
*/
|
|
62
|
+
export function ProtocolParameter__get_NameText(this$) {
|
|
63
|
+
return defaultArg(map((oa) => oa.NameText, this$.ParameterName), "");
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Returns the name of the parameter as string
|
|
68
|
+
*/
|
|
69
|
+
export function ProtocolParameter__get_TryNameText(this$) {
|
|
70
|
+
return bind((oa) => oa.TryNameText, this$.ParameterName);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export function ProtocolParameter__MapCategory_Z69DD836A(this$, f) {
|
|
74
|
+
return new ProtocolParameter(this$.ID, map(f, this$.ParameterName));
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export function ProtocolParameter__SetCategory_Z4C0FE73C(this$, c) {
|
|
78
|
+
return new ProtocolParameter(this$.ID, c);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Returns the name of the paramater as string if it exists
|
|
83
|
+
*/
|
|
84
|
+
export function ProtocolParameter_tryGetNameText_Z3A4310A5(pp) {
|
|
85
|
+
return ProtocolParameter__get_TryNameText(pp);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Returns the name of the paramater as string
|
|
90
|
+
*/
|
|
91
|
+
export function ProtocolParameter_getNameText_Z3A4310A5(pp) {
|
|
92
|
+
return defaultArg(ProtocolParameter_tryGetNameText_Z3A4310A5(pp), "");
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Returns true if the given name matches the name of the parameter
|
|
97
|
+
*/
|
|
98
|
+
export function ProtocolParameter_nameEqualsString(name, pp) {
|
|
99
|
+
return ProtocolParameter__get_NameText(pp) === name;
|
|
100
|
+
}
|
|
101
|
+
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { filter, map, tryFind, exists, singleton, append } from "../../../fable_modules/fable-library.4.1.4/List.js";
|
|
2
|
+
import { equals } from "../../../fable_modules/fable-library.4.1.4/Util.js";
|
|
3
|
+
import { record_type, array_type, option_type, string_type, getRecordFields, makeRecord } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
|
|
4
|
+
import { map as map_2, map2 } from "../../../fable_modules/fable-library.4.1.4/Array.js";
|
|
5
|
+
import { Update_updateOnlyByExistingAppend, Update_updateOnlyByExisting, Update_updateAppend } from "../Helper.js";
|
|
6
|
+
import { map as map_1 } from "../../../fable_modules/fable-library.4.1.4/Option.js";
|
|
7
|
+
import { Option_mapDefault } from "../Helper.js";
|
|
8
|
+
import { Record } from "../../../fable_modules/fable-library.4.1.4/Types.js";
|
|
9
|
+
import { OntologyAnnotation_$reflection } from "./OntologyAnnotation.js";
|
|
10
|
+
import { Comment$_$reflection } from "./Comment.js";
|
|
11
|
+
|
|
12
|
+
export class Publication extends Record {
|
|
13
|
+
constructor(PubMedID, DOI, Authors, Title, Status, Comments) {
|
|
14
|
+
super();
|
|
15
|
+
this.PubMedID = PubMedID;
|
|
16
|
+
this.DOI = DOI;
|
|
17
|
+
this.Authors = Authors;
|
|
18
|
+
this.Title = Title;
|
|
19
|
+
this.Status = Status;
|
|
20
|
+
this.Comments = Comments;
|
|
21
|
+
}
|
|
22
|
+
static make(pubMedID, doi, authors, title, status, comments) {
|
|
23
|
+
return new Publication(pubMedID, doi, authors, title, status, comments);
|
|
24
|
+
}
|
|
25
|
+
static create(PubMedID, Doi, Authors, Title, Status, Comments) {
|
|
26
|
+
return Publication.make(PubMedID, Doi, Authors, Title, Status, Comments);
|
|
27
|
+
}
|
|
28
|
+
static get empty() {
|
|
29
|
+
return Publication.create();
|
|
30
|
+
}
|
|
31
|
+
static add(publications, publication) {
|
|
32
|
+
return append(publications, singleton(publication));
|
|
33
|
+
}
|
|
34
|
+
static existsByDoi(doi, publications) {
|
|
35
|
+
return exists((p) => equals(p.DOI, doi), publications);
|
|
36
|
+
}
|
|
37
|
+
static existsByPubMedID(pubMedID, publications) {
|
|
38
|
+
return exists((p) => equals(p.PubMedID, pubMedID), publications);
|
|
39
|
+
}
|
|
40
|
+
static tryGetByDoi(doi, publications) {
|
|
41
|
+
return tryFind((publication) => equals(publication.DOI, doi), publications);
|
|
42
|
+
}
|
|
43
|
+
static updateBy(predicate, updateOption, publication, publications) {
|
|
44
|
+
return exists(predicate, publications) ? map((p) => {
|
|
45
|
+
if (predicate(p)) {
|
|
46
|
+
const this$ = updateOption;
|
|
47
|
+
const recordType_1 = p;
|
|
48
|
+
const recordType_2 = publication;
|
|
49
|
+
switch (this$.tag) {
|
|
50
|
+
case 2:
|
|
51
|
+
return makeRecord(Publication_$reflection(), map2(Update_updateAppend, getRecordFields(recordType_1), getRecordFields(recordType_2)));
|
|
52
|
+
case 1:
|
|
53
|
+
return makeRecord(Publication_$reflection(), map2(Update_updateOnlyByExisting, getRecordFields(recordType_1), getRecordFields(recordType_2)));
|
|
54
|
+
case 3:
|
|
55
|
+
return makeRecord(Publication_$reflection(), map2(Update_updateOnlyByExistingAppend, getRecordFields(recordType_1), getRecordFields(recordType_2)));
|
|
56
|
+
default:
|
|
57
|
+
return recordType_2;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
return p;
|
|
62
|
+
}
|
|
63
|
+
}, publications) : publications;
|
|
64
|
+
}
|
|
65
|
+
static updateByDOI(updateOption, publication, publications) {
|
|
66
|
+
return Publication.updateBy((p) => equals(p.DOI, publication.DOI), updateOption, publication, publications);
|
|
67
|
+
}
|
|
68
|
+
static updateByPubMedID(updateOption, publication, publications) {
|
|
69
|
+
return Publication.updateBy((p) => equals(p.PubMedID, publication.PubMedID), updateOption, publication, publications);
|
|
70
|
+
}
|
|
71
|
+
static removeByDoi(doi, publications) {
|
|
72
|
+
return filter((p) => !equals(p.DOI, doi), publications);
|
|
73
|
+
}
|
|
74
|
+
static removeByPubMedID(pubMedID, publications) {
|
|
75
|
+
return filter((p) => !equals(p.PubMedID, pubMedID), publications);
|
|
76
|
+
}
|
|
77
|
+
static getStatus(publication) {
|
|
78
|
+
return publication.Status;
|
|
79
|
+
}
|
|
80
|
+
static mapStatus(f, publication) {
|
|
81
|
+
return new Publication(publication.PubMedID, publication.DOI, publication.Authors, publication.Title, map_1(f, publication.Status), publication.Comments);
|
|
82
|
+
}
|
|
83
|
+
static setStatus(publication, status) {
|
|
84
|
+
return new Publication(publication.PubMedID, publication.DOI, publication.Authors, publication.Title, status, publication.Comments);
|
|
85
|
+
}
|
|
86
|
+
static getComments(publication) {
|
|
87
|
+
return publication.Comments;
|
|
88
|
+
}
|
|
89
|
+
static mapComments(f, publication) {
|
|
90
|
+
return new Publication(publication.PubMedID, publication.DOI, publication.Authors, publication.Title, publication.Status, Option_mapDefault([], f, publication.Comments));
|
|
91
|
+
}
|
|
92
|
+
static setComments(publication, comments) {
|
|
93
|
+
return new Publication(publication.PubMedID, publication.DOI, publication.Authors, publication.Title, publication.Status, comments);
|
|
94
|
+
}
|
|
95
|
+
Copy() {
|
|
96
|
+
const this$ = this;
|
|
97
|
+
const arg_5 = map_1((array) => map_2((c) => c.Copy(), array), this$.Comments);
|
|
98
|
+
return Publication.make(this$.PubMedID, this$.DOI, this$.Authors, this$.Title, this$.Status, arg_5);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
export function Publication_$reflection() {
|
|
103
|
+
return record_type("ARCtrl.ISA.Publication", [], Publication, () => [["PubMedID", option_type(string_type)], ["DOI", option_type(string_type)], ["Authors", option_type(string_type)], ["Title", option_type(string_type)], ["Status", option_type(OntologyAnnotation_$reflection())], ["Comments", option_type(array_type(Comment$_$reflection()))]]);
|
|
104
|
+
}
|
|
105
|
+
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { Record, toString } from "../../../fable_modules/fable-library.4.1.4/Types.js";
|
|
2
|
+
import { append, choose, empty, length } from "../../../fable_modules/fable-library.4.1.4/List.js";
|
|
3
|
+
import { defaultArg } from "../../../fable_modules/fable-library.4.1.4/Option.js";
|
|
4
|
+
import { printf, toText } from "../../../fable_modules/fable-library.4.1.4/String.js";
|
|
5
|
+
import { record_type, list_type, option_type, string_type } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
|
|
6
|
+
import { MaterialAttributeValue_$reflection } from "./MaterialAttributeValue.js";
|
|
7
|
+
import { FactorValue_$reflection } from "./FactorValue.js";
|
|
8
|
+
import { Source_$reflection } from "./Source.js";
|
|
9
|
+
|
|
10
|
+
export class Sample extends Record {
|
|
11
|
+
constructor(ID, Name, Characteristics, FactorValues, DerivesFrom) {
|
|
12
|
+
super();
|
|
13
|
+
this.ID = ID;
|
|
14
|
+
this.Name = Name;
|
|
15
|
+
this.Characteristics = Characteristics;
|
|
16
|
+
this.FactorValues = FactorValues;
|
|
17
|
+
this.DerivesFrom = DerivesFrom;
|
|
18
|
+
}
|
|
19
|
+
Print() {
|
|
20
|
+
const this$ = this;
|
|
21
|
+
return toString(this$);
|
|
22
|
+
}
|
|
23
|
+
PrintCompact() {
|
|
24
|
+
const this$ = this;
|
|
25
|
+
const chars = length(defaultArg(this$.Characteristics, empty())) | 0;
|
|
26
|
+
const facts = length(defaultArg(this$.FactorValues, empty())) | 0;
|
|
27
|
+
const arg = Sample__get_NameAsString(this$);
|
|
28
|
+
return toText(printf("%s [%i characteristics; %i factors]"))(arg)(chars)(facts);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function Sample_$reflection() {
|
|
33
|
+
return record_type("ARCtrl.ISA.Sample", [], Sample, () => [["ID", option_type(string_type)], ["Name", option_type(string_type)], ["Characteristics", option_type(list_type(MaterialAttributeValue_$reflection()))], ["FactorValues", option_type(list_type(FactorValue_$reflection()))], ["DerivesFrom", option_type(list_type(Source_$reflection()))]]);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export function Sample_make(id, name, characteristics, factorValues, derivesFrom) {
|
|
37
|
+
return new Sample(id, name, characteristics, factorValues, derivesFrom);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export function Sample_create_E50ED22(Id, Name, Characteristics, FactorValues, DerivesFrom) {
|
|
41
|
+
return Sample_make(Id, Name, Characteristics, FactorValues, DerivesFrom);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function Sample_get_empty() {
|
|
45
|
+
return Sample_create_E50ED22();
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function Sample__get_NameAsString(this$) {
|
|
49
|
+
return defaultArg(this$.Name, "");
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export function Sample_getCharacteristicUnits_Z29207F1E(s) {
|
|
53
|
+
return choose((c) => c.Unit, defaultArg(s.Characteristics, empty()));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export function Sample_getFactorUnits_Z29207F1E(s) {
|
|
57
|
+
return choose((c) => c.Unit, defaultArg(s.FactorValues, empty()));
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export function Sample_getUnits_Z29207F1E(s) {
|
|
61
|
+
return append(Sample_getCharacteristicUnits_Z29207F1E(s), Sample_getFactorUnits_Z29207F1E(s));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export function Sample_setCharacteristicValues(values, s) {
|
|
65
|
+
return new Sample(s.ID, s.Name, values, s.FactorValues, s.DerivesFrom);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export function Sample_setFactorValues(values, s) {
|
|
69
|
+
return new Sample(s.ID, s.Name, s.Characteristics, values, s.DerivesFrom);
|
|
70
|
+
}
|
|
71
|
+
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Record, toString } from "../../../fable_modules/fable-library.4.1.4/Types.js";
|
|
2
|
+
import { choose, empty, length } from "../../../fable_modules/fable-library.4.1.4/List.js";
|
|
3
|
+
import { defaultArg } from "../../../fable_modules/fable-library.4.1.4/Option.js";
|
|
4
|
+
import { printf, toText } from "../../../fable_modules/fable-library.4.1.4/String.js";
|
|
5
|
+
import { record_type, list_type, option_type, string_type } from "../../../fable_modules/fable-library.4.1.4/Reflection.js";
|
|
6
|
+
import { MaterialAttributeValue_$reflection } from "./MaterialAttributeValue.js";
|
|
7
|
+
|
|
8
|
+
export class Source extends Record {
|
|
9
|
+
constructor(ID, Name, Characteristics) {
|
|
10
|
+
super();
|
|
11
|
+
this.ID = ID;
|
|
12
|
+
this.Name = Name;
|
|
13
|
+
this.Characteristics = Characteristics;
|
|
14
|
+
}
|
|
15
|
+
Print() {
|
|
16
|
+
const this$ = this;
|
|
17
|
+
return toString(this$);
|
|
18
|
+
}
|
|
19
|
+
PrintCompact() {
|
|
20
|
+
const this$ = this;
|
|
21
|
+
const l = length(defaultArg(this$.Characteristics, empty())) | 0;
|
|
22
|
+
const arg = Source__get_NameAsString(this$);
|
|
23
|
+
return toText(printf("%s [%i characteristics]"))(arg)(l);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function Source_$reflection() {
|
|
28
|
+
return record_type("ARCtrl.ISA.Source", [], Source, () => [["ID", option_type(string_type)], ["Name", option_type(string_type)], ["Characteristics", option_type(list_type(MaterialAttributeValue_$reflection()))]]);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function Source_make(id, name, characteristics) {
|
|
32
|
+
return new Source(id, name, characteristics);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function Source_create_7A281ED9(Id, Name, Characteristics) {
|
|
36
|
+
return Source_make(Id, Name, Characteristics);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export function Source_get_empty() {
|
|
40
|
+
return Source_create_7A281ED9();
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function Source__get_NameAsString(this$) {
|
|
44
|
+
return defaultArg(this$.Name, "");
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function Source_getUnits_Z28BE5327(m) {
|
|
48
|
+
return choose((c) => c.Unit, defaultArg(m.Characteristics, empty()));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function Source_setCharacteristicValues(values, m) {
|
|
52
|
+
return new Source(m.ID, m.Name, values);
|
|
53
|
+
}
|
|
54
|
+
|