1. If no 'accessibilityRole' is set, fallback to looking for 'button'
role in the equivalent native props. This helps improve accessibility of
button-like components authored without the web platform in mind.
2. Ensure button context is properly inherited.
3. Add 'appearance:none' to DOM button elements to enable better styling
support in Safari
Fix#378
Moves event normalization and the ResponderEventPlugin injection from
'View' to 'createDOMElement'.
The 'react-native-web/lite' variant is removed from the performance
directory as the implementation is not substantially different.
Micro-optimizations to marginally narrow the performance gap to
css-modules.
The 'onChangeVisibleRows' and 'onEndReachedThreshold' props should not
be passed to 'ScrollView', as it results in React warnings about unknown
props on the underlying DOM node.
Close#383
* HTML class names are now hashes of the corresponding declaration
* Simplifies 'setNativeProps' logic
* Fixes use of server-rendered style sheet
* Fixes duplicate insertion of style sheets with hot-reloading
No significant change to the benchmark results
1. Register the 'pointerEvents' styles to enable memoization
2. Don't flatten styles in render; move flex reset to 'expandStyle'
Reduces benchmark render times by ~10% on early 2011 MacBook Pro
1. Fix auto-flipping of styles
The StyleRegistry didn't account for LTR/RTL when caching the results of
style resolution. The 'writingDirection' style is no longer flipped; no
clear use case for it.
2. Remove experimental '$noI18n' style prop suffix
This feature is essentially unused, and less likely to be used with the
introduction of 'dir=auto' on 'Text'. Removing also marginally improves
render performance.
Fixes V8 "deopt" warning: "Bad value context for arguments value".
This deopt was caused by the babel-compiled output of the ES6 argument
default value for 'rnProps':
var t = arguments.length > 1 && void 0 !== arguments[1]
? arguments[1]
: l
Not relying on ES6 default arguments avoids the function 'deopt'.