diff --git a/packages/cli/src/commands/doctor/healthchecks/androidHomeEnvVariable.js b/packages/cli/src/commands/doctor/healthchecks/androidHomeEnvVariable.ts similarity index 62% rename from packages/cli/src/commands/doctor/healthchecks/androidHomeEnvVariable.js rename to packages/cli/src/commands/doctor/healthchecks/androidHomeEnvVariable.ts index 2135ced6b..cbb865060 100644 --- a/packages/cli/src/commands/doctor/healthchecks/androidHomeEnvVariable.js +++ b/packages/cli/src/commands/doctor/healthchecks/androidHomeEnvVariable.ts @@ -1,9 +1,7 @@ -// @flow import chalk from 'chalk'; -import Ora from 'ora'; -// $FlowFixMe - converted to TS +import {Ora} from 'ora'; import {logManualInstallation} from './common'; -import type {HealthCheckInterface} from '../types'; +import {HealthCheckInterface} from '../types'; // List of answers on how to set `ANDROID_HOME` for each platform const URLS = { @@ -14,20 +12,24 @@ const URLS = { const label = 'ANDROID_HOME'; +// Force the options for the platform to avoid providing a link +// for `ANDROID_HOME` for every platform NodeJS supports +const platform = process.platform as 'darwin' | 'win32' | 'linux'; + const message = `Read more about how to set the ${label} at ${chalk.dim( - URLS[process.platform], + URLS[platform], )}.`; -export default ({ +export default { label, getDiagnostics: async () => ({ needsToBeFixed: !process.env.ANDROID_HOME && message, }), - runAutomaticFix: async ({loader}: {loader: typeof Ora}) => { + runAutomaticFix: async ({loader}: {loader: Ora}) => { loader.info(); logManualInstallation({ message, }); }, -}: HealthCheckInterface); +} as HealthCheckInterface; diff --git a/packages/cli/src/commands/doctor/healthchecks/androidNDK.js b/packages/cli/src/commands/doctor/healthchecks/androidNDK.ts similarity index 77% rename from packages/cli/src/commands/doctor/healthchecks/androidNDK.js rename to packages/cli/src/commands/doctor/healthchecks/androidNDK.ts index 3550d1aa3..fe5de0bc9 100644 --- a/packages/cli/src/commands/doctor/healthchecks/androidNDK.js +++ b/packages/cli/src/commands/doctor/healthchecks/androidNDK.ts @@ -1,15 +1,11 @@ -// @flow import chalk from 'chalk'; -import Ora from 'ora'; -// $FlowFixMe - converted to TS +import {Ora} from 'ora'; import {logManualInstallation} from './common'; -// $FlowFixMe - converted to TS import versionRanges from '../versionRanges'; -// $FlowFixMe - converted to TS import {doesSoftwareNeedToBeFixed} from '../checkInstallation'; -import type {EnvironmentInfo, HealthCheckInterface} from '../types'; +import {EnvironmentInfo, HealthCheckInterface} from '../types'; -export default ({ +export default { label: 'Android NDK', getDiagnostics: async ({SDKs}: EnvironmentInfo) => ({ needsToBeFixed: doesSoftwareNeedToBeFixed({ @@ -21,8 +17,8 @@ export default ({ loader, environmentInfo, }: { - loader: typeof Ora, - environmentInfo: EnvironmentInfo, + loader: Ora; + environmentInfo: EnvironmentInfo; }) => { const version = environmentInfo.SDKs['Android SDK']['Android NDK']; const isNDKInstalled = version !== 'Not Found'; @@ -42,4 +38,4 @@ export default ({ url: 'https://developer.android.com/ndk/downloads', }); }, -}: HealthCheckInterface); +} as HealthCheckInterface; diff --git a/packages/cli/src/commands/doctor/healthchecks/cocoaPods.js b/packages/cli/src/commands/doctor/healthchecks/cocoaPods.ts similarity index 64% rename from packages/cli/src/commands/doctor/healthchecks/cocoaPods.js rename to packages/cli/src/commands/doctor/healthchecks/cocoaPods.ts index 92874f0c1..81e362bad 100644 --- a/packages/cli/src/commands/doctor/healthchecks/cocoaPods.js +++ b/packages/cli/src/commands/doctor/healthchecks/cocoaPods.ts @@ -1,14 +1,11 @@ -// @flow -// $FlowFixMe - converted to TS import {checkSoftwareInstalled} from '../checkInstallation'; -// $FlowFixMe - converted to TS import {installCocoaPods} from '../../../tools/installPods'; -import {type HealthCheckInterface} from '../types'; +import {HealthCheckInterface} from '../types'; -export default ({ +export default { label: 'CocoaPods', getDiagnostics: async () => ({ needsToBeFixed: await checkSoftwareInstalled('pod'), }), runAutomaticFix: async ({loader}) => await installCocoaPods(loader), -}: HealthCheckInterface); +} as HealthCheckInterface; diff --git a/packages/cli/src/commands/doctor/healthchecks/index.js b/packages/cli/src/commands/doctor/healthchecks/index.js index c95ddf644..9b94f942b 100644 --- a/packages/cli/src/commands/doctor/healthchecks/index.js +++ b/packages/cli/src/commands/doctor/healthchecks/index.js @@ -2,10 +2,13 @@ import nodeJS from './nodeJS'; import {yarn, npm} from './packageManagers'; import watchman from './watchman'; +// $FlowFixMe - converted to TS import androidHomeEnvVariable from './androidHomeEnvVariable'; import androidSDK from './androidSDK'; +// $FlowFixMe - converted to TS import androidNDK from './androidNDK'; import xcode from './xcode'; +// $FlowFixMe - converted to TS import cocoaPods from './cocoaPods'; import iosDeploy from './iosDeploy'; diff --git a/packages/cli/src/commands/doctor/types.ts b/packages/cli/src/commands/doctor/types.ts index 9c5a5e7a8..3489827e0 100644 --- a/packages/cli/src/commands/doctor/types.ts +++ b/packages/cli/src/commands/doctor/types.ts @@ -1,4 +1,4 @@ -import Ora from 'ora'; +import {Ora} from 'ora'; export type EnvironmentInfo = { System: { @@ -72,7 +72,7 @@ export type HealthCheckInterface = { environmentInfo: EnvironmentInfo, ) => Promise<{version?: string; needsToBeFixed: boolean | string}>; runAutomaticFix: (args: { - loader: typeof Ora; + loader: Ora; environmentInfo: EnvironmentInfo; }) => Promise | void; };