@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,137 @@
|
|
|
1
|
+
import { class_type } from "../../fable-library.4.1.4/Reflection.js";
|
|
2
|
+
import { SheetEntity$1__get_Messages, SheetEntity$1, Message__MapText_11D407F6, SheetEntity$1_some_2B595 } from "./Types.fs.js";
|
|
3
|
+
import { append, map, empty } from "../../fable-library.4.1.4/List.js";
|
|
4
|
+
import { printf, toText } from "../../fable-library.4.1.4/String.js";
|
|
5
|
+
import { OptionalSource$1__get_Source, RequiredSource$1__get_Source, OptionalSource$1_$ctor_2B595, RequiredSource$1_$ctor_2B595 } from "./Expression.fs.js";
|
|
6
|
+
|
|
7
|
+
export class RowBuilder {
|
|
8
|
+
constructor() {
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function RowBuilder_$reflection() {
|
|
13
|
+
return class_type("FsSpreadsheet.DSL.RowBuilder", void 0, RowBuilder);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function RowBuilder_$ctor() {
|
|
17
|
+
return new RowBuilder();
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function RowBuilder_get_Empty() {
|
|
21
|
+
return SheetEntity$1_some_2B595(empty());
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function RowBuilder__SignMessages_3F89FFFC(this$, messages) {
|
|
25
|
+
return map((m) => {
|
|
26
|
+
let clo;
|
|
27
|
+
return Message__MapText_11D407F6(m, (clo = toText(printf("In Row: %s")), clo));
|
|
28
|
+
}, messages);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function RowBuilder__Combine_19F30600(this$, wx1, wx2) {
|
|
32
|
+
let matchResult, l1, l2, messages1, messages2, messages2_1, messages1_1, f1, messages1_2, messages2_2, f2, messages1_3, messages2_3, messages1_4, messages2_4;
|
|
33
|
+
switch (wx1.tag) {
|
|
34
|
+
case 2: {
|
|
35
|
+
if (wx2.tag === 2) {
|
|
36
|
+
matchResult = 1;
|
|
37
|
+
messages2_1 = wx2.fields[0];
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
matchResult = 2;
|
|
41
|
+
messages1_1 = wx1.fields[0];
|
|
42
|
+
}
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
case 1: {
|
|
46
|
+
switch (wx2.tag) {
|
|
47
|
+
case 0: {
|
|
48
|
+
matchResult = 4;
|
|
49
|
+
f2 = wx2.fields[0];
|
|
50
|
+
messages1_3 = wx1.fields[0];
|
|
51
|
+
messages2_3 = wx2.fields[1];
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
case 1: {
|
|
55
|
+
matchResult = 5;
|
|
56
|
+
messages1_4 = wx1.fields[0];
|
|
57
|
+
messages2_4 = wx2.fields[0];
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
default: {
|
|
61
|
+
matchResult = 1;
|
|
62
|
+
messages2_1 = wx2.fields[0];
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
default:
|
|
68
|
+
switch (wx2.tag) {
|
|
69
|
+
case 2: {
|
|
70
|
+
matchResult = 1;
|
|
71
|
+
messages2_1 = wx2.fields[0];
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
case 1: {
|
|
75
|
+
matchResult = 3;
|
|
76
|
+
f1 = wx1.fields[0];
|
|
77
|
+
messages1_2 = wx1.fields[1];
|
|
78
|
+
messages2_2 = wx2.fields[0];
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
default: {
|
|
82
|
+
matchResult = 0;
|
|
83
|
+
l1 = wx1.fields[0];
|
|
84
|
+
l2 = wx2.fields[0];
|
|
85
|
+
messages1 = wx1.fields[1];
|
|
86
|
+
messages2 = wx2.fields[1];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
switch (matchResult) {
|
|
91
|
+
case 0:
|
|
92
|
+
return new SheetEntity$1(0, [append(l1, l2), append(messages1, messages2)]);
|
|
93
|
+
case 1:
|
|
94
|
+
return new SheetEntity$1(2, [append(SheetEntity$1__get_Messages(wx1), messages2_1)]);
|
|
95
|
+
case 2:
|
|
96
|
+
return new SheetEntity$1(2, [append(messages1_1, SheetEntity$1__get_Messages(wx2))]);
|
|
97
|
+
case 3:
|
|
98
|
+
return new SheetEntity$1(0, [f1, append(messages1_2, messages2_2)]);
|
|
99
|
+
case 4:
|
|
100
|
+
return new SheetEntity$1(0, [f2, append(messages1_3, messages2_3)]);
|
|
101
|
+
default:
|
|
102
|
+
return new SheetEntity$1(1, [append(messages1_4, messages2_4)]);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export function RowBuilder__Combine_ZC028CBD(this$, wx1, wx2) {
|
|
107
|
+
return RequiredSource$1_$ctor_2B595(wx2);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export function RowBuilder__Combine_7DC18FE3(this$, wx1, wx2) {
|
|
111
|
+
return RequiredSource$1_$ctor_2B595(wx1);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export function RowBuilder__Combine_Z1FF3C0DC(this$, wx1, wx2) {
|
|
115
|
+
return OptionalSource$1_$ctor_2B595(wx2);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export function RowBuilder__Combine_Z47B5345C(this$, wx1, wx2) {
|
|
119
|
+
return OptionalSource$1_$ctor_2B595(wx1);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export function RowBuilder__Combine_385AF66F(this$, wx1, wx2) {
|
|
123
|
+
return RequiredSource$1_$ctor_2B595(RowBuilder__Combine_19F30600(this$, RequiredSource$1__get_Source(wx1), wx2));
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export function RowBuilder__Combine_16FE340F(this$, wx1, wx2) {
|
|
127
|
+
return RequiredSource$1_$ctor_2B595(RowBuilder__Combine_19F30600(this$, wx1, RequiredSource$1__get_Source(wx2)));
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export function RowBuilder__Combine_Z4C077C38(this$, wx1, wx2) {
|
|
131
|
+
return OptionalSource$1_$ctor_2B595(RowBuilder__Combine_19F30600(this$, OptionalSource$1__get_Source(wx1), wx2));
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export function RowBuilder__Combine_Z23359F38(this$, wx1, wx2) {
|
|
135
|
+
return OptionalSource$1_$ctor_2B595(RowBuilder__Combine_19F30600(this$, wx1, OptionalSource$1__get_Source(wx2)));
|
|
136
|
+
}
|
|
137
|
+
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
namespace FsSpreadsheet.DSL
|
|
2
|
+
|
|
3
|
+
open FsSpreadsheet
|
|
4
|
+
open FsSpreadsheet.DSL
|
|
5
|
+
|
|
6
|
+
open Microsoft.FSharp.Quotations
|
|
7
|
+
open Expression
|
|
8
|
+
|
|
9
|
+
type SheetBuilder(name : string) =
|
|
10
|
+
|
|
11
|
+
static member Empty : SheetEntity<SheetElement list> = SheetEntity.some []
|
|
12
|
+
|
|
13
|
+
// -- Computation Expression methods -->
|
|
14
|
+
|
|
15
|
+
member inline this.Zero() : SheetEntity<SheetElement list> = SheetEntity.some []
|
|
16
|
+
|
|
17
|
+
member this.SignMessages (messages : Message list) : Message list =
|
|
18
|
+
messages
|
|
19
|
+
|> List.map (fun m -> m.MapText (sprintf "In Sheet %s: %s" name))
|
|
20
|
+
|
|
21
|
+
member inline _.Yield(se: SheetElement) =
|
|
22
|
+
SheetEntity.some [se]
|
|
23
|
+
|
|
24
|
+
member inline _.Yield(cs: SheetElement list) =
|
|
25
|
+
SheetEntity.some cs
|
|
26
|
+
|
|
27
|
+
member inline _.Yield(cs: SheetEntity<SheetElement list>) =
|
|
28
|
+
cs
|
|
29
|
+
|
|
30
|
+
member inline _.Yield(se: SheetEntity<SheetElement>) =
|
|
31
|
+
match se with
|
|
32
|
+
| Some (s,messages) ->
|
|
33
|
+
SheetEntity.Some ([s], messages)
|
|
34
|
+
| NoneOptional messages ->
|
|
35
|
+
NoneOptional messages
|
|
36
|
+
| NoneRequired messages ->
|
|
37
|
+
NoneRequired messages
|
|
38
|
+
|
|
39
|
+
member inline _.Yield(c: SheetEntity<RowElement list>) =
|
|
40
|
+
match c with
|
|
41
|
+
| Some ((re),messages) ->
|
|
42
|
+
SheetEntity.Some ([SheetElement.UnindexedRow re], messages)
|
|
43
|
+
| NoneOptional messages ->
|
|
44
|
+
NoneOptional messages
|
|
45
|
+
| NoneRequired messages ->
|
|
46
|
+
NoneRequired messages
|
|
47
|
+
|
|
48
|
+
member inline this.Yield(c : seq<SheetEntity<RowElement list>>) =
|
|
49
|
+
c
|
|
50
|
+
|> Seq.map this.Yield
|
|
51
|
+
|> Seq.reduce (fun a b -> this.Combine(a,b))
|
|
52
|
+
|
|
53
|
+
member inline _.Yield(cs: RowElement list) =
|
|
54
|
+
SheetEntity.some [SheetElement.UnindexedRow cs]
|
|
55
|
+
|
|
56
|
+
member inline _.Yield(cs: RowBuilder) =
|
|
57
|
+
SheetEntity.some [SheetElement.UnindexedRow []]
|
|
58
|
+
|
|
59
|
+
member inline _.Yield(t: SheetEntity<string * (TableElement list)>) =
|
|
60
|
+
match t with
|
|
61
|
+
| Some (te,messages) ->
|
|
62
|
+
SheetEntity.Some ([SheetElement.Table te], messages)
|
|
63
|
+
| NoneOptional messages ->
|
|
64
|
+
NoneOptional messages
|
|
65
|
+
| NoneRequired messages ->
|
|
66
|
+
NoneRequired messages
|
|
67
|
+
|
|
68
|
+
member inline _.Yield(te: string * (TableElement list)) =
|
|
69
|
+
SheetEntity.some [SheetElement.Table te]
|
|
70
|
+
|
|
71
|
+
member inline _.Yield(tb: TableBuilder) =
|
|
72
|
+
SheetEntity.some [SheetElement.Table (tb.Name,[])]
|
|
73
|
+
|
|
74
|
+
member inline _.Yield(c: SheetEntity<ColumnElement list>) =
|
|
75
|
+
match c with
|
|
76
|
+
| Some ((re),messages) ->
|
|
77
|
+
SheetEntity.Some ([SheetElement.UnindexedColumn re], messages)
|
|
78
|
+
| NoneOptional messages ->
|
|
79
|
+
NoneOptional messages
|
|
80
|
+
| NoneRequired messages ->
|
|
81
|
+
NoneRequired messages
|
|
82
|
+
|
|
83
|
+
member inline _.Yield(cs: ColumnElement list) =
|
|
84
|
+
SheetEntity.some [SheetElement.UnindexedColumn cs]
|
|
85
|
+
|
|
86
|
+
member inline _.Yield(cs: ColumnBuilder) =
|
|
87
|
+
SheetEntity.some [SheetElement.UnindexedColumn []]
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
member inline this.YieldFrom(ns: SheetEntity<SheetElement list> seq) =
|
|
91
|
+
ns
|
|
92
|
+
|> Seq.fold (fun state we ->
|
|
93
|
+
this.Combine(state,we)
|
|
94
|
+
|
|
95
|
+
) SheetBuilder.Empty
|
|
96
|
+
|
|
97
|
+
member inline this.For(vs : seq<'T>, f : 'T -> SheetEntity<SheetElement list>) =
|
|
98
|
+
vs
|
|
99
|
+
|> Seq.map f
|
|
100
|
+
|> this.YieldFrom
|
|
101
|
+
|
|
102
|
+
member this.Run(children: SheetEntity<SheetElement list>) =
|
|
103
|
+
match children with
|
|
104
|
+
| Some (se,messages) ->
|
|
105
|
+
SheetEntity.Some ((name,se), messages)
|
|
106
|
+
| NoneOptional messages ->
|
|
107
|
+
NoneOptional messages
|
|
108
|
+
| NoneRequired messages ->
|
|
109
|
+
NoneRequired messages
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
member this.Combine(wx1: SheetEntity<SheetElement list>, wx2: SheetEntity<SheetElement list>) : SheetEntity<SheetElement list>=
|
|
113
|
+
match wx1,wx2 with
|
|
114
|
+
// If both contain content, combine the content
|
|
115
|
+
| Some (l1,messages1), Some (l2,messages2) ->
|
|
116
|
+
Some (List.append l1 l2
|
|
117
|
+
,List.append messages1 messages2)
|
|
118
|
+
|
|
119
|
+
// If any of the two is missing and was required, return a missing required
|
|
120
|
+
| _, NoneRequired messages2 ->
|
|
121
|
+
NoneRequired (List.append wx1.Messages messages2)
|
|
122
|
+
|
|
123
|
+
| NoneRequired messages1, _ ->
|
|
124
|
+
NoneRequired (List.append messages1 wx2.Messages)
|
|
125
|
+
|
|
126
|
+
// If only one of the two is missing and was optional, take the content of the functioning one
|
|
127
|
+
| Some (f1,messages1), NoneOptional messages2 ->
|
|
128
|
+
Some (f1
|
|
129
|
+
,List.append messages1 messages2)
|
|
130
|
+
|
|
131
|
+
| NoneOptional messages1, Some (f2,messages2) ->
|
|
132
|
+
Some (f2
|
|
133
|
+
,List.append messages1 messages2)
|
|
134
|
+
|
|
135
|
+
// If both are missing and were optional, return a missing optional
|
|
136
|
+
| NoneOptional messages1, NoneOptional messages2 ->
|
|
137
|
+
NoneOptional (List.append messages1 messages2)
|
|
138
|
+
|
|
139
|
+
member inline _.Delay(n: unit -> SheetEntity<SheetElement list>) = n()
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { class_type } from "../../fable-library.4.1.4/Reflection.js";
|
|
2
|
+
import { SheetEntity$1__get_Messages, SheetEntity$1, Message__MapText_11D407F6, SheetEntity$1_some_2B595 } from "./Types.fs.js";
|
|
3
|
+
import { append, map, empty } from "../../fable-library.4.1.4/List.js";
|
|
4
|
+
import { printf, toText } from "../../fable-library.4.1.4/String.js";
|
|
5
|
+
|
|
6
|
+
export class SheetBuilder {
|
|
7
|
+
constructor(name) {
|
|
8
|
+
this.name = name;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function SheetBuilder_$reflection() {
|
|
13
|
+
return class_type("FsSpreadsheet.DSL.SheetBuilder", void 0, SheetBuilder);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function SheetBuilder_$ctor_Z721C83C5(name) {
|
|
17
|
+
return new SheetBuilder(name);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function SheetBuilder_get_Empty() {
|
|
21
|
+
return SheetEntity$1_some_2B595(empty());
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function SheetBuilder__SignMessages_3F89FFFC(this$, messages) {
|
|
25
|
+
return map((m) => {
|
|
26
|
+
let clo_1;
|
|
27
|
+
return Message__MapText_11D407F6(m, (clo_1 = toText(printf("In Sheet %s: %s"))(this$.name), clo_1));
|
|
28
|
+
}, messages);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function SheetBuilder__Run_5EFE5A35(this$, children) {
|
|
32
|
+
switch (children.tag) {
|
|
33
|
+
case 1:
|
|
34
|
+
return new SheetEntity$1(1, [children.fields[0]]);
|
|
35
|
+
case 2:
|
|
36
|
+
return new SheetEntity$1(2, [children.fields[0]]);
|
|
37
|
+
default:
|
|
38
|
+
return new SheetEntity$1(0, [[this$.name, children.fields[0]], children.fields[1]]);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export function SheetBuilder__Combine_6037FAE0(this$, wx1, wx2) {
|
|
43
|
+
let matchResult, l1, l2, messages1, messages2, messages2_1, messages1_1, f1, messages1_2, messages2_2, f2, messages1_3, messages2_3, messages1_4, messages2_4;
|
|
44
|
+
switch (wx1.tag) {
|
|
45
|
+
case 2: {
|
|
46
|
+
if (wx2.tag === 2) {
|
|
47
|
+
matchResult = 1;
|
|
48
|
+
messages2_1 = wx2.fields[0];
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
matchResult = 2;
|
|
52
|
+
messages1_1 = wx1.fields[0];
|
|
53
|
+
}
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
case 1: {
|
|
57
|
+
switch (wx2.tag) {
|
|
58
|
+
case 0: {
|
|
59
|
+
matchResult = 4;
|
|
60
|
+
f2 = wx2.fields[0];
|
|
61
|
+
messages1_3 = wx1.fields[0];
|
|
62
|
+
messages2_3 = wx2.fields[1];
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
case 1: {
|
|
66
|
+
matchResult = 5;
|
|
67
|
+
messages1_4 = wx1.fields[0];
|
|
68
|
+
messages2_4 = wx2.fields[0];
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
default: {
|
|
72
|
+
matchResult = 1;
|
|
73
|
+
messages2_1 = wx2.fields[0];
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
default:
|
|
79
|
+
switch (wx2.tag) {
|
|
80
|
+
case 2: {
|
|
81
|
+
matchResult = 1;
|
|
82
|
+
messages2_1 = wx2.fields[0];
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
case 1: {
|
|
86
|
+
matchResult = 3;
|
|
87
|
+
f1 = wx1.fields[0];
|
|
88
|
+
messages1_2 = wx1.fields[1];
|
|
89
|
+
messages2_2 = wx2.fields[0];
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
default: {
|
|
93
|
+
matchResult = 0;
|
|
94
|
+
l1 = wx1.fields[0];
|
|
95
|
+
l2 = wx2.fields[0];
|
|
96
|
+
messages1 = wx1.fields[1];
|
|
97
|
+
messages2 = wx2.fields[1];
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
switch (matchResult) {
|
|
102
|
+
case 0:
|
|
103
|
+
return new SheetEntity$1(0, [append(l1, l2), append(messages1, messages2)]);
|
|
104
|
+
case 1:
|
|
105
|
+
return new SheetEntity$1(2, [append(SheetEntity$1__get_Messages(wx1), messages2_1)]);
|
|
106
|
+
case 2:
|
|
107
|
+
return new SheetEntity$1(2, [append(messages1_1, SheetEntity$1__get_Messages(wx2))]);
|
|
108
|
+
case 3:
|
|
109
|
+
return new SheetEntity$1(0, [f1, append(messages1_2, messages2_2)]);
|
|
110
|
+
case 4:
|
|
111
|
+
return new SheetEntity$1(0, [f2, append(messages1_3, messages2_3)]);
|
|
112
|
+
default:
|
|
113
|
+
return new SheetEntity$1(1, [append(messages1_4, messages2_4)]);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
namespace FsSpreadsheet.DSL
|
|
2
|
+
|
|
3
|
+
open FsSpreadsheet
|
|
4
|
+
open FsSpreadsheet.DSL
|
|
5
|
+
|
|
6
|
+
open Microsoft.FSharp.Quotations
|
|
7
|
+
open Expression
|
|
8
|
+
|
|
9
|
+
type TableBuilder(name : string) =
|
|
10
|
+
|
|
11
|
+
static member Empty : SheetEntity<TableElement list> = SheetEntity.some []
|
|
12
|
+
|
|
13
|
+
// -- Computation Expression methods -->
|
|
14
|
+
|
|
15
|
+
member inline this.Zero() : SheetEntity<TableElement list> = SheetEntity.some []
|
|
16
|
+
|
|
17
|
+
member this.Name = name
|
|
18
|
+
|
|
19
|
+
member this.SignMessages (messages : Message list) : Message list =
|
|
20
|
+
messages
|
|
21
|
+
|> List.map (fun m -> m.MapText (sprintf "In Sheet %s: %s" name))
|
|
22
|
+
|
|
23
|
+
member inline _.Yield(se: TableElement) =
|
|
24
|
+
SheetEntity.some [se]
|
|
25
|
+
|
|
26
|
+
member inline _.Yield(cs: TableElement list) =
|
|
27
|
+
SheetEntity.some cs
|
|
28
|
+
|
|
29
|
+
member inline _.Yield(cs: SheetEntity<TableElement list>) =
|
|
30
|
+
cs
|
|
31
|
+
|
|
32
|
+
member inline _.Yield(se: SheetEntity<TableElement>) =
|
|
33
|
+
match se with
|
|
34
|
+
| Some (s,messages) ->
|
|
35
|
+
SheetEntity.Some ([s], messages)
|
|
36
|
+
| NoneOptional messages ->
|
|
37
|
+
NoneOptional messages
|
|
38
|
+
| NoneRequired messages ->
|
|
39
|
+
NoneRequired messages
|
|
40
|
+
|
|
41
|
+
member inline _.Yield(c: SheetEntity<RowElement list>) =
|
|
42
|
+
match c with
|
|
43
|
+
| Some ((re),messages) ->
|
|
44
|
+
SheetEntity.Some ([TableElement.UnindexedRow re], messages)
|
|
45
|
+
| NoneOptional messages ->
|
|
46
|
+
NoneOptional messages
|
|
47
|
+
| NoneRequired messages ->
|
|
48
|
+
NoneRequired messages
|
|
49
|
+
|
|
50
|
+
member inline _.Yield(cs: RowElement list) =
|
|
51
|
+
SheetEntity.some [TableElement.UnindexedRow cs]
|
|
52
|
+
|
|
53
|
+
member inline _.Yield(cs: RowBuilder) =
|
|
54
|
+
SheetEntity.some [TableElement.UnindexedRow []]
|
|
55
|
+
|
|
56
|
+
member inline _.Yield(c: SheetEntity<ColumnElement list>) =
|
|
57
|
+
match c with
|
|
58
|
+
| Some ((re),messages) ->
|
|
59
|
+
SheetEntity.Some ([TableElement.UnindexedColumn re], messages)
|
|
60
|
+
| NoneOptional messages ->
|
|
61
|
+
NoneOptional messages
|
|
62
|
+
| NoneRequired messages ->
|
|
63
|
+
NoneRequired messages
|
|
64
|
+
|
|
65
|
+
member inline _.Yield(cs: ColumnElement list) =
|
|
66
|
+
SheetEntity.some [TableElement.UnindexedColumn cs]
|
|
67
|
+
|
|
68
|
+
member inline _.Yield(cs: ColumnBuilder) =
|
|
69
|
+
SheetEntity.some [TableElement.UnindexedColumn []]
|
|
70
|
+
|
|
71
|
+
member inline this.YieldFrom(ns: SheetEntity<TableElement list> seq) =
|
|
72
|
+
ns
|
|
73
|
+
|> Seq.fold (fun state we ->
|
|
74
|
+
this.Combine(state,we)
|
|
75
|
+
|
|
76
|
+
) TableBuilder.Empty
|
|
77
|
+
|
|
78
|
+
member inline this.For(vs : seq<'T>, f : 'T -> SheetEntity<TableElement list>) =
|
|
79
|
+
vs
|
|
80
|
+
|> Seq.map f
|
|
81
|
+
|> this.YieldFrom
|
|
82
|
+
|
|
83
|
+
member this.Run(children: SheetEntity<TableElement list>) =
|
|
84
|
+
match children with
|
|
85
|
+
| Some (se,messages) ->
|
|
86
|
+
SheetEntity.Some ((name,se), messages)
|
|
87
|
+
| NoneOptional messages ->
|
|
88
|
+
NoneOptional messages
|
|
89
|
+
| NoneRequired messages ->
|
|
90
|
+
NoneRequired messages
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
member this.Combine(wx1: SheetEntity<TableElement list>, wx2: SheetEntity<TableElement list>) : SheetEntity<TableElement list>=
|
|
94
|
+
match wx1,wx2 with
|
|
95
|
+
// If both contain content, combine the content
|
|
96
|
+
| Some (l1,messages1), Some (l2,messages2) ->
|
|
97
|
+
Some (List.append l1 l2
|
|
98
|
+
,List.append messages1 messages2)
|
|
99
|
+
|
|
100
|
+
// If any of the two is missing and was required, return a missing required
|
|
101
|
+
| _, NoneRequired messages2 ->
|
|
102
|
+
NoneRequired (List.append wx1.Messages messages2)
|
|
103
|
+
|
|
104
|
+
| NoneRequired messages1, _ ->
|
|
105
|
+
NoneRequired (List.append messages1 wx2.Messages)
|
|
106
|
+
|
|
107
|
+
// If only one of the two is missing and was optional, take the content of the functioning one
|
|
108
|
+
| Some (f1,messages1), NoneOptional messages2 ->
|
|
109
|
+
Some (f1
|
|
110
|
+
,List.append messages1 messages2)
|
|
111
|
+
|
|
112
|
+
| NoneOptional messages1, Some (f2,messages2) ->
|
|
113
|
+
Some (f2
|
|
114
|
+
,List.append messages1 messages2)
|
|
115
|
+
|
|
116
|
+
// If both are missing and were optional, return a missing optional
|
|
117
|
+
| NoneOptional messages1, NoneOptional messages2 ->
|
|
118
|
+
NoneOptional (List.append messages1 messages2)
|
|
119
|
+
|
|
120
|
+
member inline _.Delay(n: unit -> SheetEntity<TableElement list>) = n()
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { class_type } from "../../fable-library.4.1.4/Reflection.js";
|
|
2
|
+
import { SheetEntity$1__get_Messages, SheetEntity$1, Message__MapText_11D407F6, SheetEntity$1_some_2B595 } from "./Types.fs.js";
|
|
3
|
+
import { append, map, empty } from "../../fable-library.4.1.4/List.js";
|
|
4
|
+
import { printf, toText } from "../../fable-library.4.1.4/String.js";
|
|
5
|
+
|
|
6
|
+
export class TableBuilder {
|
|
7
|
+
constructor(name) {
|
|
8
|
+
this.name = name;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function TableBuilder_$reflection() {
|
|
13
|
+
return class_type("FsSpreadsheet.DSL.TableBuilder", void 0, TableBuilder);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function TableBuilder_$ctor_Z721C83C5(name) {
|
|
17
|
+
return new TableBuilder(name);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function TableBuilder_get_Empty() {
|
|
21
|
+
return SheetEntity$1_some_2B595(empty());
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function TableBuilder__get_Name(this$) {
|
|
25
|
+
return this$.name;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function TableBuilder__SignMessages_3F89FFFC(this$, messages) {
|
|
29
|
+
return map((m) => {
|
|
30
|
+
let clo_1;
|
|
31
|
+
return Message__MapText_11D407F6(m, (clo_1 = toText(printf("In Sheet %s: %s"))(this$.name), clo_1));
|
|
32
|
+
}, messages);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function TableBuilder__Run_15698F84(this$, children) {
|
|
36
|
+
switch (children.tag) {
|
|
37
|
+
case 1:
|
|
38
|
+
return new SheetEntity$1(1, [children.fields[0]]);
|
|
39
|
+
case 2:
|
|
40
|
+
return new SheetEntity$1(2, [children.fields[0]]);
|
|
41
|
+
default:
|
|
42
|
+
return new SheetEntity$1(0, [[this$.name, children.fields[0]], children.fields[1]]);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export function TableBuilder__Combine_Z280DF080(this$, wx1, wx2) {
|
|
47
|
+
let matchResult, l1, l2, messages1, messages2, messages2_1, messages1_1, f1, messages1_2, messages2_2, f2, messages1_3, messages2_3, messages1_4, messages2_4;
|
|
48
|
+
switch (wx1.tag) {
|
|
49
|
+
case 2: {
|
|
50
|
+
if (wx2.tag === 2) {
|
|
51
|
+
matchResult = 1;
|
|
52
|
+
messages2_1 = wx2.fields[0];
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
matchResult = 2;
|
|
56
|
+
messages1_1 = wx1.fields[0];
|
|
57
|
+
}
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
case 1: {
|
|
61
|
+
switch (wx2.tag) {
|
|
62
|
+
case 0: {
|
|
63
|
+
matchResult = 4;
|
|
64
|
+
f2 = wx2.fields[0];
|
|
65
|
+
messages1_3 = wx1.fields[0];
|
|
66
|
+
messages2_3 = wx2.fields[1];
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
case 1: {
|
|
70
|
+
matchResult = 5;
|
|
71
|
+
messages1_4 = wx1.fields[0];
|
|
72
|
+
messages2_4 = wx2.fields[0];
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
default: {
|
|
76
|
+
matchResult = 1;
|
|
77
|
+
messages2_1 = wx2.fields[0];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
default:
|
|
83
|
+
switch (wx2.tag) {
|
|
84
|
+
case 2: {
|
|
85
|
+
matchResult = 1;
|
|
86
|
+
messages2_1 = wx2.fields[0];
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
case 1: {
|
|
90
|
+
matchResult = 3;
|
|
91
|
+
f1 = wx1.fields[0];
|
|
92
|
+
messages1_2 = wx1.fields[1];
|
|
93
|
+
messages2_2 = wx2.fields[0];
|
|
94
|
+
break;
|
|
95
|
+
}
|
|
96
|
+
default: {
|
|
97
|
+
matchResult = 0;
|
|
98
|
+
l1 = wx1.fields[0];
|
|
99
|
+
l2 = wx2.fields[0];
|
|
100
|
+
messages1 = wx1.fields[1];
|
|
101
|
+
messages2 = wx2.fields[1];
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
switch (matchResult) {
|
|
106
|
+
case 0:
|
|
107
|
+
return new SheetEntity$1(0, [append(l1, l2), append(messages1, messages2)]);
|
|
108
|
+
case 1:
|
|
109
|
+
return new SheetEntity$1(2, [append(SheetEntity$1__get_Messages(wx1), messages2_1)]);
|
|
110
|
+
case 2:
|
|
111
|
+
return new SheetEntity$1(2, [append(messages1_1, SheetEntity$1__get_Messages(wx2))]);
|
|
112
|
+
case 3:
|
|
113
|
+
return new SheetEntity$1(0, [f1, append(messages1_2, messages2_2)]);
|
|
114
|
+
case 4:
|
|
115
|
+
return new SheetEntity$1(0, [f2, append(messages1_3, messages2_3)]);
|
|
116
|
+
default:
|
|
117
|
+
return new SheetEntity$1(1, [append(messages1_4, messages2_4)]);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|