@expo/cli 58.1.7 → 58.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/api/rest/wrapFetchWithUserAgent.js +1 -1
- package/build/src/command/events/eventsAsync.d.ts +2 -0
- package/build/src/command/events/eventsAsync.js +31 -0
- package/build/src/command/events/eventsAsync.js.map +1 -0
- package/build/src/command/events/help.d.ts +2 -0
- package/build/src/command/events/help.js +69 -0
- package/build/src/command/events/help.js.map +1 -0
- package/build/src/command/events/index.d.ts +2 -0
- package/build/src/command/events/index.js +59 -0
- package/build/src/command/events/index.js.map +1 -0
- package/build/src/command/events/resolveOptions.d.ts +10 -0
- package/build/src/command/events/resolveOptions.js +23 -0
- package/build/src/command/events/resolveOptions.js.map +1 -0
- package/build/src/command/index.d.ts +2 -0
- package/build/src/command/index.js +65 -0
- package/build/src/command/index.js.map +1 -0
- package/build/src/command/ps/help.d.ts +2 -0
- package/build/src/command/ps/help.js +52 -0
- package/build/src/command/ps/help.js.map +1 -0
- package/build/src/command/ps/index.d.ts +2 -0
- package/build/src/command/ps/index.js +53 -0
- package/build/src/command/ps/index.js.map +1 -0
- package/build/src/command/ps/psAsync.d.ts +2 -0
- package/build/src/command/ps/psAsync.js +49 -0
- package/build/src/command/ps/psAsync.js.map +1 -0
- package/build/src/command/ps/resolveOptions.d.ts +9 -0
- package/build/src/command/ps/resolveOptions.js +20 -0
- package/build/src/command/ps/resolveOptions.js.map +1 -0
- package/build/src/command/sessions.d.ts +4 -0
- package/build/src/command/sessions.js +80 -0
- package/build/src/command/sessions.js.map +1 -0
- package/build/src/command/utils.d.ts +5 -0
- package/build/src/command/utils.js +62 -0
- package/build/src/command/utils.js.map +1 -0
- package/build/src/index.js +28 -7
- package/build/src/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.d.ts +1 -1
- package/build/src/prebuild/prebuildAsync.js +17 -3
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/setupSwiftPM.d.ts +20 -0
- package/build/src/prebuild/setupSwiftPM.js +171 -0
- package/build/src/prebuild/setupSwiftPM.js.map +1 -0
- package/build/src/run/index.js +1 -1
- package/build/src/run/index.js.map +1 -1
- package/build/src/start/index.js +5 -2
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.d.ts +1 -0
- package/build/src/start/server/BundlerDevServer.js +9 -4
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.d.ts +1 -0
- package/build/src/start/server/DevServerManager.js +21 -0
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +39 -15
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.d.ts +16 -5
- package/build/src/start/server/metro/MetroTerminalReporter.js +61 -28
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.types.d.ts +2 -0
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +1 -1
- package/build/src/start/server/metro/dev-server/createMessageSocket.js +1 -8
- package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +7 -3
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.d.ts +19 -3
- package/build/src/start/server/metro/metroErrorInterface.js +18 -2
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +3 -11
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +1 -8
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +2 -9
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +1 -8
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +2 -9
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/utils/build-cache-providers/index.js +14 -44
- package/build/src/utils/build-cache-providers/index.js.map +1 -1
- package/build/src/utils/cocoapods.js +10 -0
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/errors.d.ts +9 -1
- package/build/src/utils/errors.js +16 -2
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/metadata.d.ts +15 -0
- package/build/src/utils/metadata.js +39 -0
- package/build/src/utils/metadata.js.map +1 -0
- package/build/src/utils/nodeEnv.js +2 -0
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js +1 -1
- package/build/src/utils/telemetry/utils/context.js +1 -1
- package/package.json +20 -20
|
@@ -25,7 +25,7 @@ function wrapFetchWithUserAgent(fetch) {
|
|
|
25
25
|
return (url, init = {})=>{
|
|
26
26
|
const headers = new _fetch.Headers(init.headers);
|
|
27
27
|
// Version is added in the build script
|
|
28
|
-
headers.append('User-Agent', `expo-cli/${"58.1.
|
|
28
|
+
headers.append('User-Agent', `expo-cli/${"58.1.9"}`);
|
|
29
29
|
init.headers = headers;
|
|
30
30
|
return fetch(url, init);
|
|
31
31
|
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "eventsAsync", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return eventsAsync;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _api() {
|
|
12
|
+
const data = require("2g/api");
|
|
13
|
+
_api = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
const _sessions = require("../sessions");
|
|
19
|
+
async function eventsAsync(options) {
|
|
20
|
+
const session = await (0, _sessions.resolveExpoSession)(options.selector);
|
|
21
|
+
for await (const event of (0, _api().tap)(session.sessionDir, {
|
|
22
|
+
since: options.since,
|
|
23
|
+
filter: options.filter,
|
|
24
|
+
spans: options.spans,
|
|
25
|
+
follow: options.follow
|
|
26
|
+
})){
|
|
27
|
+
process.stdout.write(`${JSON.stringify(event)}\n`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=eventsAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/events/eventsAsync.ts"],"sourcesContent":[null],"names":["eventsAsync","options","session","resolveExpoSession","selector","event","tap","sessionDir","since","filter","spans","follow","process","stdout","write","JSON","stringify"],"mappings":";;;;+BAKsBA;;;eAAAA;;;;yBALF;;;;;;0BAEe;AAG5B,eAAeA,YAAYC,OAAgB;IAChD,MAAMC,UAAU,MAAMC,IAAAA,4BAAkB,EAACF,QAAQG,QAAQ;IACzD,WAAW,MAAMC,SAASC,IAAAA,UAAG,EAACJ,QAAQK,UAAU,EAAE;QAChDC,OAAOP,QAAQO,KAAK;QACpBC,QAAQR,QAAQQ,MAAM;QACtBC,OAAOT,QAAQS,KAAK;QACpBC,QAAQV,QAAQU,MAAM;IACxB,GAAI;QACFC,QAAQC,MAAM,CAACC,KAAK,CAAC,GAAGC,KAAKC,SAAS,CAACX,OAAO,EAAE,CAAC;IACnD;AACF"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "getHelp", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return getHelp;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _chalk() {
|
|
12
|
+
const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
13
|
+
_chalk = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
function _interop_require_default(obj) {
|
|
19
|
+
return obj && obj.__esModule ? obj : {
|
|
20
|
+
default: obj
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function getHelp(includeOptions = true) {
|
|
24
|
+
return [
|
|
25
|
+
'',
|
|
26
|
+
includeOptions ? (0, _chalk().default)` {bold Info}` : (0, _chalk().default)` {bold events [selector] [--tail]}`,
|
|
27
|
+
' Replays retained events from running or stopped sessions as JSONL to stdout, oldest first.',
|
|
28
|
+
' Use command:ps --json to discover session IDs and metadata.',
|
|
29
|
+
'',
|
|
30
|
+
...includeOptions ? [
|
|
31
|
+
(0, _chalk().default)` {bold Usage}`,
|
|
32
|
+
(0, _chalk().default)` {dim $} npx expo command:events {dim [selector] [--tail]}`,
|
|
33
|
+
'',
|
|
34
|
+
(0, _chalk().default)` {bold Options}`,
|
|
35
|
+
' selector Session ID, PID, or substring of CWD or command',
|
|
36
|
+
' --since <time> Duration ago (5m, 90s), Unix time, or ISO date',
|
|
37
|
+
' --filter <pattern> Event-name prefixes on whole segments; * wildcards;',
|
|
38
|
+
' comma-separated or repeated, e.g. metro:bundling',
|
|
39
|
+
' --spans Keep only span events (with a _d duration)',
|
|
40
|
+
' --tail Follow live events after replay until the session stops',
|
|
41
|
+
' --help, -h Show this help',
|
|
42
|
+
''
|
|
43
|
+
] : [],
|
|
44
|
+
' If several sessions match and exactly one is running, it is selected.',
|
|
45
|
+
' Otherwise, specify a session ID or PID from the listed candidates.',
|
|
46
|
+
' Omit the selector to use the only running session, or the only recorded session',
|
|
47
|
+
' if none are running.',
|
|
48
|
+
'',
|
|
49
|
+
' Events: {"_e":"category:kind","_t":<epoch ms>,...}. _d is a span duration',
|
|
50
|
+
' in milliseconds; _w identifies a worker.',
|
|
51
|
+
'',
|
|
52
|
+
(0, _chalk().default)` {bold Notes}`,
|
|
53
|
+
' Common filters include child events',
|
|
54
|
+
' - metro Bundling, errors and logs',
|
|
55
|
+
' - cli CLI errors',
|
|
56
|
+
' - devserver Server lifecycle',
|
|
57
|
+
'',
|
|
58
|
+
' Filters match event names, not message text or severity. --spans excludes',
|
|
59
|
+
' events without durations, including bundle failures and logged warnings.',
|
|
60
|
+
'',
|
|
61
|
+
(0, _chalk().default)` {bold Examples}`,
|
|
62
|
+
(0, _chalk().default)` {dim $} npx expo command:events <session-id> --since 5m`,
|
|
63
|
+
(0, _chalk().default)` {dim $} npx expo command:events "expo start" --filter metro:bundling`,
|
|
64
|
+
(0, _chalk().default)` {dim $} npx expo command:events <session-id> --tail`,
|
|
65
|
+
''
|
|
66
|
+
].join('\n');
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
//# sourceMappingURL=help.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/events/help.ts"],"sourcesContent":[null],"names":["getHelp","includeOptions","chalk","join"],"mappings":";;;;+BAGgBA;;;eAAAA;;;;gEAHE;;;;;;;;;;;AAGX,SAASA,QAAQC,iBAAiB,IAAI;IAC3C,OAAO;QACL;QACAA,iBAAiBC,IAAAA,gBAAK,CAAA,CAAC,aAAa,CAAC,GAAGA,IAAAA,gBAAK,CAAA,CAAC,mCAAmC,CAAC;QAClF;QACA;QACA;WACID,iBACA;YACEC,IAAAA,gBAAK,CAAA,CAAC,cAAc,CAAC;YACrBA,IAAAA,gBAAK,CAAA,CAAC,6DAA6D,CAAC;YACpE;YACAA,IAAAA,gBAAK,CAAA,CAAC,gBAAgB,CAAC;YACvB;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD,GACD,EAAE;QACN;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACAA,IAAAA,gBAAK,CAAA,CAAC,cAAc,CAAC;QACrB;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACAA,IAAAA,gBAAK,CAAA,CAAC,iBAAiB,CAAC;QACxBA,IAAAA,gBAAK,CAAA,CAAC,2DAA2D,CAAC;QAClEA,IAAAA,gBAAK,CAAA,CAAC,wEAAwE,CAAC;QAC/EA,IAAAA,gBAAK,CAAA,CAAC,uDAAuD,CAAC;QAC9D;KACD,CAACC,IAAI,CAAC;AACT"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "expoCommandEvents", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return expoCommandEvents;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _nodeutil() {
|
|
12
|
+
const data = require("node:util");
|
|
13
|
+
_nodeutil = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
const _utils = require("../utils");
|
|
19
|
+
const _help = require("./help");
|
|
20
|
+
const expoCommandEvents = async (argv = [])=>{
|
|
21
|
+
(0, _utils.installOutputErrorHandler)();
|
|
22
|
+
try {
|
|
23
|
+
const { values, positionals } = (0, _nodeutil().parseArgs)({
|
|
24
|
+
args: argv,
|
|
25
|
+
allowPositionals: true,
|
|
26
|
+
options: {
|
|
27
|
+
since: {
|
|
28
|
+
type: 'string'
|
|
29
|
+
},
|
|
30
|
+
filter: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
multiple: true
|
|
33
|
+
},
|
|
34
|
+
spans: {
|
|
35
|
+
type: 'boolean'
|
|
36
|
+
},
|
|
37
|
+
tail: {
|
|
38
|
+
type: 'boolean'
|
|
39
|
+
},
|
|
40
|
+
help: {
|
|
41
|
+
type: 'boolean',
|
|
42
|
+
short: 'h'
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
if (values.help) {
|
|
47
|
+
process.stdout.write((0, _help.getHelp)());
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const { resolveOptions } = await import('./resolveOptions.js');
|
|
51
|
+
const options = resolveOptions(values, positionals);
|
|
52
|
+
const { eventsAsync } = await import('./eventsAsync.js');
|
|
53
|
+
await eventsAsync(options);
|
|
54
|
+
} catch (error) {
|
|
55
|
+
(0, _utils.reportError)(error);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/events/index.ts"],"sourcesContent":[null],"names":["expoCommandEvents","argv","installOutputErrorHandler","values","positionals","parseArgs","args","allowPositionals","options","since","type","filter","multiple","spans","tail","help","short","process","stdout","write","getHelp","resolveOptions","eventsAsync","error","reportError"],"mappings":";;;;+BAMaA;;;eAAAA;;;;yBANa;;;;;;uBAG6B;sBAC/B;AAEjB,MAAMA,oBAA6B,OAAOC,OAAO,EAAE;IACxDC,IAAAA,gCAAyB;IACzB,IAAI;QACF,MAAM,EAAEC,MAAM,EAAEC,WAAW,EAAE,GAAGC,IAAAA,qBAAS,EAAC;YACxCC,MAAML;YACNM,kBAAkB;YAClBC,SAAS;gBACPC,OAAO;oBAAEC,MAAM;gBAAS;gBACxBC,QAAQ;oBAAED,MAAM;oBAAUE,UAAU;gBAAK;gBACzCC,OAAO;oBAAEH,MAAM;gBAAU;gBACzBI,MAAM;oBAAEJ,MAAM;gBAAU;gBACxBK,MAAM;oBAAEL,MAAM;oBAAWM,OAAO;gBAAI;YACtC;QACF;QACA,IAAIb,OAAOY,IAAI,EAAE;YACfE,QAAQC,MAAM,CAACC,KAAK,CAACC,IAAAA,aAAO;YAC5B;QACF;QACA,MAAM,EAAEC,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC;QACxC,MAAMb,UAAUa,eAAelB,QAAQC;QACvC,MAAM,EAAEkB,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC;QACrC,MAAMA,YAAYd;IACpB,EAAE,OAAOe,OAAO;QACdC,IAAAA,kBAAW,EAACD;IACd;AACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TapOptions } from '2g/api';
|
|
2
|
+
export type Options = Pick<TapOptions, 'since' | 'filter' | 'spans' | 'follow'> & {
|
|
3
|
+
selector?: string;
|
|
4
|
+
};
|
|
5
|
+
export declare function resolveOptions(args: {
|
|
6
|
+
since?: string;
|
|
7
|
+
filter?: string[];
|
|
8
|
+
spans?: boolean;
|
|
9
|
+
tail?: boolean;
|
|
10
|
+
}, positionals: string[]): Options;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "resolveOptions", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return resolveOptions;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _utils = require("../utils");
|
|
12
|
+
function resolveOptions(args, positionals) {
|
|
13
|
+
const selector = (0, _utils.resolveSelector)(positionals);
|
|
14
|
+
return {
|
|
15
|
+
selector,
|
|
16
|
+
since: args.since,
|
|
17
|
+
filter: args.filter,
|
|
18
|
+
spans: !!args.spans,
|
|
19
|
+
follow: !!args.tail
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=resolveOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/events/resolveOptions.ts"],"sourcesContent":[null],"names":["resolveOptions","args","positionals","selector","resolveSelector","since","filter","spans","follow","tail"],"mappings":";;;;+BAQgBA;;;eAAAA;;;uBANgB;AAMzB,SAASA,eACdC,IAKC,EACDC,WAAqB;IAErB,MAAMC,WAAWC,IAAAA,sBAAe,EAACF;IACjC,OAAO;QACLC;QACAE,OAAOJ,KAAKI,KAAK;QACjBC,QAAQL,KAAKK,MAAM;QACnBC,OAAO,CAAC,CAACN,KAAKM,KAAK;QACnBC,QAAQ,CAAC,CAACP,KAAKQ,IAAI;IACrB;AACF"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "expoCommand", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return expoCommand;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _chalk() {
|
|
12
|
+
const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
13
|
+
_chalk = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
const _help = require("./events/help");
|
|
19
|
+
const _help1 = require("./ps/help");
|
|
20
|
+
const _utils = require("./utils");
|
|
21
|
+
function _interop_require_default(obj) {
|
|
22
|
+
return obj && obj.__esModule ? obj : {
|
|
23
|
+
default: obj
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
const expoCommand = async (argv = [])=>{
|
|
27
|
+
const [command, ...args] = argv;
|
|
28
|
+
if (!command || command === '--help' || command === '-h') {
|
|
29
|
+
(0, _utils.installOutputErrorHandler)();
|
|
30
|
+
process.stdout.write([
|
|
31
|
+
'',
|
|
32
|
+
(0, _chalk().default)` {bold Info}`,
|
|
33
|
+
' Inspect recorded command sessions and their structured events.',
|
|
34
|
+
'',
|
|
35
|
+
(0, _chalk().default)` {bold Usage}`,
|
|
36
|
+
(0, _chalk().default)` {dim $} npx expo command {dim <ps|events>}`,
|
|
37
|
+
(0, _help1.getHelp)(false),
|
|
38
|
+
(0, _help.getHelp)(false),
|
|
39
|
+
' Run npx expo command <ps|events> --help for the full argument list.',
|
|
40
|
+
' The command:ps and command:events forms are also supported.',
|
|
41
|
+
''
|
|
42
|
+
].join('\n'));
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
try {
|
|
46
|
+
switch(command){
|
|
47
|
+
case 'ps':
|
|
48
|
+
{
|
|
49
|
+
const { expoCommandPs } = await import('./ps/index.js');
|
|
50
|
+
return await expoCommandPs(args);
|
|
51
|
+
}
|
|
52
|
+
case 'events':
|
|
53
|
+
{
|
|
54
|
+
const { expoCommandEvents } = await import('./events/index.js');
|
|
55
|
+
return await expoCommandEvents(args);
|
|
56
|
+
}
|
|
57
|
+
default:
|
|
58
|
+
throw new Error(`Unknown command: ${command}. Run \`npx expo command --help\` for usage.`);
|
|
59
|
+
}
|
|
60
|
+
} catch (error) {
|
|
61
|
+
(0, _utils.reportError)(error);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/index.ts"],"sourcesContent":[null],"names":["expoCommand","argv","command","args","installOutputErrorHandler","process","stdout","write","chalk","getPsHelp","getEventsHelp","join","expoCommandPs","expoCommandEvents","Error","error","reportError"],"mappings":";;;;+BAOaA;;;eAAAA;;;;gEAPK;;;;;;sBAGuB;uBACJ;uBACkB;;;;;;AAEhD,MAAMA,cAAuB,OAAOC,OAAO,EAAE;IAClD,MAAM,CAACC,SAAS,GAAGC,KAAK,GAAGF;IAE3B,IAAI,CAACC,WAAWA,YAAY,YAAYA,YAAY,MAAM;QACxDE,IAAAA,gCAAyB;QACzBC,QAAQC,MAAM,CAACC,KAAK,CAClB;YACE;YACAC,IAAAA,gBAAK,CAAA,CAAC,aAAa,CAAC;YACpB;YACA;YACAA,IAAAA,gBAAK,CAAA,CAAC,cAAc,CAAC;YACrBA,IAAAA,gBAAK,CAAA,CAAC,8CAA8C,CAAC;YACrDC,IAAAA,cAAS,EAAC;YACVC,IAAAA,aAAa,EAAC;YACd;YACA;YACA;SACD,CAACC,IAAI,CAAC;QAET;IACF;IAEA,IAAI;QACF,OAAQT;YACN,KAAK;gBAAM;oBACT,MAAM,EAAEU,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC;oBACvC,OAAO,MAAMA,cAAcT;gBAC7B;YACA,KAAK;gBAAU;oBACb,MAAM,EAAEU,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC;oBAC3C,OAAO,MAAMA,kBAAkBV;gBACjC;YACA;gBACE,MAAM,IAAIW,MAAM,CAAC,iBAAiB,EAAEZ,QAAQ,4CAA4C,CAAC;QAC7F;IACF,EAAE,OAAOa,OAAO;QACdC,IAAAA,kBAAW,EAACD;IACd;AACF"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "getHelp", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return getHelp;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _chalk() {
|
|
12
|
+
const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
13
|
+
_chalk = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
function _interop_require_default(obj) {
|
|
19
|
+
return obj && obj.__esModule ? obj : {
|
|
20
|
+
default: obj
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function getHelp(includeOptions = true) {
|
|
24
|
+
return [
|
|
25
|
+
'',
|
|
26
|
+
includeOptions ? (0, _chalk().default)` {bold Info}` : (0, _chalk().default)` {bold ps [selector]}`,
|
|
27
|
+
' Lists running and stopped sessions, newest first, with their command, project,',
|
|
28
|
+
' and process status. Ready dev servers include connection details such as URL and port.',
|
|
29
|
+
'',
|
|
30
|
+
...includeOptions ? [
|
|
31
|
+
(0, _chalk().default)` {bold Usage}`,
|
|
32
|
+
(0, _chalk().default)` {dim $} npx expo command:ps {dim [selector]}`,
|
|
33
|
+
'',
|
|
34
|
+
(0, _chalk().default)` {bold Options}`,
|
|
35
|
+
' selector Session ID, PID, or substring of CWD or command',
|
|
36
|
+
' --active, -a Show only running sessions',
|
|
37
|
+
' --json Print sessions as a JSON array (empty: [])',
|
|
38
|
+
' --help, -h Show this help',
|
|
39
|
+
''
|
|
40
|
+
] : [],
|
|
41
|
+
' Use a session ID or PID to inspect its events with command:events.',
|
|
42
|
+
' Stopped sessions retain their history; their server endpoints may no longer be available.',
|
|
43
|
+
'',
|
|
44
|
+
(0, _chalk().default)` {bold Examples}`,
|
|
45
|
+
(0, _chalk().default)` {dim $} npx expo command:ps --active --json`,
|
|
46
|
+
(0, _chalk().default)` {dim $} npx expo command:ps "expo start" --json`,
|
|
47
|
+
(0, _chalk().default)` {dim $} npx expo command:events <session-id> --since 5m`,
|
|
48
|
+
''
|
|
49
|
+
].join('\n');
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=help.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/ps/help.ts"],"sourcesContent":[null],"names":["getHelp","includeOptions","chalk","join"],"mappings":";;;;+BAGgBA;;;eAAAA;;;;gEAHE;;;;;;;;;;;AAGX,SAASA,QAAQC,iBAAiB,IAAI;IAC3C,OAAO;QACL;QACAA,iBAAiBC,IAAAA,gBAAK,CAAA,CAAC,aAAa,CAAC,GAAGA,IAAAA,gBAAK,CAAA,CAAC,sBAAsB,CAAC;QACrE;QACA;QACA;WACID,iBACA;YACEC,IAAAA,gBAAK,CAAA,CAAC,cAAc,CAAC;YACrBA,IAAAA,gBAAK,CAAA,CAAC,gDAAgD,CAAC;YACvD;YACAA,IAAAA,gBAAK,CAAA,CAAC,gBAAgB,CAAC;YACvB;YACA;YACA;YACA;YACA;SACD,GACD,EAAE;QACN;QACA;QACA;QACAA,IAAAA,gBAAK,CAAA,CAAC,iBAAiB,CAAC;QACxBA,IAAAA,gBAAK,CAAA,CAAC,+CAA+C,CAAC;QACtDA,IAAAA,gBAAK,CAAA,CAAC,mDAAmD,CAAC;QAC1DA,IAAAA,gBAAK,CAAA,CAAC,2DAA2D,CAAC;QAClE;KACD,CAACC,IAAI,CAAC;AACT"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "expoCommandPs", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return expoCommandPs;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _nodeutil() {
|
|
12
|
+
const data = require("node:util");
|
|
13
|
+
_nodeutil = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
const _utils = require("../utils");
|
|
19
|
+
const _help = require("./help");
|
|
20
|
+
const expoCommandPs = async (argv = [])=>{
|
|
21
|
+
(0, _utils.installOutputErrorHandler)();
|
|
22
|
+
try {
|
|
23
|
+
const { values, positionals } = (0, _nodeutil().parseArgs)({
|
|
24
|
+
args: argv,
|
|
25
|
+
allowPositionals: true,
|
|
26
|
+
options: {
|
|
27
|
+
active: {
|
|
28
|
+
type: 'boolean',
|
|
29
|
+
short: 'a'
|
|
30
|
+
},
|
|
31
|
+
json: {
|
|
32
|
+
type: 'boolean'
|
|
33
|
+
},
|
|
34
|
+
help: {
|
|
35
|
+
type: 'boolean',
|
|
36
|
+
short: 'h'
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
if (values.help) {
|
|
41
|
+
process.stdout.write((0, _help.getHelp)());
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const { resolveOptions } = await import('./resolveOptions.js');
|
|
45
|
+
const options = resolveOptions(values, positionals);
|
|
46
|
+
const { psAsync } = await import('./psAsync.js');
|
|
47
|
+
await psAsync(options);
|
|
48
|
+
} catch (error) {
|
|
49
|
+
(0, _utils.reportError)(error);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/ps/index.ts"],"sourcesContent":[null],"names":["expoCommandPs","argv","installOutputErrorHandler","values","positionals","parseArgs","args","allowPositionals","options","active","type","short","json","help","process","stdout","write","getHelp","resolveOptions","psAsync","error","reportError"],"mappings":";;;;+BAMaA;;;eAAAA;;;;yBANa;;;;;;uBAG6B;sBAC/B;AAEjB,MAAMA,gBAAyB,OAAOC,OAAO,EAAE;IACpDC,IAAAA,gCAAyB;IACzB,IAAI;QACF,MAAM,EAAEC,MAAM,EAAEC,WAAW,EAAE,GAAGC,IAAAA,qBAAS,EAAC;YACxCC,MAAML;YACNM,kBAAkB;YAClBC,SAAS;gBACPC,QAAQ;oBAAEC,MAAM;oBAAWC,OAAO;gBAAI;gBACtCC,MAAM;oBAAEF,MAAM;gBAAU;gBACxBG,MAAM;oBAAEH,MAAM;oBAAWC,OAAO;gBAAI;YACtC;QACF;QACA,IAAIR,OAAOU,IAAI,EAAE;YACfC,QAAQC,MAAM,CAACC,KAAK,CAACC,IAAAA,aAAO;YAC5B;QACF;QACA,MAAM,EAAEC,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC;QACxC,MAAMV,UAAUU,eAAef,QAAQC;QACvC,MAAM,EAAEe,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC;QACjC,MAAMA,QAAQX;IAChB,EAAE,OAAOY,OAAO;QACdC,IAAAA,kBAAW,EAACD;IACd;AACF"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "psAsync", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return psAsync;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _chalk() {
|
|
12
|
+
const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
13
|
+
_chalk = function() {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
const _sessions = require("../sessions");
|
|
19
|
+
function _interop_require_default(obj) {
|
|
20
|
+
return obj && obj.__esModule ? obj : {
|
|
21
|
+
default: obj
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
async function psAsync(options) {
|
|
25
|
+
const sessions = (await (0, _sessions.listExpoSessions)(options.selector)).filter((session)=>!options.active || session.alive);
|
|
26
|
+
if (options.json) {
|
|
27
|
+
process.stdout.write(`${JSON.stringify(sessions, null, 2)}\n`);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
process.stdout.write(_chalk().default.bold('PID\tSTATUS\tSTARTED\tCOMMAND\tPROJECT\tPORT\tURL') + '\n');
|
|
31
|
+
for (const session of sessions){
|
|
32
|
+
const { metadata } = session;
|
|
33
|
+
const ready = session.alive && metadata.ready === true;
|
|
34
|
+
process.stdout.write([
|
|
35
|
+
session.pid,
|
|
36
|
+
session.alive ? _chalk().default.green('alive') : _chalk().default.dim('exited'),
|
|
37
|
+
_chalk().default.dim(new Date(session.startedAt).toISOString()),
|
|
38
|
+
_chalk().default.bold(session.command.slice('expo '.length)),
|
|
39
|
+
_chalk().default.dim(typeof metadata.projectRoot === 'string' ? metadata.projectRoot : session.cwd),
|
|
40
|
+
ready && typeof metadata.port === 'number' ? _chalk().default.cyan(metadata.port) : _chalk().default.dim('-'),
|
|
41
|
+
ready && typeof metadata.devServerUrl === 'string' ? _chalk().default.underline(metadata.devServerUrl) : _chalk().default.dim('-')
|
|
42
|
+
].map(escapeTsv).join('\t') + '\n');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
function escapeTsv(value) {
|
|
46
|
+
return String(value).replace(/\\/g, '\\\\').replace(/\t/g, '\\t').replace(/\r/g, '\\r').replace(/\n/g, '\\n');
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
//# sourceMappingURL=psAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/ps/psAsync.ts"],"sourcesContent":[null],"names":["psAsync","options","sessions","listExpoSessions","selector","filter","session","active","alive","json","process","stdout","write","JSON","stringify","chalk","bold","metadata","ready","pid","green","dim","Date","startedAt","toISOString","command","slice","length","projectRoot","cwd","port","cyan","devServerUrl","underline","map","escapeTsv","join","value","String","replace"],"mappings":";;;;+BAKsBA;;;eAAAA;;;;gEALJ;;;;;;0BAEe;;;;;;AAG1B,eAAeA,QAAQC,OAAgB;IAC5C,MAAMC,WAAW,AAAC,CAAA,MAAMC,IAAAA,0BAAgB,EAACF,QAAQG,QAAQ,CAAA,EAAGC,MAAM,CAChE,CAACC,UAAY,CAACL,QAAQM,MAAM,IAAID,QAAQE,KAAK;IAE/C,IAAIP,QAAQQ,IAAI,EAAE;QAChBC,QAAQC,MAAM,CAACC,KAAK,CAAC,GAAGC,KAAKC,SAAS,CAACZ,UAAU,MAAM,GAAG,EAAE,CAAC;QAC7D;IACF;IACAQ,QAAQC,MAAM,CAACC,KAAK,CAACG,gBAAK,CAACC,IAAI,CAAC,uDAAuD;IACvF,KAAK,MAAMV,WAAWJ,SAAU;QAC9B,MAAM,EAAEe,QAAQ,EAAE,GAAGX;QACrB,MAAMY,QAAQZ,QAAQE,KAAK,IAAIS,SAASC,KAAK,KAAK;QAClDR,QAAQC,MAAM,CAACC,KAAK,CAClB;YACEN,QAAQa,GAAG;YACXb,QAAQE,KAAK,GAAGO,gBAAK,CAACK,KAAK,CAAC,WAAWL,gBAAK,CAACM,GAAG,CAAC;YACjDN,gBAAK,CAACM,GAAG,CAAC,IAAIC,KAAKhB,QAAQiB,SAAS,EAAEC,WAAW;YACjDT,gBAAK,CAACC,IAAI,CAACV,QAAQmB,OAAO,CAACC,KAAK,CAAC,QAAQC,MAAM;YAC/CZ,gBAAK,CAACM,GAAG,CAAC,OAAOJ,SAASW,WAAW,KAAK,WAAWX,SAASW,WAAW,GAAGtB,QAAQuB,GAAG;YACvFX,SAAS,OAAOD,SAASa,IAAI,KAAK,WAAWf,gBAAK,CAACgB,IAAI,CAACd,SAASa,IAAI,IAAIf,gBAAK,CAACM,GAAG,CAAC;YACnFH,SAAS,OAAOD,SAASe,YAAY,KAAK,WACtCjB,gBAAK,CAACkB,SAAS,CAAChB,SAASe,YAAY,IACrCjB,gBAAK,CAACM,GAAG,CAAC;SACf,CACEa,GAAG,CAACC,WACJC,IAAI,CAAC,QAAQ;IAEpB;AACF;AAEA,SAASD,UAAUE,KAAc;IAC/B,OAAOC,OAAOD,OACXE,OAAO,CAAC,OAAO,QACfA,OAAO,CAAC,OAAO,OACfA,OAAO,CAAC,OAAO,OACfA,OAAO,CAAC,OAAO;AACpB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "resolveOptions", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return resolveOptions;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _utils = require("../utils");
|
|
12
|
+
function resolveOptions(args, positionals) {
|
|
13
|
+
return {
|
|
14
|
+
selector: (0, _utils.resolveSelector)(positionals),
|
|
15
|
+
active: !!args.active,
|
|
16
|
+
json: !!args.json
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=resolveOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/ps/resolveOptions.ts"],"sourcesContent":[null],"names":["resolveOptions","args","positionals","selector","resolveSelector","active","json"],"mappings":";;;;+BAQgBA;;;eAAAA;;;uBARgB;AAQzB,SAASA,eACdC,IAA0C,EAC1CC,WAAqB;IAErB,OAAO;QACLC,UAAUC,IAAAA,sBAAe,EAACF;QAC1BG,QAAQ,CAAC,CAACJ,KAAKI,MAAM;QACrBC,MAAM,CAAC,CAACL,KAAKK,IAAI;IACnB;AACF"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type ListedSession } from '2g/api';
|
|
2
|
+
/** Expo installs the logger with an explicit `expo <command>` label. */
|
|
3
|
+
export declare function listExpoSessions(selector?: string): Promise<ListedSession[]>;
|
|
4
|
+
export declare function resolveExpoSession(selector?: string): Promise<ListedSession>;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
0 && (module.exports = {
|
|
6
|
+
listExpoSessions: null,
|
|
7
|
+
resolveExpoSession: null
|
|
8
|
+
});
|
|
9
|
+
function _export(target, all) {
|
|
10
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
_export(exports, {
|
|
16
|
+
get listExpoSessions () {
|
|
17
|
+
return listExpoSessions;
|
|
18
|
+
},
|
|
19
|
+
get resolveExpoSession () {
|
|
20
|
+
return resolveExpoSession;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
function _api() {
|
|
24
|
+
const data = require("2g/api");
|
|
25
|
+
_api = function() {
|
|
26
|
+
return data;
|
|
27
|
+
};
|
|
28
|
+
return data;
|
|
29
|
+
}
|
|
30
|
+
async function listExpoSessions(selector) {
|
|
31
|
+
const sessions = (await (0, _api().list)()).filter((session)=>session.command.startsWith('expo ') && session.command !== 'expo command' && !session.command.startsWith('expo command:'));
|
|
32
|
+
const input = selector?.trim();
|
|
33
|
+
if (!input) return sessions;
|
|
34
|
+
// Match like 2g, but only let Expo sessions take precedence over substring matches.
|
|
35
|
+
const exact = sessions.filter((session)=>sessionSearchValues(session).includes(input));
|
|
36
|
+
if (exact.length) return exact;
|
|
37
|
+
const normalized = input.toLowerCase();
|
|
38
|
+
return sessions.filter((session)=>sessionSearchValues(session).some((value)=>value.toLowerCase().includes(normalized)));
|
|
39
|
+
}
|
|
40
|
+
function sessionSearchValues(session) {
|
|
41
|
+
return [
|
|
42
|
+
session.id,
|
|
43
|
+
String(session.pid),
|
|
44
|
+
session.sessionDir,
|
|
45
|
+
session.cwd,
|
|
46
|
+
session.command,
|
|
47
|
+
session.origin?.cwd,
|
|
48
|
+
session.origin?.argv.join(' '),
|
|
49
|
+
session.origin?.execPath,
|
|
50
|
+
session.origin?.env?.npmLifecycleEvent,
|
|
51
|
+
session.origin?.env?.npmPackageName
|
|
52
|
+
].filter((value)=>!!value);
|
|
53
|
+
}
|
|
54
|
+
async function resolveExpoSession(selector) {
|
|
55
|
+
const sessions = await listExpoSessions(selector);
|
|
56
|
+
const active = sessions.filter((session)=>session.alive);
|
|
57
|
+
if (sessions.length === 1) return sessions[0];
|
|
58
|
+
if (active.length === 1) return active[0];
|
|
59
|
+
const match = selector ? ` matching ${JSON.stringify(selector)}` : '';
|
|
60
|
+
if (!sessions.length) {
|
|
61
|
+
throw new Error(`No Expo CLI sessions found${match}. Run \`npx expo command:ps --json\` to list sessions.`);
|
|
62
|
+
}
|
|
63
|
+
const candidates = active.length ? active : sessions;
|
|
64
|
+
const omitted = sessions.length - candidates.length;
|
|
65
|
+
throw new Error(`Ambiguous Expo CLI session${match}; specify a session ID or PID:\n` + candidates.map(formatSessionCandidate).join('\n') + (omitted ? `\n\n${omitted} matching stopped session${omitted === 1 ? '' : 's'} omitted.` : '') + '\nRun `npx expo command:ps --json` to list all sessions.');
|
|
66
|
+
}
|
|
67
|
+
function formatSessionCandidate(session) {
|
|
68
|
+
const { metadata } = session;
|
|
69
|
+
const details = [
|
|
70
|
+
`PID ${session.pid}`,
|
|
71
|
+
session.alive ? 'alive' : 'exited',
|
|
72
|
+
session.command.slice('expo '.length),
|
|
73
|
+
!session.alive && `started ${new Date(session.startedAt).toISOString()}`,
|
|
74
|
+
metadata.ready === true && typeof metadata.port === 'number' && `${session.alive ? 'port' : 'last port'} ${metadata.port}`,
|
|
75
|
+
JSON.stringify(typeof metadata.projectRoot === 'string' ? metadata.projectRoot : session.cwd)
|
|
76
|
+
];
|
|
77
|
+
return ` ${session.id} (${details.filter(Boolean).join(', ')})`;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
//# sourceMappingURL=sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["command/sessions.ts"],"sourcesContent":[null],"names":["listExpoSessions","resolveExpoSession","selector","sessions","list","filter","session","command","startsWith","input","trim","exact","sessionSearchValues","includes","length","normalized","toLowerCase","some","value","id","String","pid","sessionDir","cwd","origin","argv","join","execPath","env","npmLifecycleEvent","npmPackageName","active","alive","match","JSON","stringify","Error","candidates","omitted","map","formatSessionCandidate","metadata","details","slice","Date","startedAt","toISOString","ready","port","projectRoot","Boolean"],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare function installOutputErrorHandler(): void;
|
|
2
|
+
export declare function handleOutputError(error: NodeJS.ErrnoException): void;
|
|
3
|
+
/** Keep stdout machine-readable and errors concise, like 2g's commands. */
|
|
4
|
+
export declare function reportError(error: unknown): void;
|
|
5
|
+
export declare function resolveSelector(positionals: string[]): string | undefined;
|