@nfdi4plants/arctrl 1.1.0 → 2.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (377) hide show
  1. package/ARC.js +53 -35
  2. package/{Contracts/Contracts.ARCtrl.js → Contract/ARC.js} +4 -2
  3. package/Contract/ArcAssay.js +102 -0
  4. package/Contract/ArcInvestigation.js +78 -0
  5. package/Contract/ArcStudy.js +102 -0
  6. package/Contract/Contract.js +3 -3
  7. package/{Contracts/Contracts.Git.js → Contract/Git.js} +5 -5
  8. package/{ISA/ISA/ArcTypes → Core}/ArcTypes.js +307 -295
  9. package/Core/Comment.js +97 -0
  10. package/{ISA/ISA/JsonTypes → Core}/CommentList.js +12 -18
  11. package/Core/Conversion.js +1056 -0
  12. package/Core/Helper/Collections.js +318 -0
  13. package/Core/Helper/HashCodes.js +39 -0
  14. package/{ISA/ISA → Core/Helper}/Identifier.js +67 -2
  15. package/{ISA/ISA → Core/Helper}/Regex.js +3 -3
  16. package/{SemVer.js → Core/Helper/SemVer.js} +8 -8
  17. package/{ISA/ISA/ArcTypes → Core}/IdentifierSetters.js +1 -1
  18. package/Core/OntologyAnnotation.js +186 -0
  19. package/Core/OntologySourceReference.js +92 -0
  20. package/Core/Person.js +194 -0
  21. package/Core/Process/ColumnIndex.js +248 -0
  22. package/Core/Process/Component.js +188 -0
  23. package/{ISA/ISA/JsonTypes → Core/Process}/Data.js +8 -8
  24. package/{ISA/ISA/JsonTypes → Core/Process}/DataFile.js +3 -3
  25. package/Core/Process/Factor.js +109 -0
  26. package/{ISA/ISA/JsonTypes → Core/Process}/FactorValue.js +32 -13
  27. package/{ISA/ISA/JsonTypes → Core/Process}/Material.js +9 -9
  28. package/{ISA/ISA/JsonTypes → Core/Process}/MaterialAttribute.js +17 -17
  29. package/{ISA/ISA/JsonTypes → Core/Process}/MaterialAttributeValue.js +35 -16
  30. package/{ISA/ISA/JsonTypes → Core/Process}/MaterialType.js +3 -3
  31. package/{ISA/ISA/JsonTypes → Core/Process}/Process.js +46 -79
  32. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessInput.js +42 -42
  33. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessOutput.js +36 -36
  34. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessParameterValue.js +26 -7
  35. package/{ISA/ISA/JsonTypes → Core/Process}/ProcessSequence.js +21 -25
  36. package/{ISA/ISA/JsonTypes → Core/Process}/Protocol.js +26 -57
  37. package/{ISA/ISA/JsonTypes → Core/Process}/ProtocolParameter.js +10 -10
  38. package/{ISA/ISA/JsonTypes → Core/Process}/Sample.js +12 -12
  39. package/{ISA/ISA/JsonTypes → Core/Process}/Source.js +9 -9
  40. package/{ISA/ISA/JsonTypes → Core/Process}/Value.js +24 -31
  41. package/Core/Publication.js +116 -0
  42. package/{ISA/ISA/ArcTypes → Core/Table}/ArcTable.js +49 -155
  43. package/Core/Table/ArcTableAux.js +532 -0
  44. package/{ISA/ISA/ArcTypes → Core/Table}/ArcTables.js +20 -32
  45. package/{ISA/ISA/ArcTypes → Core/Table}/CompositeCell.js +19 -76
  46. package/{ISA/ISA/ArcTypes → Core/Table}/CompositeColumn.js +9 -8
  47. package/{ISA/ISA/ArcTypes → Core/Table}/CompositeHeader.js +14 -34
  48. package/{Templates → Core}/Template.js +16 -17
  49. package/Core/Templates.js +84 -0
  50. package/FileSystem/Commit.js +2 -2
  51. package/FileSystem/FileSystem.js +4 -4
  52. package/FileSystem/FileSystemTree.js +46 -8
  53. package/FileSystem/Path.js +10 -2
  54. package/Json/ARC.js +25 -0
  55. package/Json/Assay.js +202 -0
  56. package/Json/Comment.js +130 -0
  57. package/Json/ConverterOptions.js +18 -0
  58. package/Json/Decode.js +128 -0
  59. package/Json/Encode.js +45 -0
  60. package/Json/Investigation.js +220 -0
  61. package/Json/OntologyAnnotation.js +169 -0
  62. package/Json/OntologySourceReference.js +122 -0
  63. package/Json/Person.js +250 -0
  64. package/Json/Process/AssayMaterials.js +22 -0
  65. package/Json/Process/Component.js +79 -0
  66. package/Json/Process/Data.js +102 -0
  67. package/Json/Process/DataFile.js +81 -0
  68. package/Json/Process/Factor.js +48 -0
  69. package/Json/Process/FactorValue.js +53 -0
  70. package/Json/Process/Material.js +107 -0
  71. package/Json/Process/MaterialAttribute.js +45 -0
  72. package/Json/Process/MaterialAttributeValue.js +70 -0
  73. package/Json/Process/MaterialType.js +60 -0
  74. package/Json/Process/Process.js +107 -0
  75. package/Json/Process/ProcessInput.js +59 -0
  76. package/Json/Process/ProcessOutput.js +71 -0
  77. package/Json/Process/ProcessParameterValue.js +69 -0
  78. package/Json/Process/ProcessSequence.js +53 -0
  79. package/Json/Process/PropertyValue.js +82 -0
  80. package/Json/Process/Protocol.js +147 -0
  81. package/Json/Process/ProtocolParameter.js +45 -0
  82. package/Json/Process/Sample.js +134 -0
  83. package/Json/Process/Source.js +101 -0
  84. package/Json/Process/StudyMaterials.js +24 -0
  85. package/Json/Process/Value.js +42 -0
  86. package/Json/Publication.js +142 -0
  87. package/Json/StringTable.js +44 -0
  88. package/Json/Study.js +306 -0
  89. package/Json/Table/ArcTable.js +223 -0
  90. package/Json/Table/CellTable.js +40 -0
  91. package/Json/Table/CompositeCell.js +65 -0
  92. package/Json/Table/CompositeHeader.js +57 -0
  93. package/Json/Table/Compression.js +38 -0
  94. package/Json/Table/IOType.js +37 -0
  95. package/Json/Table/OATable.js +40 -0
  96. package/Json/Table/Templates.js +107 -0
  97. package/Json/context/rocrate/isa_assay_context.js +32 -0
  98. package/Json/context/rocrate/isa_comment_context.js +23 -0
  99. package/Json/context/rocrate/isa_component_context.js +24 -0
  100. package/Json/context/rocrate/isa_data_context.js +25 -0
  101. package/Json/context/rocrate/isa_factor_context.js +25 -0
  102. package/Json/context/rocrate/isa_factor_value_context.js +23 -0
  103. package/Json/context/rocrate/isa_investigation_context.js +33 -0
  104. package/Json/context/rocrate/isa_material_attribute_context.js +23 -0
  105. package/Json/context/rocrate/isa_material_attribute_value_context.js +23 -0
  106. package/Json/context/rocrate/isa_material_context.js +26 -0
  107. package/Json/context/rocrate/isa_ontology_annotation_context.js +23 -0
  108. package/Json/context/rocrate/isa_ontology_source_reference_context.js +26 -0
  109. package/Json/context/rocrate/isa_organization_context.js +22 -0
  110. package/Json/context/rocrate/isa_person_context.js +33 -0
  111. package/Json/context/rocrate/isa_process_context.js +29 -0
  112. package/Json/context/rocrate/isa_process_parameter_value_context.js +23 -0
  113. package/Json/context/rocrate/isa_protocol_context.js +28 -0
  114. package/Json/context/rocrate/isa_protocol_parameter_context.js +23 -0
  115. package/Json/context/rocrate/isa_publication_context.js +25 -0
  116. package/Json/context/rocrate/isa_sample_context.js +24 -0
  117. package/Json/context/rocrate/isa_source_context.js +25 -0
  118. package/Json/context/rocrate/isa_study_context.js +40 -0
  119. package/Json/context/rocrate/property_value_context.js +4 -0
  120. package/Json/context/rocrate/rocrate_context.js +23 -0
  121. package/Json.js +193 -0
  122. package/README.md +50 -12
  123. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/ArcTable.js +12 -12
  124. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/CompositeCell.js +8 -7
  125. package/Spreadsheet/AnnotationTable/CompositeColumn.js +59 -0
  126. package/{ISA/ISA.Spreadsheet → Spreadsheet}/AnnotationTable/CompositeHeader.js +10 -10
  127. package/{ISA/ISA.Spreadsheet → Spreadsheet}/ArcAssay.js +11 -11
  128. package/{ISA/ISA.Spreadsheet → Spreadsheet}/ArcInvestigation.js +34 -37
  129. package/{ISA/ISA.Spreadsheet → Spreadsheet}/ArcStudy.js +12 -12
  130. package/{ISA/ISA.Spreadsheet → Spreadsheet}/CollectionAux.js +8 -8
  131. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Assays.js +32 -32
  132. package/Spreadsheet/Metadata/Comment.js +71 -0
  133. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Contacts.js +28 -30
  134. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Conversions.js +22 -16
  135. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/DesignDescriptors.js +1 -1
  136. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Factors.js +23 -22
  137. package/Spreadsheet/Metadata/OntologyAnnotation.js +64 -0
  138. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/OntologySourceReference.js +22 -24
  139. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Protocols.js +17 -17
  140. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Publication.js +29 -31
  141. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/SparseTable.js +34 -28
  142. package/{ISA/ISA.Spreadsheet → Spreadsheet}/Metadata/Study.js +38 -40
  143. package/{Templates/Template.Spreadsheet.js → Spreadsheet/Template.js} +31 -31
  144. package/Template.Web.js +27 -0
  145. package/WebRequest/WebRequest.Node.js +15 -0
  146. package/WebRequest/WebRequest.js +10 -29
  147. package/Xlsx.js +85 -0
  148. package/fable_modules/Fable.Fetch.2.6.0/Fetch.fs.js +7 -7
  149. package/fable_modules/Fable.Promise.2.2.2/Promise.fs.js +3 -3
  150. package/fable_modules/Fable.SimpleHttp.3.5.0/Http.fs.js +8 -8
  151. package/fable_modules/Fable.SimpleHttp.3.5.0/Types.fs.js +2 -2
  152. package/fable_modules/FsSpreadsheet.5.1.3/Cells/FsCell.fs.js +14 -14
  153. package/fable_modules/FsSpreadsheet.5.1.3/Cells/FsCellsCollection.fs.js +6 -6
  154. package/fable_modules/FsSpreadsheet.5.1.3/DSL/CellBuilder.fs.js +4 -4
  155. package/fable_modules/FsSpreadsheet.5.1.3/DSL/ColumnBuilder.fs.js +3 -3
  156. package/fable_modules/FsSpreadsheet.5.1.3/DSL/DSL.fs.js +2 -2
  157. package/fable_modules/FsSpreadsheet.5.1.3/DSL/Expression.fs.js +1 -1
  158. package/fable_modules/FsSpreadsheet.5.1.3/DSL/RowBuilder.fs.js +3 -3
  159. package/fable_modules/FsSpreadsheet.5.1.3/DSL/SheetBuilder.fs.js +3 -3
  160. package/fable_modules/FsSpreadsheet.5.1.3/DSL/TableBuilder.fs.js +3 -3
  161. package/fable_modules/FsSpreadsheet.5.1.3/DSL/Transform.fs.js +6 -6
  162. package/fable_modules/FsSpreadsheet.5.1.3/DSL/Types.fs.js +4 -4
  163. package/fable_modules/FsSpreadsheet.5.1.3/DSL/WorkbookBuilder.fs.js +3 -3
  164. package/fable_modules/FsSpreadsheet.5.1.3/FsAddress.fs.js +8 -8
  165. package/fable_modules/FsSpreadsheet.5.1.3/FsColumn.fs.js +3 -3
  166. package/fable_modules/FsSpreadsheet.5.1.3/FsRow.fs.js +3 -3
  167. package/fable_modules/FsSpreadsheet.5.1.3/FsWorkbook.fs.js +6 -6
  168. package/fable_modules/FsSpreadsheet.5.1.3/FsWorksheet.fs.js +9 -9
  169. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRange.fs.js +3 -3
  170. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeAddress.fs.js +4 -3
  171. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeBase.fs.js +3 -3
  172. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeColumn.fs.js +3 -3
  173. package/fable_modules/FsSpreadsheet.5.1.3/Ranges/FsRangeRow.fs.js +1 -1
  174. package/fable_modules/FsSpreadsheet.5.1.3/SheetBuilder.fs.js +8 -8
  175. package/fable_modules/FsSpreadsheet.5.1.3/Tables/FsTable.fs.js +7 -7
  176. package/fable_modules/FsSpreadsheet.5.1.3/Tables/FsTableField.fs.js +4 -4
  177. package/fable_modules/FsSpreadsheet.5.1.3/Tables/FsTableRow.fs.js +1 -1
  178. package/fable_modules/Thoth.Json.Core.0.2.1/Decode.fs +1390 -0
  179. package/fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js +1230 -0
  180. package/fable_modules/Thoth.Json.Core.0.2.1/Encode.fs +233 -0
  181. package/fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js +113 -0
  182. package/fable_modules/Thoth.Json.Core.0.2.1/Thoth.Json.Core.fableproj +28 -0
  183. package/fable_modules/Thoth.Json.Core.0.2.1/Types.fs +76 -0
  184. package/fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js +33 -0
  185. package/fable_modules/Thoth.Json.Core.0.2.1/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  186. package/fable_modules/{Thoth.Json.10.1.0/obj/Release/netstandard2.0/Thoth.Json.AssemblyInfo.fs → Thoth.Json.Core.0.2.1/obj/Debug/netstandard2.0/Thoth.Json.Core.AssemblyInfo.fs} +8 -7
  187. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs +79 -0
  188. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js +85 -0
  189. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs +32 -0
  190. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js +45 -0
  191. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Thoth.Json.JavaScript.fableproj +21 -0
  192. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  193. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Debug/netstandard2.0/Thoth.Json.JavaScript.AssemblyInfo.fs +18 -0
  194. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  195. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Release/netstandard2.0/Thoth.Json.JavaScript.AssemblyInfo.fs +19 -0
  196. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Array.d.ts +4 -1
  197. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Array.js +124 -86
  198. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Boolean.js +2 -2
  199. package/fable_modules/fable-library-js.4.16.0/CHANGELOG.md +47 -0
  200. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Choice.d.ts +0 -17
  201. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Choice.js +0 -43
  202. package/fable_modules/fable-library-js.4.16.0/ConditionalWeakTable.d.ts +9 -0
  203. package/fable_modules/fable-library-js.4.16.0/ConditionalWeakTable.js +21 -0
  204. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Date.js +340 -42
  205. package/fable_modules/fable-library-js.4.16.0/FSharp.Core.CompilerServices.d.ts +12 -0
  206. package/fable_modules/fable-library-js.4.16.0/FSharp.Core.CompilerServices.js +27 -0
  207. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/List.js +3 -3
  208. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Map.js +3 -3
  209. package/fable_modules/fable-library-js.4.16.0/MapUtil.d.ts +12 -0
  210. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MapUtil.js +15 -0
  211. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MutableMap.js +2 -1
  212. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MutableSet.js +2 -1
  213. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Random.js +7 -7
  214. package/fable_modules/fable-library-js.4.16.0/Result.d.ts +37 -0
  215. package/fable_modules/fable-library-js.4.16.0/Result.js +165 -0
  216. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Set.js +2 -2
  217. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/String.d.ts +1 -0
  218. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/String.js +8 -5
  219. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/System.Collections.Generic.d.ts +15 -7
  220. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/System.Collections.Generic.js +46 -36
  221. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/System.Text.d.ts +9 -1
  222. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/System.Text.js +60 -8
  223. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Util.d.ts +6 -3
  224. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Util.js +2 -13
  225. package/fable_modules/fable-library-js.4.16.0/big.d.ts +338 -0
  226. package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/package.json +4 -3
  227. package/fable_modules/project_cracked.json +1 -1
  228. package/index.js +14 -12
  229. package/package.json +1 -1
  230. package/Contracts/Contracts.ArcTypes.js +0 -268
  231. package/FileSystemTree.js +0 -51
  232. package/ISA/ISA/ArcTypes/ArcTableAux.js +0 -1155
  233. package/ISA/ISA/ArcTypes/CompositeRow.js +0 -111
  234. package/ISA/ISA/Builder/Types.js +0 -243
  235. package/ISA/ISA/Fable.js +0 -123
  236. package/ISA/ISA/Helper.js +0 -503
  237. package/ISA/ISA/JsonTypes/Assay.js +0 -620
  238. package/ISA/ISA/JsonTypes/AssayMaterials.js +0 -39
  239. package/ISA/ISA/JsonTypes/ColumnIndex.js +0 -246
  240. package/ISA/ISA/JsonTypes/Comment.js +0 -58
  241. package/ISA/ISA/JsonTypes/Component.js +0 -165
  242. package/ISA/ISA/JsonTypes/Factor.js +0 -128
  243. package/ISA/ISA/JsonTypes/Investigation.js +0 -204
  244. package/ISA/ISA/JsonTypes/OntologyAnnotation.js +0 -196
  245. package/ISA/ISA/JsonTypes/OntologySourceReference.js +0 -85
  246. package/ISA/ISA/JsonTypes/Person.js +0 -137
  247. package/ISA/ISA/JsonTypes/Publication.js +0 -105
  248. package/ISA/ISA/JsonTypes/Study.js +0 -942
  249. package/ISA/ISA/JsonTypes/StudyMaterials.js +0 -45
  250. package/ISA/ISA/UIHelper.js +0 -19
  251. package/ISA/ISA.Json/ArcTypes/ArcAssay.js +0 -282
  252. package/ISA/ISA.Json/ArcTypes/ArcInvestigation.js +0 -93
  253. package/ISA/ISA.Json/ArcTypes/ArcStudy.js +0 -170
  254. package/ISA/ISA.Json/ArcTypes/ArcTable.js +0 -178
  255. package/ISA/ISA.Json/ArcTypes/CellTable.js +0 -46
  256. package/ISA/ISA.Json/ArcTypes/CompositeCell.js +0 -77
  257. package/ISA/ISA.Json/ArcTypes/CompositeHeader.js +0 -82
  258. package/ISA/ISA.Json/ArcTypes/IOType.js +0 -35
  259. package/ISA/ISA.Json/ArcTypes/OATable.js +0 -48
  260. package/ISA/ISA.Json/Assay.js +0 -105
  261. package/ISA/ISA.Json/Comment.js +0 -84
  262. package/ISA/ISA.Json/ConverterOptions.js +0 -33
  263. package/ISA/ISA.Json/Data.js +0 -271
  264. package/ISA/ISA.Json/Decode.js +0 -46
  265. package/ISA/ISA.Json/Factor.js +0 -194
  266. package/ISA/ISA.Json/GEncode.js +0 -15
  267. package/ISA/ISA.Json/Investigation.js +0 -114
  268. package/ISA/ISA.Json/Material.js +0 -233
  269. package/ISA/ISA.Json/Ontology.js +0 -223
  270. package/ISA/ISA.Json/Person.js +0 -204
  271. package/ISA/ISA.Json/Process.js +0 -291
  272. package/ISA/ISA.Json/Protocol.js +0 -242
  273. package/ISA/ISA.Json/Publication.js +0 -92
  274. package/ISA/ISA.Json/StringTable.js +0 -43
  275. package/ISA/ISA.Json/Study.js +0 -212
  276. package/ISA/ISA.Json/Validation/Fable.js +0 -69
  277. package/ISA/ISA.Json/Validation/JsonSchemaValidation.js +0 -88
  278. package/ISA/ISA.Json/Validation/ValidationResult.js +0 -45
  279. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeColumn.js +0 -59
  280. package/ISA/ISA.Spreadsheet/Metadata/Comment.js +0 -60
  281. package/ISA/ISA.Spreadsheet/Metadata/OntologyAnnotation.js +0 -65
  282. package/Path.js +0 -10
  283. package/Templates/Template.Json.js +0 -83
  284. package/Templates/Template.Web.js +0 -27
  285. package/Templates/Templates.js +0 -82
  286. package/fable_modules/Thoth.Json.10.1.0/Decode.fs +0 -1366
  287. package/fable_modules/Thoth.Json.10.1.0/Decode.fs.js +0 -1798
  288. package/fable_modules/Thoth.Json.10.1.0/Encode.fs +0 -621
  289. package/fable_modules/Thoth.Json.10.1.0/Encode.fs.js +0 -472
  290. package/fable_modules/Thoth.Json.10.1.0/Extra.fs +0 -31
  291. package/fable_modules/Thoth.Json.10.1.0/Extra.fs.js +0 -8
  292. package/fable_modules/Thoth.Json.10.1.0/Thoth.Json.fableproj +0 -30
  293. package/fable_modules/Thoth.Json.10.1.0/Types.fs +0 -59
  294. package/fable_modules/Thoth.Json.10.1.0/Types.fs.js +0 -98
  295. package/fable_modules/Thoth.Json.10.1.0/package.json +0 -5
  296. package/fable_modules/fable-library.4.5.0/CHANGELOG.md +0 -11
  297. package/fable_modules/fable-library.4.5.0/MapUtil.d.ts +0 -10
  298. /package/{ISA/ISA/JsonTypes → Core}/URI.js +0 -0
  299. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Async.d.ts +0 -0
  300. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Async.js +0 -0
  301. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/AsyncBuilder.d.ts +0 -0
  302. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/AsyncBuilder.js +0 -0
  303. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/BigInt.d.ts +0 -0
  304. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/BigInt.js +0 -0
  305. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/BitConverter.d.ts +0 -0
  306. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/BitConverter.js +0 -0
  307. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Boolean.d.ts +0 -0
  308. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Char.d.ts +0 -0
  309. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Char.js +0 -0
  310. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Date.d.ts +0 -0
  311. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/DateOffset.d.ts +0 -0
  312. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/DateOffset.js +0 -0
  313. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/DateOnly.d.ts +0 -0
  314. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/DateOnly.js +0 -0
  315. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Decimal.d.ts +0 -0
  316. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Decimal.js +0 -0
  317. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Double.d.ts +0 -0
  318. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Double.js +0 -0
  319. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Encoding.d.ts +0 -0
  320. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Encoding.js +0 -0
  321. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Event.d.ts +0 -0
  322. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Event.js +0 -0
  323. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/FSharp.Collections.d.ts +0 -0
  324. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/FSharp.Collections.js +0 -0
  325. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/FSharp.Core.d.ts +0 -0
  326. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/FSharp.Core.js +0 -0
  327. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Global.d.ts +0 -0
  328. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Global.js +0 -0
  329. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Guid.d.ts +0 -0
  330. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Guid.js +0 -0
  331. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Int32.d.ts +0 -0
  332. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Int32.js +0 -0
  333. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/List.d.ts +0 -0
  334. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Long.d.ts +0 -0
  335. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Long.js +0 -0
  336. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MailboxProcessor.d.ts +0 -0
  337. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MailboxProcessor.js +0 -0
  338. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Map.d.ts +0 -0
  339. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MutableMap.d.ts +0 -0
  340. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/MutableSet.d.ts +0 -0
  341. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Native.d.ts +0 -0
  342. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Native.js +0 -0
  343. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Numeric.d.ts +0 -0
  344. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Numeric.js +0 -0
  345. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Observable.d.ts +0 -0
  346. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Observable.js +0 -0
  347. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Option.d.ts +0 -0
  348. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Option.js +0 -0
  349. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/README.md +0 -0
  350. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Random.d.ts +0 -0
  351. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Range.d.ts +0 -0
  352. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Range.js +0 -0
  353. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Reflection.d.ts +0 -0
  354. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Reflection.js +0 -0
  355. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/RegExp.d.ts +0 -0
  356. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/RegExp.js +0 -0
  357. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Seq.d.ts +0 -0
  358. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Seq.js +0 -0
  359. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Seq2.d.ts +0 -0
  360. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Seq2.js +0 -0
  361. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Set.d.ts +0 -0
  362. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/SystemException.d.ts +0 -0
  363. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/SystemException.js +0 -0
  364. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/TimeOnly.d.ts +0 -0
  365. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/TimeOnly.js +0 -0
  366. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/TimeSpan.d.ts +0 -0
  367. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/TimeSpan.js +0 -0
  368. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Timer.d.ts +0 -0
  369. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Timer.js +0 -0
  370. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Types.d.ts +0 -0
  371. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Types.js +0 -0
  372. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Unicode.13.0.0.d.ts +0 -0
  373. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Unicode.13.0.0.js +0 -0
  374. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Uri.d.ts +0 -0
  375. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/Uri.js +0 -0
  376. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/lib/big.d.ts +0 -0
  377. /package/fable_modules/{fable-library.4.5.0 → fable-library-js.4.16.0}/lib/big.js +0 -0
@@ -0,0 +1,223 @@
1
+ import { toArray, collect, empty, map, singleton, append, delay, toList } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
2
+ import { ErrorReason$1, Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
3
+ import { tuple2, map as map_1, list } from "../../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
4
+ import { CompositeHeader_decoder, CompositeHeader_encoder } from "./CompositeHeader.js";
5
+ import { CompositeCell_decoder, CompositeCell_encoder } from "./CompositeCell.js";
6
+ import { empty as empty_2, ofSeq } from "../../fable_modules/fable-library-js.4.16.0/Map.js";
7
+ import { safeHash, int32ToString, equals, arrayHash, equalArrays, compareArrays } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
8
+ import { Helpers_prependPath, array as array_1, string, int, tuple2 as tuple2_1, map$0027, list as list_1, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
9
+ import { unwrap, defaultArg } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
10
+ import { empty as empty_1 } from "../../fable_modules/fable-library-js.4.16.0/List.js";
11
+ import { Dictionary } from "../../fable_modules/fable-library-js.4.16.0/MutableMap.js";
12
+ import { ArcTable } from "../../Core/Table/ArcTable.js";
13
+ import { arrayFromMap, encoder, decoder as decoder_4, decodeCell, encodeCell } from "./CellTable.js";
14
+ import { addToDict, getItemFromDict } from "../../fable_modules/fable-library-js.4.16.0/MapUtil.js";
15
+ import { rangeDouble } from "../../fable_modules/fable-library-js.4.16.0/Range.js";
16
+ import { FSharpResult$2 } from "../../fable_modules/fable-library-js.4.16.0/Result.js";
17
+ import { fill, setItem, fold, iterateIndexed } from "../../fable_modules/fable-library-js.4.16.0/Array.js";
18
+ import { arrayFromMap as arrayFromMap_2, encoder as encoder_2, decoder as decoder_2, decodeString, encodeString } from "../StringTable.js";
19
+ import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
20
+ import { printf, toText } from "../../fable_modules/fable-library-js.4.16.0/String.js";
21
+ import { toString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
22
+ import { defaultSpaces } from "../Encode.js";
23
+ import { arrayFromMap as arrayFromMap_1, encoder as encoder_1, decoder as decoder_3 } from "./OATable.js";
24
+
25
+ export function ArcTable_encoder(table) {
26
+ return new Json(5, [toList(delay(() => append(singleton(["name", new Json(0, [table.Name])]), delay(() => append((table.Headers.length !== 0) ? singleton(["header", list(toList(delay(() => map(CompositeHeader_encoder, table.Headers))))]) : empty(), delay(() => ((table.Values.size !== 0) ? singleton(["values", map_1((tupledArg) => tuple2((value) => (new Json(7, [value >>> 0])), (value_2) => (new Json(7, [value_2 >>> 0])), tupledArg[0], tupledArg[1]), CompositeCell_encoder, ofSeq(toList(delay(() => collect((matchValue) => {
27
+ const activePatternResult = matchValue;
28
+ return singleton([activePatternResult[0], activePatternResult[1]]);
29
+ }, table.Values))), {
30
+ Compare: compareArrays,
31
+ }))]) : empty())))))))]);
32
+ }
33
+
34
+ export const ArcTable_decoder = object((get$) => {
35
+ let arg_1, objectArg, arg_3, objectArg_1, objectArg_2;
36
+ let decodedHeader;
37
+ const collection = defaultArg((arg_1 = list_1(CompositeHeader_decoder), (objectArg = get$.Optional, objectArg.Field("header", arg_1))), empty_1());
38
+ decodedHeader = Array.from(collection);
39
+ const decodedValues = new Dictionary(defaultArg((arg_3 = map$0027(tuple2_1(int, int), CompositeCell_decoder), (objectArg_1 = get$.Optional, objectArg_1.Field("values", arg_3))), empty_2({
40
+ Compare: compareArrays,
41
+ })), {
42
+ Equals: equalArrays,
43
+ GetHashCode: arrayHash,
44
+ });
45
+ return ArcTable.create((objectArg_2 = get$.Required, objectArg_2.Field("name", string)), decodedHeader, decodedValues);
46
+ });
47
+
48
+ export function ArcTable_encoderCompressedColumn(columnIndex, rowCount, cellTable, table) {
49
+ if (table.Headers[columnIndex].IsIOType ? true : (rowCount < 100)) {
50
+ return new Json(6, [toArray(delay(() => map((r) => encodeCell(cellTable, getItemFromDict(table.Values, [columnIndex, r])), rangeDouble(0, 1, rowCount - 1))))]);
51
+ }
52
+ else {
53
+ let current = getItemFromDict(table.Values, [columnIndex, 0]);
54
+ let from = 0;
55
+ return new Json(6, [toArray(delay(() => append(collect((i) => {
56
+ let value, value_1;
57
+ const next = getItemFromDict(table.Values, [columnIndex, i]);
58
+ return !equals(next, current) ? append(singleton(new Json(5, [[["f", (value = (from | 0), new Json(7, [value >>> 0]))], ["t", (value_1 = ((i - 1) | 0), new Json(7, [value_1 >>> 0]))], ["v", encodeCell(cellTable, current)]]])), delay(() => {
59
+ current = next;
60
+ from = (i | 0);
61
+ return empty();
62
+ })) : empty();
63
+ }, rangeDouble(1, 1, rowCount - 1)), delay(() => {
64
+ let value_2, value_3;
65
+ return singleton(new Json(5, [[["f", (value_2 = (from | 0), new Json(7, [value_2 >>> 0]))], ["t", (value_3 = ((rowCount - 1) | 0), new Json(7, [value_3 >>> 0]))], ["v", encodeCell(cellTable, current)]]]));
66
+ }))))]);
67
+ }
68
+ }
69
+
70
+ export function ArcTable_decoderCompressedColumn(cellTable, table, columnIndex) {
71
+ return {
72
+ Decode(helper, column) {
73
+ const matchValue = array_1(decodeCell(cellTable)).Decode(helper, column);
74
+ if (matchValue.tag === 1) {
75
+ const rangeDecoder = object((get$) => {
76
+ let from;
77
+ const objectArg = get$.Required;
78
+ from = objectArg.Field("f", int);
79
+ let to_;
80
+ const objectArg_1 = get$.Required;
81
+ to_ = objectArg_1.Field("t", int);
82
+ let value;
83
+ const arg_5 = decodeCell(cellTable);
84
+ const objectArg_2 = get$.Required;
85
+ value = objectArg_2.Field("v", arg_5);
86
+ for (let i = from; i <= to_; i++) {
87
+ addToDict(table.Values, [columnIndex, i], value);
88
+ }
89
+ });
90
+ const matchValue_1 = array_1(rangeDecoder).Decode(helper, column);
91
+ return (matchValue_1.tag === 1) ? (new FSharpResult$2(1, [matchValue_1.fields[0]])) : (new FSharpResult$2(0, [void 0]));
92
+ }
93
+ else {
94
+ iterateIndexed((r, cell) => {
95
+ addToDict(table.Values, [columnIndex, r], cell);
96
+ }, matchValue.fields[0]);
97
+ return new FSharpResult$2(0, [void 0]);
98
+ }
99
+ },
100
+ };
101
+ }
102
+
103
+ export function ArcTable_arrayi(decoderi) {
104
+ return {
105
+ Decode(helpers, value) {
106
+ if (helpers.isArray(value)) {
107
+ let i = -1;
108
+ const tokens = helpers.asArray(value);
109
+ return fold((acc, value_1) => {
110
+ let tupledArg;
111
+ i = ((i + 1) | 0);
112
+ if (acc.tag === 0) {
113
+ const acc_1 = acc.fields[0];
114
+ const matchValue = decoderi(i).Decode(helpers, value_1);
115
+ if (matchValue.tag === 0) {
116
+ setItem(acc_1, i, matchValue.fields[0]);
117
+ return new FSharpResult$2(0, [acc_1]);
118
+ }
119
+ else {
120
+ return new FSharpResult$2(1, [(tupledArg = matchValue.fields[0], Helpers_prependPath((".[" + int32ToString(i)) + "]", tupledArg[0], tupledArg[1]))]);
121
+ }
122
+ }
123
+ else {
124
+ return acc;
125
+ }
126
+ }, new FSharpResult$2(0, [fill(new Array(tokens.length), 0, tokens.length, null)]), tokens);
127
+ }
128
+ else {
129
+ return new FSharpResult$2(1, [["", new ErrorReason$1(0, ["an array", value])]]);
130
+ }
131
+ },
132
+ };
133
+ }
134
+
135
+ export function ArcTable_encoderCompressed(stringTable, oaTable, cellTable, table) {
136
+ return new Json(5, [toList(delay(() => append(singleton(["n", encodeString(stringTable, table.Name)]), delay(() => append((table.Headers.length !== 0) ? singleton(["h", list(toList(delay(() => map(CompositeHeader_encoder, table.Headers))))]) : empty(), delay(() => {
137
+ if (table.Values.size !== 0) {
138
+ const rowCount = table.RowCount | 0;
139
+ return singleton(["c", new Json(6, [toArray(delay(() => map((c) => ArcTable_encoderCompressedColumn(c, rowCount, cellTable, table), rangeDouble(0, 1, table.ColumnCount - 1))))])]);
140
+ }
141
+ else {
142
+ return empty();
143
+ }
144
+ }))))))]);
145
+ }
146
+
147
+ export function ArcTable_decoderCompressed(stringTable, oaTable, cellTable) {
148
+ return object((get$) => {
149
+ let arg_1, objectArg, arg_3, objectArg_1, arg_5, objectArg_2;
150
+ let decodedHeader;
151
+ const collection = defaultArg((arg_1 = list_1(CompositeHeader_decoder), (objectArg = get$.Optional, objectArg.Field("h", arg_1))), empty_1());
152
+ decodedHeader = Array.from(collection);
153
+ const table = ArcTable.create((arg_3 = decodeString(stringTable), (objectArg_1 = get$.Required, objectArg_1.Field("n", arg_3))), decodedHeader, new Dictionary([], {
154
+ Equals: equalArrays,
155
+ GetHashCode: arrayHash,
156
+ }));
157
+ (arg_5 = ArcTable_arrayi((columnIndex) => ArcTable_decoderCompressedColumn(cellTable, table, columnIndex)), (objectArg_2 = get$.Optional, objectArg_2.Field("c", arg_5)));
158
+ return table;
159
+ });
160
+ }
161
+
162
+ export function ARCtrl_ArcTable__ArcTable_fromJsonString_Static_Z721C83C5(s) {
163
+ const matchValue = fromString(ArcTable_decoder, s);
164
+ if (matchValue.tag === 1) {
165
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
166
+ }
167
+ else {
168
+ return matchValue.fields[0];
169
+ }
170
+ }
171
+
172
+ export function ARCtrl_ArcTable__ArcTable_toJsonString_Static_71136F3F(spaces) {
173
+ return (obj) => {
174
+ const value = ArcTable_encoder(obj);
175
+ return toString(defaultSpaces(spaces), value);
176
+ };
177
+ }
178
+
179
+ export function ARCtrl_ArcTable__ArcTable_ToJsonString_71136F3F(this$, spaces) {
180
+ return ARCtrl_ArcTable__ArcTable_toJsonString_Static_71136F3F(unwrap(spaces))(this$);
181
+ }
182
+
183
+ export function ARCtrl_ArcTable__ArcTable_fromCompressedJsonString_Static_Z721C83C5(jsonString) {
184
+ const matchValue = fromString(object((get$) => {
185
+ let arg_5, objectArg_2;
186
+ let stringTable;
187
+ const objectArg = get$.Required;
188
+ stringTable = objectArg.Field("stringTable", decoder_2);
189
+ let oaTable;
190
+ const arg_3 = decoder_3(stringTable);
191
+ const objectArg_1 = get$.Required;
192
+ oaTable = objectArg_1.Field("oaTable", arg_3);
193
+ const arg_7 = ArcTable_decoderCompressed(stringTable, oaTable, (arg_5 = decoder_4(stringTable, oaTable), (objectArg_2 = get$.Required, objectArg_2.Field("cellTable", arg_5))));
194
+ const objectArg_3 = get$.Required;
195
+ return objectArg_3.Field("table", arg_7);
196
+ }), jsonString);
197
+ if (matchValue.tag === 1) {
198
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
199
+ }
200
+ else {
201
+ return matchValue.fields[0];
202
+ }
203
+ }
204
+
205
+ export function ARCtrl_ArcTable__ArcTable_ToCompressedJsonString_71136F3F(this$, spaces) {
206
+ const spaces_1 = defaultSpaces(spaces) | 0;
207
+ const stringTable = new Map([]);
208
+ const oaTable = new Dictionary([], {
209
+ Equals: equals,
210
+ GetHashCode: safeHash,
211
+ });
212
+ const cellTable = new Dictionary([], {
213
+ Equals: equals,
214
+ GetHashCode: safeHash,
215
+ });
216
+ const arcTable = ArcTable_encoderCompressed(stringTable, oaTable, cellTable, this$);
217
+ return toString(spaces_1, new Json(5, [[["cellTable", encoder(stringTable, oaTable, arrayFromMap(cellTable))], ["oaTable", encoder_1(stringTable, arrayFromMap_1(oaTable))], ["stringTable", encoder_2(arrayFromMap_2(stringTable))], ["table", arcTable]]]));
218
+ }
219
+
220
+ export function ARCtrl_ArcTable__ArcTable_toCompressedJsonString_Static_71136F3F(spaces) {
221
+ return (obj) => ARCtrl_ArcTable__ArcTable_ToCompressedJsonString_71136F3F(obj, unwrap(spaces));
222
+ }
223
+
@@ -0,0 +1,40 @@
1
+ import { sortBy, map, toArray } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
2
+ import { comparePrimitives } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { item, map as map_1 } from "../../fable_modules/fable-library-js.4.16.0/Array.js";
4
+ import { CompositeCell_decoderCompressed, CompositeCell_encoderCompressed } from "./CompositeCell.js";
5
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
6
+ import { int, object, array as array_1 } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
7
+ import { Dictionary_tryFind } from "../../Core/Helper/Collections.js";
8
+ import { addToDict } from "../../fable_modules/fable-library-js.4.16.0/MapUtil.js";
9
+
10
+ export function arrayFromMap(otm) {
11
+ return toArray(map((kv_1) => kv_1[0], sortBy((kv) => kv[1], otm, {
12
+ Compare: comparePrimitives,
13
+ })));
14
+ }
15
+
16
+ export function encoder(stringTable, oaTable, ot) {
17
+ return new Json(6, [map_1((cc) => CompositeCell_encoderCompressed(stringTable, oaTable, cc), ot)]);
18
+ }
19
+
20
+ export function decoder(stringTable, oaTable) {
21
+ return array_1(CompositeCell_decoderCompressed(stringTable, oaTable));
22
+ }
23
+
24
+ export function encodeCell(otm, cc) {
25
+ const matchValue = Dictionary_tryFind(cc, otm);
26
+ if (matchValue == null) {
27
+ const i_1 = otm.size | 0;
28
+ addToDict(otm, cc, i_1);
29
+ return new Json(7, [i_1 >>> 0]);
30
+ }
31
+ else {
32
+ const i = matchValue | 0;
33
+ return new Json(7, [i >>> 0]);
34
+ }
35
+ }
36
+
37
+ export function decodeCell(ot) {
38
+ return object((get$) => item(get$.Required.Raw(int), ot));
39
+ }
40
+
@@ -0,0 +1,65 @@
1
+ import { OntologyAnnotation_decoder, OntologyAnnotation_encoder } from "../OntologyAnnotation.js";
2
+ import { ofArray, singleton } from "../../fable_modules/fable-library-js.4.16.0/List.js";
3
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
4
+ import { list } from "../../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
5
+ import { index, string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
6
+ import { CompositeCell } from "../../Core/Table/CompositeCell.js";
7
+ import { toText, printf, toFail } from "../../fable_modules/fable-library-js.4.16.0/String.js";
8
+ import { decodeOA, encodeOA } from "./OATable.js";
9
+ import { decodeString, encodeString } from "../StringTable.js";
10
+ import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
11
+ import { toString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
12
+ import { defaultSpaces } from "../Encode.js";
13
+ import { unwrap } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
14
+
15
+ export function CompositeCell_encoder(cc) {
16
+ 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
+ return new Json(5, [[["celltype", new Json(0, [patternInput[0]])], ["values", list(patternInput[1])]]]);
19
+ }
20
+
21
+ 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 matchValue;
24
+ const objectArg = get$.Required;
25
+ 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
+ });
28
+
29
+ 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
+ return new Json(5, [[["t", encodeString(stringTable, patternInput[0])], ["v", list(patternInput[1])]]]);
32
+ }
33
+
34
+ export function CompositeCell_decoderCompressed(stringTable, oaTable) {
35
+ return object((get$) => {
36
+ let arg_3, objectArg_1, arg_5, objectArg_2, arg_7, objectArg_3, arg_9, objectArg_4;
37
+ let matchValue;
38
+ const arg_1 = decodeString(stringTable);
39
+ const objectArg = get$.Required;
40
+ 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
+ });
43
+ }
44
+
45
+ export function ARCtrl_CompositeCell__CompositeCell_fromJsonString_Static_Z721C83C5(s) {
46
+ const matchValue = fromString(CompositeCell_decoder, s);
47
+ if (matchValue.tag === 1) {
48
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
49
+ }
50
+ else {
51
+ return matchValue.fields[0];
52
+ }
53
+ }
54
+
55
+ export function ARCtrl_CompositeCell__CompositeCell_toJsonString_Static_71136F3F(spaces) {
56
+ return (obj) => {
57
+ const value = CompositeCell_encoder(obj);
58
+ return toString(defaultSpaces(spaces), value);
59
+ };
60
+ }
61
+
62
+ export function ARCtrl_CompositeCell__CompositeCell_ToJsonString_71136F3F(this$, spaces) {
63
+ return ARCtrl_CompositeCell__CompositeCell_toJsonString_Static_71136F3F(unwrap(spaces))(this$);
64
+ }
65
+
@@ -0,0 +1,57 @@
1
+ import { OntologyAnnotation_decoder, OntologyAnnotation_encoder } from "../OntologyAnnotation.js";
2
+ import { empty, singleton } from "../../fable_modules/fable-library-js.4.16.0/List.js";
3
+ import { IOType_decoder, IOType_encoder } from "./IOType.js";
4
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
5
+ import { list } from "../../fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js";
6
+ import { index, string, object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
7
+ import { CompositeHeader } from "../../Core/Table/CompositeHeader.js";
8
+ import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
9
+ import { printf, toText } from "../../fable_modules/fable-library-js.4.16.0/String.js";
10
+ import { toString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
11
+ import { defaultSpaces } from "../Encode.js";
12
+ import { unwrap } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
13
+
14
+ export function CompositeHeader_encoder(ch) {
15
+ const oaToJsonString = OntologyAnnotation_encoder;
16
+ const patternInput = (ch.tag === 3) ? ["Parameter", singleton(oaToJsonString(ch.fields[0]))] : ((ch.tag === 2) ? ["Factor", singleton(oaToJsonString(ch.fields[0]))] : ((ch.tag === 1) ? ["Characteristic", singleton(oaToJsonString(ch.fields[0]))] : ((ch.tag === 0) ? ["Component", singleton(oaToJsonString(ch.fields[0]))] : ((ch.tag === 4) ? ["ProtocolType", empty()] : ((ch.tag === 8) ? ["ProtocolREF", empty()] : ((ch.tag === 5) ? ["ProtocolDescription", empty()] : ((ch.tag === 6) ? ["ProtocolUri", empty()] : ((ch.tag === 7) ? ["ProtocolVersion", empty()] : ((ch.tag === 9) ? ["Performer", empty()] : ((ch.tag === 10) ? ["Date", empty()] : ((ch.tag === 11) ? ["Input", singleton(IOType_encoder(ch.fields[0]))] : ((ch.tag === 12) ? ["Output", singleton(IOType_encoder(ch.fields[0]))] : [ch.fields[0], empty()]))))))))))));
17
+ return new Json(5, [[["headertype", new Json(0, [patternInput[0]])], ["values", list(patternInput[1])]]]);
18
+ }
19
+
20
+ export const CompositeHeader_decoder = object((get$) => {
21
+ let headerType;
22
+ const objectArg = get$.Required;
23
+ headerType = objectArg.Field("headertype", string);
24
+ const oa = () => {
25
+ const arg_3 = index(0, OntologyAnnotation_decoder);
26
+ const objectArg_1 = get$.Required;
27
+ return objectArg_1.Field("values", arg_3);
28
+ };
29
+ const io = () => {
30
+ const arg_5 = index(0, IOType_decoder);
31
+ const objectArg_2 = get$.Required;
32
+ return objectArg_2.Field("values", arg_5);
33
+ };
34
+ return (headerType === "Characteristic") ? (new CompositeHeader(1, [oa()])) : ((headerType === "Parameter") ? (new CompositeHeader(3, [oa()])) : ((headerType === "Component") ? (new CompositeHeader(0, [oa()])) : ((headerType === "Factor") ? (new CompositeHeader(2, [oa()])) : ((headerType === "Input") ? (new CompositeHeader(11, [io()])) : ((headerType === "Output") ? (new CompositeHeader(12, [io()])) : ((headerType === "ProtocolType") ? (new CompositeHeader(4, [])) : ((headerType === "ProtocolREF") ? (new CompositeHeader(8, [])) : ((headerType === "ProtocolDescription") ? (new CompositeHeader(5, [])) : ((headerType === "ProtocolUri") ? (new CompositeHeader(6, [])) : ((headerType === "ProtocolVersion") ? (new CompositeHeader(7, [])) : ((headerType === "Performer") ? (new CompositeHeader(9, [])) : ((headerType === "Date") ? (new CompositeHeader(10, [])) : (new CompositeHeader(13, [headerType]))))))))))))));
35
+ });
36
+
37
+ export function ARCtrl_CompositeHeader__CompositeHeader_fromJsonString_Static_Z721C83C5(s) {
38
+ const matchValue = fromString(CompositeHeader_decoder, s);
39
+ if (matchValue.tag === 1) {
40
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
41
+ }
42
+ else {
43
+ return matchValue.fields[0];
44
+ }
45
+ }
46
+
47
+ export function ARCtrl_CompositeHeader__CompositeHeader_toJsonString_Static_71136F3F(spaces) {
48
+ return (obj) => {
49
+ const value = CompositeHeader_encoder(obj);
50
+ return toString(defaultSpaces(spaces), value);
51
+ };
52
+ }
53
+
54
+ export function ARCtrl_CompositeHeader__CompositeHeader_ToJsonString_71136F3F(this$, spaces) {
55
+ return ARCtrl_CompositeHeader__CompositeHeader_toJsonString_Static_71136F3F(unwrap(spaces))(this$);
56
+ }
57
+
@@ -0,0 +1,38 @@
1
+ import { Dictionary } from "../../fable_modules/fable-library-js.4.16.0/MutableMap.js";
2
+ import { safeHash, equals } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { decoder as decoder_3, arrayFromMap, encoder as encoder_1 } from "./CellTable.js";
4
+ import { decoder as decoder_2, arrayFromMap as arrayFromMap_1, encoder as encoder_2 } from "./OATable.js";
5
+ import { decoder as decoder_1, arrayFromMap as arrayFromMap_2, encoder as encoder_3 } from "../StringTable.js";
6
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
7
+ import { object } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
8
+
9
+ export function encode(encoder, obj) {
10
+ const stringTable = new Map([]);
11
+ const oaTable = new Dictionary([], {
12
+ Equals: equals,
13
+ GetHashCode: safeHash,
14
+ });
15
+ const cellTable = new Dictionary([], {
16
+ Equals: equals,
17
+ GetHashCode: safeHash,
18
+ });
19
+ const arcStudy = encoder(stringTable, oaTable, cellTable, obj);
20
+ return new Json(5, [[["cellTable", encoder_1(stringTable, oaTable, arrayFromMap(cellTable))], ["oaTable", encoder_2(stringTable, arrayFromMap_1(oaTable))], ["stringTable", encoder_3(arrayFromMap_2(stringTable))], ["object", arcStudy]]]);
21
+ }
22
+
23
+ export function decode(decoder) {
24
+ return object((get$) => {
25
+ let arg_5, objectArg_2;
26
+ let stringTable;
27
+ const objectArg = get$.Required;
28
+ stringTable = objectArg.Field("stringTable", decoder_1);
29
+ let oaTable;
30
+ const arg_3 = decoder_2(stringTable);
31
+ const objectArg_1 = get$.Required;
32
+ oaTable = objectArg_1.Field("oaTable", arg_3);
33
+ const arg_7 = decoder(stringTable, oaTable, (arg_5 = decoder_3(stringTable, oaTable), (objectArg_2 = get$.Required, objectArg_2.Field("cellTable", arg_5))));
34
+ const objectArg_3 = get$.Required;
35
+ return objectArg_3.Field("object", arg_7);
36
+ });
37
+ }
38
+
@@ -0,0 +1,37 @@
1
+ import { toString } from "../../fable_modules/fable-library-js.4.16.0/Types.js";
2
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
3
+ import { string, succeed, andThen } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
4
+ import { IOType } from "../../Core/Table/CompositeHeader.js";
5
+ import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
6
+ import { printf, toText } from "../../fable_modules/fable-library-js.4.16.0/String.js";
7
+ import { toString as toString_1 } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
8
+ import { defaultSpaces } from "../Encode.js";
9
+ import { unwrap } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
10
+
11
+ export function IOType_encoder(io) {
12
+ return new Json(0, [toString(io)]);
13
+ }
14
+
15
+ export const IOType_decoder = andThen((s) => succeed(IOType.ofString(s)), string);
16
+
17
+ export function ARCtrl_IOType__IOType_fromJsonString_Static_Z721C83C5(s) {
18
+ const matchValue = fromString(IOType_decoder, s);
19
+ if (matchValue.tag === 1) {
20
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
21
+ }
22
+ else {
23
+ return matchValue.fields[0];
24
+ }
25
+ }
26
+
27
+ export function ARCtrl_IOType__IOType_toJsonString_Static_71136F3F(spaces) {
28
+ return (obj) => {
29
+ const value = IOType_encoder(obj);
30
+ return toString_1(defaultSpaces(spaces), value);
31
+ };
32
+ }
33
+
34
+ export function ARCtrl_IOType__IOType_ToJsonString_71136F3F(this$, spaces) {
35
+ return ARCtrl_IOType__IOType_toJsonString_Static_71136F3F(unwrap(spaces))(this$);
36
+ }
37
+
@@ -0,0 +1,40 @@
1
+ import { sortBy, map, toArray } from "../../fable_modules/fable-library-js.4.16.0/Seq.js";
2
+ import { comparePrimitives } from "../../fable_modules/fable-library-js.4.16.0/Util.js";
3
+ import { item, map as map_1 } from "../../fable_modules/fable-library-js.4.16.0/Array.js";
4
+ import { OntologyAnnotation_compressedDecoder, OntologyAnnotation_compressedEncoder } from "../OntologyAnnotation.js";
5
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
6
+ import { int, object, array as array_1 } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
7
+ import { Dictionary_tryFind } from "../../Core/Helper/Collections.js";
8
+ import { addToDict } from "../../fable_modules/fable-library-js.4.16.0/MapUtil.js";
9
+
10
+ export function arrayFromMap(otm) {
11
+ return toArray(map((kv_1) => kv_1[0], sortBy((kv) => kv[1], otm, {
12
+ Compare: comparePrimitives,
13
+ })));
14
+ }
15
+
16
+ export function encoder(stringTable, ot) {
17
+ return new Json(6, [map_1((oa) => OntologyAnnotation_compressedEncoder(stringTable, oa), ot)]);
18
+ }
19
+
20
+ export function decoder(stringTable) {
21
+ return array_1(OntologyAnnotation_compressedDecoder(stringTable));
22
+ }
23
+
24
+ export function encodeOA(otm, oa) {
25
+ const matchValue = Dictionary_tryFind(oa, otm);
26
+ if (matchValue == null) {
27
+ const i_1 = otm.size | 0;
28
+ addToDict(otm, oa, i_1);
29
+ return new Json(7, [i_1 >>> 0]);
30
+ }
31
+ else {
32
+ const i = matchValue | 0;
33
+ return new Json(7, [i >>> 0]);
34
+ }
35
+ }
36
+
37
+ export function decodeOA(ot) {
38
+ return object((get$) => item(get$.Required.Raw(int), ot));
39
+ }
40
+
@@ -0,0 +1,107 @@
1
+ import { toString } from "../../fable_modules/fable-library-js.4.16.0/Types.js";
2
+ import { Json } from "../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
3
+ import { dict, datetimeUtc, guid, object, string, succeed, andThen } from "../../fable_modules/Thoth.Json.Core.0.2.1/Decode.fs.js";
4
+ import { Template, Organisation } from "../../Core/Template.js";
5
+ import { ArcTable_decoderCompressed, ArcTable_encoderCompressed, ArcTable_decoder, ArcTable_encoder } from "./ArcTable.js";
6
+ import { defaultSpaces, dateTime, tryIncludeSeq } from "../Encode.js";
7
+ import { Person_decoder, Person_encoder } from "../Person.js";
8
+ import { OntologyAnnotation_decoder, OntologyAnnotation_encoder } from "../OntologyAnnotation.js";
9
+ import { defaultArg, unwrap } from "../../fable_modules/fable-library-js.4.16.0/Option.js";
10
+ import { Decode_datetime, Decode_resizeArray } from "../Decode.js";
11
+ import { toString as toString_1 } from "../../fable_modules/fable-library-js.4.16.0/Date.js";
12
+ import { map } from "../../fable_modules/fable-library-js.4.16.0/Array.js";
13
+ import { toText, printf, toFail } from "../../fable_modules/fable-library-js.4.16.0/String.js";
14
+ import { fromString } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Decode.fs.js";
15
+ import { toString as toString_2 } from "../../fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js";
16
+ import { encode, decode } from "./Compression.js";
17
+
18
+ export const Template_Organisation_encoder = (arg) => (new Json(0, [toString(arg)]));
19
+
20
+ export const Template_Organisation_decoder = andThen((textValue) => succeed(Organisation.ofString(textValue)), string);
21
+
22
+ export function Template_encoder(template) {
23
+ let copyOfStruct;
24
+ return new Json(5, [[["id", new Json(0, [(copyOfStruct = template.Id, copyOfStruct)])], ["table", ArcTable_encoder(template.Table)], ["name", new Json(0, [template.Name])], ["description", new Json(0, [template.Description])], ["organisation", Template_Organisation_encoder(template.Organisation)], ["version", new Json(0, [template.Version])], tryIncludeSeq("authors", Person_encoder, template.Authors), tryIncludeSeq("endpoint_repositories", OntologyAnnotation_encoder, template.EndpointRepositories), tryIncludeSeq("tags", OntologyAnnotation_encoder, template.Tags), ["last_updated", dateTime(template.LastUpdated)]]]);
25
+ }
26
+
27
+ export const Template_decoder = object((get$) => {
28
+ let objectArg, objectArg_1, objectArg_2, objectArg_3, objectArg_4, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, objectArg_9;
29
+ return Template.create((objectArg = get$.Required, objectArg.Field("id", guid)), (objectArg_1 = get$.Required, objectArg_1.Field("table", ArcTable_decoder)), (objectArg_2 = get$.Required, objectArg_2.Field("name", string)), (objectArg_3 = get$.Required, objectArg_3.Field("description", string)), (objectArg_4 = get$.Required, objectArg_4.Field("organisation", Template_Organisation_decoder)), (objectArg_5 = get$.Required, objectArg_5.Field("version", string)), unwrap((arg_13 = Decode_resizeArray(Person_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("authors", arg_13)))), unwrap((arg_15 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("endpoint_repositories", arg_15)))), unwrap((arg_17 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("tags", arg_17)))), (objectArg_9 = get$.Required, objectArg_9.Field("last_updated", Decode_datetime)));
30
+ });
31
+
32
+ export function Template_encoderCompressed(stringTable, oaTable, cellTable, template) {
33
+ let copyOfStruct;
34
+ return new Json(5, [[["id", new Json(0, [(copyOfStruct = template.Id, copyOfStruct)])], ["table", ArcTable_encoderCompressed(stringTable, oaTable, cellTable, template.Table)], ["name", new Json(0, [template.Name])], ["description", new Json(0, [template.Description])], ["organisation", Template_Organisation_encoder(template.Organisation)], ["version", new Json(0, [template.Version])], tryIncludeSeq("authors", Person_encoder, template.Authors), tryIncludeSeq("endpoint_repositories", OntologyAnnotation_encoder, template.EndpointRepositories), tryIncludeSeq("tags", OntologyAnnotation_encoder, template.Tags), ["last_updated", new Json(0, [toString_1(template.LastUpdated, "O", {})])]]]);
35
+ }
36
+
37
+ export function Template_decoderCompressed(stringTable, oaTable, cellTable) {
38
+ return object((get$) => {
39
+ let objectArg, arg_3, objectArg_1, objectArg_2, objectArg_3, objectArg_4, objectArg_5, arg_13, objectArg_6, arg_15, objectArg_7, arg_17, objectArg_8, objectArg_9;
40
+ return Template.create((objectArg = get$.Required, objectArg.Field("id", guid)), (arg_3 = ArcTable_decoderCompressed(stringTable, oaTable, cellTable), (objectArg_1 = get$.Required, objectArg_1.Field("table", arg_3))), (objectArg_2 = get$.Required, objectArg_2.Field("name", string)), (objectArg_3 = get$.Required, objectArg_3.Field("description", string)), (objectArg_4 = get$.Required, objectArg_4.Field("organisation", Template_Organisation_decoder)), (objectArg_5 = get$.Required, objectArg_5.Field("version", string)), unwrap((arg_13 = Decode_resizeArray(Person_decoder), (objectArg_6 = get$.Optional, objectArg_6.Field("authors", arg_13)))), unwrap((arg_15 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_7 = get$.Optional, objectArg_7.Field("endpoint_repositories", arg_15)))), unwrap((arg_17 = Decode_resizeArray(OntologyAnnotation_decoder), (objectArg_8 = get$.Optional, objectArg_8.Field("tags", arg_17)))), (objectArg_9 = get$.Required, objectArg_9.Field("last_updated", datetimeUtc)));
41
+ });
42
+ }
43
+
44
+ export function Templates_encoder(templates) {
45
+ return new Json(6, [map(Template_encoder, templates)]);
46
+ }
47
+
48
+ export const Templates_decoder = dict(Template_decoder);
49
+
50
+ export function Templates_fromJsonString(jsonString) {
51
+ try {
52
+ const matchValue = fromString(Templates_decoder, jsonString);
53
+ if (matchValue.tag === 1) {
54
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
55
+ }
56
+ else {
57
+ return matchValue.fields[0];
58
+ }
59
+ }
60
+ catch (exn) {
61
+ return toFail(printf("Error. Given json string cannot be parsed to Templates map: %A"))(exn);
62
+ }
63
+ }
64
+
65
+ export function Templates_toJsonString(spaces, templates) {
66
+ return toString_2(spaces, Templates_encoder(templates));
67
+ }
68
+
69
+ export function ARCtrl_Template__Template_fromJsonString_Static_Z721C83C5(jsonString) {
70
+ try {
71
+ const matchValue = fromString(Template_decoder, jsonString);
72
+ if (matchValue.tag === 1) {
73
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
74
+ }
75
+ else {
76
+ return matchValue.fields[0];
77
+ }
78
+ }
79
+ catch (exn) {
80
+ return toFail(printf("Error. Given json string cannot be parsed to Template: %A"))(exn);
81
+ }
82
+ }
83
+
84
+ export function ARCtrl_Template__Template_toJsonString_Static_71136F3F(spaces) {
85
+ return (template) => toString_2(defaultSpaces(spaces), Template_encoder(template));
86
+ }
87
+
88
+ export function ARCtrl_Template__Template_fromCompressedJsonString_Static_Z721C83C5(s) {
89
+ try {
90
+ const matchValue = fromString(decode(Template_decoderCompressed), s);
91
+ if (matchValue.tag === 1) {
92
+ throw new Error(toText(printf("Error decoding string: %O"))(matchValue.fields[0]));
93
+ }
94
+ else {
95
+ return matchValue.fields[0];
96
+ }
97
+ }
98
+ catch (e_1) {
99
+ const arg_1 = e_1.message;
100
+ return toFail(printf("Error. Unable to parse json string to ArcStudy: %s"))(arg_1);
101
+ }
102
+ }
103
+
104
+ export function ARCtrl_Template__Template_toCompressedJsonString_Static_71136F3F(spaces) {
105
+ return (obj) => toString_2(defaultArg(spaces, 0), encode(Template_encoderCompressed, obj));
106
+ }
107
+
@@ -0,0 +1,32 @@
1
+ import { Record } from "../../../fable_modules/fable-library-js.4.16.0/Types.js";
2
+ import { record_type, string_type } from "../../../fable_modules/fable-library-js.4.16.0/Reflection.js";
3
+ import { Json } from "../../../fable_modules/Thoth.Json.Core.0.2.1/Types.fs.js";
4
+
5
+ export class IContext extends Record {
6
+ constructor(sdo, arc, Assay, ArcAssay, measurementType, technologyType, technologyPlatform, dataFiles, materials, otherMaterials, samples, characteristicCategories, processSequences, unitCategories, comments, filename) {
7
+ super();
8
+ this.sdo = sdo;
9
+ this.arc = arc;
10
+ this.Assay = Assay;
11
+ this.ArcAssay = ArcAssay;
12
+ this.measurementType = measurementType;
13
+ this.technologyType = technologyType;
14
+ this.technologyPlatform = technologyPlatform;
15
+ this.dataFiles = dataFiles;
16
+ this.materials = materials;
17
+ this.otherMaterials = otherMaterials;
18
+ this.samples = samples;
19
+ this.characteristicCategories = characteristicCategories;
20
+ this.processSequences = processSequences;
21
+ this.unitCategories = unitCategories;
22
+ this.comments = comments;
23
+ this.filename = filename;
24
+ }
25
+ }
26
+
27
+ export function IContext_$reflection() {
28
+ return record_type("ARCtrl.Json.ROCrateContext.Assay.IContext", [], IContext, () => [["sdo", string_type], ["arc", string_type], ["Assay", string_type], ["ArcAssay", string_type], ["measurementType", string_type], ["technologyType", string_type], ["technologyPlatform", string_type], ["dataFiles", string_type], ["materials", string_type], ["otherMaterials", string_type], ["samples", string_type], ["characteristicCategories", string_type], ["processSequences", string_type], ["unitCategories", string_type], ["comments", string_type], ["filename", string_type]]);
29
+ }
30
+
31
+ export const context_jsonvalue = new Json(5, [[["sdo", new Json(0, ["http://schema.org/"])], ["Assay", new Json(0, ["sdo:Dataset"])], ["identifier", new Json(0, ["sdo:identifier"])], ["additionalType", new Json(0, ["sdo:additionalType"])], ["measurementType", new Json(0, ["sdo:variableMeasured"])], ["technologyType", new Json(0, ["sdo:measurementTechnique"])], ["technologyPlatform", new Json(0, ["sdo:measurementMethod"])], ["dataFiles", new Json(0, ["sdo:hasPart"])], ["performers", new Json(0, ["sdo:creator"])], ["processSequences", new Json(0, ["sdo:about"])], ["comments", new Json(0, ["sdo:comment"])], ["filename", new Json(0, ["sdo:url"])]]]);
32
+