* Bumped all dependencies in all projects in the repo to latest. Got RXPTest building again on web and ios, and ran into some issues.
* Fixing regression in web scrollview from a couple weeks ago
* Published new reactxp-webview 2.0.0-rc.3. Consuming that in RXPTest to avoid version mismatches. webview tests now work on ios.
* Eliminating setMaxContentSizeMultiplier since it's not in public RN
* Fixing the image api test to take pixel ratio into account
* Updating all react native peer deps to just >=0.57
* fix: upgrade react-native-webview dependency, remove obsolete props
react-native-webview issued a breaking change release to shed the
UIWebView references on iOS, as Apple indicated they would soon stop
accepting app submissions that used that deprecated API.
react-native-webview is now fully WebKit and without this the webview
extension here references obsolete symbols because the JS layer still has
RNCWKWebView symbols from react-native-webview <7 while the auto-linked
iOS Pod is from react-native-webview >=7
Perhaps react-native-webview should be a peerDependency?
More info: https://github.com/react-native-community/react-native-webview/releases/tag/v7.0.1
* remove react-native-webview devDependency as part of lean-core extraction
* update package-lock after removing react-native-webview devDependency
* Use new/temporary react lifecycle methods (#1039)
This migration was performed using the recommend codemod tool:
`npx react-codemod rename-unsafe-lifecycles`
https://reactjs.org/blog/2019/08/08/react-v16.9.0.html#renaming-unsafe-lifecycle-methods
The change to tslint.json should be reverted after the second phase of this change
where the deprecated/UNSAFE APIs are removed completely in favor of different lifecycle APIs
The converted code will not work on react versions < v16.3 (react-native v0.55)
The converted code will continue to work on react v17.x
* Log what test is next so failures are easy to localize
* Fix mouse test render failure, text must be inside text JSX
* Change button render direction so all buttons are visible
* Remove SyncTasks from reactxp core and prefer ES6 promises
Usage of ES6 promises is more standardized, using SyncTasks by default doesn't provide many consumers a large benefit. If they need SyncTasks promises, they can wrap in SyncTasks.fromThenable at the use site
* Update reactxp-netinfo to remove SyncTasks
* Update samples to use ES6 promises
* Extract the WebView component out of core and into an extension
* Fix a race condition that could result in accurate test results in RXP Test
* Resolve Github review nit
* Fix typo
* Change to extracted NetInfo instead of version bundled with React Native
* Update to v3 of react-native-netinfo
* Move RX.Network into reactxp-netinfo
* Use reatxp-netinfo in RXPTest
* Remove reat-native-community/netinfo from base reactxp package
* Integrate NetInfo 3.2.0 which includes Windows support
* Remove file that is not part of these changes
* Remove un-needed file
* Update comments in rxp-netinfo headers
For fixed height items, this should always be accurate. For variable height items, it will be corrected shortly after.
This allows the VLV to start displaying content if the container onLayout is delayed. This removes a timing hole for scrolling to items when there's only fixed height items
* Rework VirtualListView
- Move the concept of focus/selected into VLV itself - usually we want to select something
- Use React.Fragment to remove one layer of un-needed rendering
- Provide a single object in renderItem callback that contains details about focus/selection state
* Fix a bug that would result in incorrect selection when list items are fully replaced
* Allow cell recycling on macos
* Add disableTouchOpacitiyAnimation to cells
* tslint fixes
* lint fixes
* PR comments
* Fix bunding in VLV scrollToTop
* PR comments and add support for auto-scroll when using keyboard nav
* Keep cell focus tracked in VLV after tabbing away
This allows children components of VLV to be focused
* Expose ScrollEventThrottle via VirtualListView
* Add two missing props in docs
* Add a flag to disable cell recycling
* Remove prop to disable cell recycling, but enable another mechanism to do it
If the first item in the list wasn't marked as navigable, the keyboard nav logic wouldn't select any element automatically and it may not be possible to navigate through the VLV with the keyboard
Instead select the first navigable item by default
* Add accessibility traits needed for MacOS Buttons
Keep this behind a flag until public react-native-mac fully supports this
* Add (experimental) support for keyboard based navigation on Mac
* Disable cell recycling in VLV on mac to support keyboard based accessibility
Currently there's no mechanism to tell mac to ignore specific views if they don't have a touch handler
* Fix spacing in GestureView
* Fix accessibility in reactxp-virtuallistview
1) Ensure that there is a selectable item on vlv mount
2) Ensure that if the focuses item is removed, we pick a new item (instead of asserting)
* Down -> Up
1) Explicit version of lodash could cause double-bundling in downstream modules
2) ReactXP was pointing to a min version that was un-supported (missing scrollXAnimatedValue prop on RX.ScrollView until 1.5.0)