From eb26a74327c6a6d524d6e3746a3805baaa50e248 Mon Sep 17 00:00:00 2001 From: Pritesh Nandgaonkar Date: Fri, 9 Aug 2019 07:47:34 -0700 Subject: [PATCH] Migrate AndroidDevice from js to tsx Summary: As per the title Reviewed By: jknoxville Differential Revision: D16667269 fbshipit-source-id: d213f4ebacf8050ae55a8e3268909da8535f2d93 --- src/chrome/LocationsButton.js | 1 - src/chrome/ScreenCaptureButtons.js | 2 +- .../{AndroidDevice.js => AndroidDevice.tsx} | 14 ++++++-------- src/dispatcher/androidDevice.js | 2 +- src/index.js | 2 +- 5 files changed, 9 insertions(+), 12 deletions(-) rename src/devices/{AndroidDevice.js => AndroidDevice.tsx} (89%) diff --git a/src/chrome/LocationsButton.js b/src/chrome/LocationsButton.js index 3ce18a2b7..22fb05594 100644 --- a/src/chrome/LocationsButton.js +++ b/src/chrome/LocationsButton.js @@ -9,7 +9,6 @@ import {Button, Component, styled} from 'flipper'; import {connect} from 'react-redux'; import type BaseDevice from '../devices/BaseDevice.tsx'; -import AndroidDevice from '../devices/AndroidDevice'; type OwnProps = {| locations: Array, diff --git a/src/chrome/ScreenCaptureButtons.js b/src/chrome/ScreenCaptureButtons.js index f1adc2c19..ade9c71e9 100644 --- a/src/chrome/ScreenCaptureButtons.js +++ b/src/chrome/ScreenCaptureButtons.js @@ -7,7 +7,7 @@ import {Button, ButtonGroup, Component} from 'flipper'; import {connect} from 'react-redux'; -import AndroidDevice from '../devices/AndroidDevice'; +import AndroidDevice from '../devices/AndroidDevice.tsx'; import IOSDevice from '../devices/IOSDevice'; import expandTilde from 'expand-tilde'; import fs from 'fs'; diff --git a/src/devices/AndroidDevice.js b/src/devices/AndroidDevice.tsx similarity index 89% rename from src/devices/AndroidDevice.js rename to src/devices/AndroidDevice.tsx index 90ae67a19..bb0cd7b49 100644 --- a/src/devices/AndroidDevice.js +++ b/src/devices/AndroidDevice.tsx @@ -5,12 +5,11 @@ * @format */ -import type {DeviceType, DeviceShell} from './BaseDevice.tsx'; -import BaseDevice from './BaseDevice.tsx'; +import BaseDevice, {DeviceType, DeviceShell, LogLevel} from './BaseDevice'; import {Priority} from 'adbkit-logcat-fb'; import child_process from 'child_process'; import child_process_promise from 'child-process-es6-promise'; -import ArchivedDevice from './ArchivedDevice.tsx'; +import ArchivedDevice from './ArchivedDevice'; type ADBClient = any; @@ -23,10 +22,11 @@ export default class AndroidDevice extends BaseDevice { ) { super(serial, deviceType, title); this.adb = adb; - + this.os = 'Android'; + this.icon = 'icons/android.svg'; this.adb.openLogcat(this.serial).then(reader => { reader.on('entry', entry => { - let type = 'unknown'; + let type: LogLevel = 'unknown'; if (entry.priority === Priority.VERBOSE) { type = 'verbose'; } @@ -58,8 +58,6 @@ export default class AndroidDevice extends BaseDevice { }); } - icon = 'icons/android.svg'; - os = 'Android'; adb: ADBClient; pidAppMapping: {[key: number]: string} = {}; logReader: any; @@ -78,7 +76,7 @@ export default class AndroidDevice extends BaseDevice { }); } - spawnShell(): ?DeviceShell { + spawnShell(): DeviceShell | null | undefined { return child_process.spawn('adb', ['-s', this.serial, 'shell', '-t', '-t']); } diff --git a/src/dispatcher/androidDevice.js b/src/dispatcher/androidDevice.js index 74dfc4b59..0090bd6e6 100644 --- a/src/dispatcher/androidDevice.js +++ b/src/dispatcher/androidDevice.js @@ -5,7 +5,7 @@ * @format */ -import AndroidDevice from '../devices/AndroidDevice'; +import AndroidDevice from '../devices/AndroidDevice.tsx'; import child_process from 'child_process'; import type {Store} from '../reducers/index.tsx'; import type BaseDevice from '../devices/BaseDevice.tsx'; diff --git a/src/index.js b/src/index.js index ef16ed13d..d05b4cc17 100644 --- a/src/index.js +++ b/src/index.js @@ -41,8 +41,8 @@ export {default as isProduction} from './utils/isProduction.js'; export {createTablePlugin} from './createTablePlugin.js'; export {default as DetailSidebar} from './chrome/DetailSidebar.js'; -export {default as AndroidDevice} from './devices/AndroidDevice.js'; export {default as Device} from './devices/BaseDevice.tsx'; +export {default as AndroidDevice} from './devices/AndroidDevice.tsx'; export {default as ArchivedDevice} from './devices/ArchivedDevice.tsx'; export {default as IOSDevice} from './devices/IOSDevice.js'; export type {OS} from './devices/BaseDevice.tsx';