├── .config └── dotnet-tools.json ├── .gitignore ├── .paket └── Paket.Restore.targets ├── LICENSE ├── README.md ├── RELEASE_NOTES.md ├── build.cmd ├── build.fsx ├── build.sh ├── global.json ├── paket.dependencies ├── paket.lock ├── paket.references └── src ├── Fable.React.Native.fsproj ├── Fable.ReactNative.Types.fs ├── Fable.ReactNative.fs ├── Fable.XmlDom.fs └── extra ├── react-native-camera └── Fable.ReactNativeCamera.fs ├── react-native-dialog └── Fable.ReactNativeDialog.fs ├── react-native-fs └── Fable.ReactNativeFileSystem.fs ├── react-native-image-picker ├── Fable.ReactNativeImagePicker.Types.fs └── Fable.ReactNativeImagePicker.fs ├── react-native-image-resizer ├── Fable.ReactNativeImageResizer.Types.fs └── Fable.ReactNativeImageResizer.fs ├── react-native-maps ├── Fable.ReactNativeMaps.fs └── location.js ├── react-native-modal-datetime-picker └── Fable.ReactNativeDateTimePicker.fs ├── react-native-popup-menu ├── Fable.ReactNativePopupMenu.Types.fs └── Fable.ReactNativePopupMenu.fs ├── react-native-push-notification ├── Fable.ReactNativePushNotification.Types.fs └── Fable.ReactNativePushNotification.fs ├── react-native-signature-view └── Fable.ReactNativeSignatureView.fs ├── react-native-sqlite-storage └── Fable.ReactNativeSqlite.fs └── react-native-video ├── Fable.ReactNativeVideo.Types.fs └── Fable.ReactNativeVideo.fs /.config/dotnet-tools.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "isRoot": true, 4 | "tools": { 5 | "fake-cli": { 6 | "version": "6.0.0", 7 | "commands": [ 8 | "fake" 9 | ] 10 | }, 11 | "paket": { 12 | "version": "7.2.1", 13 | "commands": [ 14 | "paket" 15 | ] 16 | }, 17 | "fable": { 18 | "version": "4.0.3", 19 | "commands": [ 20 | "fable" 21 | ] 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | ## 4 | ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore 5 | 6 | # User-specific files 7 | *.suo 8 | *.user 9 | *.userosscache 10 | *.sln.docstates 11 | 12 | # User-specific files (MonoDevelop/Xamarin Studio) 13 | *.userprefs 14 | 15 | # Build results 16 | [Dd]ebug/ 17 | [Dd]ebugPublic/ 18 | [Rr]elease/ 19 | [Rr]eleases/ 20 | x64/ 21 | x86/ 22 | bld/ 23 | [Bb]in/ 24 | [Oo]bj/ 25 | [Ll]og/ 26 | 27 | # Visual Studio 2015 cache/options directory 28 | .vs/ 29 | # Uncomment if you have tasks that create the project's static files in wwwroot 30 | #wwwroot/ 31 | 32 | # MSTest test Results 33 | [Tt]est[Rr]esult*/ 34 | [Bb]uild[Ll]og.* 35 | 36 | # NUNIT 37 | *.VisualState.xml 38 | TestResult.xml 39 | 40 | # Build Results of an ATL Project 41 | [Dd]ebugPS/ 42 | [Rr]eleasePS/ 43 | dlldata.c 44 | 45 | # .NET Core 46 | project.lock.json 47 | project.fragment.lock.json 48 | artifacts/ 49 | **/Properties/launchSettings.json 50 | 51 | *_i.c 52 | *_p.c 53 | *_i.h 54 | *.ilk 55 | *.meta 56 | *.obj 57 | *.pch 58 | *.pdb 59 | *.pgc 60 | *.pgd 61 | *.rsp 62 | *.sbr 63 | *.tlb 64 | *.tli 65 | *.tlh 66 | *.tmp 67 | *.tmp_proj 68 | *.log 69 | *.vspscc 70 | *.vssscc 71 | .builds 72 | *.pidb 73 | *.svclog 74 | *.scc 75 | 76 | # Chutzpah Test files 77 | _Chutzpah* 78 | 79 | # Visual C++ cache files 80 | ipch/ 81 | *.aps 82 | *.ncb 83 | *.opendb 84 | *.opensdf 85 | *.sdf 86 | *.cachefile 87 | *.VC.db 88 | *.VC.VC.opendb 89 | 90 | # Visual Studio profiler 91 | *.psess 92 | *.vsp 93 | *.vspx 94 | *.sap 95 | 96 | # TFS 2012 Local Workspace 97 | $tf/ 98 | 99 | # Guidance Automation Toolkit 100 | *.gpState 101 | 102 | # ReSharper is a .NET coding add-in 103 | _ReSharper*/ 104 | *.[Rr]e[Ss]harper 105 | *.DotSettings.user 106 | 107 | # JustCode is a .NET coding add-in 108 | .JustCode 109 | 110 | # TeamCity is a build add-in 111 | _TeamCity* 112 | 113 | # DotCover is a Code Coverage Tool 114 | *.dotCover 115 | 116 | # Visual Studio code coverage results 117 | *.coverage 118 | *.coveragexml 119 | 120 | # NCrunch 121 | _NCrunch_* 122 | .*crunch*.local.xml 123 | nCrunchTemp_* 124 | 125 | # MightyMoose 126 | *.mm.* 127 | AutoTest.Net/ 128 | 129 | # Web workbench (sass) 130 | .sass-cache/ 131 | 132 | # Installshield output folder 133 | [Ee]xpress/ 134 | 135 | # DocProject is a documentation generator add-in 136 | DocProject/buildhelp/ 137 | DocProject/Help/*.HxT 138 | DocProject/Help/*.HxC 139 | DocProject/Help/*.hhc 140 | DocProject/Help/*.hhk 141 | DocProject/Help/*.hhp 142 | DocProject/Help/Html2 143 | DocProject/Help/html 144 | 145 | # Click-Once directory 146 | publish/ 147 | 148 | # Publish Web Output 149 | *.[Pp]ublish.xml 150 | *.azurePubxml 151 | # TODO: Comment the next line if you want to checkin your web deploy settings 152 | # but database connection strings (with potential passwords) will be unencrypted 153 | *.pubxml 154 | *.publishproj 155 | 156 | # Microsoft Azure Web App publish settings. Comment the next line if you want to 157 | # checkin your Azure Web App publish settings, but sensitive information contained 158 | # in these scripts will be unencrypted 159 | PublishScripts/ 160 | 161 | # NuGet Packages 162 | *.nupkg 163 | # The packages folder can be ignored because of Package Restore 164 | **/packages/* 165 | # Uncomment if necessary however generally it will be regenerated when needed 166 | #!**/packages/repositories.config 167 | # NuGet v3's project.json files produces more ignorable files 168 | *.nuget.props 169 | *.nuget.targets 170 | 171 | # Microsoft Azure Build Output 172 | csx/ 173 | *.build.csdef 174 | 175 | # Microsoft Azure Emulator 176 | ecf/ 177 | rcf/ 178 | 179 | # Windows Store app package directories and files 180 | AppPackages/ 181 | BundleArtifacts/ 182 | Package.StoreAssociation.xml 183 | _pkginfo.txt 184 | 185 | # Visual Studio cache files 186 | # files ending in .cache can be ignored 187 | *.[Cc]ache 188 | # but keep track of directories ending in .cache 189 | !*.[Cc]ache/ 190 | 191 | # Others 192 | ClientBin/ 193 | ~$* 194 | *~ 195 | *.dbmdl 196 | *.dbproj.schemaview 197 | *.jfm 198 | *.pfx 199 | *.publishsettings 200 | orleans.codegen.cs 201 | 202 | # Since there are multiple workflows, uncomment next line to ignore bower_components 203 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) 204 | #bower_components/ 205 | 206 | # RIA/Silverlight projects 207 | Generated_Code/ 208 | 209 | # Backup & report files from converting an old project file 210 | # to a newer Visual Studio version. Backup files are not needed, 211 | # because we have git ;-) 212 | _UpgradeReport_Files/ 213 | Backup*/ 214 | UpgradeLog*.XML 215 | UpgradeLog*.htm 216 | 217 | # SQL Server files 218 | *.mdf 219 | *.ldf 220 | *.ndf 221 | 222 | # Business Intelligence projects 223 | *.rdl.data 224 | *.bim.layout 225 | *.bim_*.settings 226 | 227 | # Microsoft Fakes 228 | FakesAssemblies/ 229 | 230 | # GhostDoc plugin setting file 231 | *.GhostDoc.xml 232 | 233 | # Node.js Tools for Visual Studio 234 | .ntvs_analysis.dat 235 | node_modules/ 236 | 237 | # Typescript v1 declaration files 238 | typings/ 239 | 240 | # Visual Studio 6 build log 241 | *.plg 242 | 243 | # Visual Studio 6 workspace options file 244 | *.opt 245 | 246 | # Visual Studio 6 auto-generated workspace file (contains which files were open etc.) 247 | *.vbw 248 | 249 | # Visual Studio LightSwitch build output 250 | **/*.HTMLClient/GeneratedArtifacts 251 | **/*.DesktopClient/GeneratedArtifacts 252 | **/*.DesktopClient/ModelManifest.xml 253 | **/*.Server/GeneratedArtifacts 254 | **/*.Server/ModelManifest.xml 255 | _Pvt_Extensions 256 | 257 | # Paket dependency manager 258 | .paket/paket.exe 259 | paket-files/ 260 | 261 | # FAKE - F# Make 262 | .fake/ 263 | 264 | # JetBrains Rider 265 | .idea/ 266 | *.sln.iml 267 | 268 | # CodeRush 269 | .cr/ 270 | 271 | # Python Tools for Visual Studio (PTVS) 272 | __pycache__/ 273 | *.pyc 274 | 275 | # Cake - Uncomment if you are using it 276 | # tools/** 277 | # !tools/packages.config 278 | 279 | # Telerik's JustMock configuration file 280 | *.jmconfig 281 | 282 | # BizTalk build output 283 | *.btp.cs 284 | *.btm.cs 285 | *.odx.cs 286 | *.xsd.cs 287 | /release.cmd 288 | *.orig 289 | /.ionide/ 290 | -------------------------------------------------------------------------------- /.paket/Paket.Restore.targets: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 8 | 9 | $(MSBuildVersion) 10 | 15.0.0 11 | false 12 | true 13 | 14 | true 15 | $(MSBuildThisFileDirectory) 16 | $(MSBuildThisFileDirectory)..\ 17 | $(PaketRootPath)paket-files\paket.restore.cached 18 | $(PaketRootPath)paket.lock 19 | classic 20 | proj 21 | assembly 22 | native 23 | /Library/Frameworks/Mono.framework/Commands/mono 24 | mono 25 | 26 | 27 | $(PaketRootPath)paket.bootstrapper.exe 28 | $(PaketToolsPath)paket.bootstrapper.exe 29 | $([System.IO.Path]::GetDirectoryName("$(PaketBootStrapperExePath)"))\ 30 | 31 | "$(PaketBootStrapperExePath)" 32 | $(MonoPath) --runtime=v4.0.30319 "$(PaketBootStrapperExePath)" 33 | 34 | 35 | 36 | 37 | true 38 | true 39 | 40 | 41 | True 42 | 43 | 44 | False 45 | 46 | $(BaseIntermediateOutputPath.TrimEnd('\').TrimEnd('\/')) 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | $(PaketRootPath)paket 56 | $(PaketToolsPath)paket 57 | 58 | 59 | 60 | 61 | 62 | $(PaketRootPath)paket.exe 63 | $(PaketToolsPath)paket.exe 64 | 65 | 66 | 67 | 68 | 69 | <_DotnetToolsJson Condition="Exists('$(PaketRootPath)/.config/dotnet-tools.json')">$([System.IO.File]::ReadAllText("$(PaketRootPath)/.config/dotnet-tools.json")) 70 | <_ConfigContainsPaket Condition=" '$(_DotnetToolsJson)' != ''">$(_DotnetToolsJson.Contains('"paket"')) 71 | <_ConfigContainsPaket Condition=" '$(_ConfigContainsPaket)' == ''">false 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | <_PaketCommand>dotnet paket 83 | 84 | 85 | 86 | 87 | 88 | $(PaketToolsPath)paket 89 | $(PaketBootStrapperExeDir)paket 90 | 91 | 92 | paket 93 | 94 | 95 | 96 | 97 | <_PaketExeExtension>$([System.IO.Path]::GetExtension("$(PaketExePath)")) 98 | <_PaketCommand Condition=" '$(_PaketCommand)' == '' AND '$(_PaketExeExtension)' == '.dll' ">dotnet "$(PaketExePath)" 99 | <_PaketCommand Condition=" '$(_PaketCommand)' == '' AND '$(OS)' != 'Windows_NT' AND '$(_PaketExeExtension)' == '.exe' ">$(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)" 100 | <_PaketCommand Condition=" '$(_PaketCommand)' == '' ">"$(PaketExePath)" 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | true 122 | $(NoWarn);NU1603;NU1604;NU1605;NU1608 123 | false 124 | true 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | $([System.IO.File]::ReadAllText('$(PaketRestoreCacheFile)')) 134 | 135 | 136 | 137 | 138 | 139 | 141 | $([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `": "`)[0].Replace(`"`, ``).Replace(` `, ``)) 142 | $([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `": "`)[1].Replace(`"`, ``).Replace(` `, ``)) 143 | 144 | 145 | 146 | 147 | %(PaketRestoreCachedKeyValue.Value) 148 | %(PaketRestoreCachedKeyValue.Value) 149 | 150 | 151 | 152 | 153 | true 154 | false 155 | true 156 | 157 | 158 | 162 | 163 | true 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | $(PaketIntermediateOutputPath)\$(MSBuildProjectFile).paket.references.cached 183 | 184 | $(MSBuildProjectFullPath).paket.references 185 | 186 | $(MSBuildProjectDirectory)\$(MSBuildProjectName).paket.references 187 | 188 | $(MSBuildProjectDirectory)\paket.references 189 | 190 | false 191 | true 192 | true 193 | references-file-or-cache-not-found 194 | 195 | 196 | 197 | 198 | $([System.IO.File]::ReadAllText('$(PaketReferencesCachedFilePath)')) 199 | $([System.IO.File]::ReadAllText('$(PaketOriginalReferencesFilePath)')) 200 | references-file 201 | false 202 | 203 | 204 | 205 | 206 | false 207 | 208 | 209 | 210 | 211 | true 212 | target-framework '$(TargetFramework)' or '$(TargetFrameworks)' files @(PaketResolvedFilePaths) 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | false 224 | true 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',').Length) 236 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[0]) 237 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[1]) 238 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[4]) 239 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[5]) 240 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[6]) 241 | $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[7]) 242 | 243 | 244 | %(PaketReferencesFileLinesInfo.PackageVersion) 245 | All 246 | runtime 247 | $(ExcludeAssets);contentFiles 248 | $(ExcludeAssets);build;buildMultitargeting;buildTransitive 249 | true 250 | true 251 | 252 | 253 | 254 | 255 | $(PaketIntermediateOutputPath)/$(MSBuildProjectFile).paket.clitools 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | $([System.String]::Copy('%(PaketCliToolFileLines.Identity)').Split(',')[0]) 265 | $([System.String]::Copy('%(PaketCliToolFileLines.Identity)').Split(',')[1]) 266 | 267 | 268 | %(PaketCliToolFileLinesInfo.PackageVersion) 269 | 270 | 271 | 272 | 276 | 277 | 278 | 279 | 280 | 281 | false 282 | 283 | 284 | 285 | 286 | 287 | <_NuspecFilesNewLocation Include="$(PaketIntermediateOutputPath)\$(Configuration)\*.nuspec"/> 288 | 289 | 290 | 291 | 292 | 293 | $(MSBuildProjectDirectory)/$(MSBuildProjectFile) 294 | true 295 | false 296 | true 297 | false 298 | true 299 | false 300 | true 301 | false 302 | true 303 | false 304 | true 305 | $(PaketIntermediateOutputPath)\$(Configuration) 306 | $(PaketIntermediateOutputPath) 307 | 308 | 309 | 310 | <_NuspecFiles Include="$(AdjustedNuspecOutputPath)\*.$(PackageVersion.Split(`+`)[0]).nuspec"/> 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 370 | 371 | 420 | 421 | 466 | 467 | 511 | 512 | 555 | 556 | 557 | 558 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "{}" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright {yyyy} {name of copyright owner} 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Fable.React.Native 2 | 3 | Fable bindings and helpers for React Native projects. 4 | 5 | See [SAFE-Nightwatch](https://github.com/SAFE-Stack/SAFE-Nightwatch) for a Fable RN app sample.
6 | See [How-to](https://github.com/martinmoec/fable-react-native-how-to) for a short step-by-step guide to getting started developing mobile apps with F# and Fable in React Native. 7 | -------------------------------------------------------------------------------- /RELEASE_NOTES.md: -------------------------------------------------------------------------------- 1 | ### 3.0.0-alpha001 2 | * Update to .NET 5.0 3 | * Removed dependency to Thoth.Json 4 | * removed simple store for now 5 | 6 | ### 2.6.1 7 | - Added disabled property for Buttons 8 | 9 | ### 2.6.0 10 | - BREAKING: use NetInfo from react-native-netinfo 11 | 12 | ### 2.5.0 13 | - BREAKING: Deprecating Fable.ReactNativeDeviceInfo. Please use https://github.com/martinmoec/Fable.ReactNative.DeviceInfo 14 | 15 | ### 2.4.1 16 | - BREAKING: use ToolbarAndroid from @react-native-community/toolbar-android 17 | 18 | ### 2.3.0 19 | - BREAKING: Put onActionSelected into properties of ToolbarAndroid 20 | 21 | ### 2.2.4 22 | - Fixing DeviceInfo 23 | 24 | ### 2.2.3 25 | - TestID for TouchableHighlight 26 | 27 | ### 2.2.2 28 | - Support for react-native-sqlite-storage 29 | 30 | ### 2.1.0 31 | - Support for react-native-fs 32 | 33 | ### 2.0.9 34 | - Draggable Markers 35 | 36 | ### 2.0.6 37 | - Fixed GoogleMaps properties 38 | 39 | ### 2.0.5 40 | - Add NPM dependency 41 | 42 | ### 2.0.4 43 | - Fixed Map 44 | 45 | ### 2.0.3 46 | - Fixed DatePicker 47 | 48 | ### 2.0.2 49 | - Fixed Dialog 50 | 51 | ### 2.0.1 52 | - Fixed Camera and Barcode scanner 53 | 54 | ### 2.0.0 55 | - Converted to Fable Core 3 56 | - Fable.ReactNativeDialog 57 | - Fable.ReactNativeMaps 58 | 59 | ### 2.0.0-beta-013 60 | - Remove reference to PowerPack 61 | 62 | ### 2.0.0-beta-009 63 | - Fix Style properties in camera for Fable 2 64 | 65 | ### 2.0.0-beta-008 66 | - Remove ViewPagerAndroid - it's no longer supported in RN 67 | 68 | ### 2.0.0-beta-006 69 | - Remove AsyncStorage - it's no longer supported in RN 70 | 71 | ### 2.0.0-beta-005 72 | - Changes for RN 0.59 73 | 74 | ### 2.0.0-beta-004 75 | - Fix Style properties for Fable 2 76 | 77 | ### 2.0.0-beta-003 78 | - Fix Fable.Helpers.ReactNative.SimpleStore.DB.fs 79 | 80 | ### 2.0.0-beta-002 81 | 82 | ### 2.0.0-beta-001 83 | - Convert to Fable 2 84 | 85 | ### 2.0.0-alpha-014 86 | - fixed `pickerItem` function. 87 | 88 | ### 2.0.0-alpha-013 89 | - added generic values support for `Picker` & `PickerItem`. 90 | 91 | ### 2.0.0-alpha-012 92 | - fixed `TransformsStyle.Transform`; 93 | - added `deg` & `rad` functions to create values of `IAngle` type. 94 | 95 | ### 2.0.0-alpha-011 96 | - updated `textInput`; 97 | - added `textInputWithChild`. 98 | 99 | ### 2.0.0-alpha-010 100 | - put `CommonProps` under `SectionListDataProps`, so `Key` is inferred as `CommonProps.Key`. 101 | 102 | ### 2.0.0-alpha-009 103 | - updated `CommonProps` type. 104 | 105 | ### 2.0.0-alpha-008 106 | - fixed refs; 107 | - `SectionList` minor fixes. 108 | 109 | ### 2.0.0-alpha-007 110 | - fixed `FlatList` prop case conversion; 111 | - added `SectionList`. 112 | 113 | ### 2.0.0-alpha-006 114 | Various fixes by @iyegoroff: 115 | - added CommonProps with Key prop; 116 | - added Alert.Options type and Alert.alertWithOptions function. 117 | 118 | ### 2.0.0-alpha-005 119 | Various fixes by @iyegoroff: 120 | - added UIManager; 121 | - updated LayoutAnimationStatic. 122 | 123 | ### 2.0.0-alpha-004 124 | Various fixes by @iyegoroff: 125 | - updated `ImageProperties` type; 126 | - removed `ScrollViewStyle` type, `ScrollView` uses just `ViewStyle`; 127 | - added `ShadowOffset` type. 128 | 129 | ### 2.0.0-alpha-003 130 | Various fixes by @iyegoroff: 131 | 132 | - changed `IImageSourceProperties list` to `IImageSource` and added functions for fetching remote images `remoteImage` and `remoteImages`: 133 | https://github.com/iyegoroff/fable-react-native/blob/ea8bf8ff51a1d702edb9db44620fb13a35194cfe/src/Fable.Helpers.ReactNative.fs#L1497-L1501 134 | - updated `Switch` and `Slider` components; 135 | - removed deprecated `SwitchIOS` and `SliderIOS` components; 136 | - updated `FlatListProperties` and added `IFlatListProperties` interface to `ScrollViewProperties`; 137 | - updated `ScrollViewProperties`; 138 | - renamed function `Dip` to `dip` and `Pct` to `pct` to conform other function's naming style; 139 | - put `WebViewBundleSource` above `ImageURISourceProperties`, so now `Uri` is inferred as `ImageURISourceProperties.Uri` which is more commonly used than `WebViewBundleSource.Uri`; 140 | - added `RequireQualifiedAccess` to `FlexDisplayType` to prevent conflict with `Option.None`; 141 | - several fixed typos & minor fixes; 142 | 143 | ### 2.0.0-alpha-002 144 | * Adds currentHeight to StatusBar #29 145 | * Adds Geotype #30 146 | 147 | ### 2.0.0-alpha-001 148 | * Fixes by @iyegoroff: PR #23 149 | 150 | ### 1.7.2 151 | * Some of FlatList properties are upper case: @iyegoroff 152 | 153 | ### 1.7.1 154 | * KeyboardShouldPersistTaps changed for ScrollViews 155 | 156 | ### 1.7.0 157 | * async-safe, static lifecycle hooks - https://fb.me/react-async-component-lifecycle-hooks 158 | 159 | ### 1.6.6 160 | * KeyboardShouldPersistTaps changed for ScrollViews 161 | 162 | ### 1.6.5 163 | * FlatList's KeyExtractor by Index is an int (@forki) 164 | 165 | ### 1.6.3 166 | * Add a button (#20 @forki) 167 | 168 | ### 1.6.2 169 | * Adding react-native-device-info helper (#19 @forki) 170 | 171 | ### 1.6.1 172 | * Fix #17: textInput on IOS (@ddunlea) 173 | 174 | ### 1.6.0 175 | * Fix compat issues with Fable update 176 | 177 | ### 1.5.2 178 | * Type info for items in FlatList 179 | 180 | ### 1.5.0 181 | * Barcode scanning via react-native-camera 182 | * Picker values as string 183 | 184 | ### 1.4.0 185 | * Add ReactNativeSignatureView support to the project 186 | * Add react-native-modal-datetime-picker bindings - https://github.com/fable-compiler/fable-react-native/pull/11 187 | 188 | ### 1.3.0 189 | * BREAKING: RN 0.47 support - this is breaking since React Native is breaking in some cases 190 | * BREAKING: ImageResizer fixes for v1.0 - https://github.com/fable-compiler/fable-react-native/pull/10 191 | * Add ImageEditor bindings - https://github.com/fable-compiler/fable-react-native/pull/6 192 | * Add ReactNativeSignatureView support - https://github.com/fable-compiler/fable-react-native/pull/7 193 | * Async launchCamera and launchImageLibrary functions - https://github.com/fable-compiler/fable-react-native/pull/8 194 | * Add AspectRatio to FlexStyle 195 | * Flat list support 196 | 197 | ### 1.2.3 198 | * SignaturePad 199 | 200 | ### 1.2.2 201 | * RemoveItem in Simple DB 202 | 203 | ### 1.2.0 204 | * Added first prototype of FlatList mappings 205 | 206 | ### 1.1.2 207 | * Fix error with toolbarAndroid 208 | -------------------------------------------------------------------------------- /build.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cls 3 | 4 | dotnet tool restore 5 | dotnet paket restore 6 | if errorlevel 1 ( 7 | exit /b %errorlevel% 8 | ) 9 | 10 | packages\build\FAKE\tools\FAKE.exe build.fsx %* 11 | -------------------------------------------------------------------------------- /build.fsx: -------------------------------------------------------------------------------- 1 | // include Fake libs 2 | #r "./packages/build/FAKE/tools/FakeLib.dll" 3 | #r "System.IO.Compression.FileSystem" 4 | #load "paket-files/build/fsharp/FAKE/modules/Octokit/Octokit.fsx" 5 | #load "paket-files/build/fable-compiler/fake-helpers/Fable.FakeHelpers.fs" 6 | 7 | open System.IO 8 | open Fake 9 | open Fable.FakeHelpers 10 | open Octokit 11 | 12 | #if MONO 13 | // prevent incorrect output encoding (e.g. https://github.com/fsharp/FAKE/issues/1196) 14 | System.Console.OutputEncoding <- System.Text.Encoding.UTF8 15 | #endif 16 | 17 | let project = "fable-react-native" 18 | let gitOwner = "fable-compiler" 19 | 20 | let mutable dotnetExePath = environVarOrDefault "DOTNET" "dotnet" 21 | 22 | let CWD = __SOURCE_DIRECTORY__ 23 | 24 | // Clean and install dotnet SDK 25 | Target "Bootstrap" (fun () -> 26 | let dotnetcliVersion = DotNetCli.GetDotNetSDKVersionFromGlobalJson() 27 | 28 | !! "src/bin" ++ "src/obj" |> CleanDirs 29 | dotnetExePath <- DotNetCli.InstallDotNetSDK dotnetcliVersion 30 | ) 31 | 32 | Target "PublishPackages" (fun () -> 33 | [ "src/Fable.React.Native.fsproj"] 34 | |> publishPackages CWD dotnetExePath 35 | ) 36 | 37 | Target "GitHubRelease" (fun () -> 38 | let releasePath = CWD "RELEASE_NOTES.md" 39 | githubRelease releasePath gitOwner project (fun user pw release -> 40 | createClient user pw 41 | |> createDraft gitOwner project release.NugetVersion 42 | (release.SemVer.PreRelease <> None) release.Notes 43 | |> releaseDraft 44 | |> Async.RunSynchronously 45 | ) 46 | ) 47 | 48 | "Bootstrap" 49 | ==> "PublishPackages" 50 | ==> "GitHubRelease" 51 | 52 | RunTargetOrDefault "Bootstrap" 53 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | if test "$OS" = "Windows_NT"; then 3 | MONO="" 4 | else 5 | # Mono fix for https://github.com/fsharp/FAKE/issues/805 6 | export MONO_MANAGED_WATCHER=false 7 | MONO="mono" 8 | fi 9 | 10 | if [ -e "paket.lock" ]; then 11 | $MONO .paket/paket.exe restore 12 | else 13 | $MONO .paket/paket.exe install 14 | fi 15 | exit_code=$? 16 | if [ $exit_code -ne 0 ]; then 17 | exit $exit_code 18 | fi 19 | $MONO packages/build/FAKE/tools/FAKE.exe $@ --fsiargs build.fsx 20 | -------------------------------------------------------------------------------- /global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "7.0.201", 4 | "rollForward": "latestMinor" 5 | } 6 | } -------------------------------------------------------------------------------- /paket.dependencies: -------------------------------------------------------------------------------- 1 | source https://www.nuget.org/api/v2 2 | storage:none 3 | 4 | nuget Fable.Core 5 | nuget Fable.React 6 | nuget Fable.Promise 7 | 8 | group Build 9 | framework: net46 10 | 11 | source https://nuget.org/api/v2 12 | nuget FSharp.Core redirects:force, content:none 13 | nuget FAKE 14 | github fsharp/FAKE modules/Octokit/Octokit.fsx 15 | github fable-compiler/fake-helpers Fable.FakeHelpers.fs 16 | -------------------------------------------------------------------------------- /paket.lock: -------------------------------------------------------------------------------- 1 | STORAGE: NONE 2 | NUGET 3 | remote: https://www.nuget.org/api/v2 4 | Fable.Browser.Blob (1.3) - restriction: >= netstandard2.0 5 | Fable.Core (>= 3.0) - restriction: >= netstandard2.0 6 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 7 | Fable.Browser.Dom (2.14) - restriction: >= netstandard2.0 8 | Fable.Browser.Blob (>= 1.3) - restriction: >= netstandard2.0 9 | Fable.Browser.Event (>= 1.5) - restriction: >= netstandard2.0 10 | Fable.Browser.WebStorage (>= 1.2) - restriction: >= netstandard2.0 11 | Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 12 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 13 | Fable.Browser.Event (1.5) - restriction: >= netstandard2.0 14 | Fable.Browser.Gamepad (>= 1.1) - restriction: >= netstandard2.0 15 | Fable.Core (>= 3.0) - restriction: >= netstandard2.0 16 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 17 | Fable.Browser.Gamepad (1.2) - restriction: >= netstandard2.0 18 | Fable.Core (>= 3.0) - restriction: >= netstandard2.0 19 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 20 | Fable.Browser.WebStorage (1.2) - restriction: >= netstandard2.0 21 | Fable.Browser.Event (>= 1.5) - restriction: >= netstandard2.0 22 | Fable.Core (>= 3.0) - restriction: >= netstandard2.0 23 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 24 | Fable.Core (4.0) 25 | Fable.Promise (3.2) 26 | Fable.Core (>= 3.7.1) - restriction: >= netstandard2.0 27 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 28 | Fable.React (9.3) 29 | Fable.React.Types (>= 18.3) - restriction: >= netstandard2.0 30 | Fable.ReactDom.Types (>= 18.2) - restriction: >= netstandard2.0 31 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 32 | Fable.React.Types (18.3) - restriction: >= netstandard2.0 33 | Fable.Browser.Dom (>= 2.4.4) - restriction: >= netstandard2.0 34 | Fable.Core (>= 3.2.7) - restriction: >= netstandard2.0 35 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 36 | Fable.ReactDom.Types (18.2) - restriction: >= netstandard2.0 37 | Fable.React.Types (>= 18.3) - restriction: >= netstandard2.0 38 | FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 39 | FSharp.Core (7.0.200) - restriction: >= netstandard2.0 40 | 41 | GROUP Build 42 | RESTRICTION: == net46 43 | NUGET 44 | remote: https://www.nuget.org/api/v2 45 | FAKE (5.16) 46 | Fake.Core.Process (6.0) 47 | Fake.Core.ReleaseNotes (6.0) 48 | Fake.Core.String (6.0) 49 | Fake.Core.UserInput (6.0) 50 | Fake.DotNet.Cli (6.0) 51 | Fake.IO.FileSystem (6.0) 52 | Fake.Tools.Git (6.0) 53 | FSharp.Core (7.0.200) - content: none, redirects: force 54 | Octokit (5.0.2) 55 | GITHUB 56 | remote: fsharp/FAKE 57 | modules/Octokit/Octokit.fsx (13e30330cae0597aed6154a95a06d21716b18de3) 58 | Octokit (>= 0.20) 59 | remote: fable-compiler/fake-helpers 60 | Fable.FakeHelpers.fs (1b26f2cd88aab4895b1d330edf30f3852ea81652) 61 | Fake.Core.Process 62 | Fake.Core.ReleaseNotes 63 | Fake.Core.String 64 | Fake.Core.UserInput 65 | Fake.DotNet.Cli 66 | Fake.IO.FileSystem 67 | Fake.Tools.Git -------------------------------------------------------------------------------- /paket.references: -------------------------------------------------------------------------------- 1 | Fable.Core 2 | Fable.React 3 | Fable.Promise 4 | -------------------------------------------------------------------------------- /src/Fable.React.Native.fsproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4.0.0 4 | 4.0.0 5 | netstandard2.0 6 | true 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /src/Fable.ReactNative.fs: -------------------------------------------------------------------------------- 1 | namespace Fable.ReactNative 2 | 3 | open System 4 | open Fable 5 | open Fable.Core 6 | open Fable.Core.JsInterop 7 | open Fable.React 8 | open Fable.ReactNative.Types 9 | 10 | type RN = ReactNative.Types.Globals 11 | 12 | type Ref<'t> = ('t -> unit) 13 | 14 | module Props = 15 | 16 | type ShadowOffset = 17 | { width: float 18 | height: float } 19 | 20 | [] 21 | type ToolbarActionShowStatus = 22 | | IfRoom 23 | | Always 24 | | Never 25 | 26 | [] 27 | type Alignment = 28 | | Auto 29 | | [] FlexStart 30 | | Center 31 | | [] FlexEnd 32 | | Stretch 33 | | Baseline 34 | 35 | [] 36 | type ContentAlignment = 37 | | [] FlexStart 38 | | Center 39 | | [] FlexEnd 40 | | Stretch 41 | | [] SpaceBetween 42 | | [] SpaceAround 43 | 44 | [] 45 | type Display = 46 | | None 47 | | Flex 48 | 49 | [] 50 | type ItemAlignment = 51 | | [] FlexStart 52 | | Center 53 | | [] FlexEnd 54 | | Stretch 55 | | Baseline 56 | 57 | [] 58 | type TextAlignment = 59 | | Auto 60 | | Default 61 | | Left 62 | | Center 63 | | Right 64 | | Justify 65 | 66 | [] 67 | type TextAlignVertical = 68 | | Auto 69 | | Top 70 | | Bottom 71 | | Center 72 | 73 | [] 74 | type JustifyContent = 75 | | [] FlexStart 76 | | Center 77 | | [] FlexEnd 78 | | [] SpaceBetween 79 | | [] SpaceAround 80 | | [] SpaceEvenly 81 | 82 | [] 83 | type FlexDirection = 84 | | Row 85 | | [] RowReverse 86 | | Column 87 | | [] ColumnReverse 88 | 89 | [] 90 | type FlexWrap = 91 | | Wrap 92 | | [] NoWrap 93 | 94 | [] 95 | type KeyboardType = 96 | | Default 97 | | [] EmailAddress 98 | | Numeric 99 | | [] PhonePad 100 | /// only iOS 101 | | [] AsciiCapable 102 | | [] NumbersAndPunctuation 103 | | [] Url 104 | | [] NumberPad 105 | | [] NamePhonePad 106 | | [] DecimalPad 107 | | Twitter 108 | | [] WebSearch 109 | 110 | [] 111 | type Overflow = 112 | | Visible 113 | | Hidden 114 | | Scroll 115 | 116 | [] 117 | type Position = 118 | | Absolute 119 | | Relative 120 | 121 | [] 122 | type ResizeMode = 123 | | Contain 124 | | Cover 125 | | Stretch 126 | | Center 127 | | Repeat 128 | 129 | [] 130 | type ReturnKeyType = 131 | | Done 132 | | Go 133 | | Next 134 | | Search 135 | | Send 136 | | None 137 | | Previous 138 | | Default 139 | | [] EmergencyCall 140 | | Google 141 | | Join 142 | | Route 143 | | Yahoo 144 | 145 | [] 146 | type AutoCapitalizeType = 147 | | None 148 | | Sentences 149 | | Words 150 | | Characters 151 | 152 | [] 153 | type KeyboardDismissMode = 154 | | None 155 | | [] OnDrag 156 | 157 | [] 158 | type DrawerLockMode = 159 | | Unlocked 160 | | [] LockedClosed 161 | | [] LockedOpen 162 | 163 | [] 164 | type TextDecorationStyle = 165 | | Solid | Double | Dotted | Dashed 166 | 167 | [] 168 | type FontStyle = 169 | | Normal | Italic 170 | 171 | [] 172 | type WritingDirection = 173 | | Auto | Ltr | Rtl 174 | 175 | [] 176 | type ScrollState = 177 | Idle | Dragging | Settling 178 | 179 | [] 180 | type FontWeight = 181 | | Normal 182 | | Bold 183 | | [] F100 184 | | [] F200 185 | | [] F300 186 | | [] F400 187 | | [] F500 188 | | [] F600 189 | | [] F700 190 | | [] F800 191 | | [] F900 192 | 193 | [] 194 | type TextDecorationLine = 195 | | None 196 | | Underline 197 | | [] LineThrough 198 | | [] UnderlineLineThrough 199 | 200 | [] 201 | type LineBreakMode = 202 | | Head | Middle | Tail | Clip 203 | 204 | [] 205 | type AutoCapitalize = 206 | | None | Sentences | Words | Characters 207 | 208 | [] 209 | type BackfaceVisibility = 210 | | Visible | Hidden 211 | 212 | [] 213 | type BorderStyle = 214 | | Solid | Dotted | Dashed 215 | 216 | [] 217 | type ImageOverflow = 218 | | Visible | Hidden 219 | 220 | [] 221 | type ImageURISourceCache = 222 | | Default 223 | | Reload 224 | | [] ForceCache 225 | | [] OnlyIfCached 226 | 227 | [] 228 | type Behavior = 229 | | Height | Position | Padding 230 | 231 | [] 232 | type NavigationType = 233 | | Other | Click 234 | 235 | [] 236 | type Size = 237 | | Small | Large 238 | 239 | [] 240 | type Mode = 241 | | Date | Time | Datetime 242 | 243 | [] 244 | type DatePickerIOSMode = 245 | | Dialog | Dropdown 246 | 247 | [] 248 | type StyleAttr = 249 | | Horizontal | Normal | Small | Large | Inverse | SmallInverse | LargeInverse 250 | 251 | [] 252 | type ProgressViewStyle = 253 | | Default | Bar 254 | 255 | [] 256 | type AnimationType = 257 | | None | Slide | Fade 258 | 259 | [] 260 | type SystemIcon = 261 | | Bookmarks 262 | | Contacts 263 | | Downloads 264 | | Favorites 265 | | Featured 266 | | History 267 | | More 268 | | [] MostRecent 269 | | [] MostViewed 270 | | Recents 271 | | Search 272 | | [] TopRated 273 | 274 | [] 275 | type Dim = 276 | | Window | Screen 277 | 278 | [] 279 | type IndicatorStyle = 280 | | Default | Black | White 281 | 282 | [] 283 | type DecelerationRate = 284 | | Fast | Normal 285 | 286 | [] 287 | type AlertButtonStyle = 288 | | Default | Cancel | Destructive 289 | 290 | [] 291 | type GroupTypes = 292 | | Album | All | Event | Faces | Library | PhotoStream | SavedPhotos 293 | 294 | [] 295 | type AssetType = 296 | | All | Videos | Photos 297 | 298 | [] 299 | type ShowHideTransition = 300 | | Fade | Slide 301 | 302 | [] 303 | type Direction = 304 | | Horizontal | Vertical 305 | 306 | type [] ResizeMethod = 307 | | Auto | Resize | Scale 308 | 309 | type IImageSource = 310 | interface end 311 | 312 | type ISizeUnit = 313 | interface end 314 | 315 | type IAngle = 316 | interface end 317 | 318 | type IPickerItem<'a> = 319 | inherit ReactElement 320 | 321 | type IStyle = 322 | interface end 323 | 324 | type ITextStyle = 325 | inherit IStyle 326 | 327 | type ITextStyleIOS = 328 | inherit IStyle 329 | 330 | type ITextStyleAndroid = 331 | inherit IStyle 332 | 333 | type IImageStyle = 334 | inherit IStyle 335 | 336 | type ITransformsStyle = 337 | inherit IStyle 338 | 339 | type IViewStyle = 340 | inherit IStyle 341 | 342 | type IFlexStyle = 343 | inherit IStyle 344 | 345 | type IGestureResponderHandlers = 346 | interface end 347 | 348 | type IToolbarAndroidProperties = 349 | interface end 350 | 351 | type ISegmentedControlIOSProperties = 352 | interface end 353 | 354 | type IWebViewProperties = 355 | interface end 356 | 357 | type IWebViewPropertiesAndroid = 358 | inherit IWebViewProperties 359 | 360 | type IWebViewPropertiesIOS = 361 | inherit IWebViewProperties 362 | 363 | type IDatePickerIOSProperties = 364 | interface end 365 | 366 | type IDrawerLayoutAndroidProperties = 367 | interface end 368 | 369 | type IPickerProperties<'a> = 370 | interface end 371 | 372 | type IProgressBarAndroidProperties = 373 | interface end 374 | 375 | type IProgressViewIOSProperties = 376 | interface end 377 | 378 | type IRefreshControlProperties = 379 | interface end 380 | 381 | type ISliderProperties = 382 | interface end 383 | 384 | type ITabBarItemProperties = 385 | interface end 386 | 387 | type ITabBarIOSProperties = 388 | interface end 389 | 390 | type IListViewProperties = 391 | interface end 392 | 393 | type IFlatListProperties<'a> = 394 | interface end 395 | 396 | type ISectionListProperties<'a> = 397 | interface end 398 | 399 | type IScrollViewProperties = 400 | inherit IListViewProperties 401 | 402 | type IAnimatedScrollViewProperties = 403 | inherit IScrollViewProperties 404 | 405 | type IStatusBarProperties = 406 | interface end 407 | 408 | type ISwitchProperties = 409 | interface end 410 | 411 | type IKeyboardAvoidingViewProps = 412 | interface end 413 | 414 | type IActivityIndicatorProperties = 415 | interface end 416 | 417 | type IActivityIndicatorIOSProperties = 418 | interface end 419 | 420 | type IMapViewProperties = 421 | interface end 422 | 423 | type IMapViewPropertiesAndroid = 424 | inherit IMapViewProperties 425 | 426 | type IViewPropertiesIOS = 427 | interface end 428 | 429 | type IViewPropertiesAndroid = 430 | interface end 431 | 432 | type IButtonProperties = 433 | interface end 434 | 435 | type IImageProperties = 436 | interface end 437 | 438 | type IAnimatedImageProperties = 439 | inherit IImageProperties 440 | 441 | type ITouchableHighlightProperties = 442 | interface end 443 | 444 | type ITouchableOpacityProperties = 445 | interface end 446 | 447 | type ITouchableNativeFeedbackProperties = 448 | interface end 449 | 450 | type ITouchableWithoutFeedbackIOSProperties = 451 | interface end 452 | 453 | type ITouchableWithoutFeedbackAndroidProperties = 454 | interface end 455 | 456 | type ITouchableWithoutFeedbackProperties = 457 | inherit ITouchableWithoutFeedbackAndroidProperties 458 | inherit ITouchableWithoutFeedbackIOSProperties 459 | inherit ITouchableNativeFeedbackProperties 460 | inherit ITouchableOpacityProperties 461 | inherit ITouchableHighlightProperties 462 | 463 | type ITextProperties = 464 | interface end 465 | 466 | type IAnimatedTextProperties = 467 | inherit ITextProperties 468 | 469 | type ITextInputProperties = 470 | interface end 471 | 472 | type IViewProperties = 473 | inherit IViewPropertiesAndroid 474 | inherit IViewPropertiesIOS 475 | inherit IToolbarAndroidProperties 476 | inherit IGestureResponderHandlers 477 | inherit IKeyboardAvoidingViewProps 478 | inherit IWebViewProperties 479 | inherit ISegmentedControlIOSProperties 480 | inherit IActivityIndicatorProperties 481 | inherit IActivityIndicatorIOSProperties 482 | inherit IDatePickerIOSProperties 483 | inherit IDrawerLayoutAndroidProperties 484 | inherit IProgressBarAndroidProperties 485 | inherit IProgressViewIOSProperties 486 | inherit IRefreshControlProperties 487 | inherit ISliderProperties 488 | inherit ITabBarItemProperties 489 | inherit ITabBarIOSProperties 490 | inherit IScrollViewProperties 491 | inherit IStatusBarProperties 492 | inherit ISwitchProperties 493 | inherit IMapViewProperties 494 | 495 | type IAnimatedViewProperties = 496 | inherit IViewProperties 497 | 498 | type WebViewPropertiesAndroid = 499 | | JavaScriptEnabled of bool 500 | | DomStorageEnabled of bool 501 | interface IWebViewPropertiesAndroid 502 | 503 | type WebViewPropertiesIOS = 504 | | AllowsInlineMediaPlayback of bool 505 | | Bounces of bool 506 | | DecelerationRate of DecelerationRate 507 | | OnShouldStartLoadWithRequest of (WebViewIOSLoadRequestEvent -> bool) 508 | | ScrollEnabled of bool 509 | interface IWebViewPropertiesIOS 510 | 511 | type WebViewBundleSource = 512 | | Uri of string 513 | | Method of string 514 | | Headers of obj 515 | | Cache of Image 516 | | Body of string 517 | 518 | type WebViewHtmlSource = 519 | | Html of string // REQUIRED! 520 | | BaseUrl of string 521 | 522 | type WebViewProperties = 523 | | AutomaticallyAdjustContentInsets of bool 524 | | Bounces of bool 525 | | ContentInset of Insets 526 | | Html of string 527 | | InjectedJavaScript of string 528 | | OnError of (NavState -> unit) 529 | | OnLoad of (NavState -> unit) 530 | | OnLoadEnd of (NavState -> unit) 531 | | OnLoadStart of (NavState -> unit) 532 | | OnNavigationStateChange of (NavState -> unit) 533 | | OnShouldStartLoadWithRequest of (obj -> bool) 534 | | RenderError of (unit -> ReactElement) 535 | | RenderLoading of (unit -> ReactElement) 536 | | ScrollEnabled of bool 537 | | StartInLoadingState of bool 538 | | Url of string 539 | | Source of U3 540 | | MediaPlaybackRequiresUserAction of bool 541 | | ScalesPageToFit of bool 542 | | Ref of Ref 543 | interface IWebViewProperties 544 | static member Style (style: IStyle list) : IWebViewProperties = !!("style", keyValueList CaseRules.LowerFirst style) 545 | 546 | type ImageURISourceProperties = 547 | | Uri of string 548 | | Bundle of string 549 | | Method of string 550 | | Headers of obj 551 | | Body of string 552 | | Cache of ImageURISourceCache 553 | | Width of float 554 | | Height of float 555 | | Scale of float 556 | 557 | type ITouchable = 558 | inherit IScrollViewProperties 559 | inherit IMapViewProperties 560 | inherit IViewProperties 561 | 562 | type ITransform = 563 | interface end 564 | 565 | type PerpectiveTransform = 566 | { perspective: float } 567 | interface ITransform 568 | 569 | type RotateTransform = 570 | { rotate: IAngle } 571 | interface ITransform 572 | 573 | type RotateXTransform = 574 | { rotateX: IAngle } 575 | interface ITransform 576 | 577 | type RotateYTransform = 578 | { rotateY: IAngle } 579 | interface ITransform 580 | 581 | type RotateZTransform = 582 | { rotateZ: IAngle } 583 | interface ITransform 584 | 585 | type ScaleTransform = 586 | { scale: float } 587 | interface ITransform 588 | 589 | type ScaleXTransform = 590 | { scaleX: float } 591 | interface ITransform 592 | 593 | type ScaleYTransform = 594 | { scaleY: float } 595 | interface ITransform 596 | 597 | type TranslateXTransform = 598 | { translateX: float } 599 | interface ITransform 600 | 601 | type TranslateYTransform = 602 | { translateY: float } 603 | interface ITransform 604 | 605 | type SkewXTransform = 606 | { skewX: IAngle } 607 | interface ITransform 608 | 609 | type SkewYTransform = 610 | { skewY: IAngle } 611 | interface ITransform 612 | 613 | type TransformsStyle = 614 | | Transform of ITransform array 615 | | TransformMatrix of ResizeArray 616 | | Rotation of float 617 | | ScaleX of float 618 | | ScaleY of float 619 | | TranslateX of float 620 | | TranslateY of float 621 | interface ITransformsStyle 622 | 623 | type FlexStyle = 624 | | AlignContent of ContentAlignment 625 | | AlignItems of ItemAlignment 626 | | AlignSelf of Alignment 627 | | AspectRatio of float 628 | | BorderBottomWidth of float 629 | | BorderEndWidth of float 630 | | BorderLeftWidth of float 631 | | BorderRightWidth of float 632 | | BorderStartWidth of float 633 | | BorderTopWidth of float 634 | | BorderWidth of float 635 | | Bottom of ISizeUnit 636 | | Display of Display 637 | | End of ISizeUnit 638 | | Flex of float 639 | | FlexBasis of ISizeUnit 640 | | FlexDirection of FlexDirection 641 | | FlexGrow of float 642 | | FlexShrink of float 643 | | FlexWrap of FlexWrap 644 | | Height of ISizeUnit 645 | | JustifyContent of JustifyContent 646 | | Left of ISizeUnit 647 | | Margin of ISizeUnit 648 | | MarginBottom of ISizeUnit 649 | | MarginEnd of ISizeUnit 650 | | MarginHorizontal of ISizeUnit 651 | | MarginLeft of ISizeUnit 652 | | MarginRight of ISizeUnit 653 | | MarginStart of ISizeUnit 654 | | MarginTop of ISizeUnit 655 | | MarginVertical of ISizeUnit 656 | | MaxHeight of ISizeUnit 657 | | MaxWidth of ISizeUnit 658 | | MinHeight of ISizeUnit 659 | | MinWidth of ISizeUnit 660 | | Overflow of Overflow 661 | | Padding of ISizeUnit 662 | | PaddingBottom of ISizeUnit 663 | | PaddingEnd of ISizeUnit 664 | | PaddingHorizontal of ISizeUnit 665 | | PaddingLeft of ISizeUnit 666 | | PaddingRight of ISizeUnit 667 | | PaddingStart of ISizeUnit 668 | | PaddingTop of ISizeUnit 669 | | PaddingVertical of ISizeUnit 670 | | Position of Position 671 | | Right of ISizeUnit 672 | | Start of ISizeUnit 673 | | Top of ISizeUnit 674 | | Width of ISizeUnit 675 | | ZIndex of float 676 | interface IFlexStyle 677 | 678 | 679 | type ViewStyle = 680 | | BackfaceVisibility of BackfaceVisibility 681 | | BackgroundColor of string 682 | | BorderBottomColor of string 683 | | BorderBottomEndRadius of float 684 | | BorderBottomLeftRadius of float 685 | | BorderBottomRightRadius of float 686 | | BorderBottomStartRadius of float 687 | | BorderBottomWidth of float 688 | | BorderColor of string 689 | | BorderEndColor of string 690 | | BorderLeftColor of string 691 | | BorderLeftWidth of float 692 | | BorderRadius of float 693 | | BorderRightColor of string 694 | | BorderRightWidth of float 695 | | BorderStartColor of string 696 | | BorderStyle of BorderStyle 697 | | BorderTopColor of string 698 | | BorderTopEndRadius of float 699 | | BorderTopLeftRadius of float 700 | | BorderTopRightRadius of float 701 | | BorderTopStartRadius of float 702 | | BorderTopWidth of float 703 | | BorderWidth of float 704 | | Opacity of float 705 | | ShadowColor of string 706 | | ShadowOffset of ShadowOffset 707 | | ShadowOpacity of float 708 | | ShadowRadius of float 709 | | Elevation of float 710 | | TestID of string 711 | interface IViewStyle 712 | 713 | type Insets = 714 | | Top of float 715 | | Left of float 716 | | Bottom of float 717 | | Right of float 718 | 719 | type Touchable = 720 | | OnTouchStart of (GestureResponderEvent -> unit) 721 | | OnTouchMove of (GestureResponderEvent -> unit) 722 | | OnTouchEnd of (GestureResponderEvent -> unit) 723 | | OnTouchCancel of (GestureResponderEvent -> unit) 724 | | OnTouchEndCapture of (GestureResponderEvent -> unit) 725 | interface ITouchable 726 | 727 | type LayoutAnimationAnim = 728 | | Duration of float 729 | | Delay of float 730 | | SpringDamping of float 731 | | InitialVelocity of float 732 | | Type of string 733 | | Property of string 734 | 735 | type LayoutAnimationConfig = 736 | | Delay of float //REQUIRED! 737 | | Create of LayoutAnimationAnim 738 | | Update of LayoutAnimationAnim 739 | | Delete of LayoutAnimationAnim 740 | 741 | type TextStyleIOS = 742 | | LetterSpacing of float 743 | | TextDecorationColor of string 744 | | TextDecorationStyle of TextDecorationStyle 745 | | WritingDirection of WritingDirection 746 | interface ITextStyleIOS 747 | 748 | type TextStyleAndroid = 749 | | TextAlignVertical of TextAlignVertical 750 | interface ITextStyleAndroid 751 | 752 | type TextStyle = 753 | | Color of string 754 | | FontFamily of string 755 | | FontSize of float 756 | | FontStyle of FontStyle 757 | | FontWeight of FontWeight 758 | | LetterSpacing of float 759 | | LineHeight of float 760 | | TextAlign of TextAlignment 761 | | TextDecorationLine of TextDecorationLine 762 | | TextDecorationStyle of TextDecorationStyle 763 | | TextDecorationColor of string 764 | | TextShadowColor of string 765 | | TextShadowOffset of obj 766 | | TextShadowRadius of float 767 | | TestID of string 768 | interface ITextStyle 769 | 770 | type TextPropertiesIOS = 771 | | AllowFontScaling of bool // REQUIRED! 772 | | SuppressHighlighting of bool 773 | interface ITextProperties 774 | interface IAnimatedTextProperties 775 | 776 | type TextProperties = 777 | | AllowFontScaling of bool 778 | | LineBreakMode of LineBreakMode 779 | | NumberOfLines of float 780 | | OnLayout of (LayoutChangeEvent -> unit) 781 | | OnPress of (unit -> unit) 782 | | TestID of string 783 | | Ref of Ref 784 | interface ITextProperties 785 | interface IAnimatedTextProperties 786 | static member Style (style: IStyle list) : ITextProperties = !!("style", keyValueList CaseRules.LowerFirst style) 787 | 788 | module TextInput = 789 | type TextInputIOSProperties = 790 | | ClearButtonMode of string 791 | | ClearTextOnFocus of bool 792 | | EnablesReturnKeyAutomatically of bool 793 | | OnKeyPress of (unit -> unit) 794 | | SelectionState of obj 795 | interface ITextInputProperties 796 | 797 | type TextInputAndroidProperties = 798 | | NumberOfLines of float 799 | | ReturnKeyLabel of string 800 | | TextAlign of string 801 | | TextAlignVertical of string 802 | | UnderlineColorAndroid of string 803 | interface ITextInputProperties 804 | 805 | type TextInputProperties = 806 | | AutoCapitalize of AutoCapitalize 807 | | AutoCorrect of bool 808 | | AutoFocus of bool 809 | | BlurOnSubmit of bool 810 | | DefaultValue of string 811 | | Editable of bool 812 | | KeyboardType of KeyboardType 813 | | MaxLength of float 814 | | Multiline of bool 815 | | OnBlur of (unit -> unit) 816 | | OnChange of (obj -> unit) 817 | | OnChangeText of (string -> unit) 818 | | OnEndEditing of (obj -> unit) 819 | | OnFocus of (unit -> unit) 820 | | OnLayout of (obj -> unit) 821 | | OnSelectionChange of (unit -> unit) 822 | | OnSubmitEditing of (obj -> unit) 823 | | Password of bool 824 | | Placeholder of string 825 | | PlaceholderTextColor of string 826 | | ReturnKeyType of ReturnKeyType 827 | | SecureTextEntry of bool 828 | | SelectTextOnFocus of bool 829 | | SelectionColor of string 830 | | TestID of string 831 | | Value of string 832 | | Ref of Ref 833 | interface ITextInputProperties 834 | static member Style (style: IStyle list) : ITextInputProperties = !!("style", keyValueList CaseRules.LowerFirst style) 835 | 836 | module Toolbar = 837 | type ToolbarAndroidProperties = 838 | | Actions of ToolbarAndroidAction [] 839 | | ContentInsetEnd of float 840 | | ContentInsetStart of float 841 | | Logo of IImageSource 842 | | OnActionSelected of (int -> unit) 843 | | NavIcon of IImageSource 844 | | OnIconClicked of (unit -> unit) 845 | | OverflowIcon of IImageSource 846 | | Rtl of bool 847 | | Subtitle of string 848 | | SubtitleColor of string 849 | | TestID of string 850 | | Title of string 851 | | TitleColor of string 852 | | Ref of Ref 853 | interface IToolbarAndroidProperties 854 | static member Style (style: IStyle list) : IToolbarAndroidProperties = !!("style", keyValueList CaseRules.LowerFirst style) 855 | 856 | type GestureResponderHandlers = 857 | | OnStartShouldSetResponder of (GestureResponderEvent -> bool) 858 | | OnMoveShouldSetResponder of (GestureResponderEvent -> bool) 859 | | OnResponderGrant of (GestureResponderEvent -> unit) 860 | | OnResponderReject of (GestureResponderEvent -> unit) 861 | | OnResponderMove of (GestureResponderEvent -> unit) 862 | | OnResponderRelease of (GestureResponderEvent -> unit) 863 | | OnResponderTerminationRequest of (GestureResponderEvent -> bool) 864 | | OnResponderTerminate of (GestureResponderEvent -> unit) 865 | | OnStartShouldSetResponderCapture of (GestureResponderEvent -> bool) 866 | | OnMoveShouldSetResponderCapture of (GestureResponderEvent -> unit) 867 | interface IGestureResponderHandlers 868 | 869 | type ViewPropertiesIOS = 870 | | AccessibilityTraits of U2> 871 | | ShouldRasterizeIOS of bool 872 | interface IViewPropertiesIOS 873 | 874 | type ViewPropertiesAndroid = 875 | | AccessibilityComponentType of string 876 | | AccessibilityLiveRegion of string 877 | | Collapsable of bool 878 | | ImportantForAccessibility of string 879 | | NeedsOffscreenAlphaCompositing of bool 880 | | RenderToHardwareTextureAndroid of bool 881 | interface IViewPropertiesAndroid 882 | 883 | type ViewProperties = 884 | | AccessibilityLabel of string 885 | | Accessible of bool 886 | | HitSlop of obj 887 | | OnAcccessibilityTap of (unit -> unit) 888 | | OnLayout of (LayoutChangeEvent -> unit) 889 | | OnMagicTap of (unit -> unit) 890 | | PointerEvents of PointerEvents 891 | | RemoveClippedSubviews of bool 892 | | TestID of string 893 | | Ref of Ref 894 | interface IViewProperties 895 | static member Style (style: IStyle list) : IViewProperties = !!("style", keyValueList CaseRules.LowerFirst style) 896 | 897 | 898 | type KeyboardAvoidingViewProps = 899 | | Behavior of Behavior 900 | | KeyboardVerticalOffset of float // REQUIRED! 901 | | Ref of Ref 902 | interface IKeyboardAvoidingViewProps 903 | 904 | type SegmentedControlIOSProperties = 905 | | Enabled of bool 906 | | Momentary of bool 907 | | OnChange of (NativeSyntheticEvent -> unit) 908 | | OnValueChange of (string -> unit) 909 | | SelectedIndex of int 910 | | TintColor of string 911 | | Values of ResizeArray 912 | | Ref of Ref 913 | interface ISegmentedControlIOSProperties 914 | 915 | type NavigatorIOSProperties = 916 | | BarTintColor of string 917 | | InitialRoute of Route 918 | | ItemWrapperStyle of ViewStyle list 919 | | NavigationBarHidden of bool 920 | | ShadowHidden of bool 921 | | TintColor of string 922 | | TitleTextColor of string 923 | | Translucent of bool 924 | | Ref of Ref 925 | static member Style (style: IStyle list) : NavigatorIOSProperties = !!("style", keyValueList CaseRules.LowerFirst style) 926 | 927 | module ActivityIndicator = 928 | type ActivityIndicatorProperties = 929 | | Animating of bool 930 | | Color of string 931 | | HidesWhenStopped of bool 932 | | Size of Size 933 | | Ref of Ref 934 | interface IViewProperties 935 | static member Style (style: IStyle list) : ActivityIndicatorProperties = !!("style", keyValueList CaseRules.LowerFirst style) 936 | 937 | 938 | type ActivityIndicatorIOSProperties = 939 | | Animating of bool 940 | | Color of string 941 | | HidesWhenStopped of bool 942 | | OnLayout of (obj -> unit) 943 | | Size of Size 944 | | Ref of Ref 945 | interface IViewProperties 946 | static member Style (style: IStyle list) : ActivityIndicatorIOSProperties = !!("style", keyValueList CaseRules.LowerFirst style) 947 | 948 | type DatePickerIOSProperties = 949 | | Date of DateTime 950 | | MaximumDate of DateTime 951 | | MinimumDate of DateTime 952 | | MinuteInterval of float 953 | | Mode of DatePickerIOSMode 954 | | OnDateChange of (DateTime -> unit) 955 | | TimeZoneOffsetInMinutes of float 956 | | Ref of Ref 957 | interface IDatePickerIOSProperties 958 | 959 | type DrawerLayoutAndroidProperties = 960 | | DrawerBackgroundColor of string 961 | | DrawerLockMode of DrawerLockMode 962 | | DrawerPosition of DrawerLayoutAndroidPosition 963 | | DrawerWidth of float 964 | | KeyboardDismissMode of KeyboardDismissMode 965 | | OnDrawerClose of (unit -> unit) 966 | | OnDrawerOpen of (unit -> unit) 967 | | OnDrawerSlide of (DrawerSlideEvent -> unit) 968 | | OnDrawerStateChanged of (ScrollState -> unit) 969 | | RenderNavigationView of (unit -> obj) 970 | | StatusBarBackgroundColor of obj 971 | | Ref of Ref 972 | interface IDrawerLayoutAndroidProperties 973 | 974 | module Picker = 975 | type PickerIOSItemProperties = 976 | | Value of U2 977 | | Label of string 978 | 979 | type PickerItemProperties<'a> = 980 | | Label of string // REQUIRED! 981 | | Value of 'a 982 | | Key of string 983 | | Color of string 984 | | TestID of string 985 | 986 | type PickerPropertiesIOS<'a> = 987 | interface IPickerProperties<'a> 988 | static member Style (style: IStyle list) : IPickerProperties<'a> = !!("style", keyValueList CaseRules.LowerFirst style) 989 | 990 | type PickerPropertiesAndroid<'a> = 991 | | Enabled of bool 992 | | Mode of Mode 993 | | Prompt of string 994 | interface IPickerProperties<'a> 995 | 996 | type PickerProperties<'a> = 997 | | OnValueChange of ('a -> int -> unit) 998 | | SelectedValue of 'a 999 | | TestId of string 1000 | | Ref of Ref 1001 | interface IPickerProperties<'a> 1002 | static member Style (style: IStyle list) : IPickerProperties<'a> = !!("style", keyValueList CaseRules.LowerFirst style) 1003 | 1004 | type PickerIOSProperties<'a> = 1005 | | ItemStyle of ViewStyle list 1006 | | Ref of Ref 1007 | interface IPickerProperties<'a> 1008 | 1009 | module ProgressBar = 1010 | type ProgressBarAndroidProperties = 1011 | | StyleAttr of StyleAttr 1012 | | Indeterminate of bool 1013 | | Progress of float 1014 | | Color of string 1015 | | TestID of string 1016 | | Ref of Ref 1017 | interface IProgressBarAndroidProperties 1018 | static member Style (style: IStyle list) : IProgressBarAndroidProperties = !!("style", keyValueList CaseRules.LowerFirst style) 1019 | 1020 | type ProgressViewIOSProperties = 1021 | | ProgressViewStyle of ProgressViewStyle 1022 | | Progress of float 1023 | | ProgressTintColor of string 1024 | | TrackTintColor of string 1025 | | ProgressImage of IImageSource 1026 | | TrackImage of IImageSource 1027 | | Ref of Ref 1028 | interface IProgressViewIOSProperties 1029 | static member Style (style: IStyle list) : IProgressBarAndroidProperties = !!("style", keyValueList CaseRules.LowerFirst style) 1030 | 1031 | type RefreshControlPropertiesIOS = 1032 | | TintColor of string 1033 | | Title of string 1034 | | TitleColor of string 1035 | interface IRefreshControlProperties 1036 | 1037 | 1038 | type RefreshControlPropertiesAndroid = 1039 | | Colors of ResizeArray 1040 | | Enabled of bool 1041 | | ProgressBackgroundColor of string 1042 | | Size of float 1043 | | ProgressViewOffset of float 1044 | interface IRefreshControlProperties 1045 | 1046 | type RefreshControlProperties = 1047 | | OnRefresh of (unit -> unit) 1048 | | Refreshing of bool 1049 | | Ref of Ref 1050 | interface IRefreshControlProperties 1051 | 1052 | type SliderIOSProperties = 1053 | | TrackImage of IImageSource 1054 | | MinimumTrackImage of IImageSource 1055 | | MaximumTrackImage of IImageSource 1056 | | ThumbImage of IImageSource 1057 | interface ISliderProperties 1058 | 1059 | type SliderAndroidProperties = 1060 | | ThumbTintColor of string 1061 | interface ISliderProperties 1062 | 1063 | type SliderProperties = 1064 | | Disabled of bool 1065 | | MaximumTrackTintColor of string 1066 | | MaximumValue of float 1067 | | MinimumTrackTintColor of string 1068 | | MinimumValue of float 1069 | | OnSlidingComplete of (float -> unit) 1070 | | OnValueChange of (float -> unit) 1071 | | Step of float 1072 | | TestID of string 1073 | | Value of float 1074 | | Ref of Ref 1075 | interface ISliderProperties 1076 | static member Style (style: IStyle list) : ISliderProperties = !!("style", keyValueList CaseRules.LowerFirst style) 1077 | 1078 | type SwitchProperties = 1079 | | Disabled of bool 1080 | | OnTintColor of string 1081 | | OnValueChange of (bool -> unit) 1082 | | ThumbTintColor of string 1083 | | TintColor of string 1084 | | Value of bool 1085 | | TestID of string 1086 | | Ref of Ref 1087 | interface ISwitchProperties 1088 | 1089 | type ImageStyle = 1090 | | ResizeMode of string 1091 | | BackfaceVisibility of BackfaceVisibility 1092 | | BorderBottomLeftRadius of float 1093 | | BorderBottomRightRadius of float 1094 | | BackgroundColor of string 1095 | | BorderColor of string 1096 | | BorderWidth of float 1097 | | BorderRadius of float 1098 | | BorderTopLeftRadius of float 1099 | | BorderTopRightRadius of float 1100 | | Overflow of ImageOverflow 1101 | | OverlayColor of string 1102 | | TintColor of string 1103 | | Opacity of float 1104 | interface IImageStyle 1105 | 1106 | type ImagePropertiesIOS = 1107 | | AccessibilityLabel of string 1108 | | Accessible of bool 1109 | | CapInsets of Insets 1110 | | DefaultSource of IImageSource 1111 | | OnPartialLoad of (unit -> unit) 1112 | | OnProgress of (ImageProgressChangeEvent -> unit) 1113 | interface IImageProperties 1114 | interface IAnimatedImageProperties 1115 | 1116 | type ImagePropertiesAndroid = 1117 | | ResizeMethod of ResizeMethod 1118 | | FadeDuration of float 1119 | interface IImageProperties 1120 | interface IAnimatedImageProperties 1121 | 1122 | type ImageProperties = 1123 | | BlurRadius of float 1124 | | LoadingIndicatorSource of IImageSource 1125 | | OnLayout of (LayoutChangeEvent -> unit) 1126 | | OnLoad of (unit -> unit) 1127 | | OnLoadEnd of (unit -> unit) 1128 | | OnLoadStart of (unit -> unit) 1129 | | OnError of (ImageErrorEvent -> unit) 1130 | | ResizeMode of ResizeMode 1131 | | Source of IImageSource 1132 | | TestID of string 1133 | | Ref of Ref 1134 | interface IImageProperties 1135 | interface IAnimatedImageProperties 1136 | static member Style (style: IStyle list) : IImageProperties = !!("style", keyValueList CaseRules.LowerFirst style) 1137 | 1138 | type MapViewAnnotation = 1139 | | Latitude of float 1140 | | Longitude of float 1141 | | AnimateDrop of bool 1142 | | Title of string 1143 | | Subtitle of string 1144 | | HasLeftCallout of bool 1145 | | HasRightCallout of bool 1146 | | OnLeftCalloutPress of (unit -> unit) 1147 | | OnRightCalloutPress of (unit -> unit) 1148 | | Id of string 1149 | 1150 | type MapViewRegion = 1151 | | Latitude of float 1152 | | Longitude of float 1153 | | LatitudeDelta of float 1154 | | LongitudeDelta of float 1155 | 1156 | type MapViewOverlay = 1157 | | Coordinates of ResizeArray 1158 | | LineWidth of float 1159 | | StrokeColor of obj 1160 | | FillColor of obj 1161 | | Id of string 1162 | 1163 | type MapViewPropertiesIOS = 1164 | | ShowsPointsOfInterest of bool 1165 | | Annotations of ResizeArray 1166 | | FollowUserLocation of bool 1167 | | LegalLabelInsets of Insets 1168 | | MapType of string 1169 | | MaxDelta of float 1170 | | MinDelta of float 1171 | | Overlays of ResizeArray 1172 | | ShowsCompass of bool 1173 | 1174 | type MapViewPropertiesAndroid = 1175 | | Active of bool 1176 | interface IMapViewPropertiesAndroid 1177 | 1178 | type MapViewProperties = 1179 | | OnAnnotationPress of (unit -> unit) 1180 | | OnRegionChange of (MapViewRegion -> unit) 1181 | | OnRegionChangeComplete of (MapViewRegion -> unit) 1182 | | PitchEnabled of bool 1183 | | Region of MapViewRegion 1184 | | RotateEnabled of bool 1185 | | ScrollEnabled of bool 1186 | | ShowsUserLocation of bool 1187 | | ZoomEnabled of bool 1188 | | Ref of Ref 1189 | interface IMapViewProperties 1190 | static member Style (style: IStyle list) : IMapViewProperties = !!("style", keyValueList CaseRules.LowerFirst style) 1191 | 1192 | type ModalProperties = 1193 | | Animated of bool 1194 | | AnimationType of AnimationType 1195 | | Transparent of bool 1196 | | Visible of bool 1197 | | OnRequestClose of (unit -> unit) 1198 | | OnShow of (NativeSyntheticEvent -> unit) 1199 | | Ref of Ref 1200 | 1201 | type ButtonProperties = 1202 | | Title of string 1203 | | OnPress of (unit -> unit) 1204 | | Disabled of bool 1205 | | Color of string 1206 | | TestID of string 1207 | | HasTVPreferredFocus of bool 1208 | | Ref of Ref