@nfdi4plants/arctrl 2.0.1 → 2.1.0-alpha.2

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 (453) hide show
  1. package/ARC.js +43 -108
  2. package/Contract/ARC.js +1 -1
  3. package/Contract/ArcAssay.js +37 -14
  4. package/Contract/ArcInvestigation.js +4 -4
  5. package/Contract/ArcStudy.js +37 -14
  6. package/Contract/Contract.js +6 -6
  7. package/Contract/Datamap.js +5 -5
  8. package/Contract/Git.js +6 -6
  9. package/Contract/ValidationPackagesConfig.js +5 -5
  10. package/Core/ArcTypes.js +17 -17
  11. package/Core/Comment.js +16 -9
  12. package/Core/CommentList.js +6 -6
  13. package/Core/Conversion.js +64 -64
  14. package/Core/Data.js +11 -11
  15. package/Core/DataContext.js +4 -4
  16. package/Core/DataFile.js +2 -2
  17. package/Core/DataMap.js +4 -4
  18. package/Core/Helper/Collections.js +11 -11
  19. package/Core/Helper/HashCodes.js +5 -5
  20. package/Core/Helper/Identifier.js +9 -9
  21. package/Core/Helper/Regex.js +38 -38
  22. package/Core/Helper/SemVer.js +8 -8
  23. package/Core/OntologyAnnotation.js +11 -11
  24. package/Core/OntologySourceReference.js +4 -4
  25. package/Core/Person.js +11 -11
  26. package/Core/Process/ColumnIndex.js +7 -7
  27. package/Core/Process/Component.js +10 -10
  28. package/Core/Process/Factor.js +6 -6
  29. package/Core/Process/FactorValue.js +10 -10
  30. package/Core/Process/Material.js +5 -5
  31. package/Core/Process/MaterialAttribute.js +4 -4
  32. package/Core/Process/MaterialAttributeValue.js +10 -10
  33. package/Core/Process/MaterialType.js +2 -2
  34. package/Core/Process/Process.js +19 -19
  35. package/Core/Process/ProcessInput.js +16 -16
  36. package/Core/Process/ProcessOutput.js +16 -16
  37. package/Core/Process/ProcessParameterValue.js +10 -10
  38. package/Core/Process/ProcessSequence.js +6 -6
  39. package/Core/Process/Protocol.js +5 -5
  40. package/Core/Process/ProtocolParameter.js +4 -4
  41. package/Core/Process/Sample.js +5 -5
  42. package/Core/Process/Source.js +5 -5
  43. package/Core/Publication.js +10 -10
  44. package/Core/Table/ArcTable.js +35 -28
  45. package/Core/Table/ArcTableAux.js +22 -22
  46. package/Core/Table/ArcTables.js +14 -14
  47. package/Core/Table/CompositeCell.js +6 -6
  48. package/Core/Table/CompositeColumn.js +5 -5
  49. package/Core/Table/CompositeHeader.js +9 -9
  50. package/Core/Template.js +7 -7
  51. package/Core/Templates.js +8 -8
  52. package/Core/Value.js +11 -11
  53. package/FileSystem/Commit.js +2 -2
  54. package/FileSystem/FileSystem.js +4 -4
  55. package/FileSystem/FileSystemTree.js +14 -14
  56. package/FileSystem/Path.js +3 -3
  57. package/Json/ARC.js +21 -15
  58. package/Json/Assay.js +108 -169
  59. package/Json/Comment.js +84 -122
  60. package/Json/ConverterOptions.js +2 -2
  61. package/Json/Data.js +100 -107
  62. package/Json/DataFile.js +22 -57
  63. package/Json/DataMap/DataContext.js +25 -16
  64. package/Json/DataMap/DataMap.js +11 -7
  65. package/Json/Decode.js +11 -14
  66. package/Json/Encode.js +24 -13
  67. package/Json/IDTable.js +14 -3
  68. package/Json/Investigation.js +194 -176
  69. package/Json/OntologyAnnotation.js +113 -127
  70. package/Json/OntologySourceReference.js +93 -111
  71. package/Json/Person.js +204 -135
  72. package/Json/Process/AssayMaterials.js +12 -14
  73. package/Json/Process/Component.js +23 -68
  74. package/Json/Process/Factor.js +28 -46
  75. package/Json/Process/FactorValue.js +28 -50
  76. package/Json/Process/Material.js +56 -83
  77. package/Json/Process/MaterialAttribute.js +23 -45
  78. package/Json/Process/MaterialAttributeValue.js +28 -71
  79. package/Json/Process/MaterialType.js +17 -35
  80. package/Json/Process/Process.js +70 -85
  81. package/Json/Process/ProcessInput.js +18 -45
  82. package/Json/Process/ProcessOutput.js +15 -63
  83. package/Json/Process/ProcessParameterValue.js +21 -70
  84. package/Json/Process/Protocol.js +80 -83
  85. package/Json/Process/ProtocolParameter.js +23 -44
  86. package/Json/Process/Sample.js +66 -93
  87. package/Json/Process/Source.js +54 -81
  88. package/Json/Process/StudyMaterials.js +13 -15
  89. package/Json/Process/Value.js +19 -29
  90. package/Json/PropertyValue.js +86 -28
  91. package/Json/Publication.js +92 -115
  92. package/Json/ROCrateObject.js +146 -0
  93. package/Json/StringTable.js +27 -10
  94. package/Json/Study.js +193 -182
  95. package/Json/Table/ArcTable.js +119 -115
  96. package/Json/Table/CellTable.js +24 -11
  97. package/Json/Table/CompositeCell.js +40 -41
  98. package/Json/Table/CompositeHeader.js +24 -36
  99. package/Json/Table/IOType.js +9 -31
  100. package/Json/Table/OATable.js +23 -10
  101. package/Json/Table/Templates.js +82 -90
  102. package/Json/context/rocrate/isa_assay_context.js +60 -4
  103. package/Json/context/rocrate/isa_comment_context.js +28 -4
  104. package/Json/context/rocrate/isa_component_context.js +44 -4
  105. package/Json/context/rocrate/isa_data_context.js +40 -4
  106. package/Json/context/rocrate/isa_factor_context.js +40 -4
  107. package/Json/context/rocrate/isa_factor_value_context.js +52 -4
  108. package/Json/context/rocrate/isa_investigation_context.js +68 -4
  109. package/Json/context/rocrate/isa_material_attribute_context.js +32 -4
  110. package/Json/context/rocrate/isa_material_attribute_value_context.js +48 -4
  111. package/Json/context/rocrate/isa_material_context.js +36 -4
  112. package/Json/context/rocrate/isa_ontology_annotation_context.js +36 -4
  113. package/Json/context/rocrate/isa_ontology_source_reference_context.js +40 -4
  114. package/Json/context/rocrate/isa_organization_context.js +24 -4
  115. package/Json/context/rocrate/isa_person_context.js +85 -5
  116. package/Json/context/rocrate/isa_process_context.js +56 -4
  117. package/Json/context/rocrate/isa_process_parameter_value_context.js +48 -4
  118. package/Json/context/rocrate/isa_protocol_context.js +60 -4
  119. package/Json/context/rocrate/isa_protocol_parameter_context.js +32 -4
  120. package/Json/context/rocrate/isa_publication_context.js +44 -4
  121. package/Json/context/rocrate/isa_sample_context.js +32 -4
  122. package/Json/context/rocrate/isa_source_context.js +32 -4
  123. package/Json/context/rocrate/isa_study_context.js +72 -4
  124. package/Json/context/rocrate/property_value_context.js +58 -2
  125. package/Json/context/rocrate/rocrate_context.js +45 -5
  126. package/Json.js +12 -12
  127. package/JsonIO/ARC.js +31 -0
  128. package/JsonIO/Assay.js +99 -0
  129. package/JsonIO/Comment.js +73 -0
  130. package/JsonIO/Data.js +50 -0
  131. package/JsonIO/DataFile.js +49 -0
  132. package/JsonIO/DataMap/DataMap.js +29 -0
  133. package/JsonIO/Decode.js +4 -0
  134. package/JsonIO/Investigation.js +99 -0
  135. package/JsonIO/OntologyAnnotation.js +73 -0
  136. package/JsonIO/OntologySourceReference.js +73 -0
  137. package/JsonIO/Person.js +74 -0
  138. package/JsonIO/Process/Component.js +50 -0
  139. package/JsonIO/Process/Factor.js +28 -0
  140. package/JsonIO/Process/FactorValue.js +29 -0
  141. package/JsonIO/Process/Material.js +50 -0
  142. package/JsonIO/Process/MaterialAttribute.js +29 -0
  143. package/JsonIO/Process/MaterialAttributeValue.js +50 -0
  144. package/JsonIO/Process/MaterialType.js +28 -0
  145. package/JsonIO/Process/Process.js +50 -0
  146. package/JsonIO/Process/ProcessInput.js +29 -0
  147. package/JsonIO/Process/ProcessOutput.js +50 -0
  148. package/JsonIO/Process/ProcessParameterValue.js +50 -0
  149. package/{Json → JsonIO}/Process/ProcessSequence.js +16 -16
  150. package/JsonIO/Process/Protocol.js +50 -0
  151. package/JsonIO/Process/ProtocolParameter.js +28 -0
  152. package/JsonIO/Process/Sample.js +50 -0
  153. package/JsonIO/Process/Source.js +50 -0
  154. package/JsonIO/Process/StudyMaterials.js +22 -0
  155. package/JsonIO/Process/Value.js +23 -0
  156. package/JsonIO/Publication.js +74 -0
  157. package/JsonIO/ROCrateObject.js +146 -0
  158. package/JsonIO/Study.js +99 -0
  159. package/JsonIO/Table/ArcTable.js +82 -0
  160. package/JsonIO/Table/CompositeCell.js +28 -0
  161. package/JsonIO/Table/CompositeHeader.js +28 -0
  162. package/{Json → JsonIO}/Table/Compression.js +20 -10
  163. package/JsonIO/Table/IOType.js +28 -0
  164. package/JsonIO/Table/Templates.js +88 -0
  165. package/ROCrate/ISAProfile/Assay.js +32 -0
  166. package/ROCrate/ISAProfile/Data.js +28 -0
  167. package/ROCrate/ISAProfile/Dataset.js +18 -0
  168. package/ROCrate/ISAProfile/Investigation.js +35 -0
  169. package/ROCrate/ISAProfile/LabProcess.js +32 -0
  170. package/ROCrate/ISAProfile/LabProtocol.js +33 -0
  171. package/ROCrate/ISAProfile/Person.js +35 -0
  172. package/ROCrate/ISAProfile/PropertyValue.js +30 -0
  173. package/ROCrate/ISAProfile/Sample.js +27 -0
  174. package/ROCrate/ISAProfile/ScholarlyArticle.js +30 -0
  175. package/ROCrate/ISAProfile/Study.js +35 -0
  176. package/ROCrate/ROCrateObject.js +61 -0
  177. package/Spreadsheet/AnnotationTable/ArcTable.js +16 -16
  178. package/Spreadsheet/AnnotationTable/CompositeCell.js +2 -2
  179. package/Spreadsheet/AnnotationTable/CompositeColumn.js +7 -7
  180. package/Spreadsheet/AnnotationTable/CompositeHeader.js +25 -25
  181. package/Spreadsheet/ArcAssay.js +9 -9
  182. package/Spreadsheet/ArcInvestigation.js +14 -14
  183. package/Spreadsheet/ArcStudy.js +7 -7
  184. package/Spreadsheet/CollectionAux.js +11 -11
  185. package/Spreadsheet/DataMap.js +3 -3
  186. package/Spreadsheet/DataMapTable/DataMapColumn.js +6 -6
  187. package/Spreadsheet/DataMapTable/DataMapHeader.js +23 -23
  188. package/Spreadsheet/DataMapTable/DataMapTable.js +13 -13
  189. package/Spreadsheet/Metadata/Assays.js +11 -11
  190. package/Spreadsheet/Metadata/Comment.js +5 -5
  191. package/Spreadsheet/Metadata/Contacts.js +7 -7
  192. package/Spreadsheet/Metadata/Conversions.js +7 -7
  193. package/Spreadsheet/Metadata/DesignDescriptors.js +1 -1
  194. package/Spreadsheet/Metadata/Factors.js +8 -8
  195. package/Spreadsheet/Metadata/OntologyAnnotation.js +6 -6
  196. package/Spreadsheet/Metadata/OntologySourceReference.js +6 -6
  197. package/Spreadsheet/Metadata/Protocols.js +9 -9
  198. package/Spreadsheet/Metadata/Publication.js +7 -7
  199. package/Spreadsheet/Metadata/SparseTable.js +21 -21
  200. package/Spreadsheet/Metadata/Study.js +12 -12
  201. package/Spreadsheet/Template.js +21 -21
  202. package/Template.Web.js +6 -6
  203. package/ValidationPackages/ValidationPackage.js +6 -6
  204. package/ValidationPackages/ValidationPackagesConfig.js +9 -9
  205. package/WebRequest/WebRequest.Node.js +2 -2
  206. package/WebRequest/WebRequest.js +2 -2
  207. package/Xlsx.js +9 -9
  208. package/Yaml/Encode.js +1 -1
  209. package/Yaml/ValidationPackage.js +5 -5
  210. package/Yaml/ValidationPackagesConfig.js +5 -5
  211. package/fable_modules/DynamicObj.4.0.0/DynObj.fs +219 -0
  212. package/fable_modules/DynamicObj.4.0.0/DynObj.fs.js +209 -0
  213. package/fable_modules/DynamicObj.4.0.0/DynamicObj.fableproj +47 -0
  214. package/fable_modules/DynamicObj.4.0.0/DynamicObj.fs +310 -0
  215. package/fable_modules/DynamicObj.4.0.0/DynamicObj.fs.js +166 -0
  216. package/fable_modules/DynamicObj.4.0.0/FableJS.fs +162 -0
  217. package/fable_modules/DynamicObj.4.0.0/FableJS.fs.js +141 -0
  218. package/fable_modules/DynamicObj.4.0.0/FablePy.fs +215 -0
  219. package/fable_modules/DynamicObj.4.0.0/HashCodes.fs +46 -0
  220. package/fable_modules/DynamicObj.4.0.0/HashCodes.fs.js +43 -0
  221. package/fable_modules/DynamicObj.4.0.0/PropertyHelper.fs +33 -0
  222. package/fable_modules/DynamicObj.4.0.0/PropertyHelper.fs.js +21 -0
  223. package/fable_modules/DynamicObj.4.0.0/ReflectionUtils.fs +72 -0
  224. package/fable_modules/DynamicObj.4.0.0/ReflectionUtils.fs.js +86 -0
  225. package/fable_modules/{Thoth.Json.JavaScript.0.1.0/obj/Release → DynamicObj.4.0.0/obj/Debug}/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +1 -1
  226. package/fable_modules/DynamicObj.4.0.0/obj/Debug/netstandard2.0/DynamicObj.AssemblyInfo.fs +19 -0
  227. package/fable_modules/{Thoth.Json.Core.0.2.1/obj/Debug → DynamicObj.4.0.0/obj/Release}/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +1 -1
  228. package/fable_modules/DynamicObj.4.0.0/obj/Release/netstandard2.0/DynamicObj.AssemblyInfo.fs +19 -0
  229. package/fable_modules/Fable.Fetch.2.6.0/Fetch.fs.js +8 -8
  230. package/fable_modules/Fable.Promise.2.2.2/Promise.fs.js +6 -6
  231. package/fable_modules/Fable.SimpleHttp.3.5.0/Http.fs.js +11 -11
  232. package/fable_modules/Fable.SimpleHttp.3.5.0/Types.fs.js +4 -4
  233. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Cells/FsCell.fs.js +15 -15
  234. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Cells/FsCellsCollection.fs.js +11 -11
  235. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/CellBuilder.fs.js +7 -7
  236. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/ColumnBuilder.fs.js +4 -4
  237. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/DSL.fs.js +3 -3
  238. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Expression.fs.js +1 -1
  239. package/fable_modules/FsSpreadsheet.6.3.0-alpha.4/DSL/Operators.fs.js +6 -0
  240. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/RowBuilder.fs.js +4 -4
  241. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/SheetBuilder.fs.js +4 -4
  242. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/TableBuilder.fs.js +4 -4
  243. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Transform.fs.js +10 -10
  244. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Types.fs.js +6 -6
  245. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/WorkbookBuilder.fs.js +4 -4
  246. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsAddress.fs.js +11 -11
  247. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsColumn.fs.js +5 -5
  248. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsRow.fs.js +5 -5
  249. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsSpreadsheet.fableproj +5 -5
  250. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsWorkbook.fs.js +7 -7
  251. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsWorksheet.fs.js +11 -11
  252. package/fable_modules/FsSpreadsheet.6.3.0-alpha.4/Json/Cell.fs.js +64 -0
  253. package/fable_modules/FsSpreadsheet.6.3.0-alpha.4/Json/Column.fs.js +39 -0
  254. package/fable_modules/FsSpreadsheet.6.3.0-alpha.4/Json/Row.fs.js +39 -0
  255. package/fable_modules/FsSpreadsheet.6.3.0-alpha.4/Json/Table.fs.js +30 -0
  256. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Value.fs.js +38 -13
  257. package/fable_modules/FsSpreadsheet.6.3.0-alpha.4/Json/Workbook.fs.js +46 -0
  258. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Worksheet.fs.js +33 -8
  259. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRange.fs.js +4 -4
  260. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeAddress.fs.js +4 -4
  261. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeBase.fs.js +4 -4
  262. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeColumn.fs.js +4 -4
  263. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeRow.fs.js +2 -2
  264. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/SheetBuilder.fs.js +10 -10
  265. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Tables/FsTable.fs.js +11 -11
  266. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Tables/FsTableField.fs.js +5 -5
  267. package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Tables/FsTableRow.fs.js +2 -2
  268. package/fable_modules/{Thoth.Json.Core.0.2.1 → Thoth.Json.Core.0.4.0}/Decode.fs +67 -28
  269. package/fable_modules/{Thoth.Json.Core.0.2.1 → Thoth.Json.Core.0.4.0}/Decode.fs.js +79 -50
  270. package/fable_modules/{Thoth.Json.Core.0.2.1 → Thoth.Json.Core.0.4.0}/Encode.fs +139 -54
  271. package/fable_modules/Thoth.Json.Core.0.4.0/Encode.fs.js +192 -0
  272. package/fable_modules/Thoth.Json.Core.0.4.0/Thoth.Json.Core.fableproj +33 -0
  273. package/fable_modules/{Thoth.Json.Core.0.2.1 → Thoth.Json.Core.0.4.0}/Types.fs +12 -5
  274. package/fable_modules/{Thoth.Json.Core.0.2.1 → Thoth.Json.Core.0.4.0}/Types.fs.js +2 -2
  275. package/fable_modules/{Thoth.Json.JavaScript.0.1.0 → Thoth.Json.JavaScript.0.3.0}/Decode.fs +9 -0
  276. package/fable_modules/{Thoth.Json.JavaScript.0.1.0 → Thoth.Json.JavaScript.0.3.0}/Decode.fs.js +16 -2
  277. package/fable_modules/{Thoth.Json.JavaScript.0.1.0 → Thoth.Json.JavaScript.0.3.0}/Encode.fs +13 -5
  278. package/fable_modules/Thoth.Json.JavaScript.0.3.0/Encode.fs.js +58 -0
  279. package/fable_modules/Thoth.Json.JavaScript.0.3.0/Thoth.Json.JavaScript.fableproj +28 -0
  280. package/fable_modules/YAMLicious.0.0.1/Decode.fs.js +17 -17
  281. package/fable_modules/YAMLicious.0.0.1/Encode.fs.js +6 -6
  282. package/fable_modules/YAMLicious.0.0.1/Library.fs.js +1 -1
  283. package/fable_modules/YAMLicious.0.0.1/Persil.fs.js +4 -4
  284. package/fable_modules/YAMLicious.0.0.1/Preprocessing.fs.js +6 -6
  285. package/fable_modules/YAMLicious.0.0.1/Reader.fs.js +9 -9
  286. package/fable_modules/YAMLicious.0.0.1/RegexActivePatterns.fs.js +36 -36
  287. package/fable_modules/YAMLicious.0.0.1/Writer.fs.js +4 -4
  288. package/fable_modules/YAMLicious.0.0.1/YAMLiciousTypes.fs.js +6 -6
  289. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Array.js +10 -10
  290. package/fable_modules/fable-library-js.4.22.0/Async.d.ts +27 -0
  291. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Async.js +1 -7
  292. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/AsyncBuilder.d.ts +13 -13
  293. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/BigInt.js +4 -3
  294. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/CHANGELOG.md +40 -1
  295. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Choice.js +2 -2
  296. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Date.js +4 -5
  297. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Decimal.js +6 -6
  298. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/List.js +31 -31
  299. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MailboxProcessor.d.ts +2 -2
  300. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Map.js +10 -10
  301. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MutableMap.js +1 -1
  302. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MutableSet.js +1 -1
  303. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Random.js +2 -2
  304. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Range.js +4 -4
  305. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Reflection.d.ts +1 -1
  306. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/RegExp.js +0 -1
  307. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Result.js +2 -2
  308. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Seq.js +47 -48
  309. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Set.js +3 -3
  310. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/String.d.ts +1 -1
  311. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/String.js +17 -6
  312. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/System.Text.js +1 -1
  313. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/TimeSpan.js +2 -2
  314. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Types.d.ts +2 -2
  315. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Uri.d.ts +2 -0
  316. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Uri.js +19 -2
  317. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Util.d.ts +2 -2
  318. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Util.js +0 -1
  319. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/lib/big.js +0 -1
  320. package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/package.json +1 -1
  321. package/fable_modules/project_cracked.json +1 -1
  322. package/package.json +1 -1
  323. package/fable_modules/FsSpreadsheet.6.2.0/DSL/Operators.fs.js +0 -6
  324. package/fable_modules/FsSpreadsheet.6.2.0/Json/Cell.fs.js +0 -38
  325. package/fable_modules/FsSpreadsheet.6.2.0/Json/Column.fs.js +0 -24
  326. package/fable_modules/FsSpreadsheet.6.2.0/Json/Row.fs.js +0 -24
  327. package/fable_modules/FsSpreadsheet.6.2.0/Json/Table.fs.js +0 -15
  328. package/fable_modules/FsSpreadsheet.6.2.0/Json/Workbook.fs.js +0 -35
  329. package/fable_modules/Thoth.Json.Core.0.2.1/Encode.fs.js +0 -113
  330. package/fable_modules/Thoth.Json.Core.0.2.1/Thoth.Json.Core.fableproj +0 -28
  331. package/fable_modules/Thoth.Json.Core.0.2.1/obj/Debug/netstandard2.0/Thoth.Json.Core.AssemblyInfo.fs +0 -20
  332. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Encode.fs.js +0 -45
  333. package/fable_modules/Thoth.Json.JavaScript.0.1.0/Thoth.Json.JavaScript.fableproj +0 -21
  334. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -3
  335. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Debug/netstandard2.0/Thoth.Json.JavaScript.AssemblyInfo.fs +0 -18
  336. package/fable_modules/Thoth.Json.JavaScript.0.1.0/obj/Release/netstandard2.0/Thoth.Json.JavaScript.AssemblyInfo.fs +0 -19
  337. package/fable_modules/fable-library-js.4.16.0/Async.d.ts +0 -32
  338. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Cells/FsCell.fs +0 -0
  339. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Cells/FsCellsCollection.fs +0 -0
  340. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/CellBuilder.fs +0 -0
  341. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/ColumnBuilder.fs +0 -0
  342. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/DSL.fs +0 -0
  343. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Expression.fs +0 -0
  344. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Operators.fs +0 -0
  345. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/RowBuilder.fs +0 -0
  346. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/SheetBuilder.fs +0 -0
  347. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/TableBuilder.fs +0 -0
  348. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Transform.fs +0 -0
  349. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/Types.fs +0 -0
  350. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/DSL/WorkbookBuilder.fs +0 -0
  351. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsAddress.fs +0 -0
  352. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsColumn.fs +0 -0
  353. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsRow.fs +0 -0
  354. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsWorkbook.fs +0 -0
  355. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/FsWorksheet.fs +0 -0
  356. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Cell.fs +0 -0
  357. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Column.fs +0 -0
  358. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Row.fs +0 -0
  359. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Table.fs +0 -0
  360. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Value.fs +0 -0
  361. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Workbook.fs +0 -0
  362. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Json/Worksheet.fs +0 -0
  363. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRange.fs +0 -0
  364. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeAddress.fs +0 -0
  365. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeBase.fs +0 -0
  366. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeColumn.fs +0 -0
  367. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Ranges/FsRangeRow.fs +0 -0
  368. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/SheetBuilder.fs +0 -0
  369. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Tables/FsTable.fs +0 -0
  370. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Tables/FsTableField.fs +0 -0
  371. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/Tables/FsTableRow.fs +0 -0
  372. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/obj/Debug/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -0
  373. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/obj/Debug/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +0 -0
  374. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/obj/Release/netstandard2.0/.NETStandard,Version=v2.0.AssemblyAttributes.fs +0 -0
  375. /package/fable_modules/{FsSpreadsheet.6.2.0 → FsSpreadsheet.6.3.0-alpha.4}/obj/Release/netstandard2.0/FsSpreadsheet.AssemblyInfo.fs +0 -0
  376. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Array.d.ts +0 -0
  377. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/AsyncBuilder.js +0 -0
  378. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/BigInt.d.ts +0 -0
  379. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/BitConverter.d.ts +0 -0
  380. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/BitConverter.js +0 -0
  381. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Boolean.d.ts +0 -0
  382. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Boolean.js +0 -0
  383. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Char.d.ts +0 -0
  384. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Char.js +0 -0
  385. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Choice.d.ts +0 -0
  386. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/ConditionalWeakTable.d.ts +0 -0
  387. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/ConditionalWeakTable.js +0 -0
  388. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Date.d.ts +0 -0
  389. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/DateOffset.d.ts +0 -0
  390. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/DateOffset.js +0 -0
  391. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/DateOnly.d.ts +0 -0
  392. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/DateOnly.js +0 -0
  393. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Decimal.d.ts +0 -0
  394. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Double.d.ts +0 -0
  395. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Double.js +0 -0
  396. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Encoding.d.ts +0 -0
  397. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Encoding.js +0 -0
  398. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Event.d.ts +0 -0
  399. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Event.js +0 -0
  400. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/FSharp.Collections.d.ts +0 -0
  401. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/FSharp.Collections.js +0 -0
  402. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/FSharp.Core.CompilerServices.d.ts +0 -0
  403. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/FSharp.Core.CompilerServices.js +0 -0
  404. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/FSharp.Core.d.ts +0 -0
  405. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/FSharp.Core.js +0 -0
  406. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Global.d.ts +0 -0
  407. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Global.js +0 -0
  408. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Guid.d.ts +0 -0
  409. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Guid.js +0 -0
  410. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Int32.d.ts +0 -0
  411. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Int32.js +0 -0
  412. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/List.d.ts +0 -0
  413. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Long.d.ts +0 -0
  414. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Long.js +0 -0
  415. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MailboxProcessor.js +0 -0
  416. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Map.d.ts +0 -0
  417. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MapUtil.d.ts +0 -0
  418. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MapUtil.js +0 -0
  419. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MutableMap.d.ts +0 -0
  420. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/MutableSet.d.ts +0 -0
  421. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Native.d.ts +0 -0
  422. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Native.js +0 -0
  423. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Numeric.d.ts +0 -0
  424. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Numeric.js +0 -0
  425. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Observable.d.ts +0 -0
  426. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Observable.js +0 -0
  427. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Option.d.ts +0 -0
  428. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Option.js +0 -0
  429. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/README.md +0 -0
  430. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Random.d.ts +0 -0
  431. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Range.d.ts +0 -0
  432. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Reflection.js +0 -0
  433. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/RegExp.d.ts +0 -0
  434. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Result.d.ts +0 -0
  435. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Seq.d.ts +0 -0
  436. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Seq2.d.ts +0 -0
  437. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Seq2.js +0 -0
  438. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Set.d.ts +0 -0
  439. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/System.Collections.Generic.d.ts +0 -0
  440. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/System.Collections.Generic.js +0 -0
  441. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/System.Text.d.ts +0 -0
  442. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/SystemException.d.ts +0 -0
  443. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/SystemException.js +0 -0
  444. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/TimeOnly.d.ts +0 -0
  445. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/TimeOnly.js +0 -0
  446. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/TimeSpan.d.ts +0 -0
  447. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Timer.d.ts +0 -0
  448. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Timer.js +0 -0
  449. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Types.js +0 -0
  450. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Unicode.13.0.0.d.ts +0 -0
  451. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/Unicode.13.0.0.js +0 -0
  452. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/big.d.ts +0 -0
  453. /package/fable_modules/{fable-library-js.4.16.0 → fable-library-js.4.22.0}/lib/big.d.ts +0 -0
@@ -0,0 +1,166 @@
1
+ import { tryGetStaticPropertyInfo } from "./ReflectionUtils.fs.js";
2
+ import { getPropertyHelpers, tryGetDynamicPropertyHelper } from "./FableJS.fs.js";
3
+ import { defaultArg, value as value_1, map } from "../fable-library-js.4.22.0/Option.js";
4
+ import { sortBy, iterate, map as map_1, choose, filter } from "../fable-library-js.4.22.0/Seq.js";
5
+ import { boxHashKeyValSeq } from "./HashCodes.fs.js";
6
+ import { safeHash, comparePrimitives } from "../fable-library-js.4.22.0/Util.js";
7
+ import { class_type } from "../fable-library-js.4.22.0/Reflection.js";
8
+
9
+ export class DynamicObj {
10
+ constructor() {
11
+ this.properties = (new Map([]));
12
+ }
13
+ get Properties() {
14
+ const this$ = this;
15
+ return this$.properties;
16
+ }
17
+ set Properties(value) {
18
+ const this$ = this;
19
+ this$.properties = value;
20
+ }
21
+ static ofDict(dynamicProperties) {
22
+ const obj = new DynamicObj();
23
+ obj.Properties = dynamicProperties;
24
+ return obj;
25
+ }
26
+ TryGetStaticPropertyHelper(propertyName) {
27
+ const this$ = this;
28
+ return tryGetStaticPropertyInfo(this$, propertyName);
29
+ }
30
+ TryGetDynamicPropertyHelper(propertyName) {
31
+ const this$ = this;
32
+ return tryGetDynamicPropertyHelper(this$, propertyName);
33
+ }
34
+ TryGetPropertyHelper(propertyName) {
35
+ const this$ = this;
36
+ const matchValue = this$.TryGetStaticPropertyHelper(propertyName);
37
+ return (matchValue == null) ? this$.TryGetDynamicPropertyHelper(propertyName) : matchValue;
38
+ }
39
+ TryGetPropertyValue(propertyName) {
40
+ const this$ = this;
41
+ return map((pi) => pi.GetValue(this$), this$.TryGetPropertyHelper(propertyName));
42
+ }
43
+ GetPropertyValue(propertyName) {
44
+ const this$ = this;
45
+ const matchValue = this$.TryGetPropertyValue(propertyName);
46
+ if (matchValue == null) {
47
+ throw new Error(`No dynamic or static property "${propertyName}" does exist on object.`);
48
+ }
49
+ else {
50
+ return value_1(matchValue);
51
+ }
52
+ }
53
+ SetProperty(propertyName, propertyValue) {
54
+ const this$ = this;
55
+ const matchValue = this$.TryGetStaticPropertyHelper(propertyName);
56
+ if (matchValue == null) {
57
+ this$[propertyName] = propertyValue;
58
+ }
59
+ else {
60
+ const pi = matchValue;
61
+ if (pi.IsMutable) {
62
+ pi.SetValue(this$, propertyValue);
63
+ }
64
+ else {
65
+ throw new Error(`Cannot set value for static, immutable property "${propertyName}"`);
66
+ }
67
+ }
68
+ }
69
+ RemoveProperty(propertyName) {
70
+ const this$ = this;
71
+ const matchValue = this$.TryGetPropertyHelper(propertyName);
72
+ if (matchValue == null) {
73
+ return false;
74
+ }
75
+ else if (matchValue.IsMutable) {
76
+ const pi_1 = matchValue;
77
+ pi_1.RemoveValue(this$);
78
+ return true;
79
+ }
80
+ else {
81
+ throw new Error(`Cannot remove value for static, immutable property "${propertyName}"`);
82
+ }
83
+ }
84
+ GetPropertyHelpers(includeInstanceProperties) {
85
+ const this$ = this;
86
+ return filter((p) => (p.Name.toLocaleLowerCase() !== "properties"), filter((pd) => {
87
+ if (includeInstanceProperties) {
88
+ return true;
89
+ }
90
+ else {
91
+ return pd.IsDynamic;
92
+ }
93
+ }, getPropertyHelpers(this$)));
94
+ }
95
+ GetProperties(includeInstanceProperties) {
96
+ const this$ = this;
97
+ return choose((kv) => {
98
+ if (kv.Name !== "properties") {
99
+ return [kv.Name, kv.GetValue(this$)];
100
+ }
101
+ else {
102
+ return undefined;
103
+ }
104
+ }, this$.GetPropertyHelpers(includeInstanceProperties));
105
+ }
106
+ GetPropertyNames(includeInstanceProperties) {
107
+ const this$ = this;
108
+ return map_1((kv) => kv[0], this$.GetProperties(includeInstanceProperties));
109
+ }
110
+ CopyDynamicPropertiesTo(target, overWrite) {
111
+ const this$ = this;
112
+ const overWrite_1 = defaultArg(overWrite, false);
113
+ iterate((kv) => {
114
+ let pi;
115
+ const matchValue = target.TryGetPropertyHelper(kv[0]);
116
+ if (matchValue == null) {
117
+ target.SetProperty(kv[0], kv[1]);
118
+ }
119
+ else if ((pi = matchValue, overWrite_1)) {
120
+ const pi_1 = matchValue;
121
+ pi_1.SetValue(target, kv[1]);
122
+ }
123
+ else {
124
+ throw new Error(`Property "${kv[0]}" already exists on target object and overWrite was not set to true.`);
125
+ }
126
+ }, this$.GetProperties(false));
127
+ }
128
+ CopyDynamicProperties() {
129
+ const this$ = this;
130
+ const target = new DynamicObj();
131
+ this$.CopyDynamicPropertiesTo(target);
132
+ return target;
133
+ }
134
+ static op_Dynamic(lookup, name) {
135
+ const matchValue = lookup.TryGetPropertyValue(name);
136
+ if (matchValue == null) {
137
+ throw new Error();
138
+ }
139
+ else {
140
+ return value_1(matchValue);
141
+ }
142
+ }
143
+ static op_DynamicAssignment(lookup, name, value) {
144
+ lookup.SetProperty(name, value);
145
+ }
146
+ GetHashCode() {
147
+ const this$ = this;
148
+ return boxHashKeyValSeq(sortBy((pair) => pair[0], this$.GetProperties(true), {
149
+ Compare: comparePrimitives,
150
+ })) | 0;
151
+ }
152
+ Equals(o) {
153
+ let other;
154
+ const this$ = this;
155
+ return (o instanceof DynamicObj) && ((other = o, safeHash(this$) === safeHash(other)));
156
+ }
157
+ }
158
+
159
+ export function DynamicObj_$reflection() {
160
+ return class_type("DynamicObj.DynamicObj", undefined, DynamicObj);
161
+ }
162
+
163
+ export function DynamicObj_$ctor() {
164
+ return new DynamicObj();
165
+ }
166
+
@@ -0,0 +1,162 @@
1
+ namespace DynamicObj
2
+
3
+
4
+ #if FABLE_COMPILER_JAVASCRIPT || FABLE_COMPILER_TYPESCRIPT || !FABLE_COMPILER
5
+
6
+ open Fable.Core
7
+
8
+ module FableJS =
9
+
10
+ module PropertyDescriptor =
11
+
12
+ [<Emit("$0[$1]")>]
13
+ let tryGetPropertyValue (o:obj) (propName:string) : obj option =
14
+ jsNative
15
+
16
+ let tryGetIsWritable (o:obj) : bool option =
17
+ tryGetPropertyValue o "writable"
18
+ |> Option.map (fun v -> v :?> bool)
19
+
20
+ let containsGetter (o:obj) : bool =
21
+ match tryGetPropertyValue o "get" with
22
+ | Some _ -> true
23
+ | None -> false
24
+
25
+ let containsSetter (o:obj) : bool =
26
+ match tryGetPropertyValue o "set" with
27
+ | Some _ -> true
28
+ | None -> false
29
+
30
+ let isWritable (o:obj) : bool =
31
+ match tryGetIsWritable o with
32
+ | Some v -> v
33
+ | None -> containsSetter o
34
+
35
+ [<Emit("typeof $0 === 'function'")>]
36
+ let valueIsFunction (o:obj) : bool =
37
+ jsNative
38
+
39
+ let isFunction (o:obj) : bool =
40
+ match tryGetPropertyValue o "value" with
41
+ | Some v -> valueIsFunction v
42
+ | None -> false
43
+
44
+ [<Emit("Object.getOwnPropertyNames($0)")>]
45
+ let getOwnPropertyNames (o:obj) : string [] =
46
+ jsNative
47
+
48
+ [<Emit("Object.getPrototypeOf($0)")>]
49
+ let getPrototype (o:obj) : obj =
50
+ jsNative
51
+
52
+ let getStaticPropertyNames (o:obj) =
53
+ getPrototype o
54
+ |> getOwnPropertyNames
55
+ |> Array.filter (fun n -> n <> "constructor")
56
+
57
+ [<Emit("$0[$1] = $2")>]
58
+ let setPropertyValue (o:obj) (propName:string) (value:obj) =
59
+ jsNative
60
+
61
+ let createSetter (propName:string) =
62
+ fun (o:obj) (value:obj) ->
63
+ setPropertyValue o propName value
64
+
65
+ let removeStaticPropertyValue (o:obj) (propName:string) =
66
+ setPropertyValue o propName null
67
+
68
+ [<Emit("delete $0[$1]")>]
69
+ let deleteDynamicPropertyValue (o:obj) (propName:string) =
70
+ jsNative
71
+
72
+ let createRemover (propName:string) (isStatic : bool) =
73
+ if isStatic then
74
+ fun (o:obj) ->
75
+ removeStaticPropertyValue o propName
76
+ else
77
+ fun (o:obj) ->
78
+ deleteDynamicPropertyValue o propName
79
+
80
+
81
+ [<Emit("$0[$1]")>]
82
+ let getPropertyValue (o:obj) (propName:string) =
83
+ jsNative
84
+
85
+ let createGetter (propName:string) =
86
+ fun (o:obj) ->
87
+ getPropertyValue o propName
88
+
89
+ [<Emit("Object.getOwnPropertyDescriptor($0, $1)")>]
90
+ let tryGetPropertyDescriptor (o:obj) (propName:string) : obj option =
91
+ jsNative
92
+
93
+ let tryGetStaticPropertyDescriptor (o:obj) (propName:string) : obj option=
94
+ tryGetPropertyDescriptor (getPrototype o) propName
95
+
96
+ let tryStaticPropertyHelperFromDescriptor (pd:obj) (name:string) : PropertyHelper option =
97
+ let isWritable = PropertyDescriptor.isWritable pd
98
+ if PropertyDescriptor.isFunction pd then
99
+ None
100
+ else
101
+ {
102
+ Name = name
103
+ IsStatic = true
104
+ IsDynamic = false
105
+ IsMutable = isWritable
106
+ IsImmutable = not isWritable
107
+ GetValue = createGetter name
108
+ SetValue = createSetter name
109
+ RemoveValue = createRemover name true
110
+ }
111
+ |> Some
112
+
113
+ let tryGetStaticPropertyHelper (o:obj) (propName:string) : PropertyHelper option =
114
+ tryGetStaticPropertyDescriptor o propName
115
+ |> Option.bind (fun pd -> tryStaticPropertyHelperFromDescriptor pd propName)
116
+
117
+ let getStaticPropertyHelpers (o:obj) : PropertyHelper [] =
118
+ getStaticPropertyNames o
119
+ |> Array.choose (tryGetStaticPropertyHelper o)
120
+
121
+ let tryGetDynamicPropertyDescriptor (o:obj) (propName:string) : obj option =
122
+ tryGetPropertyDescriptor o propName
123
+
124
+ let transpiledPropertyRegex = "^[a-zA-Z]+@[0-9]+$"
125
+
126
+ let isTranspiledPropertyHelper (propertyName : string) =
127
+ System.Text.RegularExpressions.Regex.IsMatch(propertyName, transpiledPropertyRegex)
128
+
129
+ let tryDynamicPropertyHelperFromDescriptor (pd:obj) (name:string) : PropertyHelper option =
130
+ if PropertyDescriptor.isFunction pd || isTranspiledPropertyHelper name then
131
+ None
132
+ else
133
+ {
134
+ Name = name
135
+ IsStatic = false
136
+ IsDynamic = true
137
+ IsMutable = true
138
+ IsImmutable = false
139
+ GetValue = createGetter name
140
+ SetValue = createSetter name
141
+ RemoveValue = createRemover name false
142
+ }
143
+ |> Some
144
+
145
+ let tryGetDynamicPropertyHelper (o:obj) (propName:string) : PropertyHelper option =
146
+ tryGetDynamicPropertyDescriptor o propName
147
+ |> Option.bind (fun pd -> tryDynamicPropertyHelperFromDescriptor pd propName)
148
+
149
+ let getDynamicPropertyHelpers (o:obj) : PropertyHelper [] =
150
+ getOwnPropertyNames o
151
+ |> Array.choose (tryGetDynamicPropertyHelper o)
152
+
153
+ let getPropertyHelpers (o:obj) =
154
+ getDynamicPropertyHelpers o
155
+ |> Array.append (getStaticPropertyHelpers o)
156
+
157
+ let getPropertyNames (o:obj) =
158
+ getPropertyHelpers o
159
+ |> Array.map (fun h -> h.Name)
160
+
161
+
162
+ #endif
@@ -0,0 +1,141 @@
1
+ import { bind, value as value_1, map } from "../fable-library-js.4.22.0/Option.js";
2
+ import { defaultOf } from "../fable-library-js.4.22.0/Util.js";
3
+ import { PropertyHelper } from "./PropertyHelper.fs.js";
4
+ import { map as map_1, append, choose } from "../fable-library-js.4.22.0/Array.js";
5
+ import { create, isMatch } from "../fable-library-js.4.22.0/RegExp.js";
6
+
7
+ export function PropertyDescriptor_tryGetIsWritable(o) {
8
+ return map((v) => v, o["writable"]);
9
+ }
10
+
11
+ export function PropertyDescriptor_containsGetter(o) {
12
+ const matchValue = o["get"];
13
+ if (matchValue == null) {
14
+ return false;
15
+ }
16
+ else {
17
+ return true;
18
+ }
19
+ }
20
+
21
+ export function PropertyDescriptor_containsSetter(o) {
22
+ const matchValue = o["set"];
23
+ if (matchValue == null) {
24
+ return false;
25
+ }
26
+ else {
27
+ return true;
28
+ }
29
+ }
30
+
31
+ export function PropertyDescriptor_isWritable(o) {
32
+ const matchValue = PropertyDescriptor_tryGetIsWritable(o);
33
+ if (matchValue == null) {
34
+ return PropertyDescriptor_containsSetter(o);
35
+ }
36
+ else {
37
+ return matchValue;
38
+ }
39
+ }
40
+
41
+ export function PropertyDescriptor_isFunction(o) {
42
+ const matchValue = o["value"];
43
+ if (matchValue == null) {
44
+ return false;
45
+ }
46
+ else {
47
+ const v = value_1(matchValue);
48
+ return typeof v === 'function';
49
+ }
50
+ }
51
+
52
+ export function getStaticPropertyNames(o) {
53
+ let array;
54
+ const o_1 = Object.getPrototypeOf(o);
55
+ array = (Object.getOwnPropertyNames(o_1));
56
+ return array.filter((n) => (n !== "constructor"));
57
+ }
58
+
59
+ export function createSetter(propName, o, value) {
60
+ return o[propName] = value;
61
+ }
62
+
63
+ export function removeStaticPropertyValue(o, propName) {
64
+ return o[propName] = defaultOf();
65
+ }
66
+
67
+ export function createRemover(propName, isStatic) {
68
+ if (isStatic) {
69
+ return (o) => removeStaticPropertyValue(o, propName);
70
+ }
71
+ else {
72
+ return (o_1) => (delete o_1[propName]);
73
+ }
74
+ }
75
+
76
+ export function createGetter(propName, o) {
77
+ return o[propName];
78
+ }
79
+
80
+ export function tryGetStaticPropertyDescriptor(o, propName) {
81
+ return Object.getOwnPropertyDescriptor((Object.getPrototypeOf(o)), propName);
82
+ }
83
+
84
+ export function tryStaticPropertyHelperFromDescriptor(pd, name) {
85
+ const isWritable = PropertyDescriptor_isWritable(pd);
86
+ if (PropertyDescriptor_isFunction(pd)) {
87
+ return undefined;
88
+ }
89
+ else {
90
+ return new PropertyHelper(name, true, false, isWritable, !isWritable, (o) => createGetter(name, o), (o_1, value) => {
91
+ createSetter(name, o_1, value);
92
+ }, createRemover(name, true));
93
+ }
94
+ }
95
+
96
+ export function tryGetStaticPropertyHelper(o, propName) {
97
+ return bind((pd) => tryStaticPropertyHelperFromDescriptor(pd, propName), tryGetStaticPropertyDescriptor(o, propName));
98
+ }
99
+
100
+ export function getStaticPropertyHelpers(o) {
101
+ return choose((propName) => tryGetStaticPropertyHelper(o, propName), getStaticPropertyNames(o));
102
+ }
103
+
104
+ export function tryGetDynamicPropertyDescriptor(o, propName) {
105
+ return Object.getOwnPropertyDescriptor(o, propName);
106
+ }
107
+
108
+ export const transpiledPropertyRegex = "^[a-zA-Z]+@[0-9]+$";
109
+
110
+ export function isTranspiledPropertyHelper(propertyName) {
111
+ return isMatch(create(transpiledPropertyRegex), propertyName);
112
+ }
113
+
114
+ export function tryDynamicPropertyHelperFromDescriptor(pd, name) {
115
+ if (PropertyDescriptor_isFunction(pd) ? true : isTranspiledPropertyHelper(name)) {
116
+ return undefined;
117
+ }
118
+ else {
119
+ return new PropertyHelper(name, false, true, true, false, (o) => createGetter(name, o), (o_1, value) => {
120
+ createSetter(name, o_1, value);
121
+ }, createRemover(name, false));
122
+ }
123
+ }
124
+
125
+ export function tryGetDynamicPropertyHelper(o, propName) {
126
+ return bind((pd) => tryDynamicPropertyHelperFromDescriptor(pd, propName), tryGetDynamicPropertyDescriptor(o, propName));
127
+ }
128
+
129
+ export function getDynamicPropertyHelpers(o) {
130
+ return choose((propName) => tryGetDynamicPropertyHelper(o, propName), Object.getOwnPropertyNames(o));
131
+ }
132
+
133
+ export function getPropertyHelpers(o) {
134
+ const array_1 = getDynamicPropertyHelpers(o);
135
+ return append(getStaticPropertyHelpers(o), array_1);
136
+ }
137
+
138
+ export function getPropertyNames(o) {
139
+ return map_1((h) => h.Name, getPropertyHelpers(o));
140
+ }
141
+
@@ -0,0 +1,215 @@
1
+ namespace DynamicObj
2
+
3
+
4
+ #if FABLE_COMPILER_PYTHON || !FABLE_COMPILER
5
+
6
+ open Fable.Core
7
+ open System.Collections.Generic
8
+
9
+ module FablePy =
10
+
11
+ module Dictionary =
12
+
13
+ let ofSeq (s:seq<KeyValuePair<_,_>>) =
14
+ let d = new System.Collections.Generic.Dictionary<_,_>()
15
+ s |> Seq.iter (fun kv -> d.Add(kv.Key, kv.Value))
16
+ d
17
+
18
+ let choose (f: 'T -> 'U option) (d:System.Collections.Generic.Dictionary<_,'T>) =
19
+ let nd = new System.Collections.Generic.Dictionary<_,'U>()
20
+ for kv in d do
21
+ match f kv.Value with
22
+ | Some v -> nd.Add(kv.Key, v)
23
+ | None -> ()
24
+ nd
25
+
26
+ type PropertyObject =
27
+ abstract fget : obj
28
+ abstract fset : obj
29
+
30
+ module PropertyObject =
31
+
32
+ [<Emit("$0.fget")>]
33
+ let tryGetGetter (o:PropertyObject) : (obj -> obj) option =
34
+ nativeOnly
35
+
36
+ [<Emit("$0.fset")>]
37
+ let tryGetSetter (o:PropertyObject) : (obj -> obj -> unit) option =
38
+ nativeOnly
39
+
40
+ let getGetter (o : PropertyObject) : obj -> obj =
41
+ match tryGetGetter o with
42
+ | Some f -> f
43
+ | None -> fun o -> failwith ("Property does not contain getter")
44
+
45
+ let getSetter (o:PropertyObject) : obj -> obj -> unit =
46
+ match tryGetSetter o with
47
+ | Some f -> f
48
+ | None -> fun s o -> failwith ("Property does not contain setter")
49
+
50
+ let containsGetter (o:PropertyObject) : bool =
51
+ match tryGetGetter o with
52
+ | Some _ -> true
53
+ | None -> false
54
+
55
+ let containsSetter (o:PropertyObject) : bool =
56
+ match tryGetSetter o with
57
+ | Some _ -> true
58
+ | None -> false
59
+
60
+ let isWritable (o:PropertyObject) : bool =
61
+ containsSetter o
62
+
63
+ [<Emit("isinstance($0, property)")>]
64
+ let isProperty (o:obj) : bool =
65
+ nativeOnly
66
+
67
+ let tryProperty (o:obj) : PropertyObject option =
68
+ if isProperty o then
69
+ Some (o :?> PropertyObject)
70
+ else
71
+ None
72
+
73
+ [<Emit("getattr($0,$1)")>]
74
+ let getPropertyValue (o:obj) (propName:string) =
75
+ nativeOnly
76
+
77
+ let createGetter (propName:string) =
78
+ fun (o:obj) ->
79
+ getPropertyValue o propName
80
+
81
+ [<Emit("setattr($0,$1,$2)")>]
82
+ let setPropertyValue (o:obj) (propName:string) (value:obj) : unit =
83
+ nativeOnly
84
+
85
+ let createSetter (propName:string) =
86
+ fun (o:obj) (value:obj) ->
87
+ setPropertyValue o propName value
88
+
89
+
90
+ [<Emit("vars($0).items()")>]
91
+ let getOwnMemberObjects (o:obj) : Dictionary<string,obj> =
92
+ nativeOnly
93
+
94
+ [<Emit("$0.__class__")>]
95
+ let getClass (o:obj) : obj =
96
+ nativeOnly
97
+
98
+ let getStaticPropertyObjects (o:obj) : Dictionary<string,PropertyObject> =
99
+ getClass o
100
+ |> getOwnMemberObjects
101
+ |> Dictionary.choose PropertyObject.tryProperty
102
+
103
+ let removeStaticPropertyValue (o:obj) (propName:string) =
104
+ setPropertyValue o propName null
105
+
106
+ [<Emit("delattr($0,$1)")>]
107
+ let deleteDynamicPropertyValue (o:obj) (propName:string) =
108
+ nativeOnly
109
+
110
+ let createRemover (propName:string) (isStatic : bool) =
111
+ if isStatic then
112
+ fun (o:obj) ->
113
+ removeStaticPropertyValue o propName
114
+ else
115
+ fun (o:obj) ->
116
+ deleteDynamicPropertyValue o propName
117
+
118
+
119
+
120
+ [<Emit("$0.__dict__.get($1)")>]
121
+ let getMemberObject (o:obj) (propName:string) =
122
+ nativeOnly
123
+
124
+ let tryGetPropertyObject (o:obj) (propName:string) : PropertyObject option =
125
+ match PropertyObject.tryProperty (getMemberObject o propName) with
126
+ | Some po -> Some po
127
+ | None -> None
128
+
129
+ let tryGetDynamicPropertyHelper (o:obj) (propName:string) : PropertyHelper option =
130
+ match getMemberObject o propName with
131
+ | Some _ ->
132
+ Some {
133
+ Name = propName
134
+ IsStatic = false
135
+ IsDynamic = true
136
+ IsMutable = true
137
+ IsImmutable = false
138
+ GetValue = createGetter propName
139
+ SetValue = createSetter propName
140
+ RemoveValue = fun o -> deleteDynamicPropertyValue o propName
141
+ }
142
+ | None -> None
143
+
144
+ let tryGetStaticPropertyHelper (o:obj) (propName:string) : PropertyHelper option =
145
+ match tryGetPropertyObject (getClass o) propName with
146
+ | Some po ->
147
+ let isWritable = PropertyObject.isWritable po
148
+ Some {
149
+ Name = propName
150
+ IsStatic = true
151
+ IsDynamic = false
152
+ IsMutable = isWritable
153
+ IsImmutable = not isWritable
154
+ GetValue = createGetter propName
155
+ SetValue = createSetter propName
156
+ RemoveValue = fun o -> removeStaticPropertyValue o propName
157
+ }
158
+ | None -> None
159
+
160
+ let transpiledPropertyRegex = "^([a-zA-Z]+_)+[0-9]+$"
161
+
162
+ let isTranspiledPropertyHelper (propertyName : string) =
163
+ System.Text.RegularExpressions.Regex.IsMatch(propertyName, transpiledPropertyRegex)
164
+
165
+
166
+ let getDynamicPropertyHelpers (o:obj) : PropertyHelper [] =
167
+ getOwnMemberObjects o
168
+ |> Seq.choose (fun kv ->
169
+ let n = kv.Key
170
+ if isTranspiledPropertyHelper n then
171
+ None
172
+ else
173
+ {
174
+ Name = n
175
+ IsStatic = false
176
+ IsDynamic = true
177
+ IsMutable = true
178
+ IsImmutable = false
179
+ GetValue = createGetter n
180
+ SetValue = createSetter n
181
+ RemoveValue = fun o -> deleteDynamicPropertyValue o n
182
+ }
183
+ |> Some
184
+ )
185
+ |> Seq.toArray
186
+
187
+
188
+ let getStaticPropertyHelpers (o:obj) : PropertyHelper [] =
189
+ getStaticPropertyObjects o
190
+ |> Seq.map (fun kv ->
191
+ let n = kv.Key
192
+ let po = kv.Value
193
+ {
194
+ Name = n
195
+ IsStatic = true
196
+ IsDynamic = false
197
+ IsMutable = PropertyObject.isWritable po
198
+ IsImmutable = not (PropertyObject.isWritable po)
199
+ GetValue = createGetter n
200
+ SetValue = createSetter n
201
+ RemoveValue = fun o -> removeStaticPropertyValue o n
202
+ }
203
+ )
204
+ |> Seq.toArray
205
+
206
+ let getPropertyHelpers (o:obj) =
207
+ getDynamicPropertyHelpers o
208
+ |> Array.append (getStaticPropertyHelpers o)
209
+
210
+ let getPropertyNames (o:obj) =
211
+ getPropertyHelpers o
212
+ |> Array.map (fun h -> h.Name)
213
+
214
+
215
+ #endif