@shopify/shop-minis-cli 0.0.206 → 0.0.208
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/commands/config.js +63 -7
- package/build/commands/config.js.map +1 -1
- package/build/commands/dev/index.js +2 -2
- package/build/commands/dev/index.js.map +1 -1
- package/build/commands/dev/utils/android.js +26 -3
- package/build/commands/dev/utils/android.js.map +1 -1
- package/build/commands/dev/utils/deeplink.d.ts +2 -1
- package/build/commands/dev/utils/deeplink.js +12 -3
- package/build/commands/dev/utils/deeplink.js.map +1 -1
- package/build/commands/dev/utils/interactive-terminal.d.ts +5 -1
- package/build/commands/dev/utils/interactive-terminal.js +97 -33
- package/build/commands/dev/utils/interactive-terminal.js.map +1 -1
- package/build/commands/dev/utils/resolve-dev-host.d.ts +3 -0
- package/build/commands/dev/utils/resolve-dev-host.js +43 -0
- package/build/commands/dev/utils/resolve-dev-host.js.map +1 -0
- package/build/dev-panel/asset-manifest.json +3 -3
- package/build/dev-panel/index.html +1 -1
- package/build/dev-panel/static/js/{main.ba2ae9be.js → main.16836d2d.js} +3 -3
- package/build/dev-panel/static/js/{main.ba2ae9be.js.map → main.16836d2d.js.map} +1 -1
- package/package.json +1 -1
- /package/build/dev-panel/static/js/{main.ba2ae9be.js.LICENSE.txt → main.16836d2d.js.LICENSE.txt} +0 -0
package/build/commands/config.js
CHANGED
|
@@ -1,15 +1,67 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
|
+
import os from 'node:os';
|
|
2
3
|
import path from 'node:path';
|
|
3
4
|
import { existsSync, mkdirSync } from 'node:fs';
|
|
4
5
|
import * as dotenv from 'dotenv';
|
|
5
6
|
dotenv.config();
|
|
6
|
-
|
|
7
|
+
function expandHomeDirectory(value) {
|
|
8
|
+
if (!value || !value.startsWith('~')) {
|
|
9
|
+
return value;
|
|
10
|
+
}
|
|
11
|
+
const homeDir = process.env.HOME || process.env.USERPROFILE || os.homedir?.();
|
|
12
|
+
if (!homeDir) {
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
15
|
+
if (value === '~') {
|
|
16
|
+
return homeDir;
|
|
17
|
+
}
|
|
18
|
+
const remainder = value.slice(1).replace(/^[\\/]+/, '');
|
|
19
|
+
return remainder ? path.join(homeDir, remainder) : homeDir;
|
|
20
|
+
}
|
|
7
21
|
export function whichAndroidHome() {
|
|
8
|
-
|
|
9
|
-
|
|
22
|
+
const androidHome = expandHomeDirectory(process.env.ANDROID_HOME);
|
|
23
|
+
if (androidHome && existsSync(androidHome)) {
|
|
24
|
+
return androidHome;
|
|
25
|
+
}
|
|
26
|
+
const androidSdkRoot = expandHomeDirectory(process.env.ANDROID_SDK_ROOT);
|
|
27
|
+
if (androidSdkRoot && existsSync(androidSdkRoot)) {
|
|
28
|
+
return androidSdkRoot;
|
|
29
|
+
}
|
|
30
|
+
const platform = process.platform;
|
|
31
|
+
const home = process.env.HOME || process.env.USERPROFILE || os.homedir?.();
|
|
32
|
+
if (platform === 'win32') {
|
|
33
|
+
const candidates = [
|
|
34
|
+
process.env.LOCALAPPDATA &&
|
|
35
|
+
path.join(process.env.LOCALAPPDATA, 'Android', 'Sdk'),
|
|
36
|
+
process.env.ProgramFiles &&
|
|
37
|
+
path.join(process.env.ProgramFiles, 'Android', 'Sdk'),
|
|
38
|
+
process.env['ProgramFiles(x86)'] &&
|
|
39
|
+
path.join(process.env['ProgramFiles(x86)'], 'Android', 'Sdk'),
|
|
40
|
+
].filter(Boolean);
|
|
41
|
+
for (const candidate of candidates) {
|
|
42
|
+
if (existsSync(candidate)) {
|
|
43
|
+
return candidate;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
if (platform === 'darwin') {
|
|
49
|
+
const macAndroidHome = home
|
|
50
|
+
? path.join(home, 'Library', 'Android', 'sdk')
|
|
51
|
+
: null;
|
|
52
|
+
if (macAndroidHome && existsSync(macAndroidHome)) {
|
|
53
|
+
return macAndroidHome;
|
|
54
|
+
}
|
|
55
|
+
return null;
|
|
10
56
|
}
|
|
11
|
-
|
|
12
|
-
|
|
57
|
+
const linuxCandidates = [
|
|
58
|
+
home && path.join(home, 'Android', 'Sdk'),
|
|
59
|
+
'/opt/android-sdk',
|
|
60
|
+
].filter(Boolean);
|
|
61
|
+
for (const candidate of linuxCandidates) {
|
|
62
|
+
if (existsSync(candidate)) {
|
|
63
|
+
return candidate;
|
|
64
|
+
}
|
|
13
65
|
}
|
|
14
66
|
return null;
|
|
15
67
|
}
|
|
@@ -17,10 +69,14 @@ export function androidHomeExists() {
|
|
|
17
69
|
return Boolean(whichAndroidHome());
|
|
18
70
|
}
|
|
19
71
|
export function whichEmulator() {
|
|
20
|
-
|
|
72
|
+
const sdk = whichAndroidHome();
|
|
73
|
+
const binary = process.platform === 'win32' ? 'emulator.exe' : 'emulator';
|
|
74
|
+
return sdk ? path.join(sdk, 'emulator', binary) : binary;
|
|
21
75
|
}
|
|
22
76
|
export function whichAdb() {
|
|
23
|
-
|
|
77
|
+
const sdk = whichAndroidHome();
|
|
78
|
+
const binary = process.platform === 'win32' ? 'adb.exe' : 'adb';
|
|
79
|
+
return sdk ? path.join(sdk, 'platform-tools', binary) : binary;
|
|
24
80
|
}
|
|
25
81
|
export const CURRENT_CLI_VERSION = createRequire(import.meta.url)('../../package.json').version;
|
|
26
82
|
export const PATHS = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAA;AACzC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,SAAS,CAAA;AAE7C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAEhC,MAAM,CAAC,MAAM,EAAE,CAAA;AAEf,MAAM,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ import ngrok from '@ngrok/ngrok';
|
|
|
4
4
|
import { Command, Option } from 'commander';
|
|
5
5
|
import connect from 'connect';
|
|
6
6
|
import serve from 'serve-static';
|
|
7
|
-
import internalIp from 'internal-ip';
|
|
8
7
|
import _ from 'lodash';
|
|
9
8
|
import { AbortError, handler as handleError } from '@shopify/cli-kit/node/error';
|
|
10
9
|
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
@@ -15,6 +14,7 @@ import { DEV_SERVER_PORT } from '../../constants/dev-server.js';
|
|
|
15
14
|
import { InteractiveTerminal } from './utils/interactive-terminal.js';
|
|
16
15
|
import { BuildType } from './types.js';
|
|
17
16
|
import { createWebServer } from './utils/web-server.js';
|
|
17
|
+
import { resolveDevHost } from './utils/resolve-dev-host.js';
|
|
18
18
|
function devPanelMiddleware(...args) {
|
|
19
19
|
const indexFilePath = path.join(process.cwd(), 'node_modules', '@shopify', 'shop-minis-cli', 'build', 'dev-panel');
|
|
20
20
|
return serve(indexFilePath)(...args);
|
|
@@ -33,7 +33,7 @@ async function createDevPanelServer() {
|
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
35
|
export async function loadCommand(parentProgram) {
|
|
36
|
-
const ip = await
|
|
36
|
+
const ip = await resolveDevHost();
|
|
37
37
|
const command = new Command()
|
|
38
38
|
.name('dev')
|
|
39
39
|
.description('Start a local development server.')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/dev/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,IAAI,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/dev/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { exec as execCb, spawn } from 'node:child_process';
|
|
2
|
+
import { promisify } from 'node:util';
|
|
2
3
|
import path from 'path';
|
|
3
4
|
import chalk from 'chalk';
|
|
4
5
|
import _ from 'lodash';
|
|
@@ -7,6 +8,7 @@ import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
|
7
8
|
import { execAsync } from '../../../utils/exec-async-child-process.js';
|
|
8
9
|
import { PATHS, whichAdb, whichEmulator } from '../../config.js';
|
|
9
10
|
import { withRetries } from './with-retries.js';
|
|
11
|
+
const exec = promisify(execCb);
|
|
10
12
|
export async function getDevices() {
|
|
11
13
|
const { stdout: devicesList } = await execAsync(`${whichAdb()} devices -l`);
|
|
12
14
|
return devicesList
|
|
@@ -164,10 +166,31 @@ async function getIdForEmulatorWithName(emulatorName) {
|
|
|
164
166
|
}
|
|
165
167
|
async function waitForEmulatorToBoot(emulatorId, timeout = 60 * 2 * 1000 // 2 minutes
|
|
166
168
|
) {
|
|
167
|
-
|
|
169
|
+
const start = Date.now();
|
|
170
|
+
try {
|
|
171
|
+
await exec(`${whichAdb()} -s ${emulatorId} wait-for-device`, {
|
|
172
|
+
timeout: Math.min(timeout, 30_000),
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
catch {
|
|
176
|
+
// The emulator might already be booting; ignore wait-for-device failures.
|
|
177
|
+
}
|
|
178
|
+
while (Date.now() - start < timeout) {
|
|
179
|
+
try {
|
|
180
|
+
const { stdout } = await exec(`${whichAdb()} -s ${emulatorId} shell getprop sys.boot_completed`);
|
|
181
|
+
if (stdout.trim().split(/\s+/)[0] === '1') {
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
// Ignore transient shell failures and retry.
|
|
187
|
+
}
|
|
188
|
+
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
189
|
+
}
|
|
190
|
+
throw new Error('Timed out waiting for emulator to boot');
|
|
168
191
|
}
|
|
169
192
|
function doLaunchEmulator(emulatorName) {
|
|
170
|
-
const emulatorProcess =
|
|
193
|
+
const emulatorProcess = spawn(whichEmulator(), [`@${emulatorName}`], {
|
|
171
194
|
stdio: 'ignore',
|
|
172
195
|
detached: true,
|
|
173
196
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"android.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/android.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"android.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,IAAI,MAAM,EAAE,KAAK,EAAC,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAC,SAAS,EAAC,MAAM,WAAW,CAAA;AACnC,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAC,SAAS,EAAC,MAAM,4CAA4C,CAAA;AACpE,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAA;AAE9D,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAA;AAE7C,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;AAU9B,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,EAAC,MAAM,EAAE,WAAW,EAAC,GAAG,MAAM,SAAS,CAAC,GAAG,QAAQ,EAAE,aAAa,CAAC,CAAA;IAEzE,OAAO,WAAW;SACf,KAAK,CAAC,CAAC,CAAC;SACR,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC1C,GAAG,CAAC,IAAI,CAAC,EAAE;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACzB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,4CAA4C;QAEpE,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,GAAG,QAAQ,WAAW;YACnC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,MAAM,KAAK,QAAQ;YAC7B,YAAY,EAAE,MAAM,KAAK,QAAQ;SACjB,CAAA;IACpB,CAAC,CAAC,CAAA;AACN,CAAC;AAED,KAAK,UAAU,uBAAuB;IACpC,IAAI;QACF,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,SAAS,CAAC,GAAG,QAAQ,EAAE,UAAU,CAAC,CAAA;QACzD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAA;QAC3E,MAAM,YAAY,GAAa,EAAE,CAAA;QAEjC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACpC,IAAI;gBACF,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACtE,IAAI,IAAI,EAAE;oBACR,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;iBACxB;aACF;YAAC,MAAM;gBACN,gCAAgC;aACjC;SACF;QAED,OAAO,YAAY,CAAA;KACpB;IAAC,MAAM;QACN,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,EAAC,MAAM,EAAE,WAAW,EAAC,GAAG,MAAM,SAAS,CAAC,GAAG,aAAa,EAAE,aAAa,CAAC,CAAA;IAC9E,MAAM,oBAAoB,GAAG,MAAM,uBAAuB,EAAE,CAAA;IAE5D,OAAO,WAAW,CAAC,GAAG,CACpB,IAAI,CAAC,EAAE,CACL,CAAC;QACC,IAAI;QACJ,WAAW,EAAE,GAAG,IAAI,aAAa;QACjC,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC7C,YAAY,EAAE,IAAI;KACnB,CAAkB,CACtB,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,MAAM,YAAY,EAAE,CAAA;IAEtC,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAChD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAA;QAC/D,OAAO,CAAC,GAAG,CACT,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAC9B,gEAAgE,CACjE,kEAAkE,CACpE,CAAA;QACD,OAAO,CAAC,GAAG,CACT,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAC7B,+DAA+D,CAChE,iDAAiD,CACnD,CAAA;QAED,OAAO,IAAI,CAAA;KACZ;IAED,wEAAwE;IACxE,MAAM,aAAa,GAAG;QACpB,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;QACnD,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;KACrD,CAAA;IAED,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,OAAO,CAAC;QAC5B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAA;YAC7D,OAAO;gBACL,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC/B,KAAK,EAAE,IAAI;aACZ,CAAA;QACH,CAAC,CAAC;QACF,OAAO,EAAE,CAAC,KAAU,EAAE,OAAY,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YACpC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAClE,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,YAAoB;IAC5D,IAAI,UAAU,GAAG,MAAM,wBAAwB,CAAC,YAAY,CAAC,CAAA,CAAC,2DAA2D;IACzH,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAA;KAClD;IACD,IAAI,UAAU,EAAE;QACd,MAAM,qBAAqB,CAAC,UAAU,CAAC,CAAA;KACxC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,UAAkB,EAClB,QAAgB;IAEhB,WAAW,CACT,oCAAoC,IAAI,CAAC,SAAS,CAAC,EAAC,UAAU,EAAE,QAAQ,EAAC,CAAC,EAAE,CAC7E,CAAA;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IACvD,MAAM,SAAS,CACb,GAAG,QAAQ,EAAE,OAAO,UAAU,mBAAmB,UAAU,GAAG,CAC/D,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAkB;IAC9D,IAAI;QACF,MAAM,WAAW,GAAG,MAAM,SAAS,CACjC,GAAG,QAAQ,EAAE,OAAO,UAAU,uEAAuE,CACtG,CAAA;QAED,MAAM,WAAW,GAAG,MAAM,SAAS,CACjC,GAAG,QAAQ,EAAE,OAAO,UAAU,uEAAuE,CACtG,CAAA;QAED,sCAAsC;QACtC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;QAEhE,iEAAiE;QACjE,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAClB,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CACxD,CAAA;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;YACpC,OAAO,IAAI,CAAA;SACZ;QAED,OAAO;YACL,OAAO;YACP,KAAK;SACN,CAAA;KACF;IAAC,MAAM;QACN,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,UAAkB;IAC/D,MAAM,SAAS,CAAC,GAAG,QAAQ,EAAE,OAAO,UAAU,4BAA4B,CAAC,CAAA;AAC7E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,UAAkB,EAClB,gBAAwB;IAExB,MAAM,wBAAwB,CAAC,UAAU,CAAC,CAAA;IAE1C,IAAI,QAAQ,GAAG,gBAAgB,CAAA;IAE/B,qEAAqE;IACrE,uCAAuC;IACvC,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACxC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE;QACrB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;QAChC,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;QACxD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;aAC1D,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;aACxC,IAAI,CAAC,KAAK,CAAC,CAAA;QACd,QAAQ,GAAG,GAAG,cAAc,IAAI,WAAW,EAAE,CAAA;KAC9C;IAED,MAAM,SAAS,CACb,GAAG,QAAQ,EAAE,OAAO,UAAU,qDAAqD,QAAQ,GAAG,CAC/F,CAAA;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,UAAkB;IACxD,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,SAAS,CAC9B,GAAG,QAAQ,EAAE,OAAO,UAAU,eAAe,CAC9C,CAAA;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;AAClB,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,YAAoB;IAC1D,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,SAAS,CAAC,GAAG,QAAQ,EAAE,UAAU,CAAC,CAAA;IACzD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAA;IAC3E,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;QACpC,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,UAAU,CAAC,CAAA;QACvD,IAAI,IAAI,KAAK,YAAY,EAAE;YACzB,OAAO,UAAU,CAAA;SAClB;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,UAAkB,EAClB,UAAkB,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY;;IAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACxB,IAAI;QACF,MAAM,IAAI,CAAC,GAAG,QAAQ,EAAE,OAAO,UAAU,kBAAkB,EAAE;YAC3D,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC;SACnC,CAAC,CAAA;KACH;IAAC,MAAM;QACN,0EAA0E;KAC3E;IAED,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,OAAO,EAAE;QACnC,IAAI;YACF,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,IAAI,CACzB,GAAG,QAAQ,EAAE,OAAO,UAAU,mCAAmC,CAClE,CAAA;YACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBACzC,OAAM;aACP;SACF;QAAC,MAAM;YACN,6CAA6C;SAC9C;QAED,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;KACxD;IAED,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;AAC3D,CAAC;AAED,SAAS,gBAAgB,CAAC,YAAoB;IAC5C,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,EAAE;QACnE,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,IAAI;KACf,CAAC,CAAA;IACF,eAAe,CAAC,KAAK,EAAE,CAAA;IAEvB,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACpD,WAAW,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;aACtD,IAAI,CAAC,OAAO,CAAC;aACb,KAAK,CAAC,MAAM,CAAC;aACb,OAAO,CAAC,GAAG,EAAE;YACZ,eAAe,CAAC,kBAAkB,EAAE,CAAA;QACtC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAElB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAC,OAAO,EAAC,EAAE,EAAE;YACxC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;YAC1B,eAAe,CAAC,kBAAkB,EAAE,CAAA;QACtC,CAAC,CAAC,CAAA;QAEF,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YAC9B,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;YACtD,eAAe,CAAC,kBAAkB,EAAE,CAAA;QACtC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import ngrok from '@ngrok/ngrok';
|
|
2
2
|
import { DevCommandOptions } from '../types.js';
|
|
3
3
|
export declare function getDevWebUrl(host: string, tunnelListener?: ngrok.Listener): string;
|
|
4
|
-
export declare function getDevWebMiniDeeplink({ miniHandle, options, universalLink, tunnelListener, }: {
|
|
4
|
+
export declare function getDevWebMiniDeeplink({ miniHandle, options, universalLink, tunnelListener, path, }: {
|
|
5
5
|
miniHandle: string;
|
|
6
6
|
options: DevCommandOptions;
|
|
7
7
|
universalLink?: boolean;
|
|
8
8
|
redirect?: string;
|
|
9
9
|
tunnelListener?: ngrok.Listener;
|
|
10
|
+
path?: string;
|
|
10
11
|
}): string;
|
|
@@ -7,7 +7,7 @@ export function getDevWebUrl(host, tunnelListener) {
|
|
|
7
7
|
}
|
|
8
8
|
return `http://${host}:${DEV_SERVER_PORT}`;
|
|
9
9
|
}
|
|
10
|
-
export function getDevWebMiniDeeplink({ miniHandle, options, universalLink = false, tunnelListener, }) {
|
|
10
|
+
export function getDevWebMiniDeeplink({ miniHandle, options, universalLink = false, tunnelListener, path, }) {
|
|
11
11
|
const devServerUrl = getDevWebUrl(options.host, tunnelListener);
|
|
12
12
|
const devParams = {
|
|
13
13
|
devServerUrl,
|
|
@@ -17,9 +17,18 @@ export function getDevWebMiniDeeplink({ miniHandle, options, universalLink = fal
|
|
|
17
17
|
scopes: getMiniManifest()?.scopes ?? undefined,
|
|
18
18
|
};
|
|
19
19
|
const encodedDevParams = Buffer.from(JSON.stringify(devParams)).toString('base64');
|
|
20
|
+
// Normalize path: remove leading slash if present
|
|
21
|
+
let normalizedPath = '';
|
|
22
|
+
if (path && path !== '/') {
|
|
23
|
+
normalizedPath = path.startsWith('/') ? path.slice(1) : path;
|
|
24
|
+
}
|
|
25
|
+
// Build the base deeplink with optional path
|
|
26
|
+
const miniPath = normalizedPath
|
|
27
|
+
? `${miniHandle}/${normalizedPath}`
|
|
28
|
+
: miniHandle;
|
|
20
29
|
const deeplink = universalLink
|
|
21
|
-
? `https://shop.app/mini/${
|
|
22
|
-
: `shopapp://mini/${
|
|
30
|
+
? `https://shop.app/mini/${miniPath}?devParams=${encodedDevParams}`
|
|
31
|
+
: `shopapp://mini/${miniPath}?devParams=${encodedDevParams}`;
|
|
23
32
|
outputDebug(`Development Mode Web MiniDeeplink: ${deeplink}`);
|
|
24
33
|
return deeplink;
|
|
25
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deeplink.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/deeplink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAGxD,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAEhE,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAEhE,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,cAA+B;IACxE,IAAI,cAAc,EAAE;QAClB,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,EAAE,CAAA;KACjC;IAED,OAAO,UAAU,IAAI,IAAI,eAAe,EAAE,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,EACpC,UAAU,EACV,OAAO,EACP,aAAa,GAAG,KAAK,EACrB,cAAc,
|
|
1
|
+
{"version":3,"file":"deeplink.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/deeplink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAGxD,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAEhE,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAEhE,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,cAA+B;IACxE,IAAI,cAAc,EAAE;QAClB,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,EAAE,CAAA;KACjC;IAED,OAAO,UAAU,IAAI,IAAI,eAAe,EAAE,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,EACpC,UAAU,EACV,OAAO,EACP,aAAa,GAAG,KAAK,EACrB,cAAc,EACd,IAAI,GAQL;IACC,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAE/D,MAAM,SAAS,GAAG;QAChB,YAAY;QACZ,QAAQ,EAAE,eAAe,EAAE,EAAE,QAAQ,IAAI,SAAS;QAClD,cAAc,EAAE,eAAe,EAAE,EAAE,eAAe,IAAI,SAAS;QAC/D,WAAW,EAAE,eAAe,EAAE,EAAE,WAAW,IAAI,SAAS;QACxD,MAAM,EAAE,eAAe,EAAE,EAAE,MAAM,IAAI,SAAS;KAC/C,CAAA;IAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CACtE,QAAQ,CACT,CAAA;IAED,kDAAkD;IAClD,IAAI,cAAc,GAAG,EAAE,CAAA;IACvB,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,EAAE;QACxB,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;KAC7D;IAED,6CAA6C;IAC7C,MAAM,QAAQ,GAAG,cAAc;QAC7B,CAAC,CAAC,GAAG,UAAU,IAAI,cAAc,EAAE;QACnC,CAAC,CAAC,UAAU,CAAA;IAEd,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,yBAAyB,QAAQ,cAAc,gBAAgB,EAAE;QACnE,CAAC,CAAC,kBAAkB,QAAQ,cAAc,gBAAgB,EAAE,CAAA;IAE9D,WAAW,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAA;IAE7D,OAAO,QAAQ,CAAA;AACjB,CAAC"}
|
|
@@ -21,7 +21,11 @@ export declare class InteractiveTerminal {
|
|
|
21
21
|
start(): void;
|
|
22
22
|
handleKeyPressWrapped: (key: string) => Promise<void>;
|
|
23
23
|
handleKeyPress: (key: string) => Promise<void>;
|
|
24
|
+
private prepareDevice;
|
|
25
|
+
private promptForPath;
|
|
26
|
+
private promptForPlatform;
|
|
24
27
|
showSetupAndroidHomeInstructions(): Promise<void>;
|
|
25
28
|
private startApp;
|
|
26
|
-
private
|
|
29
|
+
private getDeeplink;
|
|
30
|
+
private getDeeplinkForQRCode;
|
|
27
31
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import os from 'node:os';
|
|
2
2
|
import { spawn } from 'child_process';
|
|
3
3
|
import { get } from 'http';
|
|
4
|
+
import prompts from 'prompts';
|
|
4
5
|
import WebSocket from 'ws';
|
|
5
6
|
import chalk from 'chalk';
|
|
6
7
|
import open from 'open';
|
|
@@ -71,6 +72,7 @@ export class InteractiveTerminal {
|
|
|
71
72
|
`› Press ${chalk.cyan.bold(`i`)} │ Open in iOS simulator`,
|
|
72
73
|
];
|
|
73
74
|
instructions.push(`› Press ${chalk.cyan.bold(`q`)} │ Open on iOS device using a QR code`);
|
|
75
|
+
instructions.push(`› Press ${chalk.cyan.bold(`d`)} │ Deeplink to a specific path`);
|
|
74
76
|
if (process.platform === 'darwin') {
|
|
75
77
|
instructions.push(`› Press ${chalk.cyan.bold(`j`)} │ Launch Google Chrome DevTools`);
|
|
76
78
|
instructions.push(`› Press ${chalk.cyan.bold(`s`)} │ Launch Safari Web Inspector`);
|
|
@@ -105,47 +107,47 @@ export class InteractiveTerminal {
|
|
|
105
107
|
}
|
|
106
108
|
case 'a': {
|
|
107
109
|
clearTerminal();
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}
|
|
112
|
-
const device = await promptForAndroidDevices();
|
|
113
|
-
if (device) {
|
|
114
|
-
if (device.type === 'emulator') {
|
|
115
|
-
this.loadingHandlers.loadingStart('Launching emulator');
|
|
116
|
-
const emulatorId = await maybeLaunchEmulator(device.name);
|
|
117
|
-
if (!emulatorId) {
|
|
118
|
-
this.loadingHandlers.loadingEnd('fail', `Couldn't launch emulator ${device.name}`);
|
|
119
|
-
break;
|
|
120
|
-
}
|
|
121
|
-
await this.startApp(Platform.Android, emulatorId);
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
await this.startApp(Platform.Android, device.name);
|
|
125
|
-
}
|
|
110
|
+
const deviceId = await this.prepareDevice(Platform.Android);
|
|
111
|
+
if (deviceId) {
|
|
112
|
+
await this.startApp(Platform.Android, deviceId);
|
|
126
113
|
}
|
|
127
114
|
break;
|
|
128
115
|
}
|
|
129
116
|
case 'i': {
|
|
130
117
|
clearTerminal();
|
|
131
|
-
const
|
|
132
|
-
if (
|
|
133
|
-
this.
|
|
134
|
-
await bootSimulator(simulator.udid);
|
|
135
|
-
await this.startApp(Platform.IOS, simulator.udid);
|
|
118
|
+
const deviceId = await this.prepareDevice(Platform.IOS);
|
|
119
|
+
if (deviceId) {
|
|
120
|
+
await this.startApp(Platform.IOS, deviceId);
|
|
136
121
|
}
|
|
137
122
|
else {
|
|
138
|
-
this.waitForAnyKeyAndPrintInstructions();
|
|
123
|
+
await this.waitForAnyKeyAndPrintInstructions();
|
|
139
124
|
}
|
|
140
125
|
break;
|
|
141
126
|
}
|
|
127
|
+
case 'd': {
|
|
128
|
+
clearTerminal();
|
|
129
|
+
const path = await this.promptForPath();
|
|
130
|
+
if (path === null) {
|
|
131
|
+
await this.waitForAnyKeyAndPrintInstructions();
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
const platform = await this.promptForPlatform();
|
|
135
|
+
if (!platform) {
|
|
136
|
+
await this.waitForAnyKeyAndPrintInstructions();
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
const deviceId = await this.prepareDevice(platform);
|
|
140
|
+
if (deviceId) {
|
|
141
|
+
await this.startApp(platform, deviceId, path);
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
console.log('\nNo device selected');
|
|
145
|
+
}
|
|
146
|
+
await this.waitForAnyKeyAndPrintInstructions();
|
|
147
|
+
break;
|
|
148
|
+
}
|
|
142
149
|
case 'q': {
|
|
143
|
-
const deeplink =
|
|
144
|
-
miniHandle: this.miniHandle,
|
|
145
|
-
options: this.options,
|
|
146
|
-
universalLink: true,
|
|
147
|
-
tunnelListener: this.tunnelListener,
|
|
148
|
-
});
|
|
150
|
+
const deeplink = this.getDeeplinkForQRCode();
|
|
149
151
|
if (!deeplink) {
|
|
150
152
|
return;
|
|
151
153
|
}
|
|
@@ -258,12 +260,65 @@ ${formattedVersion}`);
|
|
|
258
260
|
}
|
|
259
261
|
}
|
|
260
262
|
};
|
|
263
|
+
async prepareDevice(platform) {
|
|
264
|
+
if (platform === Platform.IOS) {
|
|
265
|
+
const simulator = await promptForSimulator();
|
|
266
|
+
if (simulator) {
|
|
267
|
+
this.loadingHandlers.loadingStart('Booting simulator');
|
|
268
|
+
await bootSimulator(simulator.udid);
|
|
269
|
+
return simulator.udid;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
if (!androidHomeExists()) {
|
|
274
|
+
this.showSetupAndroidHomeInstructions();
|
|
275
|
+
return null;
|
|
276
|
+
}
|
|
277
|
+
const device = await promptForAndroidDevices();
|
|
278
|
+
if (device) {
|
|
279
|
+
if (device.type === 'emulator') {
|
|
280
|
+
this.loadingHandlers.loadingStart('Launching emulator');
|
|
281
|
+
const emulatorId = await maybeLaunchEmulator(device.name);
|
|
282
|
+
if (!emulatorId) {
|
|
283
|
+
this.loadingHandlers.loadingEnd('fail', `Couldn't launch emulator ${device.name}`);
|
|
284
|
+
return null;
|
|
285
|
+
}
|
|
286
|
+
return emulatorId;
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
return device.name;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
return null;
|
|
294
|
+
}
|
|
295
|
+
async promptForPath() {
|
|
296
|
+
const { path } = await prompts({
|
|
297
|
+
type: 'text',
|
|
298
|
+
name: 'path',
|
|
299
|
+
message: 'Enter path (leave empty for root)',
|
|
300
|
+
initial: '/',
|
|
301
|
+
});
|
|
302
|
+
return path || '/';
|
|
303
|
+
}
|
|
304
|
+
async promptForPlatform() {
|
|
305
|
+
const { platform } = await prompts({
|
|
306
|
+
type: 'select',
|
|
307
|
+
name: 'platform',
|
|
308
|
+
message: 'Select platform',
|
|
309
|
+
choices: [
|
|
310
|
+
{ title: 'iOS Simulator', value: Platform.IOS },
|
|
311
|
+
{ title: 'Android Device/Emulator', value: Platform.Android },
|
|
312
|
+
],
|
|
313
|
+
});
|
|
314
|
+
return platform || null;
|
|
315
|
+
}
|
|
261
316
|
async showSetupAndroidHomeInstructions() {
|
|
262
317
|
console.warn(chalk.red("ANDROID_HOME environment variable is not set. Set Android SDK path to continue. Instructions on how to set it can be found on Android's developer docs."));
|
|
263
318
|
console.log(`See ${chalk.blue.underline.bold('https://developer.android.com/studio/command-line/variables')}`);
|
|
264
319
|
await this.waitForAnyKeyAndPrintInstructions();
|
|
265
320
|
}
|
|
266
|
-
async startApp(platform, deviceId) {
|
|
321
|
+
async startApp(platform, deviceId, path) {
|
|
267
322
|
try {
|
|
268
323
|
this.currentPlatform = platform;
|
|
269
324
|
this.currentDeviceId = deviceId;
|
|
@@ -273,7 +328,7 @@ ${formattedVersion}`);
|
|
|
273
328
|
await startApp({
|
|
274
329
|
platform,
|
|
275
330
|
deviceId,
|
|
276
|
-
deeplink: this.
|
|
331
|
+
deeplink: this.getDeeplink(path),
|
|
277
332
|
buildType,
|
|
278
333
|
snapshotVersion,
|
|
279
334
|
upgradeDeclinedPlatforms: this.upgradeDeclinedPlatforms,
|
|
@@ -285,10 +340,19 @@ ${formattedVersion}`);
|
|
|
285
340
|
this.loadingHandlers.loadingEnd('fail', err?.message || err);
|
|
286
341
|
}
|
|
287
342
|
}
|
|
288
|
-
|
|
343
|
+
getDeeplink(path) {
|
|
344
|
+
return getDevWebMiniDeeplink({
|
|
345
|
+
miniHandle: this.miniHandle,
|
|
346
|
+
options: this.options,
|
|
347
|
+
path,
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
getDeeplinkForQRCode() {
|
|
289
351
|
return getDevWebMiniDeeplink({
|
|
290
352
|
miniHandle: this.miniHandle,
|
|
291
353
|
options: this.options,
|
|
354
|
+
universalLink: true,
|
|
355
|
+
tunnelListener: this.tunnelListener,
|
|
292
356
|
});
|
|
293
357
|
}
|
|
294
358
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-terminal.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/interactive-terminal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interactive-terminal.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/interactive-terminal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import os from 'node:os';
|
|
2
|
+
import internalIp from 'internal-ip';
|
|
3
|
+
import { outputDebug, outputWarn } from '@shopify/cli-kit/node/output';
|
|
4
|
+
function firstExternalIPv4() {
|
|
5
|
+
const interfaces = os.networkInterfaces();
|
|
6
|
+
for (const addresses of Object.values(interfaces)) {
|
|
7
|
+
if (!addresses)
|
|
8
|
+
continue;
|
|
9
|
+
for (const address of addresses) {
|
|
10
|
+
if (address &&
|
|
11
|
+
!address.internal &&
|
|
12
|
+
address.address &&
|
|
13
|
+
address.family === 'IPv4' &&
|
|
14
|
+
!address.address.startsWith('169.254.')) {
|
|
15
|
+
return address.address;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
export async function resolveDevHost() {
|
|
22
|
+
try {
|
|
23
|
+
const ip = await internalIp.v4();
|
|
24
|
+
if (ip) {
|
|
25
|
+
return ip;
|
|
26
|
+
}
|
|
27
|
+
outputDebug('internal-ip returned undefined; attempting fallback host detection');
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
outputDebug(`internal-ip lookup failed; attempting fallback host detection: ${error.message}`);
|
|
31
|
+
}
|
|
32
|
+
if (process.platform === 'win32') {
|
|
33
|
+
const fallback = firstExternalIPv4();
|
|
34
|
+
if (fallback) {
|
|
35
|
+
outputDebug(`Using networkInterfaces fallback host: ${fallback}`);
|
|
36
|
+
return fallback;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
outputWarn('Unable to detect a LAN IP address automatically. Defaulting host to localhost; override with --host <ip> if needed.');
|
|
40
|
+
return 'localhost';
|
|
41
|
+
}
|
|
42
|
+
export { firstExternalIPv4 as __testOnly_firstExternalIPv4 };
|
|
43
|
+
//# sourceMappingURL=resolve-dev-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-dev-host.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/resolve-dev-host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,OAAO,UAAU,MAAM,aAAa,CAAA;AACpC,OAAO,EAAC,WAAW,EAAE,UAAU,EAAC,MAAM,8BAA8B,CAAA;AAEpE,SAAS,iBAAiB;IACxB,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAA;IAEzC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;QACjD,IAAI,CAAC,SAAS;YAAE,SAAQ;QAExB,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;YAC/B,IACE,OAAO;gBACP,CAAC,OAAO,CAAC,QAAQ;gBACjB,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,MAAM,KAAK,MAAM;gBACzB,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EACvC;gBACA,OAAO,OAAO,CAAC,OAAO,CAAA;aACvB;SACF;KACF;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,IAAI;QACF,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,CAAA;QAChC,IAAI,EAAE,EAAE;YACN,OAAO,EAAE,CAAA;SACV;QACD,WAAW,CAAC,oEAAoE,CAAC,CAAA;KAClF;IAAC,OAAO,KAAK,EAAE;QACd,WAAW,CACT,kEAAmE,KAAe,CAAC,OAAO,EAAE,CAC7F,CAAA;KACF;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QAChC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAA;QACpC,IAAI,QAAQ,EAAE;YACZ,WAAW,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAA;YACjE,OAAO,QAAQ,CAAA;SAChB;KACF;IAED,UAAU,CACR,qHAAqH,CACtH,CAAA;IACD,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,OAAO,EAAC,iBAAiB,IAAI,4BAA4B,EAAC,CAAA"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"files": {
|
|
3
3
|
"main.css": "/dev-panel/static/css/main.5592bb60.css",
|
|
4
|
-
"main.js": "/dev-panel/static/js/main.
|
|
4
|
+
"main.js": "/dev-panel/static/js/main.16836d2d.js",
|
|
5
5
|
"index.html": "/dev-panel/index.html",
|
|
6
6
|
"main.5592bb60.css.map": "/dev-panel/static/css/main.5592bb60.css.map",
|
|
7
|
-
"main.
|
|
7
|
+
"main.16836d2d.js.map": "/dev-panel/static/js/main.16836d2d.js.map"
|
|
8
8
|
},
|
|
9
9
|
"entrypoints": [
|
|
10
10
|
"static/css/main.5592bb60.css",
|
|
11
|
-
"static/js/main.
|
|
11
|
+
"static/js/main.16836d2d.js"
|
|
12
12
|
]
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!doctype html><html lang="en"><head><meta charset="utf-8"/><title>Shop Mini - Dev Panel</title><link rel="icon" type="image/png" href="https://cdn.shopify.com/shopifycloud/arrive_website/assets/favicon-7859a5f629d44e86a6673fe8db1b39aac82398fd6df9de33c3b3382805a6c761.png"/><meta name="viewport" content="width=device-width,initial-scale=1"/><link rel="preconnect" href="https://cdn.shopify.com"/><script defer="defer" src="/dev-panel/static/js/main.
|
|
1
|
+
<!doctype html><html lang="en"><head><meta charset="utf-8"/><title>Shop Mini - Dev Panel</title><link rel="icon" type="image/png" href="https://cdn.shopify.com/shopifycloud/arrive_website/assets/favicon-7859a5f629d44e86a6673fe8db1b39aac82398fd6df9de33c3b3382805a6c761.png"/><meta name="viewport" content="width=device-width,initial-scale=1"/><link rel="preconnect" href="https://cdn.shopify.com"/><script defer="defer" src="/dev-panel/static/js/main.16836d2d.js"></script><link href="/dev-panel/static/css/main.5592bb60.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
|