Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
154 commits
Select commit Hold shift + click to select a range
1f1f89b
[fix] Image 'onLoad' callback on update
necolas Dec 2, 2017
5f3e422
0.1.15
necolas Dec 2, 2017
da86ea9
[fix] NetInfo event listeners and types
necolas Dec 2, 2017
3e3cfc5
0.1.16
necolas Dec 2, 2017
217ad97
[change] Update Flow and types
necolas Dec 2, 2017
5b5b72c
Update eslint and prettier
necolas Dec 2, 2017
fca04c4
Update enzyme
necolas Dec 2, 2017
7920872
Update webpack tools
necolas Dec 2, 2017
ff2b0c9
Update to React@16.2 dev dependencies
necolas Dec 2, 2017
2acd8e4
Update raf and debounce modules
necolas Dec 2, 2017
6bc76c3
Update yarn script syntax
necolas Dec 2, 2017
e8eab9b
[add] ImageBackground component
Minishlink Oct 28, 2017
b1e860a
Add ImageBackground docs
necolas Dec 1, 2017
541d245
[change] Image no longer accepts children
necolas Dec 1, 2017
02e62ad
Lint fixes
necolas Dec 3, 2017
b7e970f
[add] Picker and Picker.Item components
kennethkufluk Nov 6, 2017
0dfe319
[change] update the Animated implementation
necolas Dec 6, 2017
f96d7b8
[change] update PanResponder implementation
necolas Dec 6, 2017
034108a
[add] SafeAreaView component
necolas Dec 6, 2017
f1ce6c2
[fix] AppRegistry.getApplication style element keys
necolas Dec 18, 2017
9bcc67e
[fix] top-level API exports
necolas Dec 18, 2017
82c044e
[fix] use ReactDOM.hydrate in AppRegistry.runApplication
necolas Dec 18, 2017
5f68542
[fix] Touchable use with react-test-renderer
necolas Dec 18, 2017
321051b
[add] ART export
necolas Dec 18, 2017
9ae95d0
Add further details to Getting Started guide
necolas Dec 18, 2017
8bf28db
Document more instance methods in Direct Manipulation guide
necolas Dec 18, 2017
d1e49e0
Remove unmaintained starter kit
necolas Dec 18, 2017
66cf45b
Update benchmark libraries and results
necolas Dec 19, 2017
556dc89
[fix] ScrollView animated scrollTo
necolas Dec 19, 2017
ed1e45a
Link to yarnpkg website instead of npmjs
necolas Dec 20, 2017
1a20fcf
[add] StyleSheet.compose
necolas Dec 20, 2017
495defd
[fix] StyleSheet.hairlineWidth on retina screens
necolas Dec 20, 2017
6de892c
[add] CheckBox component
necolas Dec 20, 2017
a712a58
0.2.0
necolas Dec 20, 2017
0a5acdb
Update version in benchmark results table
necolas Dec 20, 2017
3ecf5d2
[fix] corrupt hydrate import
johakr Dec 20, 2017
3e12ddf
0.2.1
necolas Dec 20, 2017
4da4dd5
[fix] AppContainer initial state
koulmomo Dec 20, 2017
b545fe4
0.2.2
necolas Dec 20, 2017
5881f07
Fix typo in benchmark results
necolas Dec 20, 2017
14d87f4
Fix tests not running in CI
necolas Dec 23, 2017
3026465
Monorepo
necolas Dec 21, 2017
f52a851
Use an .eslintignore file
necolas Dec 24, 2017
1776891
Improve project introduction and guides
necolas Dec 26, 2017
f6d1caa
Document web-only Switch props
necolas Dec 26, 2017
86263a2
Reorganize and add to benchmarks
necolas Dec 27, 2017
41d90e0
[fix] ReactDOM hydration warnings in development
necolas Dec 30, 2017
af47d5f
[fix] React warning when using hitSlop prop
necolas Dec 30, 2017
b85a706
Fix formatting of benchmarks table
necolas Dec 30, 2017
85aaa39
[fix] i18n of styles when using 'setNativeProps'
lyahdav Dec 30, 2017
bff3f50
Fix release script
necolas Dec 30, 2017
0d0fdc1
Minor docs fixes
necolas Dec 31, 2017
6f10f6b
[fix] AppRegistry.unmountApplicationComponentAtRootTag
necolas Dec 31, 2017
46e77d0
Change babel presets
necolas Dec 31, 2017
209bd3a
[fix] babel-plugin support for 'react-native-web' module name
necolas Jan 1, 2018
87fdd6c
[change] 'react-native-web' module organization and exports
necolas Jan 1, 2018
6d91541
[fix] StyleSheet.hairlineWidth guard against missing document.body
necolas Jan 4, 2018
69e0396
Minor README edit
necolas Jan 4, 2018
b78206d
Remove 'transform-runtime' from webpack example
necolas Jan 8, 2018
c26ef0e
Run precommit hook automatically
MoOx Jan 8, 2018
17614e3
Use prettier config instead of CLI args
MoOx Jan 8, 2018
fd6ccbc
[fix] ignore more native-only View/Text props
MoOx Jan 8, 2018
b6ef1d3
[fix] handle "monospace" font-family on web
necolas Jan 8, 2018
7f45c52
Update to inline-style-prefixer@4.0.0
necolas Jan 8, 2018
91472bc
0.3.0
necolas Jan 9, 2018
02b124e
Update yarn.lock
necolas Jan 9, 2018
a3e44a5
Update to enzyme@3.3.0
necolas Jan 10, 2018
03598d8
Update to babel-plugin-tester@5.0.0
necolas Jan 10, 2018
44d7954
Update to storybook@3.3.6
necolas Jan 10, 2018
fde2932
Update to lerna@2.6.0
necolas Jan 10, 2018
60c2cd6
Update to lint-staged@6.0.0
necolas Jan 10, 2018
902ba22
Update to flow-bin@0.63.1
necolas Jan 10, 2018
2117e44
[fix] limit Image loader deferral to 1000ms
necolas Jan 11, 2018
067e3f3
[fix] KeyboardAvoidingView missing 'this' binding
johakr Jan 10, 2018
19cf071
[add] StyleSheet support for 'overscrollBehavior'
necolas Jan 11, 2018
e234568
Fix source links in documentation
necolas Jan 11, 2018
d5e8d85
Fix example in babel plugin README
necolas Jan 16, 2018
5cd533e
0.3.1
necolas Jan 16, 2018
6e6fd4b
Add note about Object.assign polyfill to docs
necolas Jan 17, 2018
ed0cafa
Rewrite benchmarks app
necolas Jan 18, 2018
a9342da
Add release script for benchmarks
necolas Jan 18, 2018
b7adfd5
[fix] Picker.Item label text
necolas Jan 18, 2018
0721245
Patch release script
necolas Jan 18, 2018
753ef96
0.3.2
necolas Jan 18, 2018
3906b6b
Add benchmarks app link to README
necolas Jan 18, 2018
bd8c2d6
Add npm badge to babel-plugin-react-native-web README
necolas Jan 18, 2018
f163e4f
Use full URLs for README links
necolas Jan 18, 2018
bbf7674
Add react-fela to benchmarks
javivelasco Jan 18, 2018
619079c
Move babel-plugin npm badge to correct README
necolas Jan 18, 2018
6ecdc1a
[fix] babel-plugin VariableDeclaration case
Jan 19, 2018
1b493c9
Add styled-jsx to benchmarks
giuseppeg Jan 19, 2018
3e1b68d
Add Moto G4 example benchmark results
necolas Jan 19, 2018
e4e6147
0.3.3
necolas Jan 19, 2018
9359701
Benchmarks report total run time
necolas Jan 22, 2018
ec8843f
Compute benchmark props before each iteration
necolas Jan 22, 2018
9d8d405
Benchmark app component optimizations
necolas Jan 22, 2018
985c1d6
Add benchmarks update test for react-jss
kof Jan 21, 2018
a403244
Update benchmarks library dependencies
necolas Jan 23, 2018
efeaea7
Benchmarks include forced layout time
necolas Jan 23, 2018
8512709
Fix benchmark picker touch target size in Safari
necolas Jan 23, 2018
d04721c
Update yarn.lock
necolas Jan 23, 2018
16d98b4
[fix] ignore native-only Image props
MoOx Jan 24, 2018
6e96ee4
Update benchmarked libraries
necolas Jan 29, 2018
865034e
Update benchmark instructions
mxstbr Jan 29, 2018
7e0fbf9
Fix yarn.lock
necolas Jan 29, 2018
6f58d7a
[fix] TextInput support for spellCheck prop
necolas Jan 31, 2018
1542f1f
0.3.4
necolas Jan 31, 2018
73a731f
Rename StyleManager and StyleRegistry
necolas Jan 20, 2018
670d43b
Refactor how pointerEvents styles are managed
necolas Jan 20, 2018
a53dba8
[change] simplify CSS rule injection
necolas Jan 21, 2018
083769d
[fix] resolve inline-style pointerEvents to classNames
necolas Jan 22, 2018
dcce72b
Reorganize style resolver
necolas Jan 22, 2018
2ad710d
[change] StyleSheet does not eagerly resolve and inject styles
necolas Jan 25, 2018
240cf7e
[change] AppRegistry and StyleSheet APIs to fix SSR
necolas Jan 25, 2018
31d428a
[fix] add support for TextInput placeholderTextColor prop
necolas Jan 24, 2018
998e275
[add] CSS keyframes support via 'animationName' style
necolas Jan 29, 2018
21b3f39
[fix] babel-plugin require call for compiled modules
necolas Feb 4, 2018
538ab88
Separate modules for StyleSheet and related side-effects
necolas Feb 5, 2018
69d5373
[fix] Firefox rendering of TextInput
necolas Feb 6, 2018
96eecc0
Replace lerna with custom script
necolas Feb 4, 2018
a41af0f
0.4.0
necolas Feb 7, 2018
73b459e
[add] TextInput onKeyPress support for arrow keys
necolas Feb 8, 2018
fb4635e
Update README's
necolas Feb 9, 2018
748b2d0
[fix] Image 'source' prop update when missing in initial render
JakubRimal Feb 12, 2018
9ee89bc
[fix] ResponderEventPlugin event filtering
necolas Feb 12, 2018
399f465
[fix] NativeMethodsMixin measure/measureInWindow with scroll
kidasovmercury Feb 9, 2018
7265736
[fix] StyleSheet accepts 'space-evenly' value for 'justifyContent'
necolas Feb 11, 2018
b8080ba
[fix] Touchable press events regression in 9ee89bc
necolas Feb 13, 2018
17f8a67
[fix] ResponderEventPlugin skips 'mouseup' when no touch is active
necolas Feb 13, 2018
b66aba1
website: fix ImageBackground source code link
necolas Feb 14, 2018
00c9dc4
[fix] setNativeProps can apply flex styles
necolas Feb 8, 2018
155b34e
Fix unit test timeouts on Travis CI
necolas Feb 14, 2018
b754776
[add] StyleSheet support for start/end properties and values
necolas Feb 11, 2018
92794cd
[add] I18nManager and StyleSheet support for RTL without left/right flip
necolas Feb 14, 2018
f1fc2a9
Rewrite I18nManager and i18nStyle unit tests
necolas Feb 16, 2018
f37003a
Add end/start to BorderPropTypes
necolas Feb 16, 2018
0d0c7e6
Document 'onBlur', 'onFocus', and 'onContextMenu' props
necolas Feb 17, 2018
fb845eb
Update benchmarks dependencies
necolas Feb 17, 2018
a314d5b
[change] MIT license
necolas Feb 17, 2018
9fe089c
[add] development warning about using '!important' in styles
necolas Feb 17, 2018
31db333
[fix] Image support for SVG base64 data
necolas Feb 17, 2018
6d90818
[fix] Text support for 'fontVariant' style
necolas Feb 18, 2018
e5adc5a
Add 'coveragePathIgnorePatterns' to jest config
necolas Feb 18, 2018
893963a
[fix] PanResponder grant firing twice on touch devices
necolas Feb 19, 2018
b4e4bfb
Fix the event handlers with event normalization
necolas Feb 19, 2018
239a439
Update yarn.lock
necolas Feb 19, 2018
a53372c
[fix] babel-plugin only rewrites paths for known modules
necolas Feb 19, 2018
b28cbbb
[fix] TextInput default font styles
necolas Feb 19, 2018
9333e7e
0.5.0
necolas Feb 19, 2018
b28581f
[fix] Touchable 'touchAction' value
necolas Feb 20, 2018
cafe10d
Improve View 'pointerEvents' example
necolas Feb 20, 2018
88844da
merge necolas/react-native-web#master into brandingbrand/react-native…
NickBurkhartBB Feb 22, 2018
021c6b5
[fix] SSR of Image renders source
necolas Jun 24, 2017
b65e8ad
wrap load in check for server side
NickBurkhartBB Feb 22, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"presets": [
"./scripts/babel/preset"
]
}
4 changes: 4 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
coverage
dist
node_modules
packages/**/vendor/*
1 change: 1 addition & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@
"no-dupe-class-members": 2,
"no-dupe-keys": 2,
"no-duplicate-case": 2,
"no-duplicate-imports": 2,
"no-empty-character-class": 2,
"no-empty-pattern": 2,
"no-eval": 2,
Expand Down
14 changes: 8 additions & 6 deletions .flowconfig
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
[version]
^0.63.0

[ignore]
.*/__tests__/.*
.*/benchmarks/.*
.*/docs/.*
.*/node_modules/animated/*
<PROJECT_ROOT>/.*/__tests__/.*
<PROJECT_ROOT>/packages/.*/dist/.*
<PROJECT_ROOT>/website/.*
.*/node_modules/babel-plugin-transform-react-remove-prop-types/*

[include]

[libs]
types
<PROJECT_ROOT>/types

[options]
unsafe.enable_getters_and_setters=true

69 changes: 42 additions & 27 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,20 @@ Fork, then clone the repo:
git clone https://github.com/your-username/react-native-web.git
```

Install dependencies (requires [yarn](https://yarnpkg.com/en/docs/install):
Install dependencies (requires [yarn](https://yarnpkg.com/en/docs/install)):

```
yarn
```

## Automated tests

To run the linter:

```
yarn lint
```

To run flow:

```
Expand All @@ -40,62 +46,57 @@ yarn jest
…in watch mode:

```
yarn jest:watch
yarn jest --watch
```

To run all automated tests:
To run all these automated tests:

```
yarn test
```

## Visual tests

To run the interactive storybook:

```
yarn docs:start
```
## Compile and build

To generate a static build of the storybook:
To compile the `react-native-web` source code:

```
yarn docs:build
yarn compile
```

To run the performance benchmarks in a browser (opening `./benchmarks/index.html`):
in watch mode:

```
yarn benchmark
yarn compile --watch
```

## Compile and build
## Website and visual tests

To compile the source code to `dist`:
To run the interactive storybook:

```
yarn compile
yarn website
```

To create a UMD bundle of the library:
When you're also making changes to the 'react-native-web' source files, run this command in another process:

```
yarn build
yarn compile --watch
```

### Pre-commit
## Benchmarks

To format and lint code before commit:
To run the benchmarks locally:

```
yarn precommit
yarn benchmarks
open ./packages/benchmarks/dist/index.html
```

To format and lint the entire project:
To develop against these benchmarks:

```
yarn fmt
yarn lint
yarn compile --watch
yarn benchmarks --watch
```

### New Features
Expand All @@ -106,13 +107,12 @@ that we won't want to accept.

## Pull requests

**Before submitting a pull request,** please make sure the following is done:
**Before submitting a pull request**, please make sure the following is done:

1. Fork the repository and create your branch from `master`.
2. If you've added code that should be tested, add tests!
3. If you've changed APIs, update the documentation.
4. Ensure the tests pass (`yarn test`).
5. Lint and format your code (`yarn fmt && yarn lint`).

You can now submit a pull request, referencing any issues it addresses.

Expand All @@ -123,3 +123,18 @@ After you have submitted your pull request, we'll try to get back to you as
soon as possible. We may suggest some changes or improvements.

Thank you for contributing!

## Releases

To commit, publish, and push a final version:

```
yarn release <version>
```

Release candidates or versions that you'd like to publish to npm, but do not
want to produce a commit and push it to GitHub:

```
yarn release <version> --skip-git
```
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
node_modules
coverage
node_modules
19 changes: 14 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
language: node_js

node_js:
- "6"
before_script:
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start
- "8"

before_install:
# Install Yarn
- curl -o- -L https://yarnpkg.com/install.sh | bash
- export PATH=$HOME/.yarn/bin:$PATH

cache:
yarn: true
directories:
- node_modules

script:
- yarn lint
- yarn test
45 changes: 18 additions & 27 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,31 +1,22 @@
BSD License
MIT License

For React Native software
Copyright (c) 2015-present, Nicolas Gallagher.
Copyright (c) 2015-present, Facebook, Inc.

Copyright (c) 2015-present, Nicolas Gallagher. All rights reserved.
Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

* Neither the name Facebook nor the names of its contributors may be used to
endorse or promote products derived from this software without specific
prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Loading