1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.default = void 0;
|
7 | exports.promptForDeviceSelection = promptForDeviceSelection;
|
8 | var _parseIOSDevicesList = _interopRequireDefault(require("../../tools/parseIOSDevicesList"));
|
9 | var _parseXctraceIOSDevicesList = _interopRequireDefault(require("../../tools/parseXctraceIOSDevicesList"));
|
10 | function _execa() {
|
11 | const data = _interopRequireDefault(require("execa"));
|
12 | _execa = function () {
|
13 | return data;
|
14 | };
|
15 | return data;
|
16 | }
|
17 | function _cliTools() {
|
18 | const data = require("@react-native-community/cli-tools");
|
19 | _cliTools = function () {
|
20 | return data;
|
21 | };
|
22 | return data;
|
23 | }
|
24 | function _prompts() {
|
25 | const data = _interopRequireDefault(require("prompts"));
|
26 | _prompts = function () {
|
27 | return data;
|
28 | };
|
29 | return data;
|
30 | }
|
31 | function _chalk() {
|
32 | const data = _interopRequireDefault(require("chalk"));
|
33 | _chalk = function () {
|
34 | return data;
|
35 | };
|
36 | return data;
|
37 | }
|
38 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
39 | async function promptForDeviceSelection(availableDevices) {
|
40 | const {
|
41 | device
|
42 | } = await (0, _prompts().default)({
|
43 | type: 'select',
|
44 | name: 'device',
|
45 | message: 'Select the device you want to use',
|
46 | choices: availableDevices.filter(d => d.type === 'device' || d.type === 'simulator').map(d => ({
|
47 | title: `${_chalk().default.bold(d.name)}`,
|
48 | value: d
|
49 | })),
|
50 | min: 1
|
51 | });
|
52 | return device;
|
53 | }
|
54 | async function listIOSDevices() {
|
55 | let devices;
|
56 | try {
|
57 | const out = _execa().default.sync('xcrun', ['xctrace', 'list', 'devices']);
|
58 | devices = (0, _parseXctraceIOSDevicesList.default)(
|
59 |
|
60 | out.stderr === '' ? out.stdout : out.stderr);
|
61 | } catch (e) {
|
62 | _cliTools().logger.warn('Support for Xcode 11 and older is deprecated. Please upgrade to Xcode 12.');
|
63 | devices = (0, _parseIOSDevicesList.default)(_execa().default.sync('xcrun', ['instruments', '-s']).stdout);
|
64 | }
|
65 | return devices;
|
66 | }
|
67 | var _default = listIOSDevices;
|
68 | exports.default = _default;
|
69 |
|
70 |
|
\ | No newline at end of file |