Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rn-fetch-blob Implementation for React Native for Windows #701

Open
wants to merge 35 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
d9c2c18
Created dev environment for Win implementation
avmoroz Sep 17, 2020
b36939e
Implemented splitPath helper method
avmoroz Sep 17, 2020
342fda0
Implement initial createFile
avmoroz Sep 22, 2020
cae5833
Implement ds, unlink, exists, and mkdir
avmoroz Sep 29, 2020
b2ab1cd
Implemented ls and mv
avmoroz Oct 1, 2020
3e8a457
Implemented stat, lstat, createFileASCII, readFile
avmoroz Oct 6, 2020
7897dbc
Implement writeFile and writeFileArray
avmoroz Oct 8, 2020
11febcd
Implement Slice and initial stream support
avmoroz Oct 12, 2020
3eb1015
Implement filestream functions
avmoroz Oct 13, 2020
e854048
Added directory access
avmoroz Oct 15, 2020
f23bd25
Implemented initial demo app
avmoroz Oct 17, 2020
d160cff
Fixed incorrect path for demo app
avmoroz Oct 17, 2020
6860e84
Implemented demo app tests
avmoroz Oct 19, 2020
99cc737
Implement demo app checks of writeStream()
avmoroz Oct 20, 2020
dae3909
Implement test method for readStream
avmoroz Oct 21, 2020
d7fa9d6
Implement capacity for get request with fetchBlob()
avmoroz Oct 22, 2020
6b28ce3
Implement cancelRequest and TaskManager
avmoroz Oct 27, 2020
49fba2b
Create generic request builder
avmoroz Oct 28, 2020
b5bc7d7
Fixed 0x80072EFF issue
avmoroz Oct 29, 2020
cb618cd
Added potential workaround for uploadProgress
avmoroz Nov 23, 2020
820b73e
Implemented enableProgressReport and enableUploadProgressReport
avmoroz Nov 24, 2020
a3b3dbe
Implemented Initial timeout
avmoroz Nov 30, 2020
5971ce8
Implement initial uploadProgress tracking
avmoroz Dec 1, 2020
f9a3a56
Create new project module
avmoroz Dec 2, 2020
0658682
Move project to examples
avmoroz Dec 3, 2020
2edd349
Create working refactoring
avmoroz Dec 9, 2020
b6e8b88
Removed unnecessary dependencies
avmoroz Dec 10, 2020
97c99e9
Allow storage of non-text files
avmoroz Dec 29, 2020
8033384
Removed thread blocking
avmoroz Jan 21, 2021
3719726
Updated encoding
avmoroz Jan 21, 2021
b2b02bf
Added filepath fix
avmoroz Jan 21, 2021
709a821
Modified stat and some error messages
avmoroz Jan 23, 2021
518d48b
Updated ProcessRequestAsync
avmoroz Jan 27, 2021
cae6ed8
Updated ProcessRequestAsync
avmoroz Jan 28, 2021
7926c9d
Update fetchBlob(), fetchBlobForm(), and ProcessRequestAsync()
avmoroz Jan 29, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 2 additions & 0 deletions examples/.npmignore
@@ -0,0 +1,2 @@
# Make sure we don't publish examples
RNFetchBlobWin/
6 changes: 6 additions & 0 deletions examples/RNFetchBlobWin/.buckconfig
@@ -0,0 +1,6 @@

[android]
target = Google Inc.:Google APIs:23

[maven_repositories]
central = https://repo1.maven.org/maven2
4 changes: 4 additions & 0 deletions examples/RNFetchBlobWin/.eslintrc.js
@@ -0,0 +1,4 @@
module.exports = {
root: true,
extends: '@react-native-community',
};
73 changes: 73 additions & 0 deletions examples/RNFetchBlobWin/.flowconfig
@@ -0,0 +1,73 @@
[ignore]
; We fork some components by platform
.*/*[.]android.js

; Ignore "BUCK" generated dirs
<PROJECT_ROOT>/\.buckd/

; Ignore polyfills
node_modules/react-native/Libraries/polyfills/.*

; These should not be required directly
; require from fbjs/lib instead: require('fbjs/lib/warning')
node_modules/warning/.*

; Flow doesn't support platforms
.*/Libraries/Utilities/LoadingView.js

[untyped]
.*/node_modules/@react-native-community/cli/.*/.*

[include]

[libs]
node_modules/react-native/interface.js
node_modules/react-native/flow/

[options]
emoji=true

esproposal.optional_chaining=enable
esproposal.nullish_coalescing=enable

module.file_ext=.js
module.file_ext=.json
module.file_ext=.ios.js

munge_underscores=true

module.name_mapper='^react-native/\(.*\)$' -> '<PROJECT_ROOT>/node_modules/react-native/\1'
module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/Image/RelativeImageStub'

suppress_type=$FlowIssue
suppress_type=$FlowFixMe
suppress_type=$FlowFixMeProps
suppress_type=$FlowFixMeState

suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native\\(_ios\\)?_\\(oss\\|fb\\)[a-z,_]*\\)?)\\)
suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native\\(_ios\\)?_\\(oss\\|fb\\)[a-z,_]*\\)?)\\)?:? #[0-9]+
suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError

[lints]
sketchy-null-number=warn
sketchy-null-mixed=warn
sketchy-number=warn
untyped-type-import=warn
nonstrict-import=warn
deprecated-type=warn
unsafe-getters-setters=warn
unnecessary-invariant=warn
signature-verification-failure=warn
deprecated-utility=error

[strict]
deprecated-type
nonstrict-import
sketchy-null
unclear-type
unsafe-getters-setters
untyped-import
untyped-type-import

[version]
^0.122.0
1 change: 1 addition & 0 deletions examples/RNFetchBlobWin/.gitattributes
@@ -0,0 +1 @@
*.pbxproj -text
59 changes: 59 additions & 0 deletions examples/RNFetchBlobWin/.gitignore
@@ -0,0 +1,59 @@
# OSX
#
.DS_Store

# Xcode
#
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate

# Android/IntelliJ
#
build/
.idea
.gradle
local.properties
*.iml

# node.js
#
node_modules/
npm-debug.log
yarn-error.log

# BUCK
buck-out/
\.buckd/
*.keystore
!debug.keystore

# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://docs.fastlane.tools/best-practices/source-control/

*/fastlane/report.xml
*/fastlane/Preview.html
*/fastlane/screenshots

# Bundle artifact
*.jsbundle

# CocoaPods
/ios/Pods/
6 changes: 6 additions & 0 deletions examples/RNFetchBlobWin/.prettierrc.js
@@ -0,0 +1,6 @@
module.exports = {
bracketSpacing: false,
jsxBracketSameLine: true,
singleQuote: true,
trailingComma: 'all',
};
1 change: 1 addition & 0 deletions examples/RNFetchBlobWin/.watchmanconfig
@@ -0,0 +1 @@
{}