Yarn workspaces
Summary: 1) moved "sonar/desktop/src" to "sonar/desktop/app/src", so "app" is now a separate package containing the core Flipper app code 2) Configured yarn workspaces with the root in "sonar/desktop": app, static, pkg, doctor, headless-tests. Plugins are not included for now, I plan to do this later. Reviewed By: jknoxville Differential Revision: D20535782 fbshipit-source-id: 600b2301960f37c7d72166e0d04eba462bec9fc1
This commit is contained in:
committed by
Facebook GitHub Bot
parent
676d7bbd24
commit
863f89351e
71
desktop/app/src/fb-stubs/iOSContainerUtility.tsx
Normal file
71
desktop/app/src/fb-stubs/iOSContainerUtility.tsx
Normal file
@@ -0,0 +1,71 @@
|
||||
/**
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*
|
||||
* @format
|
||||
*/
|
||||
|
||||
import {DeviceType} from '../devices/BaseDevice';
|
||||
import {exec} from 'promisify-child-process';
|
||||
import {notNull} from '../utils/typeUtils';
|
||||
import {killOrphanedInstrumentsProcesses} from '../utils/processCleanup';
|
||||
|
||||
const errorMessage = 'Physical iOS devices not yet supported';
|
||||
|
||||
export type DeviceTarget = {
|
||||
udid: string;
|
||||
type: DeviceType;
|
||||
name: string;
|
||||
};
|
||||
|
||||
function isAvailable(): boolean {
|
||||
return false;
|
||||
}
|
||||
|
||||
async function targets(): Promise<Array<DeviceTarget>> {
|
||||
await killOrphanedInstrumentsProcesses();
|
||||
const {stdout} = await exec('instruments -s devices');
|
||||
if (!stdout) {
|
||||
return [];
|
||||
}
|
||||
return stdout
|
||||
.toString()
|
||||
.split('\n')
|
||||
.map(line => line.trim())
|
||||
.map(line => /(.+) \([^(]+\) \[(.*)\]( \(Simulator\))?/.exec(line))
|
||||
.filter(notNull)
|
||||
.filter(
|
||||
([_match, name, _udid, isSim]) =>
|
||||
!isSim && (name.includes('iPhone') || name.includes('iPad')),
|
||||
)
|
||||
.map(([_match, name, udid]) => {
|
||||
return {udid: udid, type: 'physical', name: name};
|
||||
});
|
||||
}
|
||||
|
||||
function push(
|
||||
_udid: string,
|
||||
_src: string,
|
||||
_bundleId: string,
|
||||
_dst: string,
|
||||
): Promise<void> {
|
||||
return Promise.reject(errorMessage);
|
||||
}
|
||||
|
||||
function pull(
|
||||
_udid: string,
|
||||
_src: string,
|
||||
_bundleId: string,
|
||||
_dst: string,
|
||||
): Promise<void> {
|
||||
return Promise.reject(errorMessage);
|
||||
}
|
||||
|
||||
export default {
|
||||
isAvailable: isAvailable,
|
||||
targets: targets,
|
||||
push: push,
|
||||
pull: pull,
|
||||
};
|
||||
Reference in New Issue
Block a user