From d141a48814092009c050e1624921ab544bc85f7a Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Fri, 2 Nov 2018 14:30:11 -0700 Subject: [PATCH] Switch from lint-staged to husky + pretty-quick --- .prettierrc | 16 +- docs/accessibilityinfo.md | 4 +- docs/alertios.md | 6 +- docs/animated.md | 2 +- docs/animatedvaluexy.md | 2 +- docs/animations.md | 2 +- docs/custom-webview-android.md | 4 +- docs/custom-webview-ios.md | 4 +- docs/getting-started.md | 50 +- docs/native-modules-android.md | 4 +- docs/native-modules-ios.md | 4 +- docs/network.md | 2 +- docs/toastandroid.md | 8 +- ...t-to-left-support-for-react-native-apps.md | 2 +- website/package.json | 22 +- website/sync-guides.js | 37 +- .../versioned_docs/version-0.12/animated.md | 4 +- .../versioned_docs/version-0.16/animated.md | 4 +- .../versioned_docs/version-0.18/animated.md | 4 +- .../versioned_docs/version-0.19/animated.md | 4 +- .../versioned_docs/version-0.22/animated.md | 4 +- .../versioned_docs/version-0.23/animated.md | 4 +- .../versioned_docs/version-0.34/animated.md | 4 +- .../version-0.35/toastandroid.md | 2 +- .../versioned_docs/version-0.36/animated.md | 4 +- .../versioned_docs/version-0.37/alertios.md | 6 +- .../versioned_docs/version-0.39/animated.md | 4 +- .../versioned_docs/version-0.42/alertios.md | 6 +- .../versioned_docs/version-0.42/animated.md | 4 +- .../version-0.43/accessibilityinfo.md | 4 +- .../versioned_docs/version-0.43/animated.md | 4 +- .../versioned_docs/version-0.44/alertios.md | 6 +- .../versioned_docs/version-0.44/animated.md | 4 +- .../version-0.46/accessibilityinfo.md | 4 +- .../versioned_docs/version-0.46/animated.md | 4 +- .../versioned_docs/version-0.48/animated.md | 4 +- .../versioned_docs/version-0.49/alertios.md | 6 +- .../versioned_docs/version-0.49/animated.md | 2 +- .../version-0.49/toastandroid.md | 4 +- .../version-0.5/accessibility.md | 4 +- .../version-0.5/accessibilityinfo.md | 4 +- .../versioned_docs/version-0.5/alertios.md | 8 +- .../versioned_docs/version-0.5/animated.md | 2 +- .../version-0.5/animatedvaluexy.md | 2 +- .../versioned_docs/version-0.5/animations.md | 4 +- .../version-0.5/building-from-source.md | 10 +- .../version-0.5/custom-webview-android.md | 4 +- .../version-0.5/custom-webview-ios.md | 4 +- .../versioned_docs/version-0.5/debugging.md | 13 + .../version-0.5/getting-started.md | 52 +- .../version-0.5/height-and-width.md | 2 +- website/versioned_docs/version-0.5/images.md | 3 +- .../integration-with-existing-apps.md | 7 +- .../versioned_docs/version-0.5/maintainers.md | 2 +- .../version-0.5/native-components-ios.md | 4 +- .../version-0.5/native-modules-android.md | 4 +- .../version-0.5/native-modules-ios.md | 6 +- website/versioned_docs/version-0.5/network.md | 2 +- .../version-0.5/permissionsandroid.md | 2 +- .../version-0.5/platform-specific-code.md | 2 + website/versioned_docs/version-0.5/props.md | 6 +- website/versioned_docs/version-0.5/state.md | 19 +- website/versioned_docs/version-0.5/style.md | 22 +- .../version-0.5/toastandroid.md | 6 +- .../versioned_docs/version-0.5/upgrading.md | 18 +- .../versioned_docs/version-0.50/alertios.md | 6 +- .../versioned_docs/version-0.50/animated.md | 2 +- .../version-0.50/toastandroid.md | 4 +- .../versioned_docs/version-0.51/animated.md | 2 +- .../versioned_docs/version-0.52/animated.md | 2 +- .../versioned_docs/version-0.55/animated.md | 2 +- .../versioned_docs/version-0.56/animated.md | 2 +- .../version-0.57/accessibilityinfo.md | 4 +- .../versioned_docs/version-0.57/animated.md | 2 +- website/yarn.lock | 518 ++++++------------ 75 files changed, 386 insertions(+), 635 deletions(-) diff --git a/.prettierrc b/.prettierrc index 61375845b97..51d0a9c8df5 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,13 +1,7 @@ { "overrides": [ { - "files": ".prettierrc", - "options": { - "parser": "json" - } - }, - { - "files": ["website/core/**/*.js", "website/static/js/**/*.js"], + "files": "*.js", "options": { "arrowParens": "avoid", "bracketSpacing": false, @@ -18,11 +12,7 @@ } }, { - "files": [ - "docs/**/*.md", - "website/versioned_docs/**/*.md", - "website/blog/**/*.md" - ], + "files": "*.md", "options": { "arrowParens": "always", "bracketSpacing": false, @@ -30,7 +20,7 @@ "printWidth": 80, "proseWrap": "never", "singleQuote": true, - "trailingComma": "es5" + "trailingComma": "all" } } ] diff --git a/docs/accessibilityinfo.md b/docs/accessibilityinfo.md index 8e382d5557d..2b2fd31fee5 100644 --- a/docs/accessibilityinfo.md +++ b/docs/accessibilityinfo.md @@ -16,7 +16,7 @@ class ScreenReaderStatusExample extends React.Component { componentDidMount() { AccessibilityInfo.addEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); AccessibilityInfo.fetch().then((isEnabled) => { this.setState({ @@ -28,7 +28,7 @@ class ScreenReaderStatusExample extends React.Component { componentWillUnmount() { AccessibilityInfo.removeEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); } diff --git a/docs/alertios.md b/docs/alertios.md index 1133a8f1227..65a8ea7024c 100644 --- a/docs/alertios.md +++ b/docs/alertios.md @@ -76,7 +76,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -118,7 +118,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -132,7 +132,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` diff --git a/docs/animated.md b/docs/animated.md index d2a20c6610f..3e0f003a979 100644 --- a/docs/animated.md +++ b/docs/animated.md @@ -13,7 +13,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/docs/animatedvaluexy.md b/docs/animatedvaluexy.md index 8062dbe716d..32380806489 100644 --- a/docs/animatedvaluexy.md +++ b/docs/animatedvaluexy.md @@ -28,7 +28,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/docs/animations.md b/docs/animations.md index 059c6425253..b269a2be8e1 100644 --- a/docs/animations.md +++ b/docs/animations.md @@ -284,7 +284,7 @@ The native driver also works with `Animated.event`. This is especially useful fo }, }, ], - {useNativeDriver: true} // <-- Add this + {useNativeDriver: true}, // <-- Add this )}> {content} diff --git a/docs/custom-webview-android.md b/docs/custom-webview-android.md index 1f96356abf9..15232242853 100644 --- a/docs/custom-webview-android.md +++ b/docs/custom-webview-android.md @@ -195,7 +195,7 @@ export default class CustomWebView extends Component { const RCTCustomWebView = requireNativeComponent( 'RCTCustomWebView', CustomWebView, - WebView.extraNativeComponentConfig + WebView.extraNativeComponentConfig, ); ``` @@ -253,6 +253,6 @@ const RCTCustomWebView = requireNativeComponent( ...WebView.extraNativeComponentConfig.nativeOnly, onScrollToBottom: true, }, - } + }, ); ``` diff --git a/docs/custom-webview-ios.md b/docs/custom-webview-ios.md index c491892cf20..4a4a8df3e1b 100644 --- a/docs/custom-webview-ios.md +++ b/docs/custom-webview-ios.md @@ -168,7 +168,7 @@ export default class CustomWebView extends Component { const RCTCustomWebView = requireNativeComponent( 'RCTCustomWebView', CustomWebView, - WebView.extraNativeComponentConfig + WebView.extraNativeComponentConfig, ); ``` @@ -227,6 +227,6 @@ const RCTCustomWebView = requireNativeComponent( ...WebView.extraNativeComponentConfig.nativeOnly, onScrollToBottom: true, }, - } + }, ); ``` diff --git a/docs/getting-started.md b/docs/getting-started.md index 5661bdce5eb..493f12437f6 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -344,45 +344,15 @@ The SDK Manager can be accessed from the "Welcome to Android Studio" screen. Cli > The SDK Manager can also be found within the Android Studio "Preferences" dialog, under **Appearance & Behavior** → **System Settings** → **Android SDK**. -Select the "SDK Platforms" tab from within the SDK Manager, then check the box next to "Show Package Details" in the bottom right corner. Look for and expand the `Android 8.1 (Oreo)` entry, then make sure the following items are all checked: +Select the "SDK Platforms" tab from within the SDK Manager, then check the box next to "Show Package Details" in the bottom right corner. Look for and expand the `Android 8.1 (Oreo)` entry, then make sure the following items are checked: * `Android SDK Platform 27` -* `Google APIs Intel x86 Atom_64 System Image` +* `Intel x86 Atom_64 System Image` or `Google APIs Intel x86 Atom System Image` - - -![Android SDK Manager](/react-native/docs/assets/GettingStartedAndroidSDKManagerMacOS.png) - - - -![Android SDK Manager](/react-native/docs/assets/GettingStartedAndroidSDKManagerWindows.png) - - - -Next, select the "SDK Tools" tab and check the box next to "Show Package Details" here as well. Look for and expand the "Android SDK Build-Tools" entry, then make sure that `26.0.3` is selected. - - - -![Android SDK Manager - 26.0.3 Build Tools](/react-native/docs/assets/GettingStartedAndroidSDKManagerSDKToolsMacOS.png) - - - -![Android SDK Manager - 26.0.3 Build Tools](/react-native/docs/assets/GettingStartedAndroidSDKManagerSDKToolsWindows.png) - - +Next, select the "SDK Tools" tab and check the box next to "Show Package Details" here as well. Look for and expand the "Android SDK Build-Tools" entry, then make sure that `27.0.3` is selected. Finally, click "Apply" to download and install the Android SDK and related build tools. - - -![Android SDK Manager - Installs](/react-native/docs/assets/GettingStartedAndroidSDKManagerInstallsMacOS.png) - - - -![Android SDK Manager - Installs](/react-native/docs/assets/GettingStartedAndroidSDKManagerInstallsWindows.png) - - - #### 3. Configure the ANDROID_HOME environment variable The React Native tools require some environment variables to be set up in order to build apps with native code. @@ -485,19 +455,7 @@ If you use Android Studio to open `./AwesomeProject/android`, you can see the li ![Android Studio AVD Manager](/react-native/docs/assets/GettingStartedAndroidStudioAVD.png) -If you have just installed Android Studio, you will likely need to [create a new AVD](https://developer.android.com/studio/run/managing-avds.html). Select "Create Virtual Device...", then pick any Phone from the list and click "Next". - - - -![Android Studio AVD Manager](/react-native/docs/assets/GettingStartedCreateAVDWindows.png) - - - -![Android Studio AVD Manager](/react-native/docs/assets/GettingStartedCreateAVDMacOS.png) - - - -Select the "x86 Images" tab, then look for the **Oreo** API Level 26, x86_64 ABI image with a Android 8.0 (Google APIs) target. +If you have just installed Android Studio, you will likely need to [create a new AVD](https://developer.android.com/studio/run/managing-avds.html). Select "Create Virtual Device...", then pick any Phone from the list and click "Next", then select the **Oreo** API Level 27 image. diff --git a/docs/native-modules-android.md b/docs/native-modules-android.md index 5bdcd14ebbc..7e72693f58f 100644 --- a/docs/native-modules-android.md +++ b/docs/native-modules-android.md @@ -221,7 +221,7 @@ UIManager.measureLayout( }, (x, y, width, height) => { console.log(x + ':' + y + ':' + width + ':' + height); - } + }, ); ``` @@ -273,7 +273,7 @@ async function measureLayout() { try { var {relativeX, relativeY, width, height} = await UIManager.measureLayout( 100, - 100 + 100, ); console.log(relativeX + ':' + relativeY + ':' + width + ':' + height); diff --git a/docs/native-modules-ios.md b/docs/native-modules-ios.md index 3144d573345..1fb50b7fde4 100644 --- a/docs/native-modules-ios.md +++ b/docs/native-modules-ios.md @@ -120,7 +120,7 @@ You would then call this from JavaScript by using either: CalendarManager.addEvent( 'Birthday Party', '4 Privet Drive, Surrey', - date.getTime() + date.getTime(), ); // passing date as number of milliseconds since Unix epoch ``` @@ -130,7 +130,7 @@ or CalendarManager.addEvent( 'Birthday Party', '4 Privet Drive, Surrey', - date.toISOString() + date.toISOString(), ); // passing date as ISO-8601 string ``` diff --git a/docs/network.md b/docs/network.md index 65f4d0b3fe1..17f6a9c1de5 100644 --- a/docs/network.md +++ b/docs/network.md @@ -60,7 +60,7 @@ You can also use the proposed ES2017 `async`/`await` syntax in a React Native ap async function getMoviesFromApi() { try { let response = await fetch( - 'https://facebook.github.io/react-native/movies.json' + 'https://facebook.github.io/react-native/movies.json', ); let responseJson = await response.json(); return responseJson.movies; diff --git a/docs/toastandroid.md b/docs/toastandroid.md index 3ebc1f829c9..b85a6a84cf5 100644 --- a/docs/toastandroid.md +++ b/docs/toastandroid.md @@ -21,14 +21,14 @@ ToastAndroid.show('A pikachu appeared nearby !', ToastAndroid.SHORT); ToastAndroid.showWithGravity( 'All Your Base Are Belong To Us', ToastAndroid.SHORT, - ToastAndroid.CENTER + ToastAndroid.CENTER, ); ToastAndroid.showWithGravityAndOffset( 'A wild toast appeared!', ToastAndroid.LONG, ToastAndroid.BOTTOM, 25, - 50 + 50, ); ``` @@ -48,7 +48,7 @@ const Toast = (props) => { ToastAndroid.LONG, ToastAndroid.BOTTOM, 25, - 50 + 50, ); return null; } @@ -70,7 +70,7 @@ class App extends Component { }, () => { this.hideToast(); - } + }, ); }; diff --git a/website/blog/2016-08-19-right-to-left-support-for-react-native-apps.md b/website/blog/2016-08-19-right-to-left-support-for-react-native-apps.md index ca354188501..b5afd7eb2fb 100644 --- a/website/blog/2016-08-19-right-to-left-support-for-react-native-apps.md +++ b/website/blog/2016-08-19-right-to-left-support-for-react-native-apps.md @@ -186,7 +186,7 @@ _onDirectionChange = () => { 'Reload this page', 'Please reload this page to change the UI direction! ' + 'All examples in this app will be affected. ' + - 'Check them out to see what they look like in RTL layout.' + 'Check them out to see what they look like in RTL layout.', ); }; ``` diff --git a/website/package.json b/website/package.json index 3e03dc64124..65f520975b4 100644 --- a/website/package.json +++ b/website/package.json @@ -19,22 +19,22 @@ "version": "docusaurus-version", "rename-version": "docusaurus-rename-version", "ci-check": "yarn prettier:diff && node image-check.js", - "format:source": - "prettier --config ../.prettierrc --write \"{core/**/*.js,static/js/**/*.js}\"", + "format:source": "prettier --write \"{core/**/*.js,static/js/**/*.js}\"", "format:markdown": - "prettier --config ../.prettierrc --write \"{../docs/**/*.md,versioned_docs/**/*.md,blog/**/*.md}\"", + "prettier --write \"{../docs/*.md,versioned_docs/**/*.md,blog/**/*.md}\"", "nit:source": - "prettier --config ../.prettierrc --list-different \"{core/**/*.js,static/js/**/*.js}\"", + "prettier --list-different \"{core/**/*.js,static/js/**/*.js}\"", "nit:markdown": - "prettier --config ../.prettierrc --list-different \"{../docs/**/*.md,versioned_docs/**/*.md,blog/**/*.md}\"", + "prettier --list-different \"{../docs/*.md,versioned_docs/**/*.md,blog/**/*.md}\"", "prettier": "yarn format:source && yarn format:markdown", "prettier:diff": "yarn nit:source", - "precommit": "lint-staged", "sync-guides": "node sync-guides.js", "test": "yarn build" }, - "lint-staged": { - "*.{js,json,css,md}": ["prettier --write", "git add"] + "husky": { + "hooks": { + "pre-commit": "pretty-quick --staged" + } }, "dependencies": { "docusaurus": "1.3.3", @@ -46,9 +46,9 @@ "fs-extra": "^5.0.0", "glob": "^7.1.2", "glob-promise": "^3.3.0", - "husky": "^0.14.3", - "lint-staged": "^6.0.0", + "husky": "^1.1.3", "path": "^0.12.7", - "prettier": "1.9.1" + "prettier": "1.9.1", + "pretty-quick": "^1.8.0" } } diff --git a/website/sync-guides.js b/website/sync-guides.js index 44239cea04e..d8621d37f7f 100644 --- a/website/sync-guides.js +++ b/website/sync-guides.js @@ -20,27 +20,27 @@ * is the oldest document version. This makes it so that the same text is * displayed to the reader, regardless of what version they are looking at. */ -const glob = require("glob"); -const fm = require("front-matter"); -const fs = require("fs-extra"); +const glob = require('glob'); +const fm = require('front-matter'); +const fs = require('fs-extra'); -const pathToDocs = "../docs"; -const pathToVersionedDocs = "./versioned_docs"; -const blacklist = require("./versionedDocsBlacklist.json"); -const versions = require("./versions.json"); +const pathToDocs = '../docs'; +const pathToVersionedDocs = './versioned_docs'; +const blacklist = require('./versionedDocsBlacklist.json'); +const versions = require('./versions.json'); if (versions.length === 0) { - throw "No versions found."; + throw 'No versions found.'; } const oldestVersion = versions[versions.length - 1]; const updateVersionWithAsset = opts => { - const { version, asset } = opts; - const { id } = asset; + const {version, asset} = opts; + const {id} = asset; const pathToDocVersion = `${pathToVersionedDocs}/version-${version}/${id}.md`; const idForDocVersion = `version-${version}-${id}`; - const data = fs.readFileSync(`${pathToDocs}/${id}.md`, "utf8"); + const data = fs.readFileSync(`${pathToDocs}/${id}.md`, 'utf8'); const frontmatter = fm(data); const title = frontmatter.attributes.title; const body = frontmatter.body; @@ -50,8 +50,7 @@ id: ${idForDocVersion} title: ${title} original_id: ${id} --- -${body} -`; +${body}`; fs.writeFileSync(pathToDocVersion, newData); }; @@ -68,13 +67,13 @@ const getBlacklistedAssetsInVersionedDocs = async () => { let blacklistedAssetsFound = []; const files = await globAsync(`${pathToVersionedDocs}/**/*.md`); files.forEach(file => { - const data = fs.readFileSync(file, "utf8"); + const data = fs.readFileSync(file, 'utf8'); const frontmatter = fm(data); const id = frontmatter.attributes.original_id; const re = /\/version-(.+)\//; const version = file.match(re)[1]; if (version !== oldestVersion && blacklist.includes(id)) { - blacklistedAssetsFound.push({ id, file, version }); + blacklistedAssetsFound.push({id, file, version}); } }); @@ -85,11 +84,11 @@ const getOriginalUnversionedAssets = async () => { let assets = []; const files = await globAsync(`${pathToDocs}/*.md`); files.forEach(file => { - const data = fs.readFileSync(file, "utf8"); + const data = fs.readFileSync(file, 'utf8'); const frontmatter = fm(data); - const { id } = frontmatter.attributes; + const {id} = frontmatter.attributes; if (blacklist.includes(id)) { - assets.push({ id, file }); + assets.push({id, file}); } }); @@ -108,7 +107,7 @@ const syncGuides = async () => { originalAssets.forEach(asset => { updateVersionWithAsset({ version: oldestVersion, - asset + asset, }); }); }; diff --git a/website/versioned_docs/version-0.12/animated.md b/website/versioned_docs/version-0.12/animated.md index 12bb5a2ccbe..cda2eca7229 100644 --- a/website/versioned_docs/version-0.12/animated.md +++ b/website/versioned_docs/version-0.12/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -344,7 +344,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.16/animated.md b/website/versioned_docs/version-0.16/animated.md index 27ea65908f3..09ffd3904d0 100644 --- a/website/versioned_docs/version-0.16/animated.md +++ b/website/versioned_docs/version-0.16/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -344,7 +344,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.18/animated.md b/website/versioned_docs/version-0.18/animated.md index 810b630df7d..84a7ceeb6be 100644 --- a/website/versioned_docs/version-0.18/animated.md +++ b/website/versioned_docs/version-0.18/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -366,7 +366,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.19/animated.md b/website/versioned_docs/version-0.19/animated.md index 49f004cb224..c305a51213d 100644 --- a/website/versioned_docs/version-0.19/animated.md +++ b/website/versioned_docs/version-0.19/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -366,7 +366,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.22/animated.md b/website/versioned_docs/version-0.22/animated.md index 7bc480e312f..ff1464d326b 100644 --- a/website/versioned_docs/version-0.22/animated.md +++ b/website/versioned_docs/version-0.22/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -377,7 +377,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.23/animated.md b/website/versioned_docs/version-0.23/animated.md index 807f52d0403..c4384c561ae 100644 --- a/website/versioned_docs/version-0.23/animated.md +++ b/website/versioned_docs/version-0.23/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -377,7 +377,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.34/animated.md b/website/versioned_docs/version-0.34/animated.md index f0be259151e..2f2bec52778 100644 --- a/website/versioned_docs/version-0.34/animated.md +++ b/website/versioned_docs/version-0.34/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -390,7 +390,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.35/toastandroid.md b/website/versioned_docs/version-0.35/toastandroid.md index fedc541d54e..7ae2c74229f 100644 --- a/website/versioned_docs/version-0.35/toastandroid.md +++ b/website/versioned_docs/version-0.35/toastandroid.md @@ -18,7 +18,7 @@ ToastAndroid.show('A pikachu appeared nearby !', ToastAndroid.SHORT); ToastAndroid.showWithGravity( 'All Your Base Are Belong To Us', ToastAndroid.SHORT, - ToastAndroid.CENTER + ToastAndroid.CENTER, ); ``` diff --git a/website/versioned_docs/version-0.36/animated.md b/website/versioned_docs/version-0.36/animated.md index e3954174e97..96e38e03d8c 100644 --- a/website/versioned_docs/version-0.36/animated.md +++ b/website/versioned_docs/version-0.36/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -401,7 +401,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.37/alertios.md b/website/versioned_docs/version-0.37/alertios.md index 870b82e8787..dd9179d1bfb 100644 --- a/website/versioned_docs/version-0.37/alertios.md +++ b/website/versioned_docs/version-0.37/alertios.md @@ -77,7 +77,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -118,7 +118,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -132,7 +132,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` diff --git a/website/versioned_docs/version-0.39/animated.md b/website/versioned_docs/version-0.39/animated.md index 4db8cf16b1e..cb5556deb06 100644 --- a/website/versioned_docs/version-0.39/animated.md +++ b/website/versioned_docs/version-0.39/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -411,7 +411,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.42/alertios.md b/website/versioned_docs/version-0.42/alertios.md index 5d7d0431031..c42ead8c65a 100644 --- a/website/versioned_docs/version-0.42/alertios.md +++ b/website/versioned_docs/version-0.42/alertios.md @@ -77,7 +77,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -119,7 +119,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -133,7 +133,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` diff --git a/website/versioned_docs/version-0.42/animated.md b/website/versioned_docs/version-0.42/animated.md index 1f0ec136cf2..ed3cb06c9fb 100644 --- a/website/versioned_docs/version-0.42/animated.md +++ b/website/versioned_docs/version-0.42/animated.md @@ -20,7 +20,7 @@ class FadeInView extends React.Component { Animated.timing( // Uses easing functions this.state.fadeAnim, // The value to drive - {toValue: 1} // Configuration + {toValue: 1}, // Configuration ).start(); // Don't forget start! } render() { @@ -411,7 +411,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.43/accessibilityinfo.md b/website/versioned_docs/version-0.43/accessibilityinfo.md index 8b99cca233f..d4e98eab3fa 100644 --- a/website/versioned_docs/version-0.43/accessibilityinfo.md +++ b/website/versioned_docs/version-0.43/accessibilityinfo.md @@ -17,7 +17,7 @@ class ScreenReaderStatusExample extends React.Component { componentDidMount() { AccessibilityInfo.addEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); AccessibilityInfo.fetch().done((isEnabled) => { this.setState({ @@ -29,7 +29,7 @@ class ScreenReaderStatusExample extends React.Component { componentWillUnmount() { AccessibilityInfo.removeEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); } diff --git a/website/versioned_docs/version-0.43/animated.md b/website/versioned_docs/version-0.43/animated.md index 0b141e59906..161f6dcaf08 100644 --- a/website/versioned_docs/version-0.43/animated.md +++ b/website/versioned_docs/version-0.43/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` @@ -487,7 +487,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.44/alertios.md b/website/versioned_docs/version-0.44/alertios.md index 3f08e7ca26f..b732a80b047 100644 --- a/website/versioned_docs/version-0.44/alertios.md +++ b/website/versioned_docs/version-0.44/alertios.md @@ -77,7 +77,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -119,7 +119,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -133,7 +133,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` diff --git a/website/versioned_docs/version-0.44/animated.md b/website/versioned_docs/version-0.44/animated.md index bbea7ea5e2a..406e9ccf416 100644 --- a/website/versioned_docs/version-0.44/animated.md +++ b/website/versioned_docs/version-0.44/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` @@ -539,7 +539,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.46/accessibilityinfo.md b/website/versioned_docs/version-0.46/accessibilityinfo.md index 220cf8a78ba..3fb4cd935ec 100644 --- a/website/versioned_docs/version-0.46/accessibilityinfo.md +++ b/website/versioned_docs/version-0.46/accessibilityinfo.md @@ -17,7 +17,7 @@ class ScreenReaderStatusExample extends React.Component { componentDidMount() { AccessibilityInfo.addEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); AccessibilityInfo.fetch().done((isEnabled) => { this.setState({ @@ -29,7 +29,7 @@ class ScreenReaderStatusExample extends React.Component { componentWillUnmount() { AccessibilityInfo.removeEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); } diff --git a/website/versioned_docs/version-0.46/animated.md b/website/versioned_docs/version-0.46/animated.md index 52750c0203d..30d62920a23 100644 --- a/website/versioned_docs/version-0.46/animated.md +++ b/website/versioned_docs/version-0.46/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` @@ -541,7 +541,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.48/animated.md b/website/versioned_docs/version-0.48/animated.md index 8ac67dee605..415e827a6b7 100644 --- a/website/versioned_docs/version-0.48/animated.md +++ b/website/versioned_docs/version-0.48/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` @@ -541,7 +541,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.49/alertios.md b/website/versioned_docs/version-0.49/alertios.md index da3fd2fc0c0..4e835715595 100644 --- a/website/versioned_docs/version-0.49/alertios.md +++ b/website/versioned_docs/version-0.49/alertios.md @@ -77,7 +77,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -119,7 +119,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -133,7 +133,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` diff --git a/website/versioned_docs/version-0.49/animated.md b/website/versioned_docs/version-0.49/animated.md index 1533c0c618d..f257d0d33de 100644 --- a/website/versioned_docs/version-0.49/animated.md +++ b/website/versioned_docs/version-0.49/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.49/toastandroid.md b/website/versioned_docs/version-0.49/toastandroid.md index 3e0b22250d9..e03d24bffb1 100644 --- a/website/versioned_docs/version-0.49/toastandroid.md +++ b/website/versioned_docs/version-0.49/toastandroid.md @@ -20,14 +20,14 @@ ToastAndroid.show('A pikachu appeared nearby !', ToastAndroid.SHORT); ToastAndroid.showWithGravity( 'All Your Base Are Belong To Us', ToastAndroid.SHORT, - ToastAndroid.CENTER + ToastAndroid.CENTER, ); ToastAndroid.showWithGravityAndOffset( 'A wild toast appeared!', ToastAndroid.LONG, ToastAndroid.BOTTOM, 25, - 50 + 50, ); ``` diff --git a/website/versioned_docs/version-0.5/accessibility.md b/website/versioned_docs/version-0.5/accessibility.md index e62aed6fea3..4e6af833f36 100644 --- a/website/versioned_docs/version-0.5/accessibility.md +++ b/website/versioned_docs/version-0.5/accessibility.md @@ -92,7 +92,7 @@ Accessibility Role tells a person using either VoiceOver on iOS or TalkBack on A * **header** Used when an element acts as a header for a content section (e.g. the title of a navigation bar). * **summary** Used when an element can be used to provide a quick summary of current conditions in the app when the app first launches. -#### accessibilityState (iOS, Android) +#### accessibilityStates (iOS, Android) > **Note:** > `accessibilityRole` and `accessibilityStates` are meant to be a cross-platform solution to replace `accessibilityTraits` and `accessibilityComponentType`, which will soon be deprecated. When possible, use `accessibilityRole` and `accessibilityStates` instead of `accessibilityTraits` and `accessibilityComponentType`. @@ -101,7 +101,7 @@ Accessibility State tells a person using either VoiceOver on iOS or TalkBack on * **selected** Used when the element is in a selected state. For example, a button is selected. * **disabled** Used when the element is disabled and cannot be interacted with. -To use, set the `accessibilityState` to an array containing either `selected`, `disabled`, or both. +To use, set the `accessibilityStates` to an array containing either `selected`, `disabled`, or both. #### accessibilityTraits (iOS) diff --git a/website/versioned_docs/version-0.5/accessibilityinfo.md b/website/versioned_docs/version-0.5/accessibilityinfo.md index 619cfb3b233..bb8f10cf35c 100644 --- a/website/versioned_docs/version-0.5/accessibilityinfo.md +++ b/website/versioned_docs/version-0.5/accessibilityinfo.md @@ -17,7 +17,7 @@ class ScreenReaderStatusExample extends React.Component { componentDidMount() { AccessibilityInfo.addEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); AccessibilityInfo.fetch().done((isEnabled) => { this.setState({ @@ -29,7 +29,7 @@ class ScreenReaderStatusExample extends React.Component { componentWillUnmount() { AccessibilityInfo.removeEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); } diff --git a/website/versioned_docs/version-0.5/alertios.md b/website/versioned_docs/version-0.5/alertios.md index 5091e894aff..e404ee51286 100644 --- a/website/versioned_docs/version-0.5/alertios.md +++ b/website/versioned_docs/version-0.5/alertios.md @@ -43,7 +43,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -64,7 +64,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -76,7 +76,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` @@ -126,7 +126,7 @@ AlertIOS.prompt( [callbackOrButtons], [type], [defaultValue], - [keyboardType] + [keyboardType], ); ``` diff --git a/website/versioned_docs/version-0.5/animated.md b/website/versioned_docs/version-0.5/animated.md index 2e715d88894..dc8d8e5d887 100644 --- a/website/versioned_docs/version-0.5/animated.md +++ b/website/versioned_docs/version-0.5/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.5/animatedvaluexy.md b/website/versioned_docs/version-0.5/animatedvaluexy.md index 8275c86f6fe..d0797d444f3 100644 --- a/website/versioned_docs/version-0.5/animatedvaluexy.md +++ b/website/versioned_docs/version-0.5/animatedvaluexy.md @@ -29,7 +29,7 @@ class DraggableView extends React.Component { onPanResponderRelease: () => { Animated.spring( this.state.pan, // Auto-multiplexed - {toValue: {x: 0, y: 0}} // Back to zero + {toValue: {x: 0, y: 0}}, // Back to zero ).start(); }, }); diff --git a/website/versioned_docs/version-0.5/animations.md b/website/versioned_docs/version-0.5/animations.md index ba53693bb11..7f234254e4d 100644 --- a/website/versioned_docs/version-0.5/animations.md +++ b/website/versioned_docs/version-0.5/animations.md @@ -165,7 +165,7 @@ For example, you may want to think about your `Animated.Value` as going from 0 t }} ``` -[`interpolate()`](animated.md#interpolate) supports multiple range segments as well, which is handy for defining dead zones and other handy tricks. For example, to get an negation relationship at -300 that goes to 0 at -100, then back up to 1 at 0, and then back down to zero at 100 followed by a dead-zone that remains at 0 for everything beyond that, you could do: +[`interpolate()`](animated.md#interpolate) supports multiple range segments as well, which is handy for defining dead zones and other handy tricks. For example, to get a negation relationship at -300 that goes to 0 at -100, then back up to 1 at 0, and then back down to zero at 100 followed by a dead-zone that remains at 0 for everything beyond that, you could do: ```javascript value.interpolate({ @@ -285,7 +285,7 @@ The native driver also works with `Animated.event`. This is especially useful fo }, }, ], - {useNativeDriver: true} // <-- Add this + {useNativeDriver: true}, // <-- Add this )}> {content} diff --git a/website/versioned_docs/version-0.5/building-from-source.md b/website/versioned_docs/version-0.5/building-from-source.md index 3b8670c4f8e..38e60e8d8c3 100644 --- a/website/versioned_docs/version-0.5/building-from-source.md +++ b/website/versioned_docs/version-0.5/building-from-source.md @@ -42,7 +42,7 @@ Example: ``` sdk.dir=/Users/your_unix_name/android-sdk-macosx -ndk.dir=/Users/your_unix_name/android-ndk/android-ndk-r10e +ndk.dir=/Users/your_unix_name/android-ndk/android-ndk-r17b ``` #### Download links for Android NDK @@ -95,15 +95,15 @@ project(':ReactAndroid').projectDir = new File( ... ``` -Modify your `android/app/build.gradle` to use the `:ReactAndroid` project instead of the pre-compiled library, e.g. - replace `compile 'com.facebook.react:react-native:+'` with `compile project(':ReactAndroid')`: +Modify your `android/app/build.gradle` to use the `:ReactAndroid` project instead of the pre-compiled library, e.g. - replace `implementation 'com.facebook.react:react-native:+'` with `implementation project(':ReactAndroid')`: ```gradle ... dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - compile 'com.android.support:appcompat-v7:26.0.2' + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation 'com.android.support:appcompat-v7:26.0.2' - compile project(':ReactAndroid') + implementation project(':ReactAndroid') ... } diff --git a/website/versioned_docs/version-0.5/custom-webview-android.md b/website/versioned_docs/version-0.5/custom-webview-android.md index 35c726e23e0..00c444c36a4 100644 --- a/website/versioned_docs/version-0.5/custom-webview-android.md +++ b/website/versioned_docs/version-0.5/custom-webview-android.md @@ -196,7 +196,7 @@ export default class CustomWebView extends Component { const RCTCustomWebView = requireNativeComponent( 'RCTCustomWebView', CustomWebView, - WebView.extraNativeComponentConfig + WebView.extraNativeComponentConfig, ); ``` @@ -254,6 +254,6 @@ const RCTCustomWebView = requireNativeComponent( ...WebView.extraNativeComponentConfig.nativeOnly, onScrollToBottom: true, }, - } + }, ); ``` diff --git a/website/versioned_docs/version-0.5/custom-webview-ios.md b/website/versioned_docs/version-0.5/custom-webview-ios.md index 4c847bd7029..c54d31a75db 100644 --- a/website/versioned_docs/version-0.5/custom-webview-ios.md +++ b/website/versioned_docs/version-0.5/custom-webview-ios.md @@ -169,7 +169,7 @@ export default class CustomWebView extends Component { const RCTCustomWebView = requireNativeComponent( 'RCTCustomWebView', CustomWebView, - WebView.extraNativeComponentConfig + WebView.extraNativeComponentConfig, ); ``` @@ -228,6 +228,6 @@ const RCTCustomWebView = requireNativeComponent( ...WebView.extraNativeComponentConfig.nativeOnly, onScrollToBottom: true, }, - } + }, ); ``` diff --git a/website/versioned_docs/version-0.5/debugging.md b/website/versioned_docs/version-0.5/debugging.md index 746236243ff..61612621818 100644 --- a/website/versioned_docs/version-0.5/debugging.md +++ b/website/versioned_docs/version-0.5/debugging.md @@ -74,6 +74,19 @@ The debugger will receive a list of all project roots, separated by a space. For > Custom debugger commands executed this way should be short-lived processes, and they shouldn't produce more than 200 kilobytes of output. +## Safari Developer Tools + +You can use Safari to debug the iOS version of your app without having to enable "Debug JS Remotely". + +* Enable Develop menu in Safari: `Preferences → Advanced → Select "Show Develop menu in menu bar"` +* Select your app's JSContext: `Develop → Simulator → JSContext` +* Safari's Web Inspector should open which has a Console and a Debugger + +However, there are some disadvantages: + +1. No sourcemaps when debugging +2. Every time the app is reloaded (using live reload, or by manually reloading), a new JSContext is created. Choosing "Automatically Show Web Inspectors for JSContexts" saves you from having to select the latest JSContext manually. + ## React Developer Tools You can use [the standalone version of React Developer Tools](https://github.com/facebook/react-devtools/tree/master/packages/react-devtools) to debug the React component hierarchy. To use it, install the `react-devtools` package globally: diff --git a/website/versioned_docs/version-0.5/getting-started.md b/website/versioned_docs/version-0.5/getting-started.md index b42639f12f4..829a2e151c1 100644 --- a/website/versioned_docs/version-0.5/getting-started.md +++ b/website/versioned_docs/version-0.5/getting-started.md @@ -292,7 +292,7 @@ You will also need to install the Xcode Command Line Tools. Open Xcode, then cho ### Java Development Kit -React Native requires a recent version of the Java SE Development Kit (JDK). [Download and install Oracle JDK 8 or newer](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) if needed. You can also use [OpenJDK 8 or newer](http://openjdk.java.net/install/) as an alternative. +React Native requires a recent version of the Java SE Development Kit (JDK). [Download and install Oracle JDK 8](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) if needed. You can also use [OpenJDK 8](http://openjdk.java.net/install/) as an alternative. @@ -345,45 +345,15 @@ The SDK Manager can be accessed from the "Welcome to Android Studio" screen. Cli > The SDK Manager can also be found within the Android Studio "Preferences" dialog, under **Appearance & Behavior** → **System Settings** → **Android SDK**. -Select the "SDK Platforms" tab from within the SDK Manager, then check the box next to "Show Package Details" in the bottom right corner. Look for and expand the `Android 8.1 (Oreo)` entry, then make sure the following items are all checked: +Select the "SDK Platforms" tab from within the SDK Manager, then check the box next to "Show Package Details" in the bottom right corner. Look for and expand the `Android 8.1 (Oreo)` entry, then make sure the following items are checked: * `Android SDK Platform 27` -* `Google APIs Intel x86 Atom_64 System Image` +* `Intel x86 Atom_64 System Image` or `Google APIs Intel x86 Atom System Image` - - -![Android SDK Manager](/react-native/docs/assets/GettingStartedAndroidSDKManagerMacOS.png) - - - -![Android SDK Manager](/react-native/docs/assets/GettingStartedAndroidSDKManagerWindows.png) - - - -Next, select the "SDK Tools" tab and check the box next to "Show Package Details" here as well. Look for and expand the "Android SDK Build-Tools" entry, then make sure that `26.0.3` is selected. - - - -![Android SDK Manager - 26.0.3 Build Tools](/react-native/docs/assets/GettingStartedAndroidSDKManagerSDKToolsMacOS.png) - - - -![Android SDK Manager - 26.0.3 Build Tools](/react-native/docs/assets/GettingStartedAndroidSDKManagerSDKToolsWindows.png) - - +Next, select the "SDK Tools" tab and check the box next to "Show Package Details" here as well. Look for and expand the "Android SDK Build-Tools" entry, then make sure that `27.0.3` is selected. Finally, click "Apply" to download and install the Android SDK and related build tools. - - -![Android SDK Manager - Installs](/react-native/docs/assets/GettingStartedAndroidSDKManagerInstallsMacOS.png) - - - -![Android SDK Manager - Installs](/react-native/docs/assets/GettingStartedAndroidSDKManagerInstallsWindows.png) - - - #### 3. Configure the ANDROID_HOME environment variable The React Native tools require some environment variables to be set up in order to build apps with native code. @@ -486,19 +456,7 @@ If you use Android Studio to open `./AwesomeProject/android`, you can see the li ![Android Studio AVD Manager](/react-native/docs/assets/GettingStartedAndroidStudioAVD.png) -If you have just installed Android Studio, you will likely need to [create a new AVD](https://developer.android.com/studio/run/managing-avds.html). Select "Create Virtual Device...", then pick any Phone from the list and click "Next". - - - -![Android Studio AVD Manager](/react-native/docs/assets/GettingStartedCreateAVDWindows.png) - - - -![Android Studio AVD Manager](/react-native/docs/assets/GettingStartedCreateAVDMacOS.png) - - - -Select the "x86 Images" tab, then look for the **Oreo** API Level 26, x86_64 ABI image with a Android 8.0 (Google APIs) target. +If you have just installed Android Studio, you will likely need to [create a new AVD](https://developer.android.com/studio/run/managing-avds.html). Select "Create Virtual Device...", then pick any Phone from the list and click "Next", then select the **Oreo** API Level 27 image. diff --git a/website/versioned_docs/version-0.5/height-and-width.md b/website/versioned_docs/version-0.5/height-and-width.md index 15c80920b07..33830b63cd0 100644 --- a/website/versioned_docs/version-0.5/height-and-width.md +++ b/website/versioned_docs/version-0.5/height-and-width.md @@ -34,7 +34,7 @@ Setting dimensions this way is common for components that should always render a ## Flex Dimensions -Use `flex` in a component's style to have the component expand and shrink dynamically based on available space. Normally you will use `flex: 1`, which tells a component to fill all available space, shared evenly amongst each other component with the same parent. The larger the `flex` given, the higher the ratio of space a component will take compared to its siblings. +Use `flex` in a component's style to have the component expand and shrink dynamically based on available space. Normally you will use `flex: 1`, which tells a component to fill all available space, shared evenly amongst other components with the same parent. The larger the `flex` given, the higher the ratio of space a component will take compared to its siblings. > A component can only expand to fill available space if its parent has dimensions greater than 0. If a parent does not have either a fixed `width` and `height` or `flex`, the parent will have dimensions of 0 and the `flex` children will not be visible. diff --git a/website/versioned_docs/version-0.5/images.md b/website/versioned_docs/version-0.5/images.md index 9066e863442..58a06fe4be8 100644 --- a/website/versioned_docs/version-0.5/images.md +++ b/website/versioned_docs/version-0.5/images.md @@ -20,6 +20,7 @@ You can also use the `@2x` and `@3x` suffixes to provide images for different sc . ├── button.js └── img + ├── check.png ├── check@2x.png └── check@3x.png ``` @@ -196,7 +197,7 @@ On the user side, this lets you annotate the object with useful attributes such A common feature request from developers familiar with the web is `background-image`. To handle this use case, you can use the `` component, which has the same props as ``, and add whatever children to it you would like to layer on top of it. -You might not want to use `` in some cases, since the implementation is very simple. Refer to ``'s [source code](https://github.com/facebook/react-native/blob/master/Libraries/Image/ImageBackground.js) for more insight, and create your own custom component when needed. +You might not want to use `` in some cases, since the implementation is very simple. Refer to ``'s [documentation](imagebackground.md) for more insight, and create your own custom component when needed. ```javascript return ( diff --git a/website/versioned_docs/version-0.5/integration-with-existing-apps.md b/website/versioned_docs/version-0.5/integration-with-existing-apps.md index 67105604fd2..69157f60f78 100644 --- a/website/versioned_docs/version-0.5/integration-with-existing-apps.md +++ b/website/versioned_docs/version-0.5/integration-with-existing-apps.md @@ -563,9 +563,9 @@ Add the React Native dependency to your app's `build.gradle` file: ``` dependencies { - compile 'com.android.support:appcompat-v7:23.0.1' + implementation 'com.android.support:appcompat-v7:27.1.1' ... - compile "com.facebook.react:react-native:+" // From node_modules + implementation "com.facebook.react:react-native:+" // From node_modules } ``` @@ -664,7 +664,7 @@ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { } ``` -Finally, the `onActivityResult()` method (as shown in the code below) has to be overridden to handle the permission Accepted or Denied cases for consistent UX. +Finally, the `onActivityResult()` method (as shown in the code below) has to be overridden to handle the permission Accepted or Denied cases for consistent UX. Also, for integrating Native Modules which use `startActivityForResult`, we need to pass the result to the `onActivityResult` method of our `ReactInstanceManager` instance. ```java @Override @@ -676,6 +676,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { } } } + mReactInstanceManager.onActivityResult( this, requestCode, resultCode, data ); } ``` diff --git a/website/versioned_docs/version-0.5/maintainers.md b/website/versioned_docs/version-0.5/maintainers.md index 95d93a8112c..cbb92fdd6dd 100644 --- a/website/versioned_docs/version-0.5/maintainers.md +++ b/website/versioned_docs/version-0.5/maintainers.md @@ -83,7 +83,7 @@ You can generally figure out who may be relevant for a given issue by looking at ### Stale issues -Issues in the "Needs more information" state may be closed after a week with no followup from the author. Issues that have have had no activity in the last two months may be closed periodically. If your issue gets closed in this manner, it's nothing personal. If you strongly believe that the issue should remain open, just let us know why. +Issues in the "Needs more information" state may be closed after a week with no followup from the author. Issues that have had no activity in the last two months may be closed periodically. If your issue gets closed in this manner, it's nothing personal. If you strongly believe that the issue should remain open, just let us know why. Simply commenting that the issue still exists is not very compelling (it's rare for critical, release blocking issues to have no activity for two months!). In order to make a good case for reopening the issue, you may need to do a bit of work: diff --git a/website/versioned_docs/version-0.5/native-components-ios.md b/website/versioned_docs/version-0.5/native-components-ios.md index fadba7c6f3e..bfa194efa65 100644 --- a/website/versioned_docs/version-0.5/native-components-ios.md +++ b/website/versioned_docs/version-0.5/native-components-ios.md @@ -123,7 +123,7 @@ var RNTMap = requireNativeComponent('RNTMap', MapView); module.exports = MapView; ``` -Now we have a nicely documented wrapper component that is easy to work with. Note that we changed the second argument to `requireNativeComponent` from `null` to the new `MapView` wrapper component. This allows the infrastructure to verify that the propTypes match the native props to reduce the chances of mismatches between the ObjC and JS code. +Now we have a nicely documented wrapper component that is easy to work with. Note that we changed `requireNativeComponent`'s second argument from `null` to the new `MapView` wrapper component. This allows the infrastructure to verify that the propTypes match the native props in order to reduce the chances of mismatches between the Objective-C and JavaScript code. Next, let's add the more complex `region` prop. We start by adding the native code: @@ -273,7 +273,7 @@ Until now we've just returned a `MKMapView` instance from our manager's `-(UIVie @end ``` -Next, declare an event handler property on `RNTMapManager`, make it a delegate for all the views it exposes, and forward events to JS by calling the event handler block from the native view. +Note that all `RCTBubblingEventBlock` must be prefixed with `on`. Next, declare an event handler property on `RNTMapManager`, make it a delegate for all the views it exposes, and forward events to JS by calling the event handler block from the native view. ```objectivec{9,17,31-48} // RNTMapManager.m diff --git a/website/versioned_docs/version-0.5/native-modules-android.md b/website/versioned_docs/version-0.5/native-modules-android.md index 21052a36305..a30df6b4a26 100644 --- a/website/versioned_docs/version-0.5/native-modules-android.md +++ b/website/versioned_docs/version-0.5/native-modules-android.md @@ -222,7 +222,7 @@ UIManager.measureLayout( }, (x, y, width, height) => { console.log(x + ':' + y + ':' + width + ':' + height); - } + }, ); ``` @@ -274,7 +274,7 @@ async function measureLayout() { try { var {relativeX, relativeY, width, height} = await UIManager.measureLayout( 100, - 100 + 100, ); console.log(relativeX + ':' + relativeY + ':' + width + ':' + height); diff --git a/website/versioned_docs/version-0.5/native-modules-ios.md b/website/versioned_docs/version-0.5/native-modules-ios.md index a460e6177dd..c5659c30ad6 100644 --- a/website/versioned_docs/version-0.5/native-modules-ios.md +++ b/website/versioned_docs/version-0.5/native-modules-ios.md @@ -4,7 +4,7 @@ title: Native Modules original_id: native-modules-ios --- -Sometimes an app needs access to platform API, and React Native doesn't have a corresponding module yet. Maybe you want to reuse some existing Objective-C, Swift or C++ code without having to reimplement it in JavaScript, or write some high performance, multi-threaded code such as for image processing, a database, or any number of advanced extensions. +Sometimes an app needs to access a platform API and React Native doesn't have a corresponding module yet. Maybe you want to reuse some existing Objective-C, Swift or C++ code without having to reimplement it in JavaScript, or write some high performance, multi-threaded code such as for image processing, a database, or any number of advanced extensions. We designed React Native such that it is possible for you to write real native code and have access to the full power of the platform. This is a more advanced feature and we don't expect it to be part of the usual development process, however it is essential that it exists. If React Native doesn't support a native feature that you need, you should be able to build it yourself. @@ -121,7 +121,7 @@ You would then call this from JavaScript by using either: CalendarManager.addEvent( 'Birthday Party', '4 Privet Drive, Surrey', - date.getTime() + date.getTime(), ); // passing date as number of milliseconds since Unix epoch ``` @@ -131,7 +131,7 @@ or CalendarManager.addEvent( 'Birthday Party', '4 Privet Drive, Surrey', - date.toISOString() + date.toISOString(), ); // passing date as ISO-8601 string ``` diff --git a/website/versioned_docs/version-0.5/network.md b/website/versioned_docs/version-0.5/network.md index 2c338518e5a..f440ba09523 100644 --- a/website/versioned_docs/version-0.5/network.md +++ b/website/versioned_docs/version-0.5/network.md @@ -61,7 +61,7 @@ You can also use the proposed ES2017 `async`/`await` syntax in a React Native ap async function getMoviesFromApi() { try { let response = await fetch( - 'https://facebook.github.io/react-native/movies.json' + 'https://facebook.github.io/react-native/movies.json', ); let responseJson = await response.json(); return responseJson.movies; diff --git a/website/versioned_docs/version-0.5/permissionsandroid.md b/website/versioned_docs/version-0.5/permissionsandroid.md index c37920211fb..8b07d7f31af 100644 --- a/website/versioned_docs/version-0.5/permissionsandroid.md +++ b/website/versioned_docs/version-0.5/permissionsandroid.md @@ -35,7 +35,7 @@ async function requestCameraPermission() { message: 'Cool Photo App needs access to your camera ' + 'so you can take awesome pictures.', - } + }, ); if (granted === PermissionsAndroid.RESULTS.GRANTED) { console.log('You can use the camera'); diff --git a/website/versioned_docs/version-0.5/platform-specific-code.md b/website/versioned_docs/version-0.5/platform-specific-code.md index 07c8f984a70..1341677b7de 100644 --- a/website/versioned_docs/version-0.5/platform-specific-code.md +++ b/website/versioned_docs/version-0.5/platform-specific-code.md @@ -103,3 +103,5 @@ const BigButton = require('./BigButton'); ``` React Native will automatically pick up the right file based on the running platform. + +If you share your React Native code with a website, you might as well use the `BigButton.native.js` so that both iOS and Android will use this file, while the website will use `BigButton.js`. diff --git a/website/versioned_docs/version-0.5/props.md b/website/versioned_docs/version-0.5/props.md index 1ea9d1984f7..06d263f1abb 100644 --- a/website/versioned_docs/version-0.5/props.md +++ b/website/versioned_docs/version-0.5/props.md @@ -27,7 +27,7 @@ export default class Bananas extends Component { AppRegistry.registerComponent('AwesomeProject', () => Bananas); ``` -Notice that `{pic}` is surrounded by braces, to embed the variable `pic` into JSX. You can put any JavaScript expression inside braces in JSX. +Notice the braces surrounding `{pic}` - these embed the variable `pic` into JSX. You can put any JavaScript expression inside braces in JSX. Your own components can also use `props`. This lets you make a single component that is used in many different places in your app, with slightly different properties in each place. Just refer to `this.props` in your `render` function. Here's an example: @@ -38,7 +38,9 @@ import { AppRegistry, Text, View } from 'react-native'; class Greeting extends Component { render() { return ( - Hello {this.props.name}! + + Hello {this.props.name}! + ); } } diff --git a/website/versioned_docs/version-0.5/state.md b/website/versioned_docs/version-0.5/state.md index 16aa033c0d9..a18dc66cece 100644 --- a/website/versioned_docs/version-0.5/state.md +++ b/website/versioned_docs/version-0.5/state.md @@ -17,20 +17,23 @@ import { AppRegistry, Text, View } from 'react-native'; class Blink extends Component { constructor(props) { super(props); - this.state = {isShowingText: true}; + this.state = { isShowingText: true }; // Toggle the state every second - setInterval(() => { - this.setState(previousState => { - return { isShowingText: !previousState.isShowingText }; - }); - }, 1000); + setInterval(() => ( + this.setState(previousState => ( + { isShowingText: !previousState.isShowingText } + )) + ), 1000); } render() { - let display = this.state.isShowingText ? this.props.text : ' '; + if (!this.state.isShowingText) { + return null; + } + return ( - {display} + {this.props.text} ); } } diff --git a/website/versioned_docs/version-0.5/style.md b/website/versioned_docs/version-0.5/style.md index b4ab65277a8..c5839ae68b1 100644 --- a/website/versioned_docs/version-0.5/style.md +++ b/website/versioned_docs/version-0.5/style.md @@ -14,6 +14,17 @@ As a component grows in complexity, it is often cleaner to use `StyleSheet.creat import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View } from 'react-native'; +const styles = StyleSheet.create({ + bigblue: { + color: 'blue', + fontWeight: 'bold', + fontSize: 30, + }, + red: { + color: 'red', + }, +}); + export default class LotsOfStyles extends Component { render() { return ( @@ -27,17 +38,6 @@ export default class LotsOfStyles extends Component { } } -const styles = StyleSheet.create({ - bigblue: { - color: 'blue', - fontWeight: 'bold', - fontSize: 30, - }, - red: { - color: 'red', - }, -}); - // skip this line if using Create React Native App AppRegistry.registerComponent('AwesomeProject', () => LotsOfStyles); ``` diff --git a/website/versioned_docs/version-0.5/toastandroid.md b/website/versioned_docs/version-0.5/toastandroid.md index 5356ae3f576..1fde8dce4c2 100644 --- a/website/versioned_docs/version-0.5/toastandroid.md +++ b/website/versioned_docs/version-0.5/toastandroid.md @@ -20,14 +20,14 @@ ToastAndroid.show('A pikachu appeared nearby !', ToastAndroid.SHORT); ToastAndroid.showWithGravity( 'All Your Base Are Belong To Us', ToastAndroid.SHORT, - ToastAndroid.CENTER + ToastAndroid.CENTER, ); ToastAndroid.showWithGravityAndOffset( 'A wild toast appeared!', ToastAndroid.LONG, ToastAndroid.BOTTOM, 25, - 50 + 50, ); ``` @@ -75,7 +75,7 @@ ToastAndroid.showWithGravityAndOffset( duration, gravity, xOffset, - yOffset + yOffset, ); ``` diff --git a/website/versioned_docs/version-0.5/upgrading.md b/website/versioned_docs/version-0.5/upgrading.md index 451177e7172..a923fa6f4e1 100644 --- a/website/versioned_docs/version-0.5/upgrading.md +++ b/website/versioned_docs/version-0.5/upgrading.md @@ -6,18 +6,18 @@ original_id: upgrading Upgrading to new versions of React Native will give you access to more APIs, views, developer tools and other goodies. Upgrading requires a small amount of effort, but we try to make it easy for you. The instructions are a bit different depending on whether you used `create-react-native-app` or `react-native init` to create your project. -## Create React Native App projects +## Expo projects -Upgrading your Create React Native App project to a new version of React Native requires updating the `react-native`, `react`, and `expo` package versions in your `package.json` file. Please refer to [this document](https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md) to find out what versions are supported. You will also need to set the correct `sdkVersion` in your `app.json` file. +Upgrading your Expo project to a new version of React Native requires updating the `react-native`, `react`, and `expo` package versions in your `package.json` file. Please refer to [this list](https://docs.expo.io/versions/latest/sdk/#sdk-version) to find out what versions are supported. You will also need to set the correct `sdkVersion` in your `app.json` file. -See the [CRNA user guide](https://github.com/react-community/create-react-native-app/blob/master/react-native-scripts/template/README.md#updating-to-new-releases) for up-to-date information about upgrading your project. +See the [Upgrading Expo SDK Walkthrough](https://docs.expo.io/versions/latest/workflow/upgrading-expo-sdk-walkthrough) for up-to-date information about upgrading your project. ## Projects built with native code @@ -54,6 +54,14 @@ $ react-native-git-upgrade > You may specify a React Native version by passing an argument: `react-native-git-upgrade X.Y.Z` +Upon completion, run the following command to find your corresponding git patch file. + +``` +$ ls $TMPDIR/react-native-git-upgrade +``` + +To apply the git patch, run `git apply ` inside your project folder. + The templates are upgraded in a optimized way. You still may encounter conflicts but only where the Git 3-way merge have failed, depending on the version and how you modified your sources. #### 4. Resolve the conflicts @@ -128,4 +136,4 @@ This will check your files against the latest template and perform the following ## Manual Upgrades -Some upgrades require manual steps, e.g. 0.13 to 0.14, or 0.28 to 0.29. Be sure to check the [release notes](https://github.com/facebook/react-native/releases) when upgrading so that you can identify any manual changes your particular project may require. +Some upgrades require manual steps, e.g. 0.28 to 0.29, or 0.56 to 0.57. Be sure to check the [release notes](https://github.com/facebook/react-native/releases) when upgrading so that you can identify any manual changes your particular project may require. diff --git a/website/versioned_docs/version-0.50/alertios.md b/website/versioned_docs/version-0.50/alertios.md index 7a66b2a429b..50e27b0ee23 100644 --- a/website/versioned_docs/version-0.50/alertios.md +++ b/website/versioned_docs/version-0.50/alertios.md @@ -77,7 +77,7 @@ AlertIOS.alert( text: 'Install', onPress: () => console.log('Install Pressed'), }, - ] + ], ); ``` @@ -119,7 +119,7 @@ AlertIOS.prompt( onPress: (password) => console.log('OK Pressed, password: ' + password), }, ], - 'secure-text' + 'secure-text', ); ``` @@ -133,7 +133,7 @@ AlertIOS.prompt( null, (text) => console.log('Your username is ' + text), null, - 'default' + 'default', ); ``` diff --git a/website/versioned_docs/version-0.50/animated.md b/website/versioned_docs/version-0.50/animated.md index 13f5633a5d1..9d0cc20351d 100644 --- a/website/versioned_docs/version-0.50/animated.md +++ b/website/versioned_docs/version-0.50/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.50/toastandroid.md b/website/versioned_docs/version-0.50/toastandroid.md index 3ef8391312f..eee8a3b5afd 100644 --- a/website/versioned_docs/version-0.50/toastandroid.md +++ b/website/versioned_docs/version-0.50/toastandroid.md @@ -20,14 +20,14 @@ ToastAndroid.show('A pikachu appeared nearby !', ToastAndroid.SHORT); ToastAndroid.showWithGravity( 'All Your Base Are Belong To Us', ToastAndroid.SHORT, - ToastAndroid.CENTER + ToastAndroid.CENTER, ); ToastAndroid.showWithGravityAndOffset( 'A wild toast appeared!', ToastAndroid.LONG, ToastAndroid.BOTTOM, 25, - 50 + 50, ); ``` diff --git a/website/versioned_docs/version-0.51/animated.md b/website/versioned_docs/version-0.51/animated.md index c6dcefc818c..bd16f002ede 100644 --- a/website/versioned_docs/version-0.51/animated.md +++ b/website/versioned_docs/version-0.51/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.52/animated.md b/website/versioned_docs/version-0.52/animated.md index 58290bb6825..4c0892bfd42 100644 --- a/website/versioned_docs/version-0.52/animated.md +++ b/website/versioned_docs/version-0.52/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.55/animated.md b/website/versioned_docs/version-0.55/animated.md index 72d205641a5..cebc2856453 100644 --- a/website/versioned_docs/version-0.55/animated.md +++ b/website/versioned_docs/version-0.55/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.56/animated.md b/website/versioned_docs/version-0.56/animated.md index 53a5f99561a..1928d88a037 100644 --- a/website/versioned_docs/version-0.56/animated.md +++ b/website/versioned_docs/version-0.56/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/versioned_docs/version-0.57/accessibilityinfo.md b/website/versioned_docs/version-0.57/accessibilityinfo.md index 07178540684..2b70af7d828 100644 --- a/website/versioned_docs/version-0.57/accessibilityinfo.md +++ b/website/versioned_docs/version-0.57/accessibilityinfo.md @@ -17,7 +17,7 @@ class ScreenReaderStatusExample extends React.Component { componentDidMount() { AccessibilityInfo.addEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); AccessibilityInfo.fetch().then((isEnabled) => { this.setState({ @@ -29,7 +29,7 @@ class ScreenReaderStatusExample extends React.Component { componentWillUnmount() { AccessibilityInfo.removeEventListener( 'change', - this._handleScreenReaderToggled + this._handleScreenReaderToggled, ); } diff --git a/website/versioned_docs/version-0.57/animated.md b/website/versioned_docs/version-0.57/animated.md index 193768d51ce..1ae79032682 100644 --- a/website/versioned_docs/version-0.57/animated.md +++ b/website/versioned_docs/version-0.57/animated.md @@ -14,7 +14,7 @@ Animated.timing( this.state.fadeAnim, // The value to drive { toValue: 1, // Animate to final value of 1 - } + }, ).start(); // Start the animation ``` diff --git a/website/yarn.lock b/website/yarn.lock index 5cf9e006329..cc9244331c9 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -26,7 +26,7 @@ alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" -ansi-escapes@^1.0.0, ansi-escapes@^1.1.0: +ansi-escapes@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" @@ -58,30 +58,16 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansi-styles@^3.1.0, ansi-styles@^3.2.1: +ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" dependencies: color-convert "^1.9.0" -ansi-styles@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" - dependencies: - color-convert "^1.9.0" - ansi-wrap@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" -any-observable@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.2.0.tgz#c67870058003579009083f54ac0abafb5c33d242" - -app-root-path@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.0.1.tgz#cd62dcf8e4fd5a417efc664d2e5b10653c651b46" - archive-type@^3.0.0, archive-type@^3.0.1: version "3.2.0" resolved "https://registry.yarnpkg.com/archive-type/-/archive-type-3.2.0.tgz#9cd9c006957ebe95fadad5bd6098942a813737f6" @@ -998,7 +984,7 @@ caw@^1.0.1: object-assign "^3.0.0" tunnel-agent "^0.4.0" -chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: +chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -1008,7 +994,7 @@ chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.1: +chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" dependencies: @@ -1016,14 +1002,6 @@ chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.1: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^2.0.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" - chardet@^0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" @@ -1049,9 +1027,9 @@ cheerio@0.22.0: lodash.reject "^4.4.0" lodash.some "^4.4.0" -ci-info@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.2.tgz#03561259db48d0474c8bdc90f5b47b068b6bbfb4" +ci-info@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" clap@^1.0.9: version "1.2.3" @@ -1063,29 +1041,12 @@ classnames@^2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" -cli-cursor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" - dependencies: - restore-cursor "^1.0.1" - cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" dependencies: restore-cursor "^2.0.0" -cli-spinners@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" - -cli-truncate@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" - dependencies: - slice-ansi "0.0.4" - string-width "^1.0.1" - cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" @@ -1130,10 +1091,6 @@ coa@~2.0.1: dependencies: q "^1.1.2" -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - coffee-script@^1.12.4: version "1.12.7" resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.12.7.tgz#c05dae0cb79591d05b3070a8433a98c9a89ccc53" @@ -1202,14 +1159,10 @@ combined-stream@1.0.6, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -commander@^2.11.0, commander@^2.15.1, commander@^2.16.0: +commander@^2.15.1, commander@^2.16.0: version "2.17.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" -commander@^2.9.0: - version "2.12.2" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" - commander@~2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" @@ -1269,14 +1222,13 @@ core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" -cosmiconfig@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-3.1.0.tgz#640a94bf9847f321800403cd273af60665c73397" +cosmiconfig@^5.0.6: + version "5.0.6" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39" dependencies: is-directory "^0.3.1" js-yaml "^3.9.0" - parse-json "^3.0.0" - require-from-string "^2.0.1" + parse-json "^4.0.0" create-error-class@^3.0.1: version "3.0.2" @@ -1410,10 +1362,6 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -date-fns@^1.27.2: - version "1.29.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" - dateformat@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062" @@ -1498,10 +1446,6 @@ decompress@^3.0.0: vinyl-assign "^1.0.1" vinyl-fs "^2.2.0" -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -1707,10 +1651,6 @@ electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.47, electron-to-chromium@ version "1.3.61" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.61.tgz#a8ac295b28d0f03d85e37326fd16b6b6b17a1795" -elegant-spinner@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" - encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -1839,16 +1779,24 @@ execa@^0.8.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.9.0.tgz#adb7ce62cf985071f60580deb4a88b9e34712d01" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + executable@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/executable/-/executable-1.1.0.tgz#877980e9112f3391066da37265de7ad8434ab4d9" dependencies: meow "^3.1.0" -exit-hook@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" - expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -1986,7 +1934,7 @@ feed@^1.1.0: dependencies: xml "^1.0.1" -figures@^1.3.5, figures@^1.7.0: +figures@^1.3.5: version "1.7.0" resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" dependencies: @@ -2049,10 +1997,6 @@ finalhandler@1.1.1: statuses "~1.4.0" unpipe "~1.0.0" -find-parent-dir@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" - find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -2060,6 +2004,18 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + dependencies: + locate-path "^3.0.0" + find-versions@^1.0.0: version "1.2.1" resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-1.2.1.tgz#cbde9f12e38575a0af1be1b9a2c5d5fd8f186b62" @@ -2139,10 +2095,6 @@ gaze@^1.1.2: dependencies: globule "^1.0.0" -get-own-enumerable-property-symbols@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-2.0.1.tgz#5c4ad87f2834c4b9b4e84549dc1e0650fb38c24b" - get-proxy@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/get-proxy/-/get-proxy-1.1.0.tgz#894854491bc591b0f147d7ae570f5c678b7256eb" @@ -2153,6 +2105,10 @@ get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" +get-stdin@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" + get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" @@ -2409,10 +2365,6 @@ has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -2495,13 +2447,20 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -husky@^0.14.3: - version "0.14.3" - resolved "https://registry.yarnpkg.com/husky/-/husky-0.14.3.tgz#c69ed74e2d2779769a17ba8399b54ce0b63c12c3" - dependencies: - is-ci "^1.0.10" - normalize-path "^1.0.0" - strip-indent "^2.0.0" +husky@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/husky/-/husky-1.1.3.tgz#3ccfdb4d7332896bf7cd0e618c6fb8be09d9de4b" + dependencies: + cosmiconfig "^5.0.6" + execa "^0.9.0" + find-up "^3.0.0" + get-stdin "^6.0.0" + is-ci "^1.2.1" + pkg-dir "^3.0.0" + please-upgrade-node "^3.1.1" + read-pkg "^4.0.1" + run-node "^1.0.0" + slash "^2.0.0" iconv-lite@0.4.19: version "0.4.19" @@ -2513,6 +2472,10 @@ iconv-lite@^0.4.17, iconv-lite@~0.4.13: dependencies: safer-buffer ">= 2.1.2 < 3" +ignore@^3.3.7: + version "3.3.10" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" + imagemin-gifsicle@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/imagemin-gifsicle/-/imagemin-gifsicle-5.2.0.tgz#3781524c457612ef04916af34241a2b42bfcb40a" @@ -2562,10 +2525,6 @@ indent-string@^2.1.0: dependencies: repeating "^2.0.0" -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - indexes-of@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" @@ -2680,11 +2639,11 @@ is-callable@^1.1.1, is-callable@^1.1.3: version "1.1.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" -is-ci@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" +is-ci@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" dependencies: - ci-info "^1.0.0" + ci-info "^1.5.0" is-date-object@^1.0.1: version "1.0.1" @@ -2718,7 +2677,7 @@ is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" -is-extglob@^2.1.0, is-extglob@^2.1.1: +is-extglob@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -2728,12 +2687,6 @@ is-finite@^1.0.0: dependencies: number-is-nan "^1.0.0" -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - dependencies: - number-is-nan "^1.0.0" - is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" @@ -2754,12 +2707,6 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - dependencies: - is-extglob "^2.1.1" - is-gzip@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-gzip/-/is-gzip-1.0.0.tgz#6ca8b07b99c77998025900e555ced8ed80879a83" @@ -2782,16 +2729,10 @@ is-number@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" -is-obj@^1.0.0, is-obj@^1.0.1: +is-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" -is-observable@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-0.2.0.tgz#b361311d83c6e5d726cabf5e250b0237106f5ae2" - dependencies: - symbol-observable "^0.2.2" - is-plain-obj@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" @@ -2828,10 +2769,6 @@ is-regex@^1.0.4: dependencies: has "^1.0.1" -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - is-relative@^0.1.0: version "0.1.3" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.1.3.tgz#905fee8ae86f45b3ec614bc3c15c869df0876e82" @@ -2929,19 +2866,6 @@ isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -jest-get-type@^21.2.0: - version "21.2.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-21.2.0.tgz#f6376ab9db4b60d81e39f30749c6c466f40d4a23" - -jest-validate@^21.1.0: - version "21.2.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-21.2.1.tgz#cc0cbca653cd54937ba4f2a111796774530dd3c7" - dependencies: - chalk "^2.0.1" - jest-get-type "^21.2.0" - leven "^2.1.0" - pretty-format "^21.2.1" - jpegtran-bin@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/jpegtran-bin/-/jpegtran-bin-3.2.0.tgz#f60ecf4ae999c0bdad2e9fbcdf2b6f0981e7a29b" @@ -2995,6 +2919,10 @@ jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" +json-parse-better-errors@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" @@ -3066,35 +2994,6 @@ lazystream@^1.0.0: dependencies: readable-stream "^2.0.5" -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - -lint-staged@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-6.0.0.tgz#7ab7d345f2fe302ff196f1de6a005594ace03210" - dependencies: - app-root-path "^2.0.0" - chalk "^2.1.0" - commander "^2.11.0" - cosmiconfig "^3.1.0" - debug "^3.1.0" - dedent "^0.7.0" - execa "^0.8.0" - find-parent-dir "^0.3.0" - is-glob "^4.0.0" - jest-validate "^21.1.0" - listr "^0.13.0" - lodash "^4.17.4" - log-symbols "^2.0.0" - minimatch "^3.0.0" - npm-which "^3.0.1" - p-map "^1.1.1" - path-is-inside "^1.0.2" - pify "^3.0.0" - staged-git-files "0.0.4" - stringify-object "^3.2.0" - list-item@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/list-item/-/list-item-1.1.1.tgz#0c65d00e287cb663ccb3cb3849a77e89ec268a56" @@ -3104,54 +3003,6 @@ list-item@^1.1.1: is-number "^2.1.0" repeat-string "^1.5.2" -listr-silent-renderer@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" - -listr-update-renderer@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz#344d980da2ca2e8b145ba305908f32ae3f4cc8a7" - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - elegant-spinner "^1.0.1" - figures "^1.7.0" - indent-string "^3.0.0" - log-symbols "^1.0.2" - log-update "^1.0.2" - strip-ansi "^3.0.1" - -listr-verbose-renderer@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" - dependencies: - chalk "^1.1.3" - cli-cursor "^1.0.2" - date-fns "^1.27.2" - figures "^1.7.0" - -listr@^0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/listr/-/listr-0.13.0.tgz#20bb0ba30bae660ee84cc0503df4be3d5623887d" - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - figures "^1.7.0" - indent-string "^2.1.0" - is-observable "^0.2.0" - is-promise "^2.1.0" - is-stream "^1.1.0" - listr-silent-renderer "^1.1.1" - listr-update-renderer "^0.4.0" - listr-verbose-renderer "^0.4.0" - log-symbols "^1.0.2" - log-update "^1.0.2" - ora "^0.2.3" - p-map "^1.1.1" - rxjs "^5.4.2" - stream-to-observable "^0.2.0" - strip-ansi "^3.0.1" - livereload-js@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.3.0.tgz#c3ab22e8aaf5bf3505d80d098cbad67726548c9a" @@ -3166,6 +3017,20 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" @@ -3313,25 +3178,6 @@ lodash@^4.17.4, lodash@^4.3.0, lodash@~4.17.10: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - dependencies: - chalk "^1.0.0" - -log-symbols@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.1.0.tgz#f35fa60e278832b538dc4dddcbb478a45d3e3be6" - dependencies: - chalk "^2.0.1" - -log-update@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" - dependencies: - ansi-escapes "^1.0.0" - cli-cursor "^1.0.2" - logalot@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/logalot/-/logalot-2.1.0.tgz#5f8e8c90d304edf12530951a5554abb8c5e3f552" @@ -3492,7 +3338,7 @@ mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.4, minimatch@~3.0.2: +"minimatch@2 || 3", minimatch@^3.0.4, minimatch@~3.0.2: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: @@ -3525,6 +3371,10 @@ mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: dependencies: minimist "0.0.8" +mri@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/mri/-/mri-1.1.1.tgz#85aa26d3daeeeedf80dc5984af95cc5ca5cad9f1" + ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -3576,10 +3426,6 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-1.0.0.tgz#32d0e472f91ff345701c15a8311018d3b0a90379" - normalize-path@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -3599,26 +3445,12 @@ normalize-url@^1.4.0: query-string "^4.1.0" sort-keys "^1.0.0" -npm-path@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.3.tgz#15cff4e1c89a38da77f56f6055b24f975dfb2bbe" - dependencies: - which "^1.2.10" - npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" dependencies: path-key "^2.0.0" -npm-which@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/npm-which/-/npm-which-3.0.1.tgz#9225f26ec3a285c209cae67c3b11a6b4ab7140aa" - dependencies: - commander "^2.9.0" - npm-path "^2.0.2" - which "^1.2.10" - nth-check@^1.0.1, nth-check@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" @@ -3736,15 +3568,6 @@ optipng-bin@^3.0.0: bin-wrapper "^3.0.0" logalot "^2.0.0" -ora@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" - dependencies: - chalk "^1.1.1" - cli-cursor "^1.0.2" - cli-spinners "^0.1.2" - object-assign "^4.0.1" - ordered-read-streams@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz#7137e69b3298bb342247a1bbee3881c80e2fd78b" @@ -3774,14 +3597,42 @@ p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + dependencies: + p-try "^1.0.0" + +p-limit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" + dependencies: + p-try "^2.0.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + dependencies: + p-limit "^2.0.0" p-pipe@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + +p-try@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" + parse-glob@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" @@ -3797,11 +3648,12 @@ parse-json@^2.1.0, parse-json@^2.2.0: dependencies: error-ex "^1.2.0" -parse-json@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-3.0.0.tgz#fa6f47b18e23826ead32f263e744d0e1e847fb13" +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" dependencies: error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" parse-passwd@^1.0.0: version "1.0.0" @@ -3821,14 +3673,14 @@ path-exists@^2.0.0: dependencies: pinkie-promise "^2.0.0" +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - path-key@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -3882,6 +3734,18 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + dependencies: + find-up "^3.0.0" + +please-upgrade-node@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac" + dependencies: + semver-compare "^1.0.0" + postcss-calc@^5.2.0: version "5.3.1" resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" @@ -4112,12 +3976,15 @@ prettier@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.9.1.tgz#41638a0d47c1efbd1b7d5a742aaa5548eab86d70" -pretty-format@^21.2.1: - version "21.2.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-21.2.1.tgz#ae5407f3cf21066cd011aa1ba5fce7b6a2eddb36" +pretty-quick@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/pretty-quick/-/pretty-quick-1.8.0.tgz#067ebe744ddb4e1ed4e1ee1af9648815121f78fc" dependencies: - ansi-regex "^3.0.0" - ansi-styles "^3.2.0" + chalk "^2.3.0" + execa "^0.8.0" + find-up "^2.1.0" + ignore "^3.3.7" + mri "^1.1.0" prismjs@^1.15.0: version "1.15.0" @@ -4300,6 +4167,14 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" +read-pkg@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-4.0.1.tgz#963625378f3e1c4d48c85872b5a6ec7d5d093237" + dependencies: + normalize-package-data "^2.3.2" + parse-json "^4.0.0" + pify "^3.0.0" + "readable-stream@>=1.0.33-1 <1.1.0-0": version "1.0.34" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" @@ -4465,10 +4340,6 @@ request@^2.53.0, request@^2.87.0: tunnel-agent "^0.6.0" uuid "^3.3.2" -require-from-string@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.1.tgz#c545233e9d7da6616e9d59adfb39fc9f588676ff" - requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" @@ -4486,13 +4357,6 @@ resolve@^1.1.6: dependencies: path-parse "^1.0.5" -restore-cursor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" - dependencies: - exit-hook "^1.0.0" - onetime "^1.0.0" - restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -4512,6 +4376,10 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" +run-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" + rx-lite-aggregates@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" @@ -4526,12 +4394,6 @@ rx@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" -rxjs@^5.4.2: - version "5.5.5" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.5.tgz#e164f11d38eaf29f56f08c3447f74ff02dd84e97" - dependencies: - symbol-observable "1.0.1" - safe-buffer@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" @@ -4562,6 +4424,10 @@ select@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" +semver-compare@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" + semver-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-1.0.0.tgz#92a4969065f9c70c694753d55248fc68f8f652c9" @@ -4677,9 +4543,9 @@ slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" +slash@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" sockjs-client@1.1.5: version "1.1.5" @@ -4769,10 +4635,6 @@ stable@~0.1.6: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" -staged-git-files@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-0.0.4.tgz#d797e1b551ca7a639dec0237dc6eb4bb9be17d35" - stat-mode@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-0.2.2.tgz#e6c80b623123d7d80cf132ce538f346289072502" @@ -4796,12 +4658,6 @@ stream-shift@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" -stream-to-observable@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.2.0.tgz#59d6ea393d87c2c0ddac10aa0d561bc6ba6f0e10" - dependencies: - any-observable "^0.2.0" - strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" @@ -4810,14 +4666,6 @@ string-template@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - string-width@^2.0.0, string-width@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" @@ -4835,15 +4683,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-object@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.2.1.tgz#2720c2eff940854c819f6ee252aaeb581f30624d" - dependencies: - get-own-enumerable-property-symbols "^2.0.1" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@3.0.1, strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@3.0.1, strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" dependencies: @@ -4893,10 +4733,6 @@ strip-indent@^1.0.1: dependencies: get-stdin "^4.0.1" -strip-indent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" - strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -4923,12 +4759,6 @@ supports-color@^3.2.3: dependencies: has-flag "^1.0.0" -supports-color@^4.0.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - dependencies: - has-flag "^2.0.0" - supports-color@^5.3.0, supports-color@^5.4.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -4966,14 +4796,6 @@ svgo@^1.0.0: unquote "~1.1.1" util.promisify "~1.0.0" -symbol-observable@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" - -symbol-observable@^0.2.2: - version "0.2.4" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-0.2.4.tgz#95a83db26186d6af7e7a18dbd9760a2f86d08f40" - tar-stream@^1.1.1: version "1.6.1" resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.1.tgz#f84ef1696269d6223ca48f6e1eeede3f7e81f395" @@ -5355,12 +5177,6 @@ whet.extend@~0.9.9: version "0.9.9" resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" -which@^1.2.10: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" - dependencies: - isexe "^2.0.0" - which@^1.2.14, which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"