@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.
Files changed (277) hide show
  1. package/ARCtrl.js +257 -0
  2. package/Contract/Contract.js +95 -0
  3. package/Contracts/Contracts.ARCtrl.js +35 -0
  4. package/Contracts/Contracts.ArcAssay.js +65 -0
  5. package/Contracts/Contracts.ArcInvestigation.js +58 -0
  6. package/Contracts/Contracts.ArcStudy.js +65 -0
  7. package/Contracts/Contracts.Git.js +91 -0
  8. package/FileSystem/Commit.js +18 -0
  9. package/FileSystem/DefaultGitignore.js +3 -0
  10. package/FileSystem/FileSystem.js +53 -0
  11. package/FileSystem/FileSystemTree.js +223 -0
  12. package/FileSystem/Path.js +38 -0
  13. package/FileSystemTree.js +51 -0
  14. package/ISA/ISA/ArcTypes/ArcTable.js +744 -0
  15. package/ISA/ISA/ArcTypes/ArcTableAux.js +1142 -0
  16. package/ISA/ISA/ArcTypes/ArcTables.js +380 -0
  17. package/ISA/ISA/ArcTypes/ArcTypes.js +2018 -0
  18. package/ISA/ISA/ArcTypes/CompositeCell.js +180 -0
  19. package/ISA/ISA/ArcTypes/CompositeColumn.js +42 -0
  20. package/ISA/ISA/ArcTypes/CompositeHeader.js +358 -0
  21. package/ISA/ISA/ArcTypes/CompositeRow.js +111 -0
  22. package/ISA/ISA/ArcTypes/IdentifierSetters.js +26 -0
  23. package/ISA/ISA/Builder/Types.js +243 -0
  24. package/ISA/ISA/Fable.js +50 -0
  25. package/ISA/ISA/Helper.js +326 -0
  26. package/ISA/ISA/Identifier.js +76 -0
  27. package/ISA/ISA/JsonTypes/AnnotationValue.js +56 -0
  28. package/ISA/ISA/JsonTypes/Assay.js +620 -0
  29. package/ISA/ISA/JsonTypes/AssayMaterials.js +39 -0
  30. package/ISA/ISA/JsonTypes/ColumnIndex.js +246 -0
  31. package/ISA/ISA/JsonTypes/Comment.js +58 -0
  32. package/ISA/ISA/JsonTypes/CommentList.js +139 -0
  33. package/ISA/ISA/JsonTypes/Component.js +158 -0
  34. package/ISA/ISA/JsonTypes/Data.js +55 -0
  35. package/ISA/ISA/JsonTypes/DataFile.js +68 -0
  36. package/ISA/ISA/JsonTypes/Factor.js +128 -0
  37. package/ISA/ISA/JsonTypes/FactorValue.js +109 -0
  38. package/ISA/ISA/JsonTypes/Investigation.js +204 -0
  39. package/ISA/ISA/JsonTypes/Material.js +66 -0
  40. package/ISA/ISA/JsonTypes/MaterialAttribute.js +101 -0
  41. package/ISA/ISA/JsonTypes/MaterialAttributeValue.js +126 -0
  42. package/ISA/ISA/JsonTypes/MaterialType.js +41 -0
  43. package/ISA/ISA/JsonTypes/OntologyAnnotation.js +219 -0
  44. package/ISA/ISA/JsonTypes/OntologySourceReference.js +85 -0
  45. package/ISA/ISA/JsonTypes/Person.js +137 -0
  46. package/ISA/ISA/JsonTypes/Process.js +401 -0
  47. package/ISA/ISA/JsonTypes/ProcessInput.js +297 -0
  48. package/ISA/ISA/JsonTypes/ProcessOutput.js +263 -0
  49. package/ISA/ISA/JsonTypes/ProcessParameterValue.js +129 -0
  50. package/ISA/ISA/JsonTypes/ProcessSequence.js +255 -0
  51. package/ISA/ISA/JsonTypes/Protocol.js +277 -0
  52. package/ISA/ISA/JsonTypes/ProtocolParameter.js +101 -0
  53. package/ISA/ISA/JsonTypes/Publication.js +105 -0
  54. package/ISA/ISA/JsonTypes/Sample.js +71 -0
  55. package/ISA/ISA/JsonTypes/Source.js +54 -0
  56. package/ISA/ISA/JsonTypes/Study.js +942 -0
  57. package/ISA/ISA/JsonTypes/StudyMaterials.js +45 -0
  58. package/ISA/ISA/JsonTypes/URI.js +19 -0
  59. package/ISA/ISA/JsonTypes/Value.js +210 -0
  60. package/ISA/ISA/Regex.js +588 -0
  61. package/ISA/ISA.Json/Assay.js +123 -0
  62. package/ISA/ISA.Json/Comment.js +84 -0
  63. package/ISA/ISA.Json/ConverterOptions.js +33 -0
  64. package/ISA/ISA.Json/Data.js +271 -0
  65. package/ISA/ISA.Json/Decode.js +46 -0
  66. package/ISA/ISA.Json/Factor.js +194 -0
  67. package/ISA/ISA.Json/GEncode.js +15 -0
  68. package/ISA/ISA.Json/Investigation.js +132 -0
  69. package/ISA/ISA.Json/Material.js +233 -0
  70. package/ISA/ISA.Json/Ontology.js +204 -0
  71. package/ISA/ISA.Json/Person.js +204 -0
  72. package/ISA/ISA.Json/Process.js +291 -0
  73. package/ISA/ISA.Json/Protocol.js +242 -0
  74. package/ISA/ISA.Json/Publication.js +92 -0
  75. package/ISA/ISA.Json/Study.js +230 -0
  76. package/ISA/ISA.Json/Validation/Fable.js +69 -0
  77. package/ISA/ISA.Json/Validation/JsonSchemaValidation.js +88 -0
  78. package/ISA/ISA.Json/Validation/ValidationResult.js +45 -0
  79. package/ISA/ISA.Spreadsheet/AnnotationTable/ArcTable.js +137 -0
  80. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeCell.js +78 -0
  81. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeColumn.js +59 -0
  82. package/ISA/ISA.Spreadsheet/AnnotationTable/CompositeHeader.js +478 -0
  83. package/ISA/ISA.Spreadsheet/ArcAssay.js +150 -0
  84. package/ISA/ISA.Spreadsheet/ArcInvestigation.js +314 -0
  85. package/ISA/ISA.Spreadsheet/ArcStudy.js +67 -0
  86. package/ISA/ISA.Spreadsheet/CollectionAux.js +128 -0
  87. package/ISA/ISA.Spreadsheet/Metadata/Assays.js +81 -0
  88. package/ISA/ISA.Spreadsheet/Metadata/Comment.js +60 -0
  89. package/ISA/ISA.Spreadsheet/Metadata/Contacts.js +104 -0
  90. package/ISA/ISA.Spreadsheet/Metadata/Conversions.js +180 -0
  91. package/ISA/ISA.Spreadsheet/Metadata/DesignDescriptors.js +27 -0
  92. package/ISA/ISA.Spreadsheet/Metadata/Factors.js +85 -0
  93. package/ISA/ISA.Spreadsheet/Metadata/OntologyAnnotation.js +65 -0
  94. package/ISA/ISA.Spreadsheet/Metadata/OntologySourceReference.js +73 -0
  95. package/ISA/ISA.Spreadsheet/Metadata/Protocols.js +116 -0
  96. package/ISA/ISA.Spreadsheet/Metadata/Publication.js +96 -0
  97. package/ISA/ISA.Spreadsheet/Metadata/SparseTable.js +451 -0
  98. package/ISA/ISA.Spreadsheet/Metadata/Study.js +260 -0
  99. package/README.md +277 -0
  100. package/SemVer.js +60 -0
  101. package/Templates/Templates.Json.js +40 -0
  102. package/Templates/Templates.Spreadsheet.js +315 -0
  103. package/Templates/Templates.js +179 -0
  104. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCell.fs +387 -0
  105. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCell.fs.js +240 -0
  106. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCellsCollection.fs +725 -0
  107. package/fable_modules/FsSpreadsheet.4.1.0/Cells/FsCellsCollection.fs.js +522 -0
  108. package/fable_modules/FsSpreadsheet.4.1.0/DSL/CellBuilder.fs +195 -0
  109. package/fable_modules/FsSpreadsheet.4.1.0/DSL/CellBuilder.fs.js +208 -0
  110. package/fable_modules/FsSpreadsheet.4.1.0/DSL/ColumnBuilder.fs +209 -0
  111. package/fable_modules/FsSpreadsheet.4.1.0/DSL/ColumnBuilder.fs.js +137 -0
  112. package/fable_modules/FsSpreadsheet.4.1.0/DSL/DSL.fs +61 -0
  113. package/fable_modules/FsSpreadsheet.4.1.0/DSL/DSL.fs.js +62 -0
  114. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Expression.fs +24 -0
  115. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Expression.fs.js +56 -0
  116. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Operators.fs +102 -0
  117. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Operators.fs.js +6 -0
  118. package/fable_modules/FsSpreadsheet.4.1.0/DSL/RowBuilder.fs +200 -0
  119. package/fable_modules/FsSpreadsheet.4.1.0/DSL/RowBuilder.fs.js +137 -0
  120. package/fable_modules/FsSpreadsheet.4.1.0/DSL/SheetBuilder.fs +139 -0
  121. package/fable_modules/FsSpreadsheet.4.1.0/DSL/SheetBuilder.fs.js +116 -0
  122. package/fable_modules/FsSpreadsheet.4.1.0/DSL/TableBuilder.fs +120 -0
  123. package/fable_modules/FsSpreadsheet.4.1.0/DSL/TableBuilder.fs.js +120 -0
  124. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Transform.fs +229 -0
  125. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Transform.fs.js +421 -0
  126. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Types.fs +151 -0
  127. package/fable_modules/FsSpreadsheet.4.1.0/DSL/Types.fs.js +277 -0
  128. package/fable_modules/FsSpreadsheet.4.1.0/DSL/WorkbookBuilder.fs +114 -0
  129. package/fable_modules/FsSpreadsheet.4.1.0/DSL/WorkbookBuilder.fs.js +104 -0
  130. package/fable_modules/FsSpreadsheet.4.1.0/FsAddress.fs +177 -0
  131. package/fable_modules/FsSpreadsheet.4.1.0/FsAddress.fs.js +249 -0
  132. package/fable_modules/FsSpreadsheet.4.1.0/FsColumn.fs +200 -0
  133. package/fable_modules/FsSpreadsheet.4.1.0/FsColumn.fs.js +125 -0
  134. package/fable_modules/FsSpreadsheet.4.1.0/FsRow.fs +202 -0
  135. package/fable_modules/FsSpreadsheet.4.1.0/FsRow.fs.js +135 -0
  136. package/fable_modules/FsSpreadsheet.4.1.0/FsSpreadsheet.fableproj +58 -0
  137. package/fable_modules/FsSpreadsheet.4.1.0/FsWorkbook.fs +183 -0
  138. package/fable_modules/FsSpreadsheet.4.1.0/FsWorkbook.fs.js +138 -0
  139. package/fable_modules/FsSpreadsheet.4.1.0/FsWorksheet.fs +628 -0
  140. package/fable_modules/FsSpreadsheet.4.1.0/FsWorksheet.fs.js +398 -0
  141. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRange.fs +19 -0
  142. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRange.fs.js +41 -0
  143. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeAddress.fs +222 -0
  144. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeAddress.fs.js +235 -0
  145. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeBase.fs +93 -0
  146. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeBase.fs.js +91 -0
  147. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeColumn.fs +65 -0
  148. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeColumn.fs.js +74 -0
  149. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeRow.fs +22 -0
  150. package/fable_modules/FsSpreadsheet.4.1.0/Ranges/FsRangeRow.fs.js +40 -0
  151. package/fable_modules/FsSpreadsheet.4.1.0/SheetBuilder.fs +249 -0
  152. package/fable_modules/FsSpreadsheet.4.1.0/SheetBuilder.fs.js +325 -0
  153. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTable.fs +455 -0
  154. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTable.fs.js +310 -0
  155. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableField.fs +140 -0
  156. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableField.fs.js +173 -0
  157. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableRow.fs +6 -0
  158. package/fable_modules/FsSpreadsheet.4.1.0/Tables/FsTableRow.fs.js +17 -0
  159. package/fable_modules/FsSpreadsheet.4.1.0/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  160. package/fable_modules/FsSpreadsheet.4.1.0/obj/Debug/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +19 -0
  161. package/fable_modules/FsSpreadsheet.4.1.0/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +3 -0
  162. package/fable_modules/FsSpreadsheet.4.1.0/obj/Release/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +19 -0
  163. package/fable_modules/Thoth.Json.10.1.0/Decode.fs +1366 -0
  164. package/fable_modules/Thoth.Json.10.1.0/Decode.fs.js +1798 -0
  165. package/fable_modules/Thoth.Json.10.1.0/Encode.fs +621 -0
  166. package/fable_modules/Thoth.Json.10.1.0/Encode.fs.js +472 -0
  167. package/fable_modules/Thoth.Json.10.1.0/Extra.fs +31 -0
  168. package/fable_modules/Thoth.Json.10.1.0/Extra.fs.js +8 -0
  169. package/fable_modules/Thoth.Json.10.1.0/Thoth.Json.fableproj +30 -0
  170. package/fable_modules/Thoth.Json.10.1.0/Types.fs +59 -0
  171. package/fable_modules/Thoth.Json.10.1.0/Types.fs.js +98 -0
  172. package/fable_modules/Thoth.Json.10.1.0/obj/Release/netstandard2.0/Thoth.Json.AssemblyInfo.fs +19 -0
  173. package/fable_modules/Thoth.Json.10.1.0/package.json +5 -0
  174. package/fable_modules/fable-library.4.1.4/Array.d.ts +120 -0
  175. package/fable_modules/fable-library.4.1.4/Array.js +1204 -0
  176. package/fable_modules/fable-library.4.1.4/Async.d.ts +32 -0
  177. package/fable_modules/fable-library.4.1.4/Async.js +158 -0
  178. package/fable_modules/fable-library.4.1.4/AsyncBuilder.d.ts +59 -0
  179. package/fable_modules/fable-library.4.1.4/AsyncBuilder.js +183 -0
  180. package/fable_modules/fable-library.4.1.4/BigInt.d.ts +115 -0
  181. package/fable_modules/fable-library.4.1.4/BigInt.js +282 -0
  182. package/fable_modules/fable-library.4.1.4/BitConverter.d.ts +27 -0
  183. package/fable_modules/fable-library.4.1.4/BitConverter.js +138 -0
  184. package/fable_modules/fable-library.4.1.4/Boolean.d.ts +3 -0
  185. package/fable_modules/fable-library.4.1.4/Boolean.js +21 -0
  186. package/fable_modules/fable-library.4.1.4/Char.d.ts +65 -0
  187. package/fable_modules/fable-library.4.1.4/Char.js +169 -0
  188. package/fable_modules/fable-library.4.1.4/Choice.d.ts +138 -0
  189. package/fable_modules/fable-library.4.1.4/Choice.js +227 -0
  190. package/fable_modules/fable-library.4.1.4/Date.d.ts +70 -0
  191. package/fable_modules/fable-library.4.1.4/Date.js +451 -0
  192. package/fable_modules/fable-library.4.1.4/DateOffset.d.ts +63 -0
  193. package/fable_modules/fable-library.4.1.4/DateOffset.js +268 -0
  194. package/fable_modules/fable-library.4.1.4/DateOnly.d.ts +18 -0
  195. package/fable_modules/fable-library.4.1.4/DateOnly.js +124 -0
  196. package/fable_modules/fable-library.4.1.4/Decimal.d.ts +45 -0
  197. package/fable_modules/fable-library.4.1.4/Decimal.js +212 -0
  198. package/fable_modules/fable-library.4.1.4/Double.d.ts +11 -0
  199. package/fable_modules/fable-library.4.1.4/Double.js +46 -0
  200. package/fable_modules/fable-library.4.1.4/Encoding.d.ts +12 -0
  201. package/fable_modules/fable-library.4.1.4/Encoding.js +173 -0
  202. package/fable_modules/fable-library.4.1.4/Event.d.ts +31 -0
  203. package/fable_modules/fable-library.4.1.4/Event.js +93 -0
  204. package/fable_modules/fable-library.4.1.4/FSharp.Collections.d.ts +7 -0
  205. package/fable_modules/fable-library.4.1.4/FSharp.Collections.js +27 -0
  206. package/fable_modules/fable-library.4.1.4/FSharp.Core.d.ts +17 -0
  207. package/fable_modules/fable-library.4.1.4/FSharp.Core.js +69 -0
  208. package/fable_modules/fable-library.4.1.4/Global.d.ts +24 -0
  209. package/fable_modules/fable-library.4.1.4/Global.js +8 -0
  210. package/fable_modules/fable-library.4.1.4/Guid.d.ts +10 -0
  211. package/fable_modules/fable-library.4.1.4/Guid.js +142 -0
  212. package/fable_modules/fable-library.4.1.4/Int32.d.ts +28 -0
  213. package/fable_modules/fable-library.4.1.4/Int32.js +135 -0
  214. package/fable_modules/fable-library.4.1.4/List.d.ts +143 -0
  215. package/fable_modules/fable-library.4.1.4/List.js +1273 -0
  216. package/fable_modules/fable-library.4.1.4/Long.d.ts +3 -0
  217. package/fable_modules/fable-library.4.1.4/Long.js +46 -0
  218. package/fable_modules/fable-library.4.1.4/MailboxProcessor.d.ts +25 -0
  219. package/fable_modules/fable-library.4.1.4/MailboxProcessor.js +93 -0
  220. package/fable_modules/fable-library.4.1.4/Map.d.ts +178 -0
  221. package/fable_modules/fable-library.4.1.4/Map.js +1396 -0
  222. package/fable_modules/fable-library.4.1.4/MapUtil.d.ts +10 -0
  223. package/fable_modules/fable-library.4.1.4/MapUtil.js +112 -0
  224. package/fable_modules/fable-library.4.1.4/MutableMap.d.ts +52 -0
  225. package/fable_modules/fable-library.4.1.4/MutableMap.js +326 -0
  226. package/fable_modules/fable-library.4.1.4/MutableSet.d.ts +39 -0
  227. package/fable_modules/fable-library.4.1.4/MutableSet.js +232 -0
  228. package/fable_modules/fable-library.4.1.4/Native.d.ts +2 -0
  229. package/fable_modules/fable-library.4.1.4/Native.js +8 -0
  230. package/fable_modules/fable-library.4.1.4/Numeric.d.ts +19 -0
  231. package/fable_modules/fable-library.4.1.4/Numeric.js +71 -0
  232. package/fable_modules/fable-library.4.1.4/Observable.d.ts +32 -0
  233. package/fable_modules/fable-library.4.1.4/Observable.js +113 -0
  234. package/fable_modules/fable-library.4.1.4/Option.d.ts +28 -0
  235. package/fable_modules/fable-library.4.1.4/Option.js +96 -0
  236. package/fable_modules/fable-library.4.1.4/README.md +3 -0
  237. package/fable_modules/fable-library.4.1.4/Random.d.ts +37 -0
  238. package/fable_modules/fable-library.4.1.4/Random.js +170 -0
  239. package/fable_modules/fable-library.4.1.4/Range.d.ts +12 -0
  240. package/fable_modules/fable-library.4.1.4/Range.js +45 -0
  241. package/fable_modules/fable-library.4.1.4/Reflection.d.ts +119 -0
  242. package/fable_modules/fable-library.4.1.4/Reflection.js +461 -0
  243. package/fable_modules/fable-library.4.1.4/RegExp.d.ts +10 -0
  244. package/fable_modules/fable-library.4.1.4/RegExp.js +132 -0
  245. package/fable_modules/fable-library.4.1.4/Seq.d.ts +165 -0
  246. package/fable_modules/fable-library.4.1.4/Seq.js +1379 -0
  247. package/fable_modules/fable-library.4.1.4/Seq2.d.ts +18 -0
  248. package/fable_modules/fable-library.4.1.4/Seq2.js +111 -0
  249. package/fable_modules/fable-library.4.1.4/Set.d.ts +190 -0
  250. package/fable_modules/fable-library.4.1.4/Set.js +1789 -0
  251. package/fable_modules/fable-library.4.1.4/String.d.ts +49 -0
  252. package/fable_modules/fable-library.4.1.4/String.js +540 -0
  253. package/fable_modules/fable-library.4.1.4/System.Collections.Generic.d.ts +71 -0
  254. package/fable_modules/fable-library.4.1.4/System.Collections.Generic.js +307 -0
  255. package/fable_modules/fable-library.4.1.4/System.Text.d.ts +30 -0
  256. package/fable_modules/fable-library.4.1.4/System.Text.js +110 -0
  257. package/fable_modules/fable-library.4.1.4/SystemException.d.ts +5 -0
  258. package/fable_modules/fable-library.4.1.4/SystemException.js +5 -0
  259. package/fable_modules/fable-library.4.1.4/TimeOnly.d.ts +15 -0
  260. package/fable_modules/fable-library.4.1.4/TimeOnly.js +122 -0
  261. package/fable_modules/fable-library.4.1.4/TimeSpan.d.ts +34 -0
  262. package/fable_modules/fable-library.4.1.4/TimeSpan.js +177 -0
  263. package/fable_modules/fable-library.4.1.4/Timer.d.ts +19 -0
  264. package/fable_modules/fable-library.4.1.4/Timer.js +67 -0
  265. package/fable_modules/fable-library.4.1.4/Types.d.ts +58 -0
  266. package/fable_modules/fable-library.4.1.4/Types.js +208 -0
  267. package/fable_modules/fable-library.4.1.4/Unicode.13.0.0.d.ts +2 -0
  268. package/fable_modules/fable-library.4.1.4/Unicode.13.0.0.js +4 -0
  269. package/fable_modules/fable-library.4.1.4/Uri.d.ts +29 -0
  270. package/fable_modules/fable-library.4.1.4/Uri.js +142 -0
  271. package/fable_modules/fable-library.4.1.4/Util.d.ts +187 -0
  272. package/fable_modules/fable-library.4.1.4/Util.js +662 -0
  273. package/fable_modules/fable-library.4.1.4/lib/big.d.ts +338 -0
  274. package/fable_modules/fable-library.4.1.4/lib/big.js +826 -0
  275. package/fable_modules/fable-library.4.1.4/package.json +23 -0
  276. package/fable_modules/project_cracked.json +1 -0
  277. package/package.json +22 -0
@@ -0,0 +1,235 @@
1
+ import { class_type } from "../../fable-library.4.1.4/Reflection.js";
2
+ import { toConsole, printf, toText } from "../../fable-library.4.1.4/String.js";
3
+ import { FsAddress__get_Address, FsAddress_$ctor_Z37302880, FsAddress__set_ColumnNumber_Z524259A4, FsAddress__get_ColumnNumber, FsAddress__set_RowNumber_Z524259A4, FsAddress__get_RowNumber, FsAddress_$ctor_Z721C83C5, CellReference_moveHorizontal, CellReference_toIndices } from "../FsAddress.fs.js";
4
+
5
+ export class FsRangeAddress {
6
+ constructor(firstAddress, lastAddress) {
7
+ this.firstAddress = firstAddress;
8
+ this.lastAddress = lastAddress;
9
+ this._firstAddress = this.firstAddress;
10
+ this._lastAddress = this.lastAddress;
11
+ }
12
+ toString() {
13
+ const self = this;
14
+ return FsRangeAddress__get_Range(self);
15
+ }
16
+ }
17
+
18
+ export function FsRangeAddress_$reflection() {
19
+ return class_type("FsSpreadsheet.FsRangeAddress", void 0, FsRangeAddress);
20
+ }
21
+
22
+ export function FsRangeAddress_$ctor_7E77A4A0(firstAddress, lastAddress) {
23
+ return new FsRangeAddress(firstAddress, lastAddress);
24
+ }
25
+
26
+ /**
27
+ * Given A1-based top left start and bottom right end indices, returns a "A1:A1"-style area-
28
+ */
29
+ export function Range_ofBoundaries(fromCellReference, toCellReference) {
30
+ return toText(printf("%s:%s"))(fromCellReference)(toCellReference);
31
+ }
32
+
33
+ /**
34
+ * Given a "A1:A1"-style area, returns A1-based cell start and end cellReferences.
35
+ */
36
+ export function Range_toBoundaries(area) {
37
+ const a = area.split(":");
38
+ return [a[0], a[1]];
39
+ }
40
+
41
+ /**
42
+ * Gets the right boundary of the area.
43
+ */
44
+ export function Range_rightBoundary(area) {
45
+ return CellReference_toIndices(Range_toBoundaries(area)[1])[0];
46
+ }
47
+
48
+ /**
49
+ * Gets the left boundary of the area.
50
+ */
51
+ export function Range_leftBoundary(area) {
52
+ return CellReference_toIndices(Range_toBoundaries(area)[0])[0];
53
+ }
54
+
55
+ /**
56
+ * Gets the Upper boundary of the area.
57
+ */
58
+ export function Range_upperBoundary(area) {
59
+ return CellReference_toIndices(Range_toBoundaries(area)[0])[1];
60
+ }
61
+
62
+ /**
63
+ * Gets the lower boundary of the area.
64
+ */
65
+ export function Range_lowerBoundary(area) {
66
+ return CellReference_toIndices(Range_toBoundaries(area)[1])[1];
67
+ }
68
+
69
+ /**
70
+ * Moves both start and end of the area by the given amount (positive amount moves area to right and vice versa).
71
+ */
72
+ export function Range_moveHorizontal(amount, area) {
73
+ let tupledArg_1;
74
+ const tupledArg = Range_toBoundaries(area);
75
+ tupledArg_1 = [CellReference_moveHorizontal(amount, tupledArg[0]), CellReference_moveHorizontal(amount, tupledArg[1])];
76
+ return Range_ofBoundaries(tupledArg_1[0], tupledArg_1[1]);
77
+ }
78
+
79
+ /**
80
+ * Moves both start and end of the area by the given amount (positive amount moves area to right and vice versa).
81
+ */
82
+ export function Range_moveVertical(amount, area) {
83
+ let tupledArg_1;
84
+ const tupledArg = Range_toBoundaries(area);
85
+ tupledArg_1 = [CellReference_moveHorizontal(amount, tupledArg[0]), CellReference_moveHorizontal(amount, tupledArg[1])];
86
+ return Range_ofBoundaries(tupledArg_1[0], tupledArg_1[1]);
87
+ }
88
+
89
+ /**
90
+ * Extends the right boundary of the area by the given amount (positive amount increases area to right and vice versa).
91
+ */
92
+ export function Range_extendRight(amount, area) {
93
+ let tupledArg_1;
94
+ const tupledArg = Range_toBoundaries(area);
95
+ tupledArg_1 = [tupledArg[0], CellReference_moveHorizontal(amount, tupledArg[1])];
96
+ return Range_ofBoundaries(tupledArg_1[0], tupledArg_1[1]);
97
+ }
98
+
99
+ /**
100
+ * Extends the left boundary of the area by the given amount (positive amount decreases the area to left and vice versa).
101
+ */
102
+ export function Range_extendLeft(amount, area) {
103
+ let tupledArg_1;
104
+ const tupledArg = Range_toBoundaries(area);
105
+ tupledArg_1 = [CellReference_moveHorizontal(amount, tupledArg[0]), tupledArg[1]];
106
+ return Range_ofBoundaries(tupledArg_1[0], tupledArg_1[1]);
107
+ }
108
+
109
+ /**
110
+ * Returns true if the column index of the reference exceeds the right boundary of the area.
111
+ */
112
+ export function Range_referenceExceedsAreaRight(reference, area) {
113
+ return CellReference_toIndices(reference)[0] > Range_rightBoundary(area);
114
+ }
115
+
116
+ /**
117
+ * Returns true if the column index of the reference exceeds the left boundary of the area.
118
+ */
119
+ export function Range_referenceExceedsAreaLeft(reference, area) {
120
+ return CellReference_toIndices(reference)[0] < Range_leftBoundary(area);
121
+ }
122
+
123
+ /**
124
+ * Returns true if the column index of the reference exceeds the upper boundary of the area.
125
+ */
126
+ export function Range_referenceExceedsAreaAbove(reference, area) {
127
+ return CellReference_toIndices(reference)[1] > Range_upperBoundary(area);
128
+ }
129
+
130
+ /**
131
+ * Returns true if the column index of the reference exceeds the lower boundary of the area.
132
+ */
133
+ export function Range_referenceExceedsAreaBelow(reference, area) {
134
+ return CellReference_toIndices(reference)[1] < Range_lowerBoundary(area);
135
+ }
136
+
137
+ /**
138
+ * Returns true if the reference does not lie in the boundary of the area.
139
+ */
140
+ export function Range_referenceExceedsArea(reference, area) {
141
+ if ((Range_referenceExceedsAreaRight(reference, area) ? true : Range_referenceExceedsAreaLeft(reference, area)) ? true : Range_referenceExceedsAreaAbove(reference, area)) {
142
+ return true;
143
+ }
144
+ else {
145
+ return Range_referenceExceedsAreaBelow(reference, area);
146
+ }
147
+ }
148
+
149
+ /**
150
+ * Returns true if the A1:A1-style area is of correct format.
151
+ */
152
+ export function Range_isCorrect(area) {
153
+ try {
154
+ const hor = Range_leftBoundary(area) <= Range_rightBoundary(area);
155
+ const ver = Range_upperBoundary(area) <= Range_lowerBoundary(area);
156
+ if (!hor) {
157
+ toConsole(printf("Right area boundary must be higher or equal to left area boundary."));
158
+ }
159
+ if (!ver) {
160
+ toConsole(printf("Lower area boundary must be higher or equal to upper area boundary."));
161
+ }
162
+ return hor && ver;
163
+ }
164
+ catch (err) {
165
+ const arg_1 = err.message;
166
+ toConsole(printf("Area \"%s\" could not be parsed: %s"))(area)(arg_1);
167
+ return false;
168
+ }
169
+ }
170
+
171
+ export function FsRangeAddress_$ctor_Z721C83C5(rangeAddress) {
172
+ const patternInput = Range_toBoundaries(rangeAddress);
173
+ return FsRangeAddress_$ctor_7E77A4A0(FsAddress_$ctor_Z721C83C5(patternInput[0]), FsAddress_$ctor_Z721C83C5(patternInput[1]));
174
+ }
175
+
176
+ /**
177
+ * Creates a deep copy of this FsRangeAddress.
178
+ */
179
+ export function FsRangeAddress__Copy(self) {
180
+ return FsRangeAddress_$ctor_Z721C83C5(FsRangeAddress__get_Range(self));
181
+ }
182
+
183
+ /**
184
+ * Returns a deep copy of a given FsRangeAddress.
185
+ */
186
+ export function FsRangeAddress_copy_6A2513BC(rangeAddress) {
187
+ return FsRangeAddress__Copy(rangeAddress);
188
+ }
189
+
190
+ export function FsRangeAddress__Extend_6D30B323(self, address) {
191
+ if (FsAddress__get_RowNumber(address) < FsAddress__get_RowNumber(self._firstAddress)) {
192
+ FsAddress__set_RowNumber_Z524259A4(self._firstAddress, FsAddress__get_RowNumber(address));
193
+ }
194
+ if (FsAddress__get_RowNumber(address) > FsAddress__get_RowNumber(self._lastAddress)) {
195
+ FsAddress__set_RowNumber_Z524259A4(self._lastAddress, FsAddress__get_RowNumber(address));
196
+ }
197
+ if (FsAddress__get_ColumnNumber(address) < FsAddress__get_ColumnNumber(self._firstAddress)) {
198
+ FsAddress__set_ColumnNumber_Z524259A4(self._firstAddress, FsAddress__get_ColumnNumber(address));
199
+ }
200
+ if (FsAddress__get_ColumnNumber(address) > FsAddress__get_ColumnNumber(self._lastAddress)) {
201
+ FsAddress__set_ColumnNumber_Z524259A4(self._lastAddress, FsAddress__get_ColumnNumber(address));
202
+ }
203
+ }
204
+
205
+ export function FsRangeAddress__Normalize(self) {
206
+ const patternInput = (FsAddress__get_RowNumber(self.firstAddress) < FsAddress__get_RowNumber(self.lastAddress)) ? [FsAddress__get_RowNumber(self.firstAddress), FsAddress__get_RowNumber(self.lastAddress)] : [FsAddress__get_RowNumber(self.lastAddress), FsAddress__get_RowNumber(self.firstAddress)];
207
+ const patternInput_1 = (FsAddress__get_RowNumber(self.firstAddress) < FsAddress__get_RowNumber(self.lastAddress)) ? [FsAddress__get_RowNumber(self.firstAddress), FsAddress__get_RowNumber(self.lastAddress)] : [FsAddress__get_RowNumber(self.lastAddress), FsAddress__get_RowNumber(self.firstAddress)];
208
+ self._firstAddress = FsAddress_$ctor_Z37302880(patternInput[0], patternInput_1[0]);
209
+ self._lastAddress = FsAddress_$ctor_Z37302880(patternInput[1], patternInput_1[1]);
210
+ }
211
+
212
+ export function FsRangeAddress__get_Range(self) {
213
+ return Range_ofBoundaries(FsAddress__get_Address(self._firstAddress), FsAddress__get_Address(self._lastAddress));
214
+ }
215
+
216
+ export function FsRangeAddress__set_Range_Z721C83C5(self, address) {
217
+ const patternInput = Range_toBoundaries(address);
218
+ self._firstAddress = FsAddress_$ctor_Z721C83C5(patternInput[0]);
219
+ self._lastAddress = FsAddress_$ctor_Z721C83C5(patternInput[1]);
220
+ }
221
+
222
+ export function FsRangeAddress__get_FirstAddress(self) {
223
+ return self._firstAddress;
224
+ }
225
+
226
+ export function FsRangeAddress__get_LastAddress(self) {
227
+ return self._lastAddress;
228
+ }
229
+
230
+ export function FsRangeAddress__Union_6A2513BC(self, rangeAddress) {
231
+ FsRangeAddress__Extend_6D30B323(self, FsRangeAddress__get_FirstAddress(rangeAddress));
232
+ FsRangeAddress__Extend_6D30B323(self, FsRangeAddress__get_LastAddress(rangeAddress));
233
+ return self;
234
+ }
235
+
@@ -0,0 +1,93 @@
1
+ namespace FsSpreadsheet
2
+
3
+
4
+ [<AbstractClass>][<AllowNullLiteral>]
5
+ type FsRangeBase (rangeAddress : FsRangeAddress) =
6
+ //: XLStylizedBase, IXLRangeBase, IXLStylized
7
+
8
+
9
+ let mutable _sortRows = null
10
+ let mutable _sortColumns = null
11
+ let mutable _rangeAddress = rangeAddress
12
+
13
+
14
+ static let mutable IdCounter = 0;
15
+ let _id =
16
+ IdCounter <- IdCounter + 1
17
+ IdCounter
18
+
19
+ //abstract member OnRangeAddressChanged : FsRangeAddress*FsRangeAddress -> unit
20
+
21
+ //default this.OnRangeAddressChanged (oldAddress, newAddress) =
22
+
23
+ // Worksheet.RellocateRange(RangeType, oldAddress, newAddress);
24
+
25
+ member this.Extend(address : FsAddress) = _rangeAddress.Extend(address)
26
+
27
+ member this.RangeAddress
28
+ with get () = _rangeAddress
29
+ and set (rangeAdress) =
30
+ if rangeAdress <> _rangeAddress then
31
+ let oldAddress = _rangeAddress
32
+ _rangeAddress <- rangeAdress
33
+ //OnRangeAddressChanged(oldAddress, _rangeAddress);
34
+
35
+ // TO DO: add description – important and complex function
36
+ member this.Cell(cellAddressInRange : FsAddress, cells : FsCellsCollection) =
37
+
38
+ let absRow = cellAddressInRange.RowNumber + this.RangeAddress.FirstAddress.RowNumber - 1;
39
+ let absColumn = cellAddressInRange.ColumnNumber + this.RangeAddress.FirstAddress.ColumnNumber - 1;
40
+
41
+ if (absRow <= 0 || absRow > 1048576) then
42
+ failwithf "Row number must be between 1 and %i" cells.MaxRowNumber
43
+
44
+ if (absColumn <= 0 || absColumn > 16384) then
45
+ failwithf "Column number must be between 1 and %i" cells.MaxColumnNumber
46
+
47
+ let cell = cells.TryGetCell(absRow, absColumn)
48
+
49
+ match cell with
50
+ | Some cell ->
51
+ cell
52
+ | None ->
53
+
54
+ //var styleValue = this.StyleValue;
55
+
56
+ //if (styleValue == Worksheet.StyleValue)
57
+ //{
58
+ // if (Worksheet.Internals.RowsCollection.TryGetValue(absRow, out XLRow row)
59
+ // && row.StyleValue != Worksheet.StyleValue)
60
+ // styleValue = row.StyleValue;
61
+ // else if (Worksheet.Internals.ColumnsCollection.TryGetValue(absColumn, out XLColumn column)
62
+ // && column.StyleValue != Worksheet.StyleValue)
63
+ // styleValue = column.StyleValue;
64
+ //}
65
+ let absoluteAddress = new FsAddress(absRow, absColumn, cellAddressInRange.FixedRow, cellAddressInRange.FixedColumn);
66
+
67
+ // If the default style for this range base is empty, but the worksheet
68
+ // has a default style, use the worksheet's default style
69
+ let newCell = FsCell.createEmptyWithAdress absoluteAddress
70
+
71
+ this.Extend(absoluteAddress)
72
+
73
+ cells.Add(absRow, absColumn, newCell) |> ignore
74
+ newCell
75
+
76
+ /// <summary>
77
+ /// Returns the FsCells of this FsRangeBase with the given FsCellsCollection.
78
+ /// </summary>
79
+ /// <param name="cells">The FsCellsCollection where the FsCells are retrieved from.</param>
80
+ member this.Cells(cells : FsCellsCollection) =
81
+ cells.GetCells(this.RangeAddress.FirstAddress, this.RangeAddress.LastAddress)
82
+
83
+ /// <summary>
84
+ /// The number of columns in the FsRangeBase.
85
+ /// </summary>
86
+ member this.ColumnCount() =
87
+ _rangeAddress.LastAddress.ColumnNumber - _rangeAddress.FirstAddress.ColumnNumber + 1
88
+
89
+ /// <summary>
90
+ /// The number of rows in the FsRangeBase.
91
+ /// </summary>
92
+ member this.RowCount() =
93
+ _rangeAddress.LastAddress.RowNumber - _rangeAddress.FirstAddress.RowNumber + 1
@@ -0,0 +1,91 @@
1
+ import { equals, defaultOf } from "../../fable-library.4.1.4/Util.js";
2
+ import { class_type } from "../../fable-library.4.1.4/Reflection.js";
3
+ import { FsRangeAddress__get_LastAddress, FsRangeAddress__get_FirstAddress, FsRangeAddress__Extend_6D30B323 } from "./FsRangeAddress.fs.js";
4
+ import { FsAddress__get_FixedColumn, FsAddress__get_FixedRow, FsAddress_$ctor_Z4C746FC0, FsAddress__get_ColumnNumber, FsAddress__get_RowNumber } from "../FsAddress.fs.js";
5
+ import { FsCellsCollection__GetCells_7E77A4A0, FsCellsCollection__Add_2E78CE33, FsCellsCollection__TryGetCell_Z37302880, FsCellsCollection__get_MaxColumnNumber, FsCellsCollection__get_MaxRowNumber } from "../Cells/FsCellsCollection.fs.js";
6
+ import { printf, toFail } from "../../fable-library.4.1.4/String.js";
7
+ import { FsCell } from "../Cells/FsCell.fs.js";
8
+
9
+ export class FsRangeBase {
10
+ constructor(rangeAddress) {
11
+ this._sortRows = defaultOf();
12
+ this._sortColumns = defaultOf();
13
+ this._rangeAddress = rangeAddress;
14
+ let _id;
15
+ FsRangeBase.IdCounter = ((FsRangeBase.IdCounter + 1) | 0);
16
+ _id = FsRangeBase.IdCounter;
17
+ }
18
+ }
19
+
20
+ export function FsRangeBase_$reflection() {
21
+ return class_type("FsSpreadsheet.FsRangeBase", void 0, FsRangeBase);
22
+ }
23
+
24
+ export function FsRangeBase_$ctor_6A2513BC(rangeAddress) {
25
+ return new FsRangeBase(rangeAddress);
26
+ }
27
+
28
+ (() => {
29
+ FsRangeBase.IdCounter = 0;
30
+ })();
31
+
32
+ export function FsRangeBase__Extend_6D30B323(this$, address) {
33
+ FsRangeAddress__Extend_6D30B323(this$._rangeAddress, address);
34
+ }
35
+
36
+ export function FsRangeBase__get_RangeAddress(this$) {
37
+ return this$._rangeAddress;
38
+ }
39
+
40
+ export function FsRangeBase__set_RangeAddress_6A2513BC(this$, rangeAdress) {
41
+ if (!equals(rangeAdress, this$._rangeAddress)) {
42
+ const oldAddress = this$._rangeAddress;
43
+ this$._rangeAddress = rangeAdress;
44
+ }
45
+ }
46
+
47
+ export function FsRangeBase__Cell_Z3407A44B(this$, cellAddressInRange, cells) {
48
+ const absRow = ((FsAddress__get_RowNumber(cellAddressInRange) + FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this$)))) - 1) | 0;
49
+ const absColumn = ((FsAddress__get_ColumnNumber(cellAddressInRange) + FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this$)))) - 1) | 0;
50
+ if ((absRow <= 0) ? true : (absRow > 1048576)) {
51
+ const arg = FsCellsCollection__get_MaxRowNumber(cells) | 0;
52
+ toFail(printf("Row number must be between 1 and %i"))(arg);
53
+ }
54
+ if ((absColumn <= 0) ? true : (absColumn > 16384)) {
55
+ const arg_1 = FsCellsCollection__get_MaxColumnNumber(cells) | 0;
56
+ toFail(printf("Column number must be between 1 and %i"))(arg_1);
57
+ }
58
+ const cell = FsCellsCollection__TryGetCell_Z37302880(cells, absRow, absColumn);
59
+ if (cell == null) {
60
+ const absoluteAddress = FsAddress_$ctor_Z4C746FC0(absRow, absColumn, FsAddress__get_FixedRow(cellAddressInRange), FsAddress__get_FixedColumn(cellAddressInRange));
61
+ const newCell = FsCell.createEmptyWithAdress(absoluteAddress);
62
+ FsRangeBase__Extend_6D30B323(this$, absoluteAddress);
63
+ const value = FsCellsCollection__Add_2E78CE33(cells, absRow, absColumn, newCell);
64
+ return newCell;
65
+ }
66
+ else {
67
+ return cell;
68
+ }
69
+ }
70
+
71
+ /**
72
+ * Returns the FsCells of this FsRangeBase with the given FsCellsCollection.
73
+ */
74
+ export function FsRangeBase__Cells_Z2740B3CA(this$, cells) {
75
+ return FsCellsCollection__GetCells_7E77A4A0(cells, FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(this$)), FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(this$)));
76
+ }
77
+
78
+ /**
79
+ * The number of columns in the FsRangeBase.
80
+ */
81
+ export function FsRangeBase__ColumnCount(this$) {
82
+ return (FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(this$._rangeAddress)) - FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(this$._rangeAddress))) + 1;
83
+ }
84
+
85
+ /**
86
+ * The number of rows in the FsRangeBase.
87
+ */
88
+ export function FsRangeBase__RowCount(this$) {
89
+ return (FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(this$._rangeAddress)) - FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(this$._rangeAddress))) + 1;
90
+ }
91
+
@@ -0,0 +1,65 @@
1
+ namespace FsSpreadsheet
2
+
3
+ [<AllowNullLiteral>]
4
+ type FsRangeColumn(rangeAddress) =
5
+
6
+ inherit FsRangeBase(rangeAddress)
7
+
8
+ //new () =
9
+ // let range = FsRangeAddress(FsAddress(0,0),FsAddress(0,0))
10
+ // FsRangeColumn(range)
11
+
12
+ new(index) = FsRangeColumn(FsRangeAddress(FsAddress(0, index), FsAddress(0, index)))
13
+
14
+ //new(rangeAddress) = FsRangeColumn()
15
+
16
+ member self.Index
17
+ with get() = self.RangeAddress.FirstAddress.ColumnNumber
18
+ and set(i) =
19
+ self.RangeAddress.FirstAddress.ColumnNumber <- i
20
+ self.RangeAddress.LastAddress.ColumnNumber <- i
21
+
22
+ member self.Cell(rowIndex, cellsCollection) = base.Cell(FsAddress(rowIndex - base.RangeAddress.FirstAddress.RowNumber + 1,1), cellsCollection)
23
+
24
+ member self.FirstCell(cells : FsCellsCollection) =
25
+ //let firstAddrRow, firstAddrCol = base.RangeAddress.FirstAddress |> fun fa -> fa.RowNumber, fa.ColumnNumber
26
+ //base.Cell(FsAddress(firstAddrRow, firstAddrCol), cells)
27
+ base.Cell(FsAddress(1, 1), cells)
28
+
29
+ member self.Cells(cellsCollection) = base.Cells(cellsCollection)
30
+
31
+ static member fromRangeAddress (rangeAddress : FsRangeAddress) =
32
+ FsRangeColumn rangeAddress
33
+
34
+ /// <summary>
35
+ /// Creates a deep copy of this FsRangeColumn.
36
+ /// </summary>
37
+ member self.Copy() =
38
+ FsRangeColumn(self.RangeAddress.Copy())
39
+
40
+ /// <summary>
41
+ /// Returns a deep copy of a given FsRangeColumn.
42
+ /// </summary>
43
+ static member copy (rangeColumn : FsRangeColumn) =
44
+ rangeColumn.Copy()
45
+
46
+
47
+ [<AutoOpen>]
48
+ module Enhancements =
49
+ type FsRangeAddress with
50
+
51
+ /// <summary>
52
+ /// Takes an FsRangeAddress and returns, for every column the range address spans, an FsRangeColumn.
53
+ /// </summary>
54
+ static member toRangeColumns (rangeAddress : FsRangeAddress) =
55
+ let columns = [rangeAddress.FirstAddress.ColumnNumber .. rangeAddress.LastAddress.ColumnNumber]
56
+ let fstRow = rangeAddress.FirstAddress.RowNumber
57
+ let lstRow = rangeAddress.LastAddress.RowNumber
58
+ columns
59
+ |> Seq.map (
60
+ fun c ->
61
+ let fa = FsAddress(fstRow, c)
62
+ let la = FsAddress(lstRow, c)
63
+ FsRangeAddress(fa, la)
64
+ |> FsRangeColumn
65
+ )
@@ -0,0 +1,74 @@
1
+ import { FsRangeBase__Cells_Z2740B3CA, FsRangeBase__Cell_Z3407A44B, FsRangeBase__get_RangeAddress, FsRangeBase_$reflection, FsRangeBase } from "./FsRangeBase.fs.js";
2
+ import { class_type } from "../../fable-library.4.1.4/Reflection.js";
3
+ import { FsRangeAddress__Copy, FsRangeAddress__get_LastAddress, FsRangeAddress__get_FirstAddress, FsRangeAddress_$ctor_7E77A4A0 } from "./FsRangeAddress.fs.js";
4
+ import { FsAddress__get_RowNumber, FsAddress__set_ColumnNumber_Z524259A4, FsAddress__get_ColumnNumber, FsAddress_$ctor_Z37302880 } from "../FsAddress.fs.js";
5
+ import { map, toList } from "../../fable-library.4.1.4/Seq.js";
6
+ import { rangeDouble } from "../../fable-library.4.1.4/Range.js";
7
+
8
+ export class FsRangeColumn extends FsRangeBase {
9
+ constructor(rangeAddress) {
10
+ super(rangeAddress);
11
+ }
12
+ }
13
+
14
+ export function FsRangeColumn_$reflection() {
15
+ return class_type("FsSpreadsheet.FsRangeColumn", void 0, FsRangeColumn, FsRangeBase_$reflection());
16
+ }
17
+
18
+ export function FsRangeColumn_$ctor_6A2513BC(rangeAddress) {
19
+ return new FsRangeColumn(rangeAddress);
20
+ }
21
+
22
+ export function FsRangeColumn_$ctor_Z524259A4(index) {
23
+ return FsRangeColumn_$ctor_6A2513BC(FsRangeAddress_$ctor_7E77A4A0(FsAddress_$ctor_Z37302880(0, index), FsAddress_$ctor_Z37302880(0, index)));
24
+ }
25
+
26
+ export function FsRangeColumn__get_Index(self) {
27
+ return FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self)));
28
+ }
29
+
30
+ export function FsRangeColumn__set_Index_Z524259A4(self, i) {
31
+ FsAddress__set_ColumnNumber_Z524259A4(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self)), i);
32
+ FsAddress__set_ColumnNumber_Z524259A4(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(self)), i);
33
+ }
34
+
35
+ export function FsRangeColumn__Cell_Z4232C216(self, rowIndex, cellsCollection) {
36
+ return FsRangeBase__Cell_Z3407A44B(self, FsAddress_$ctor_Z37302880((rowIndex - FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self)))) + 1, 1), cellsCollection);
37
+ }
38
+
39
+ export function FsRangeColumn__FirstCell_Z2740B3CA(self, cells) {
40
+ return FsRangeBase__Cell_Z3407A44B(self, FsAddress_$ctor_Z37302880(1, 1), cells);
41
+ }
42
+
43
+ export function FsRangeColumn__Cells_Z2740B3CA(self, cellsCollection) {
44
+ return FsRangeBase__Cells_Z2740B3CA(self, cellsCollection);
45
+ }
46
+
47
+ export function FsRangeColumn_fromRangeAddress_6A2513BC(rangeAddress) {
48
+ return FsRangeColumn_$ctor_6A2513BC(rangeAddress);
49
+ }
50
+
51
+ /**
52
+ * Creates a deep copy of this FsRangeColumn.
53
+ */
54
+ export function FsRangeColumn__Copy(self) {
55
+ return FsRangeColumn_$ctor_6A2513BC(FsRangeAddress__Copy(FsRangeBase__get_RangeAddress(self)));
56
+ }
57
+
58
+ /**
59
+ * Returns a deep copy of a given FsRangeColumn.
60
+ */
61
+ export function FsRangeColumn_copy_Z7F7BA1C4(rangeColumn) {
62
+ return FsRangeColumn__Copy(rangeColumn);
63
+ }
64
+
65
+ /**
66
+ * Takes an FsRangeAddress and returns, for every column the range address spans, an FsRangeColumn.
67
+ */
68
+ export function FsSpreadsheet_FsRangeAddress__FsRangeAddress_toRangeColumns_Static_6A2513BC(rangeAddress) {
69
+ const columns = toList(rangeDouble(FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(rangeAddress)), 1, FsAddress__get_ColumnNumber(FsRangeAddress__get_LastAddress(rangeAddress))));
70
+ const fstRow = FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(rangeAddress)) | 0;
71
+ const lstRow = FsAddress__get_RowNumber(FsRangeAddress__get_LastAddress(rangeAddress)) | 0;
72
+ return map((c) => FsRangeColumn_$ctor_6A2513BC(FsRangeAddress_$ctor_7E77A4A0(FsAddress_$ctor_Z37302880(fstRow, c), FsAddress_$ctor_Z37302880(lstRow, c))), columns);
73
+ }
74
+
@@ -0,0 +1,22 @@
1
+ namespace FsSpreadsheet
2
+
3
+ [<AllowNullLiteral>]
4
+ type FsRangeRow(rangeAddress) =
5
+
6
+ inherit FsRangeBase(rangeAddress)
7
+
8
+ //new () =
9
+ // let range = FsRangeAddress(FsAddress(0,0),FsAddress(0,0))
10
+ // FsRangeColumn(range)
11
+
12
+ new (index) = FsRangeRow (FsRangeAddress(FsAddress(index,0),FsAddress(index,0)))
13
+
14
+ member self.Index
15
+ with get() = self.RangeAddress.FirstAddress.RowNumber
16
+ and set(i) =
17
+ self.RangeAddress.FirstAddress.RowNumber <- i
18
+ self.RangeAddress.LastAddress.RowNumber <- i
19
+
20
+ member self.Cell(columnIndex,cells) = base.Cell(FsAddress(1,columnIndex - base.RangeAddress.FirstAddress.ColumnNumber + 1),cells)
21
+
22
+ member self.Cells(cells) = base.Cells(cells)
@@ -0,0 +1,40 @@
1
+ import { FsRangeBase__Cells_Z2740B3CA, FsRangeBase__Cell_Z3407A44B, FsRangeBase__get_RangeAddress, FsRangeBase_$reflection, FsRangeBase } from "./FsRangeBase.fs.js";
2
+ import { class_type } from "../../fable-library.4.1.4/Reflection.js";
3
+ import { FsRangeAddress__get_LastAddress, FsRangeAddress__get_FirstAddress, FsRangeAddress_$ctor_7E77A4A0 } from "./FsRangeAddress.fs.js";
4
+ import { FsAddress__get_ColumnNumber, FsAddress__set_RowNumber_Z524259A4, FsAddress__get_RowNumber, FsAddress_$ctor_Z37302880 } from "../FsAddress.fs.js";
5
+
6
+ export class FsRangeRow extends FsRangeBase {
7
+ constructor(rangeAddress) {
8
+ super(rangeAddress);
9
+ }
10
+ }
11
+
12
+ export function FsRangeRow_$reflection() {
13
+ return class_type("FsSpreadsheet.FsRangeRow", void 0, FsRangeRow, FsRangeBase_$reflection());
14
+ }
15
+
16
+ export function FsRangeRow_$ctor_6A2513BC(rangeAddress) {
17
+ return new FsRangeRow(rangeAddress);
18
+ }
19
+
20
+ export function FsRangeRow_$ctor_Z524259A4(index) {
21
+ return FsRangeRow_$ctor_6A2513BC(FsRangeAddress_$ctor_7E77A4A0(FsAddress_$ctor_Z37302880(index, 0), FsAddress_$ctor_Z37302880(index, 0)));
22
+ }
23
+
24
+ export function FsRangeRow__get_Index(self) {
25
+ return FsAddress__get_RowNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self)));
26
+ }
27
+
28
+ export function FsRangeRow__set_Index_Z524259A4(self, i) {
29
+ FsAddress__set_RowNumber_Z524259A4(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self)), i);
30
+ FsAddress__set_RowNumber_Z524259A4(FsRangeAddress__get_LastAddress(FsRangeBase__get_RangeAddress(self)), i);
31
+ }
32
+
33
+ export function FsRangeRow__Cell_Z4232C216(self, columnIndex, cells) {
34
+ return FsRangeBase__Cell_Z3407A44B(self, FsAddress_$ctor_Z37302880(1, (columnIndex - FsAddress__get_ColumnNumber(FsRangeAddress__get_FirstAddress(FsRangeBase__get_RangeAddress(self)))) + 1), cells);
35
+ }
36
+
37
+ export function FsRangeRow__Cells_Z2740B3CA(self, cells) {
38
+ return FsRangeBase__Cells_Z2740B3CA(self, cells);
39
+ }
40
+