stim 1.35.0 → 1.36.0
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/dist/{acquire-artifact-0E_iw7Rf.mjs → acquire-artifact-DGTHCd0Q.mjs} +19 -3
- package/dist/{act-CyxFP8Vj.mjs → act-CvN9xyV6.mjs} +18 -18
- package/dist/{activity-BQpJpAjA.mjs → activity-BpdDvA8Q.mjs} +4 -4
- package/dist/{agent-device-usage-output-BoOC3ZF9.mjs → agent-device-usage-output-pbhaW7_k.mjs} +4 -4
- package/dist/{android-B2DSKg-A.mjs → android-5wkcMFDG.mjs} +1 -1
- package/dist/{android-CjcJE7uA.mjs → android-B0qTdwnt.mjs} +5 -5
- package/dist/{android-Iq0M2t2d.mjs → android-SJx1V3R3.mjs} +5 -5
- package/dist/{android-cas-Dhcjkys1.mjs → android-cas-BS9_55U5.mjs} +4 -4
- package/dist/{android-YRb1UzSy.mjs → android-e9WP10cE.mjs} +47 -39
- package/dist/{android-image-DFk26aY6.mjs → android-image-BZ57YL6R.mjs} +2 -2
- package/dist/{android-project-DhO6el8N.d.mts → android-project-v_1nej_x.d.mts} +3 -1
- package/dist/api.d.mts +20 -6
- package/dist/api.mjs +31 -26
- package/dist/{apk-signed-tail-CPpA-3vu.mjs → apk-signed-tail-eZyXIrnc.mjs} +2 -2
- package/dist/{artifact-BG4h_WTC.mjs → artifact-C3srrGVU.mjs} +36 -14
- package/dist/{artifact-2NIRz6SC.mjs → artifact-ubNdxo_K.mjs} +43 -14
- package/dist/{auto-placement-CBdWa87P.mjs → auto-placement-CKFpFCuq.mjs} +7 -7
- package/dist/{browser-web-CNlRugJv.mjs → browser-web-B63vLrj6.mjs} +11 -11
- package/dist/{build-CNE3Wo5-.mjs → build-B_Dx9SKJ.mjs} +72 -24
- package/dist/{build-cache-_fkewiwH.mjs → build-cache-BW8T4oD2.mjs} +4 -4
- package/dist/{build-plan-BSgR9yKo.mjs → build-plan-CeIooJqn.mjs} +6 -6
- package/dist/{cache-manifest-8JX9S1QJ.mjs → cache-manifest-CxWkZmUr.mjs} +1 -1
- package/dist/cache-manifest.mjs +1 -1
- package/dist/{cli-DK24VzHi.mjs → cli-COdXswmc.mjs} +19 -18
- package/dist/cli.mjs +1 -1
- package/dist/{client-Dy0eJJtz.mjs → client-KSWIeQLA.mjs} +4 -4
- package/dist/collector-run.mjs +4 -4
- package/dist/{command-output-CGxrQ3Bd.mjs → command-output-T3cDctRE.mjs} +1 -1
- package/dist/{config-BW0fAtoK.mjs → config-BA3TgoIP.mjs} +59 -10
- package/dist/{dependencies-IVl2Ga2D.mjs → dependencies-LH-7k1Vr.mjs} +35 -35
- package/dist/{dependency-state-mL5g4H6K.mjs → dependency-state-Blfp3AkG.mjs} +1 -1
- package/dist/{dev-client-DDApoVvd.mjs → dev-client-MO_DjTZr.mjs} +2 -2
- package/dist/{device-p_cp8IzW.mjs → device-BZWt_aPJ.mjs} +11 -11
- package/dist/{device-mOFYiHiw.mjs → device-DNTWFFB1.mjs} +12 -12
- package/dist/{device-android-C-biM49_.mjs → device-android-BB9Lugr8.mjs} +8 -8
- package/dist/{device-capacity-C0PiTyRb.mjs → device-capacity-CpAVcKgq.mjs} +15 -15
- package/dist/device-host-worker.mjs +13 -13
- package/dist/{device-pool-nsMvt2X2.mjs → device-pool-BJToGG-q.mjs} +3 -3
- package/dist/{device-provision-BYYJuRKZ.mjs → device-provision-CxQDCtrc.mjs} +9 -9
- package/dist/{doctor-BBAb8NLe.mjs → doctor-C-46SkBe.mjs} +1 -1
- package/dist/{doctor-RosbBfTV.mjs → doctor-CYZ45LnX.mjs} +20 -20
- package/dist/{doctor-BptE4PaK.mjs → doctor-DV639Iw_.mjs} +15 -15
- package/dist/doctor-fingerprint.mjs +1 -1
- package/dist/{doctor-watchman-CKOnCINh.mjs → doctor-watchman-TZxYt_98.mjs} +4 -4
- package/dist/{eas-build-BxJdzQnF.mjs → eas-build-Xf5Jd6LR.mjs} +2 -2
- package/dist/{eas-fallback-DU2WDF8r.mjs → eas-fallback-DNYPNinw.mjs} +4 -4
- package/dist/{eas-session-ledger-DCUfh6m7.mjs → eas-session-ledger-CXZ4aix0.mjs} +5 -5
- package/dist/{error-diagnostics-D6wlK-yX.mjs → error-diagnostics-CvB5bpPU.mjs} +8 -8
- package/dist/{gc-CvMEytXz.mjs → gc-8Qm_K1iy.mjs} +2 -2
- package/dist/{gc-BUkonUfz.mjs → gc-DiUhrVFo.mjs} +17 -17
- package/dist/{guide-BWozWG7D.mjs → guide-CuvHRP53.mjs} +113 -56
- package/dist/{hosted-android-y6K3DKQT.mjs → hosted-android-D__HGVIO.mjs} +3 -3
- package/dist/{hosted-client-Bb89P6an.mjs → hosted-client-DMOOu8vD.mjs} +6 -6
- package/dist/{hosted-logs-DYPsnWMF.mjs → hosted-logs-CClIktQM.mjs} +6 -6
- package/dist/{hosted-logs-sync-DfUJ2GpF.mjs → hosted-logs-sync-B7XCeqVm.mjs} +5 -5
- package/dist/{hosted-macos-DsEzYVY_.mjs → hosted-macos-D4sDJIbB.mjs} +5 -5
- package/dist/{hosted-native-C9xQYYFb.mjs → hosted-native-BiiUG_Q6.mjs} +7 -7
- package/dist/{ios-BCKxjpRp.mjs → ios-BZuhvLGr.mjs} +8 -8
- package/dist/{ios-BdZdNsAj.mjs → ios-BhfpRfNf.mjs} +4 -4
- package/dist/{ios-FhMkDfNC.mjs → ios-BhpUWyN7.mjs} +39 -30
- package/dist/{ios-device-DMOnaH5n.mjs → ios-device-vhYL1N--.mjs} +1 -1
- package/dist/{ios-project-PXBDoaii.mjs → ios-project-Cz0S1Sz-.mjs} +7 -7
- package/dist/{ios-signing-CCFNjjWU.mjs → ios-signing-BcH88ecn.mjs} +1 -1
- package/dist/{ios-state-CWsBysyN.mjs → ios-state-Avwz2cbZ.mjs} +1 -1
- package/dist/{js-swap-07ikLRJJ.mjs → js-swap-Desu2iII.mjs} +4 -4
- package/dist/{launch-CTq5gBim.mjs → launch-6ckG9UrC.mjs} +19 -19
- package/dist/{lightened-DikgC3-S.mjs → lightened-B6TnpHMX.mjs} +4 -4
- package/dist/{logs-DwI3Rkpf.mjs → logs-B-DMy1K0.mjs} +7 -7
- package/dist/{logs-YDMfEohb.mjs → logs-CO0CJRiC.mjs} +5 -5
- package/dist/{macos-BoNM-l6f.mjs → macos-B1aCXhem.mjs} +19 -19
- package/dist/{macos-C_e9f5-5.mjs → macos-CduEmWAK.mjs} +1 -1
- package/dist/macos-run.mjs +1 -1
- package/dist/maintenance-run.mjs +5 -5
- package/dist/{metro-B5PVz0Wv.mjs → metro-DM3yJL1M.mjs} +2 -2
- package/dist/{metro-request-2LmFpC1z.mjs → metro-request-O8Q-JvBg.mjs} +1 -1
- package/dist/{named-ports-CA0nB9Yw.mjs → named-ports-BvB_CO9B.mjs} +2 -2
- package/dist/{native-android-Mv4YTrVN.mjs → native-android-28NOG2-y.mjs} +17 -17
- package/dist/{native-gradle-artifact-inputs-C_TU6wPq.mjs → native-gradle-artifact-inputs-DxVEtS6_.mjs} +3 -3
- package/dist/{native-runtime-oDqT4UES.mjs → native-runtime-C3_NkUlW.mjs} +6 -6
- package/dist/{native-xcode-inputs-DsozghTX.mjs → native-xcode-inputs-BWFTw5cJ.mjs} +2 -2
- package/dist/{native-xcode-ios-UXnH9NRY.mjs → native-xcode-ios-B4Qoc7-U.mjs} +16 -16
- package/dist/offload-worker.d.mts +1 -1
- package/dist/offload-worker.mjs +19 -19
- package/dist/{ownership-hC7xvvxF.mjs → ownership-C3y8wLSl.mjs} +2 -2
- package/dist/{phone-reverses-B9WyCBKQ.mjs → phone-reverses-BhSxbqom.mjs} +4 -4
- package/dist/{placement-log-D0DZLcJk.mjs → placement-log-B8RCSzOm.mjs} +1 -1
- package/dist/{plan-placement-DqmLrWoX.mjs → plan-placement-BI4r55aP.mjs} +6 -6
- package/dist/{ports-C1_1Qgdy.mjs → ports-DhOSyWm9.mjs} +3 -3
- package/dist/{prebuild-BptrXmh_.mjs → prebuild-Di2IhUue.mjs} +9 -9
- package/dist/{project-Dqqj3IkW.mjs → project-Clk1JAWL.mjs} +15 -15
- package/dist/{react-native-android-Bsm_o4A8.mjs → react-native-android-bdHBMrnf.mjs} +23 -23
- package/dist/{react-native-build-BTUcE926.mjs → react-native-build-CJega_NM.mjs} +7 -7
- package/dist/{react-native-doctor-CfsCTKZt.mjs → react-native-doctor-CY7BGITE.mjs} +5 -5
- package/dist/{react-native-ios-_cK2pjZn.mjs → react-native-ios-Bo5EDVel.mjs} +14 -14
- package/dist/recorded-build-BuGL_fnm.mjs +58 -0
- package/dist/{recordings-AKZfsW2W.mjs → recordings-6i2-x8LU.mjs} +1 -1
- package/dist/{reload-DsTMtMDU.mjs → reload-A_axEbeS.mjs} +14 -14
- package/dist/{reload-CXgce4Yo.mjs → reload-BvDuvygc.mjs} +1 -1
- package/dist/remote-PD6CM0xp.mjs +158 -0
- package/dist/{remote-BsmYHUxH.mjs → remote-WK_swZEw.mjs} +8 -8
- package/dist/{result-DK6nTO-M.mjs → result-BkDpN5Mz.mjs} +23 -17
- package/dist/{run-N-BbRxnC.mjs → run-CTFi4Nq2.mjs} +1 -1
- package/dist/{server-bare-BTlICuaX.mjs → server-bare-W0aPsRZE.mjs} +1 -1
- package/dist/{server-command-Cu2w-UjB.mjs → server-command-S00-ddjK.mjs} +4 -4
- package/dist/server-expo-BWJDa7Qb.mjs +2 -0
- package/dist/{server-expo-CjQwxvIi.mjs → server-expo-cc-cmfsl.mjs} +2 -2
- package/dist/{settings-B5IBDfTx.mjs → settings-Bap-qjnp.mjs} +1 -1
- package/dist/{settings-DcmVICCn.mjs → settings-C_Xu4RNZ.mjs} +2 -2
- package/dist/{settings-payload-BoiFMiFq.mjs → settings-payload-D5jjhmrw.mjs} +4 -4
- package/dist/{settings-write-B3LzEVwf.mjs → settings-write-C5huI-iS.mjs} +5 -5
- package/dist/settings.schema.json +1 -1
- package/dist/{simslim-DKdJx0LL.mjs → simslim-DlBvwgeF.mjs} +1 -1
- package/dist/{slot-launch-DsQmPdlg.mjs → slot-launch-qEQVTth7.mjs} +6 -6
- package/dist/{stage-Dqk0qvaI.mjs → stage-CxVI_MlP.mjs} +1 -1
- package/dist/{start-GkRBR1e3.mjs → start-CVzivp35.mjs} +1 -1
- package/dist/{start-DIFiT2P5.mjs → start-YpT_JpQQ.mjs} +10 -10
- package/dist/{state-DSOUqO-o.mjs → state-B4B5P4LU.mjs} +1 -1
- package/dist/{state-CtmYTRWm.mjs → state-B9VFI6r0.mjs} +2 -2
- package/dist/{stats-Dz08IopP.mjs → stats-COoePEri.mjs} +4 -4
- package/dist/{status-DhKv_e8a.mjs → status-CIg0k7Qb.mjs} +21 -21
- package/dist/{status-Dost__Vn.mjs → status-CIvU5-TF.mjs} +1 -1
- package/dist/{status-DTFhDnd1.mjs → status-CQWmNl1f.mjs} +1 -1
- package/dist/{status-watch-UecLnPQD.mjs → status-watch--rfZynD_.mjs} +4 -4
- package/dist/status-worker.mjs +1 -1
- package/dist/{stim-desktop-_WTria-r.mjs → stim-desktop-D0P_bzmd.mjs} +1 -1
- package/dist/{stop-CcZISot5.mjs → stop-BEBBruvD.mjs} +4 -4
- package/dist/{stop-QFOqgICJ.mjs → stop-BiI4_VFG.mjs} +2 -2
- package/dist/{stop-vRe6TQk5.mjs → stop-C3d5qG7C.mjs} +15 -15
- package/dist/supervisor-run.mjs +12 -12
- package/dist/{support-DW575Dnx.mjs → support-BJbXovoO.mjs} +73 -34
- package/dist/{support-CNqJDBrH.mjs → support-Vckdzrmk.mjs} +5 -5
- package/dist/{swiftpm-artifact-inputs-DQTJTczX.mjs → swiftpm-artifact-inputs-DbuF-Yrr.mjs} +1 -1
- package/dist/{swiftpm-macos-BKczZ0k9.mjs → swiftpm-macos-Bu8xeBfM.mjs} +8 -8
- package/dist/{toolchain-BDlugtoh.mjs → toolchain-CIRdNl-c.mjs} +1 -1
- package/dist/{toolchain-DRQyCvlp.mjs → toolchain-DCnWAxQL.mjs} +71 -7
- package/dist/{warm-progress-q11Vdvhh.mjs → warm-progress-DwsGBpph.mjs} +3 -3
- package/dist/{web-TDWjHUT3.mjs → web-D2En0Wa5.mjs} +8 -8
- package/dist/web-Dpj70t4p.mjs +2 -0
- package/dist/web-run.mjs +4 -4
- package/dist/{workspace-state-BdZ-QgmB.mjs → workspace-state-BhwAJBgA.mjs} +2 -2
- package/dist/{workspaces-CY3KSdC0.mjs → workspaces-Dh5N70qW.mjs} +11 -11
- package/dist/{worktree-D6myrQ2H.mjs → worktree-DLm4s2Ib.mjs} +1 -1
- package/dist/{worktree-fKKe8j5M.mjs → worktree-Yw3EW77B.mjs} +24 -24
- package/package.json +7 -7
- package/dist/server-expo-DbSypdNl.mjs +0 -2
- package/dist/web-D1m1LKEz.mjs +0 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as readWorkspaceState$1, s as updateWorkspaceStateAsync } from "./workspace-state-
|
|
2
|
-
import {
|
|
3
|
-
import { tt as removeMetroReverses } from "./android-
|
|
4
|
-
import { a as stopHostedNative, i as prepareHostedNative, r as placeHostedNative } from "./hosted-native-
|
|
1
|
+
import { r as readWorkspaceState$1, s as updateWorkspaceStateAsync } from "./workspace-state-BhwAJBgA.mjs";
|
|
2
|
+
import { ft as deviceSlotKey, mt as parseDeviceSlotKey } from "./config-BA3TgoIP.mjs";
|
|
3
|
+
import { tt as removeMetroReverses } from "./android-SJx1V3R3.mjs";
|
|
4
|
+
import { a as stopHostedNative, i as prepareHostedNative, r as placeHostedNative } from "./hosted-native-BiiUG_Q6.mjs";
|
|
5
5
|
import { isJsonObject } from "@stim-cli/core/state";
|
|
6
6
|
//#region src/device-host/hosted-ios.ts
|
|
7
7
|
async function prepareHostedIos(machine, selectors, recorded, mode) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { k as buildPlacementSettings } from "./support-
|
|
1
|
+
import { k as buildPlacementSettings } from "./support-BJbXovoO.mjs";
|
|
2
2
|
//#region src/placement-log.ts
|
|
3
3
|
/** `machine` is `local` when the run stays on this machine. */
|
|
4
4
|
function placementRecord(input) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { v as loadConfig$1 } from "./config-
|
|
2
|
-
import { Un as processContext } from "./device-capacity-
|
|
3
|
-
import {
|
|
4
|
-
import { r as readHostedNative } from "./ios-state-
|
|
5
|
-
import { n as buildPreferenceRefusal } from "./settings-payload-
|
|
6
|
-
import { r as probeHost, t as automaticDevicePlacement } from "./auto-placement-
|
|
1
|
+
import { v as loadConfig$1 } from "./config-BA3TgoIP.mjs";
|
|
2
|
+
import { Un as processContext } from "./device-capacity-CpAVcKgq.mjs";
|
|
3
|
+
import { it as hostingMachines } from "./support-BJbXovoO.mjs";
|
|
4
|
+
import { r as readHostedNative } from "./ios-state-Avwz2cbZ.mjs";
|
|
5
|
+
import { n as buildPreferenceRefusal } from "./settings-payload-D5jjhmrw.mjs";
|
|
6
|
+
import { r as probeHost, t as automaticDevicePlacement } from "./auto-placement-CKFpFCuq.mjs";
|
|
7
7
|
import { automaticMachineEnabled } from "@stim-cli/core/state";
|
|
8
8
|
//#region src/device-host/plan-placement.ts
|
|
9
9
|
const DOCTOR_REMEDY = "Run `stim doctor` to check the hosts and settings placement uses.";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { m as getProject } from "./config-
|
|
2
|
-
import { n as findCommandWorkspace } from "./project-
|
|
3
|
-
import { n as getNamedPort, t as clearNamedPorts } from "./named-ports-
|
|
1
|
+
import { m as getProject } from "./config-BA3TgoIP.mjs";
|
|
2
|
+
import { n as findCommandWorkspace } from "./project-Clk1JAWL.mjs";
|
|
3
|
+
import { n as getNamedPort, t as clearNamedPorts } from "./named-ports-BvB_CO9B.mjs";
|
|
4
4
|
//#region src/commands/ports.ts
|
|
5
5
|
async function inProject(action) {
|
|
6
6
|
try {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { E as debugLog, b as spawnDeclared, t as getExecutor } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { M as withDirLock$1, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, y as sharedBuildCache } from "./workspace-state-
|
|
2
|
+
import { M as withDirLock$1, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, y as sharedBuildCache } from "./workspace-state-BhwAJBgA.mjs";
|
|
3
3
|
import { n as stripAnsi, r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
|
|
4
|
-
import { m as shortHash } from "./command-output-
|
|
4
|
+
import { m as shortHash } from "./command-output-T3cDctRE.mjs";
|
|
5
5
|
import { o as git, s as gitAsync } from "./operation-exec-DKlBcKAL.mjs";
|
|
6
|
-
import { Ct as gitCommonDirOnDisk } from "./settings-
|
|
7
|
-
import { v as detectIsExpo } from "./project-
|
|
8
|
-
import { ar as remoteCliInvocation } from "./device-capacity-
|
|
9
|
-
import { r as register } from "./cache-manifest-
|
|
10
|
-
import { nt as STIM_VERSION } from "./workspaces-
|
|
11
|
-
import { b as packageIn, d as expoEnvFiles, g as fingerprintProject, h as fingerprintOptions, k as storedSources, s as diffFingerprintSources } from "./build-cache-
|
|
12
|
-
import { i as expoBinRefusal, o as expoSdkMajor, r as expoBinPath, s as expoTelemetryEnv } from "./server-expo-
|
|
6
|
+
import { Ct as gitCommonDirOnDisk } from "./settings-Bap-qjnp.mjs";
|
|
7
|
+
import { v as detectIsExpo } from "./project-Clk1JAWL.mjs";
|
|
8
|
+
import { ar as remoteCliInvocation } from "./device-capacity-CpAVcKgq.mjs";
|
|
9
|
+
import { r as register } from "./cache-manifest-CxWkZmUr.mjs";
|
|
10
|
+
import { nt as STIM_VERSION } from "./workspaces-Dh5N70qW.mjs";
|
|
11
|
+
import { b as packageIn, d as expoEnvFiles, g as fingerprintProject, h as fingerprintOptions, k as storedSources, s as diffFingerprintSources } from "./build-cache-BW8T4oD2.mjs";
|
|
12
|
+
import { i as expoBinRefusal, o as expoSdkMajor, r as expoBinPath, s as expoTelemetryEnv } from "./server-expo-cc-cmfsl.mjs";
|
|
13
13
|
import { t as readDoctorFingerprint } from "./doctor-fingerprint-DqWvIhMb.mjs";
|
|
14
14
|
import { createRequire } from "node:module";
|
|
15
15
|
import { createHash } from "node:crypto";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { T as process_identity_exports } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { C as supervisorPidFile, c as withWorkspaceStateLock, j as workspaceStateFile$1, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, t as clearWorkspaceStateKey } from "./workspace-state-
|
|
3
|
-
import { _ as isPathPrefix$1,
|
|
4
|
-
import { Bt as repoRoot, Y as resolveIosProjectDir, ct as webSettings, it as settingValueAt, q as resolveAndroidLayout } from "./settings-
|
|
2
|
+
import { C as supervisorPidFile, c as withWorkspaceStateLock, j as workspaceStateFile$1, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, t as clearWorkspaceStateKey } from "./workspace-state-BhwAJBgA.mjs";
|
|
3
|
+
import { _ as isPathPrefix$1, ft as deviceSlotKey, l as findEnclosingWorktreeRoot, m as getProject, mt as parseDeviceSlotKey, v as loadConfig$1 } from "./config-BA3TgoIP.mjs";
|
|
4
|
+
import { Bt as repoRoot, Y as resolveIosProjectDir, ct as webSettings, it as settingValueAt, q as resolveAndroidLayout } from "./settings-Bap-qjnp.mjs";
|
|
5
5
|
import { existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, rmSync, statSync, writeFileSync } from "node:fs";
|
|
6
6
|
import { basename, dirname, isAbsolute, join, relative, resolve } from "node:path";
|
|
7
7
|
import { projectRootDirectories } from "@stim-cli/core/state";
|
|
@@ -311,8 +311,8 @@ const nativeAndroidIntegration = {
|
|
|
311
311
|
application: true,
|
|
312
312
|
platforms: () => ["android"],
|
|
313
313
|
validate: (operation) => operation === "android" ? null : void 0,
|
|
314
|
-
android: async () => (await import("./native-android-
|
|
315
|
-
doctor: async () => (await import("./native-android-
|
|
314
|
+
android: async () => (await import("./native-android-28NOG2-y.mjs")).nativeAndroidProject(root),
|
|
315
|
+
doctor: async () => (await import("./native-android-28NOG2-y.mjs")).nativeAndroidDoctor(root)
|
|
316
316
|
};
|
|
317
317
|
}
|
|
318
318
|
};
|
|
@@ -740,8 +740,8 @@ const nativeXcodeProjectIntegration = {
|
|
|
740
740
|
application: problem === null,
|
|
741
741
|
platforms: () => problem ? [] : ["ios"],
|
|
742
742
|
validate: (operation) => operation === "ios" ? problem : void 0,
|
|
743
|
-
ios: async () => (await import("./native-xcode-ios-
|
|
744
|
-
doctor: async () => (await import("./native-xcode-ios-
|
|
743
|
+
ios: async () => (await import("./native-xcode-ios-B4Qoc7-U.mjs")).nativeXcodeIosProject(root),
|
|
744
|
+
doctor: async () => (await import("./native-xcode-ios-B4Qoc7-U.mjs")).nativeXcodeDoctor(root)
|
|
745
745
|
};
|
|
746
746
|
}
|
|
747
747
|
};
|
|
@@ -946,7 +946,7 @@ function createProjectRegistry(integrations) {
|
|
|
946
946
|
//#region src/integrations/projects.ts
|
|
947
947
|
const expo = {
|
|
948
948
|
mode: MODE_EXPO,
|
|
949
|
-
loadDevServer: async () => (await import("./server-expo-
|
|
949
|
+
loadDevServer: async () => (await import("./server-expo-BWJDa7Qb.mjs")).startExpoServer,
|
|
950
950
|
platforms(root) {
|
|
951
951
|
const appJson = readAppJson(root);
|
|
952
952
|
const config = appJson?.expo ?? appJson;
|
|
@@ -966,7 +966,7 @@ const expo = {
|
|
|
966
966
|
};
|
|
967
967
|
const reactNative = {
|
|
968
968
|
mode: MODE_BARE,
|
|
969
|
-
loadDevServer: async () => (await import("./server-bare-
|
|
969
|
+
loadDevServer: async () => (await import("./server-bare-W0aPsRZE.mjs")).startBareServer,
|
|
970
970
|
platforms(root, { context, settings }) {
|
|
971
971
|
if (!declaresAppDependency(readPackageJson(root))) return [];
|
|
972
972
|
const platforms = [];
|
|
@@ -996,9 +996,9 @@ const projectRegistry = createProjectRegistry([
|
|
|
996
996
|
ownedRoots: problem === null ? [join(root, "ios"), join(root, "android")] : [],
|
|
997
997
|
platforms: (resolved) => nativeProjectIntegration(root).platforms(root, resolved),
|
|
998
998
|
validate: (operation) => operation === "ios" || operation === "android" || operation === "dev-server" ? problem : void 0,
|
|
999
|
-
ios: async (settings) => (await import("./react-native-ios-
|
|
1000
|
-
android: async (resolved) => (await import("./react-native-android-
|
|
1001
|
-
doctor: async () => (await import("./react-native-doctor-
|
|
999
|
+
ios: async (settings) => (await import("./react-native-ios-Bo5EDVel.mjs")).reactNativeIosProject(root, settings),
|
|
1000
|
+
android: async (resolved) => (await import("./react-native-android-bdHBMrnf.mjs")).reactNativeAndroidProject(root, resolved),
|
|
1001
|
+
doctor: async () => (await import("./react-native-doctor-CY7BGITE.mjs")).reactNativeProjectDoctor(root)
|
|
1002
1002
|
};
|
|
1003
1003
|
}
|
|
1004
1004
|
},
|
|
@@ -1012,9 +1012,9 @@ const projectRegistry = createProjectRegistry([
|
|
|
1012
1012
|
application: true,
|
|
1013
1013
|
platforms: ({ settings }) => settingValueAt(settings, "macos.product") && settingValueAt(settings, "macos.infoPlist") ? ["macos"] : [],
|
|
1014
1014
|
validate: (operation) => operation === "macos" ? null : void 0,
|
|
1015
|
-
macos: async () => (await import("./swiftpm-macos-
|
|
1015
|
+
macos: async () => (await import("./swiftpm-macos-Bu8xeBfM.mjs")).swiftpmMacosProject(root),
|
|
1016
1016
|
doctor: async () => {
|
|
1017
|
-
const { macosToolchain, macosToolchainAsync } = await import("./toolchain-
|
|
1017
|
+
const { macosToolchain, macosToolchainAsync } = await import("./toolchain-CIRdNl-c.mjs");
|
|
1018
1018
|
return {
|
|
1019
1019
|
inspect: () => [],
|
|
1020
1020
|
offloadTargets: ({ options: { host = process.platform, platform, operation } }) => host === "darwin" && platform === void 0 ? async () => [{
|
|
@@ -1034,7 +1034,7 @@ const projectRegistry = createProjectRegistry([
|
|
|
1034
1034
|
application: false,
|
|
1035
1035
|
platforms: ({ settings }) => webSettings(settings).url !== null ? ["web"] : [],
|
|
1036
1036
|
validate: (operation) => operation === "web" ? null : void 0,
|
|
1037
|
-
web: async () => (await import("./browser-web-
|
|
1037
|
+
web: async () => (await import("./browser-web-B63vLrj6.mjs")).browserWebProject(root)
|
|
1038
1038
|
};
|
|
1039
1039
|
}
|
|
1040
1040
|
},
|
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
import { C as operationState, b as spawnDeclared, d as throwIfCancelled, r as reportSignal, t as getExecutor } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { r as readWorkspaceState } from "./workspace-state-
|
|
2
|
+
import { r as readWorkspaceState } from "./workspace-state-BhwAJBgA.mjs";
|
|
3
3
|
import { r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
|
|
4
|
-
import { i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-
|
|
5
|
-
import {
|
|
4
|
+
import { i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-T3cDctRE.mjs";
|
|
5
|
+
import { m as getProject, pt as deviceSlotPlatforms, vt as validateDeviceSlot } from "./config-BA3TgoIP.mjs";
|
|
6
6
|
import { a as killOnAbort, t as runOperationFile } from "./operation-exec-DKlBcKAL.mjs";
|
|
7
|
-
import { B as publicUrlSetting, H as realpathInside, W as remoteEasFallbackSetting, an as makeTemporaryDirectory, at as settingsLayers, m as defaultAndroidLayout, nt as settingOriginScope, on as removeTemporaryEntry, ot as tunnelModeSetting, q as resolveAndroidLayout } from "./settings-
|
|
8
|
-
import { v as detectIsExpo } from "./project-
|
|
9
|
-
import { J as ownedAvdSystemImage, O as findBuildTool, R as listAvdsAsync, U as ownedAvdDirectory, l as androidSystemImageAbi, r as androidBuildToolName, z as listInstalledSystemImages } from "./android-
|
|
10
|
-
import { Jn as checkEasAuth, O as resolveCcache, Un as processContext, Zn as loadProjectProvider, ir as bundleInvocation, nr as resolveRemote } from "./device-capacity-
|
|
11
|
-
import { lt as statsProjectKey } from "./workspaces-
|
|
12
|
-
import { K as tailLines, M as HEARTBEAT_INTERVAL_MS, W as startBuildHeartbeat, r as androidToolchainAsync, t as androidRequirements } from "./toolchain-
|
|
13
|
-
import { E as storeBuild, F as compareAssetManifests, I as readAssetManifest, M as untrackedNativeFiles, N as assetDiffReason, O as storedAssetManifest, P as captureAssetManifest, T as resolveBuild, _ as gitignoredFingerprintInputs, g as fingerprintProject, j as untrackedMissLine, m as fingerprintDiffRecord, n as buildCacheKey, o as configInputsChanged, p as filesystemBuildCapability, r as changedDuringBuildLine, w as refingerprintAfterMutation, y as inputsChangedDuringBuild } from "./build-cache-
|
|
14
|
-
import { s as expoTelemetryEnv, t as cleanLine } from "./server-expo-
|
|
15
|
-
import { c as readProductFlavors, h as androidPathRoomRefusal, n as buildAndroid, s as productFlavorRefusal } from "./react-native-build-
|
|
16
|
-
import { h as detectAppIds, m as detectAndroidPackage } from "./start-
|
|
7
|
+
import { B as publicUrlSetting, H as realpathInside, W as remoteEasFallbackSetting, an as makeTemporaryDirectory, at as settingsLayers, m as defaultAndroidLayout, nt as settingOriginScope, on as removeTemporaryEntry, ot as tunnelModeSetting, q as resolveAndroidLayout } from "./settings-Bap-qjnp.mjs";
|
|
8
|
+
import { v as detectIsExpo } from "./project-Clk1JAWL.mjs";
|
|
9
|
+
import { J as ownedAvdSystemImage, O as findBuildTool, R as listAvdsAsync, U as ownedAvdDirectory, l as androidSystemImageAbi, r as androidBuildToolName, z as listInstalledSystemImages } from "./android-SJx1V3R3.mjs";
|
|
10
|
+
import { Jn as checkEasAuth, O as resolveCcache, Un as processContext, Zn as loadProjectProvider, ir as bundleInvocation, nr as resolveRemote } from "./device-capacity-CpAVcKgq.mjs";
|
|
11
|
+
import { lt as statsProjectKey } from "./workspaces-Dh5N70qW.mjs";
|
|
12
|
+
import { K as tailLines, M as HEARTBEAT_INTERVAL_MS, W as startBuildHeartbeat, r as androidToolchainAsync, t as androidRequirements } from "./toolchain-DCnWAxQL.mjs";
|
|
13
|
+
import { E as storeBuild, F as compareAssetManifests, I as readAssetManifest, M as untrackedNativeFiles, N as assetDiffReason, O as storedAssetManifest, P as captureAssetManifest, T as resolveBuild, _ as gitignoredFingerprintInputs, g as fingerprintProject, j as untrackedMissLine, m as fingerprintDiffRecord, n as buildCacheKey, o as configInputsChanged, p as filesystemBuildCapability, r as changedDuringBuildLine, w as refingerprintAfterMutation, y as inputsChangedDuringBuild } from "./build-cache-BW8T4oD2.mjs";
|
|
14
|
+
import { s as expoTelemetryEnv, t as cleanLine } from "./server-expo-cc-cmfsl.mjs";
|
|
15
|
+
import { c as readProductFlavors, h as androidPathRoomRefusal, n as buildAndroid, s as productFlavorRefusal } from "./react-native-build-CJega_NM.mjs";
|
|
16
|
+
import { h as detectAppIds, m as detectAndroidPackage } from "./start-YpT_JpQQ.mjs";
|
|
17
17
|
import { t as readDoctorFingerprint } from "./doctor-fingerprint-DqWvIhMb.mjs";
|
|
18
|
-
import { n as decideSystemImage, t as androidImageInstallPolicy } from "./android-image-
|
|
19
|
-
import { i as planEasDevelopmentBuild } from "./eas-build-
|
|
20
|
-
import { a as runPrebuild, c as fingerprintErrorMissReason, d as memoizedFingerprint, i as recordPrebuildAsync, n as planPrebuildAsync, o as staleNativeDirRefusal, s as explainBuildMiss, t as planPrebuild } from "./prebuild-
|
|
21
|
-
import { a as PLATFORM, c as androidGradleProject, g as dumpApkManifest, h as displayPath, i as NO_FINGERPRINT, l as androidJobLayout, o as androidBuildOptions, p as apkPackage, r as NO_DEVICE } from "./support-
|
|
18
|
+
import { n as decideSystemImage, t as androidImageInstallPolicy } from "./android-image-BZ57YL6R.mjs";
|
|
19
|
+
import { i as planEasDevelopmentBuild } from "./eas-build-Xf5Jd6LR.mjs";
|
|
20
|
+
import { a as runPrebuild, c as fingerprintErrorMissReason, d as memoizedFingerprint, i as recordPrebuildAsync, n as planPrebuildAsync, o as staleNativeDirRefusal, s as explainBuildMiss, t as planPrebuild } from "./prebuild-Di2IhUue.mjs";
|
|
21
|
+
import { a as PLATFORM, c as androidGradleProject, g as dumpApkManifest, h as displayPath, i as NO_FINGERPRINT, l as androidJobLayout, o as androidBuildOptions, p as apkPackage, r as NO_DEVICE } from "./support-Vckdzrmk.mjs";
|
|
22
22
|
import { t as AndroidRecipeRefusal } from "./android-project-BCAAmMwz.mjs";
|
|
23
|
-
import { u as resolveAndroidRunPlan } from "./result-
|
|
24
|
-
import { n as androidProcessRuntime, t as androidMetroRuntime } from "./launch-
|
|
25
|
-
import { t as checkEasFallback } from "./eas-fallback-
|
|
26
|
-
import { n as planFlagRefusal, r as planPayload, t as planCachedBuild } from "./build-plan-
|
|
27
|
-
import { n as detectEntryFile, r as refreshUpdatesManifestFile, t as UPDATES_MANIFEST_NAME } from "./js-swap-
|
|
28
|
-
import { t as planHostedDevice } from "./plan-placement-
|
|
23
|
+
import { u as resolveAndroidRunPlan } from "./result-BkDpN5Mz.mjs";
|
|
24
|
+
import { n as androidProcessRuntime, t as androidMetroRuntime } from "./launch-6ckG9UrC.mjs";
|
|
25
|
+
import { t as checkEasFallback } from "./eas-fallback-DNYPNinw.mjs";
|
|
26
|
+
import { n as planFlagRefusal, r as planPayload, t as planCachedBuild } from "./build-plan-CeIooJqn.mjs";
|
|
27
|
+
import { n as detectEntryFile, r as refreshUpdatesManifestFile, t as UPDATES_MANIFEST_NAME } from "./js-swap-Desu2iII.mjs";
|
|
28
|
+
import { t as planHostedDevice } from "./plan-placement-BI4r55aP.mjs";
|
|
29
29
|
import { constants, existsSync, mkdirSync, readFileSync, renameSync } from "node:fs";
|
|
30
30
|
import { basename, dirname, isAbsolute, join, relative } from "node:path";
|
|
31
31
|
import chalk from "chalk";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { b as spawnDeclared, t as getExecutor } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { x as sharedCompilationCache } from "./workspace-state-
|
|
2
|
+
import { x as sharedCompilationCache } from "./workspace-state-BhwAJBgA.mjs";
|
|
3
3
|
import { n as stripAnsi, r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
|
|
4
|
-
import { l as phaseLine } from "./command-output-
|
|
4
|
+
import { l as phaseLine } from "./command-output-T3cDctRE.mjs";
|
|
5
5
|
import { a as killOnAbort } from "./operation-exec-DKlBcKAL.mjs";
|
|
6
|
-
import { C as resolvePackageJson } from "./project-
|
|
7
|
-
import { o as androidHome } from "./android-
|
|
8
|
-
import { C as CCACHE_UNAVAILABLE, D as readCcacheActivity } from "./device-capacity-
|
|
9
|
-
import { r as register } from "./cache-manifest-
|
|
10
|
-
import { B as pickXcodeProject, G as swiftPrefixMappingSupported, I as compilationCacheSettings, M as HEARTBEAT_INTERVAL_MS, N as SWIFT_PREFIX_MAPPING_MIN_SWIFT, P as buildXcode, R as parseSwiftVersion, W as startBuildHeartbeat, z as parseXcodeMajor } from "./toolchain-
|
|
6
|
+
import { C as resolvePackageJson } from "./project-Clk1JAWL.mjs";
|
|
7
|
+
import { o as androidHome } from "./android-SJx1V3R3.mjs";
|
|
8
|
+
import { C as CCACHE_UNAVAILABLE, D as readCcacheActivity } from "./device-capacity-CpAVcKgq.mjs";
|
|
9
|
+
import { r as register } from "./cache-manifest-CxWkZmUr.mjs";
|
|
10
|
+
import { B as pickXcodeProject, G as swiftPrefixMappingSupported, I as compilationCacheSettings, M as HEARTBEAT_INTERVAL_MS, N as SWIFT_PREFIX_MAPPING_MIN_SWIFT, P as buildXcode, R as parseSwiftVersion, W as startBuildHeartbeat, z as parseXcodeMajor } from "./toolchain-DCnWAxQL.mjs";
|
|
11
11
|
import { p as resolveOptimizations } from "./errors-DHm_U5gv.mjs";
|
|
12
12
|
import { createHash } from "node:crypto";
|
|
13
13
|
import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, statSync } from "node:fs";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { t as getExecutor } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { l as phaseLine } from "./command-output-
|
|
3
|
-
import { Y as resolveIosProjectDir, q as resolveAndroidLayout } from "./settings-
|
|
4
|
-
import { v as detectIsExpo } from "./project-
|
|
5
|
-
import { Y as bundlerPin, a as buildsOnlyOnWorker, c as iosToolchainAsync, n as androidToolchain, r as androidToolchainAsync, t as androidRequirements } from "./toolchain-
|
|
6
|
-
import { a as mainCheckoutProjectRoot, c as repairCxxLauncherState, i as detectLinkedLibraryGitMetadata, n as checkMainCheckout, o as reactNativeDoctorFindings, r as detectFingerprintParity } from "./doctor-
|
|
2
|
+
import { l as phaseLine } from "./command-output-T3cDctRE.mjs";
|
|
3
|
+
import { Y as resolveIosProjectDir, q as resolveAndroidLayout } from "./settings-Bap-qjnp.mjs";
|
|
4
|
+
import { v as detectIsExpo } from "./project-Clk1JAWL.mjs";
|
|
5
|
+
import { Y as bundlerPin, a as buildsOnlyOnWorker, c as iosToolchainAsync, n as androidToolchain, r as androidToolchainAsync, t as androidRequirements } from "./toolchain-DCnWAxQL.mjs";
|
|
6
|
+
import { a as mainCheckoutProjectRoot, c as repairCxxLauncherState, i as detectLinkedLibraryGitMetadata, n as checkMainCheckout, o as reactNativeDoctorFindings, r as detectFingerprintParity } from "./doctor-CYZ45LnX.mjs";
|
|
7
7
|
import { existsSync, readdirSync, statSync } from "node:fs";
|
|
8
8
|
import { join, relative } from "node:path";
|
|
9
9
|
//#region src/diagnostics/doctor-ios-architectures.ts
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { r as reportSignal } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-
|
|
3
|
-
import { B as publicUrlSetting, G as remoteIosSetting, W as remoteEasFallbackSetting, Y as resolveIosProjectDir, a as SETTING_SHAPE_REMEDY, ot as tunnelModeSetting, p as cacheProviderSettingError, rt as settingShapeErrors } from "./settings-
|
|
4
|
-
import { Un as processContext } from "./device-capacity-
|
|
5
|
-
import { lt as statsProjectKey } from "./workspaces-
|
|
6
|
-
import { Y as bundlerPin, _t as runCancellationSignal, a as buildsOnlyOnWorker, c as iosToolchainAsync } from "./toolchain-
|
|
7
|
-
import { A as trackedFingerprintPaths, _ as gitignoredFingerprintInputs, f as expoProductionEnvFiles, j as untrackedMissLine, m as fingerprintDiffRecord, n as buildCacheKey, o as configInputsChanged, p as filesystemBuildCapability, r as changedDuringBuildLine, v as ignoredFingerprintPaths, w as refingerprintAfterMutation, y as inputsChangedDuringBuild } from "./build-cache-
|
|
2
|
+
import { i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-T3cDctRE.mjs";
|
|
3
|
+
import { B as publicUrlSetting, G as remoteIosSetting, W as remoteEasFallbackSetting, Y as resolveIosProjectDir, a as SETTING_SHAPE_REMEDY, ot as tunnelModeSetting, p as cacheProviderSettingError, rt as settingShapeErrors } from "./settings-Bap-qjnp.mjs";
|
|
4
|
+
import { Un as processContext } from "./device-capacity-CpAVcKgq.mjs";
|
|
5
|
+
import { lt as statsProjectKey } from "./workspaces-Dh5N70qW.mjs";
|
|
6
|
+
import { Y as bundlerPin, _t as runCancellationSignal, a as buildsOnlyOnWorker, c as iosToolchainAsync } from "./toolchain-DCnWAxQL.mjs";
|
|
7
|
+
import { A as trackedFingerprintPaths, _ as gitignoredFingerprintInputs, f as expoProductionEnvFiles, j as untrackedMissLine, m as fingerprintDiffRecord, n as buildCacheKey, o as configInputsChanged, p as filesystemBuildCapability, r as changedDuringBuildLine, v as ignoredFingerprintPaths, w as refingerprintAfterMutation, y as inputsChangedDuringBuild } from "./build-cache-BW8T4oD2.mjs";
|
|
8
8
|
import { d as optimizationBuildProfile, l as artifactCachePolicy, p as resolveOptimizations } from "./errors-DHm_U5gv.mjs";
|
|
9
|
-
import { a as deviceModelRefusal, c as iosProjectPathError, f as podAction, h as resolveDeviceType, l as iosProviderRunOptions, m as resolveConfiguration, u as isReleaseConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-
|
|
9
|
+
import { a as deviceModelRefusal, c as iosProjectPathError, f as podAction, h as resolveDeviceType, l as iosProviderRunOptions, m as resolveConfiguration, u as isReleaseConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-BJbXovoO.mjs";
|
|
10
10
|
import { t as readDoctorFingerprint } from "./doctor-fingerprint-DqWvIhMb.mjs";
|
|
11
|
-
import { i as planEasDevelopmentBuild, n as easDeviceBuildRemedy } from "./eas-build-
|
|
12
|
-
import { c as fingerprintErrorMissReason, d as memoizedFingerprint, i as recordPrebuildAsync, o as staleNativeDirRefusal, s as explainBuildMiss } from "./prebuild-
|
|
13
|
-
import { r as planPayload, t as planCachedBuild } from "./build-plan-
|
|
14
|
-
import { t as IosRecipeRefusal } from "./ios-project-
|
|
15
|
-
import { a as hostedIosSelectors } from "./remote-
|
|
16
|
-
import { a as writeIpTxt, c as iosProcessRuntime, r as copyAppAside, s as iosMetroRuntime, t as DEFAULT_DEPS } from "./dependencies-
|
|
17
|
-
import { t as planHostedDevice } from "./plan-placement-
|
|
11
|
+
import { i as planEasDevelopmentBuild, n as easDeviceBuildRemedy } from "./eas-build-Xf5Jd6LR.mjs";
|
|
12
|
+
import { c as fingerprintErrorMissReason, d as memoizedFingerprint, i as recordPrebuildAsync, o as staleNativeDirRefusal, s as explainBuildMiss } from "./prebuild-Di2IhUue.mjs";
|
|
13
|
+
import { r as planPayload, t as planCachedBuild } from "./build-plan-CeIooJqn.mjs";
|
|
14
|
+
import { t as IosRecipeRefusal } from "./ios-project-Cz0S1Sz-.mjs";
|
|
15
|
+
import { a as hostedIosSelectors } from "./remote-WK_swZEw.mjs";
|
|
16
|
+
import { a as writeIpTxt, c as iosProcessRuntime, r as copyAppAside, s as iosMetroRuntime, t as DEFAULT_DEPS } from "./dependencies-LH-7k1Vr.mjs";
|
|
17
|
+
import { t as planHostedDevice } from "./plan-placement-BI4r55aP.mjs";
|
|
18
18
|
import { existsSync, rmSync } from "node:fs";
|
|
19
19
|
import { join } from "node:path";
|
|
20
20
|
import chalk from "chalk";
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { o as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-BhwAJBgA.mjs";
|
|
2
|
+
import { existsSync } from "node:fs";
|
|
3
|
+
import { isJsonObject } from "@stim-cli/core/state";
|
|
4
|
+
//#region src/engine/recorded-build.ts
|
|
5
|
+
const RECORDED_BUILDS_KEY = "recordedBuilds";
|
|
6
|
+
function recordedBuildKey(selectors) {
|
|
7
|
+
const configuration = selectors.configuration ?? (selectors.platform === "ios" ? "Debug" : "debug");
|
|
8
|
+
return [
|
|
9
|
+
selectors.platform,
|
|
10
|
+
selectors.scheme ?? "",
|
|
11
|
+
configuration
|
|
12
|
+
].join("|");
|
|
13
|
+
}
|
|
14
|
+
function recordBuild(root, key, build) {
|
|
15
|
+
updateWorkspaceState(root, (state) => ({
|
|
16
|
+
...state,
|
|
17
|
+
[RECORDED_BUILDS_KEY]: {
|
|
18
|
+
...isJsonObject(state[RECORDED_BUILDS_KEY]) ? state[RECORDED_BUILDS_KEY] : {},
|
|
19
|
+
[key]: {
|
|
20
|
+
...build,
|
|
21
|
+
builtAt: (/* @__PURE__ */ new Date()).toISOString()
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
function readRecordedBuild(root, key) {
|
|
27
|
+
const recorded = readWorkspaceState$1(root)?.[RECORDED_BUILDS_KEY];
|
|
28
|
+
const entry = isJsonObject(recorded) ? recorded[key] : null;
|
|
29
|
+
if (!isJsonObject(entry) || typeof entry.appPath !== "string" || !existsSync(entry.appPath)) return null;
|
|
30
|
+
return {
|
|
31
|
+
appPath: entry.appPath,
|
|
32
|
+
bundleId: typeof entry.bundleId === "string" ? entry.bundleId : null,
|
|
33
|
+
builtAt: typeof entry.builtAt === "string" ? entry.builtAt : ""
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
const NO_RECORDED_BUILD = "STIM_NO_RECORDED_BUILD";
|
|
37
|
+
function lookupRecordedBuild(requested, root, selectors) {
|
|
38
|
+
if (!requested) return {
|
|
39
|
+
build: null,
|
|
40
|
+
refusal: null
|
|
41
|
+
};
|
|
42
|
+
const build = readRecordedBuild(root, recordedBuildKey(selectors));
|
|
43
|
+
if (build) return {
|
|
44
|
+
build,
|
|
45
|
+
refusal: null
|
|
46
|
+
};
|
|
47
|
+
const described = [selectors.scheme && `scheme ${selectors.scheme}`, selectors.configuration].filter(Boolean).join(", ");
|
|
48
|
+
return {
|
|
49
|
+
build: null,
|
|
50
|
+
refusal: {
|
|
51
|
+
code: NO_RECORDED_BUILD,
|
|
52
|
+
message: `No recorded ${selectors.platform} build${described ? ` (${described})` : ""} exists for this checkout, so there is no app to install.`,
|
|
53
|
+
remedy: "Build the app first with the same selectors, then run again."
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//#endregion
|
|
58
|
+
export { recordBuild as n, recordedBuildKey as r, lookupRecordedBuild as t };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ct as gitCommonDirOnDisk } from "./settings-
|
|
1
|
+
import { Ct as gitCommonDirOnDisk } from "./settings-Bap-qjnp.mjs";
|
|
2
2
|
import { existsSync } from "node:fs";
|
|
3
3
|
import { loadConfig, recordingEnabled, workspaceRecordingsDir } from "@stim-cli/core/state";
|
|
4
4
|
import { rm } from "node:fs/promises";
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { d as throwIfCancelled, l as cancellableSleep, s as loadScaledBudgetMs, u as cancelledError } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { a as recordWorkspaceUseAsync, r as readWorkspaceState$1 } from "./workspace-state-
|
|
3
|
-
import { f as refuseNoProject, l as phaseLine } from "./command-output-
|
|
4
|
-
import {
|
|
5
|
-
import { Vt as repoRootAsync } from "./settings-
|
|
6
|
-
import { I as readWorkspaceLaunches, P as readRemoteSession, r as findCommandWorkspaceAsync } from "./project-
|
|
7
|
-
import { it as resolveOwnedAvdSerialAsync } from "./android-
|
|
8
|
-
import { a as listeningPidsAsync, d as resolveProjectMetro, h as isMetroRunning, u as processCwds } from "./metro-
|
|
9
|
-
import { Nn as iosAppProcess, On as ensureMetroReverse, Sn as androidAppProcess } from "./device-capacity-
|
|
10
|
-
import { d as webFactsAsync, o as readWebRecord, r as cdpEndpoint } from "./state-
|
|
11
|
-
import { D as resolveOwnedIosSim, f as listAllIosSimsAsync } from "./ios-
|
|
12
|
-
import { m as probeHostedSession } from "./hosted-client-
|
|
13
|
-
import { r as readHostedNative } from "./ios-state-
|
|
14
|
-
import { r as reopenHostedAndroidMetro } from "./hosted-android-
|
|
15
|
-
import { n as nativeRunCommand } from "./slot-launch-
|
|
2
|
+
import { a as recordWorkspaceUseAsync, r as readWorkspaceState$1 } from "./workspace-state-BhwAJBgA.mjs";
|
|
3
|
+
import { f as refuseNoProject, l as phaseLine } from "./command-output-T3cDctRE.mjs";
|
|
4
|
+
import { m as getProject, mt as parseDeviceSlotKey, pt as deviceSlotPlatforms } from "./config-BA3TgoIP.mjs";
|
|
5
|
+
import { Vt as repoRootAsync } from "./settings-Bap-qjnp.mjs";
|
|
6
|
+
import { I as readWorkspaceLaunches, P as readRemoteSession, r as findCommandWorkspaceAsync } from "./project-Clk1JAWL.mjs";
|
|
7
|
+
import { it as resolveOwnedAvdSerialAsync } from "./android-SJx1V3R3.mjs";
|
|
8
|
+
import { a as listeningPidsAsync, d as resolveProjectMetro, h as isMetroRunning, u as processCwds } from "./metro-DM3yJL1M.mjs";
|
|
9
|
+
import { Nn as iosAppProcess, On as ensureMetroReverse, Sn as androidAppProcess } from "./device-capacity-CpAVcKgq.mjs";
|
|
10
|
+
import { d as webFactsAsync, o as readWebRecord, r as cdpEndpoint } from "./state-B9VFI6r0.mjs";
|
|
11
|
+
import { D as resolveOwnedIosSim, f as listAllIosSimsAsync } from "./ios-BhfpRfNf.mjs";
|
|
12
|
+
import { m as probeHostedSession } from "./hosted-client-DMOOu8vD.mjs";
|
|
13
|
+
import { r as readHostedNative } from "./ios-state-Avwz2cbZ.mjs";
|
|
14
|
+
import { r as reopenHostedAndroidMetro } from "./hosted-android-D__HGVIO.mjs";
|
|
15
|
+
import { n as nativeRunCommand } from "./slot-launch-qEQVTth7.mjs";
|
|
16
16
|
import { n as sendToOwnedPage, t as liveWebRecord } from "./page-Dj8IqvGM.mjs";
|
|
17
17
|
import { hostedAndroidDeviceName, hostedNativeRecords } from "@stim-cli/core/state";
|
|
18
18
|
import chalk from "chalk";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as reloadCommand, r as runReload, t as registerReload } from "./reload-
|
|
1
|
+
import { n as reloadCommand, r as runReload, t as registerReload } from "./reload-A_axEbeS.mjs";
|
|
2
2
|
export { reloadCommand as default, registerReload, runReload };
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { l as phaseLine } from "./command-output-T3cDctRE.mjs";
|
|
2
|
+
import { D as updateRemoteMachinesAsync, R as doctorIo, V as keyConfirmer, W as parseMachine$1 } from "./config-BA3TgoIP.mjs";
|
|
3
|
+
import { $ as inspectBuildMachines, Q as forgetBuildMachine, at as inspectDeviceHostMachines, nt as configuredMachines, rt as forgetDeviceHostMachine } from "./support-BJbXovoO.mjs";
|
|
4
|
+
import { t as confirmInTerminal } from "./device-provision-CxQDCtrc.mjs";
|
|
5
|
+
import { readBuildMachines, readDeviceHostMachines } from "@stim-cli/core/state";
|
|
6
|
+
import chalk from "chalk";
|
|
7
|
+
//#region src/commands/remote.ts
|
|
8
|
+
function refusal(code, message, remedy) {
|
|
9
|
+
return Object.assign(new Error(message), {
|
|
10
|
+
code,
|
|
11
|
+
message,
|
|
12
|
+
remedy
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function invalidSetting() {
|
|
16
|
+
return refusal("STIM_BAD_ARG", "remote.machines is not a list of machine names.", "Run `stim guide settings` and correct remote.machines, then run the command again.");
|
|
17
|
+
}
|
|
18
|
+
function asRefusal(error) {
|
|
19
|
+
if (!(error instanceof Error) || !("code" in error)) return null;
|
|
20
|
+
if (typeof error.code !== "string" || !error.code.startsWith("STIM_")) return null;
|
|
21
|
+
const remedy = "remedy" in error && typeof error.remedy === "string" ? error.remedy : null;
|
|
22
|
+
return {
|
|
23
|
+
code: error.code,
|
|
24
|
+
message: error.message,
|
|
25
|
+
remedy
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
async function run(json, action) {
|
|
29
|
+
try {
|
|
30
|
+
await action();
|
|
31
|
+
} catch (error) {
|
|
32
|
+
const failure = asRefusal(error);
|
|
33
|
+
if (!failure) throw error;
|
|
34
|
+
console.error(chalk.red(phaseLine("error", `${failure.code}: ${failure.message}`)));
|
|
35
|
+
if (failure.remedy) console.error(phaseLine("remedy", failure.remedy));
|
|
36
|
+
if (json) console.log(JSON.stringify(failure));
|
|
37
|
+
process.exitCode = 1;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function requireMachine(machine) {
|
|
41
|
+
if (parseMachine$1(machine)) return;
|
|
42
|
+
throw refusal("STIM_BAD_ARG", `${JSON.stringify(machine)} is not a tailnet name or local: address.`, "Expected `name`, `name:port`, `local:<host>` or `local:<host>:port`.");
|
|
43
|
+
}
|
|
44
|
+
function printFindings(findings) {
|
|
45
|
+
const seen = /* @__PURE__ */ new Set();
|
|
46
|
+
for (const finding of findings) {
|
|
47
|
+
if (seen.has(finding.title)) continue;
|
|
48
|
+
seen.add(finding.title);
|
|
49
|
+
console.log(`\n${chalk.bold(finding.title)}`);
|
|
50
|
+
console.log(` ${finding.detail}`);
|
|
51
|
+
if (finding.fix) console.log(chalk.dim(` -> ${finding.fix}`));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
function confirmer(json) {
|
|
55
|
+
const interactive = !json && process.stdin.isTTY === true && process.stderr.isTTY === true;
|
|
56
|
+
return keyConfirmer(interactive ? confirmInTerminal : null);
|
|
57
|
+
}
|
|
58
|
+
function stateLine(build, host) {
|
|
59
|
+
return `build ${build?.state ?? "unknown"}, device-host ${host?.state ?? "unknown"}`;
|
|
60
|
+
}
|
|
61
|
+
function remoteCommand(program, version, io = doctorIo()) {
|
|
62
|
+
const remote = program.command("remote").description("Manage remote.machines, the remote machines this machine builds on and hosts devices on. Works from any directory.");
|
|
63
|
+
remote.command("add <machine>").description("Append a remote machine to remote.machines, keeping the existing entries, and ask it for build and device-host approval. Prints the stim-server setup command a person runs there to approve this machine.").option("--json", "print the result as JSON").action((machine, opts) => run(Boolean(opts.json), async () => {
|
|
64
|
+
requireMachine(machine);
|
|
65
|
+
const { before, after } = await updateRemoteMachinesAsync((machines) => machines.includes(machine) ? machines : [...machines, machine], await io.status());
|
|
66
|
+
if (before === null) throw invalidSetting();
|
|
67
|
+
const added = !before.includes(machine);
|
|
68
|
+
const options = {
|
|
69
|
+
fix: true,
|
|
70
|
+
forget: false,
|
|
71
|
+
version,
|
|
72
|
+
tickets: /* @__PURE__ */ new Map(),
|
|
73
|
+
confirmKey: confirmer(Boolean(opts.json))
|
|
74
|
+
};
|
|
75
|
+
const build = await inspectBuildMachines(options, io, [machine]);
|
|
76
|
+
const host = await inspectDeviceHostMachines(options, io, [machine]);
|
|
77
|
+
const findings = [...build.findings, ...host.findings];
|
|
78
|
+
const buildReport = build.machines[0] ?? null;
|
|
79
|
+
const hostReport = host.machines[0] ?? null;
|
|
80
|
+
if (opts.json) {
|
|
81
|
+
console.log(JSON.stringify({
|
|
82
|
+
machine,
|
|
83
|
+
added,
|
|
84
|
+
machines: after,
|
|
85
|
+
build: buildReport,
|
|
86
|
+
deviceHost: hostReport,
|
|
87
|
+
findings
|
|
88
|
+
}));
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
console.log(added ? `Added ${machine} to remote.machines (${after.length} machine${after.length === 1 ? "" : "s"}).` : `${machine} is already in remote.machines.`);
|
|
92
|
+
console.log(`${machine}: ${stateLine(buildReport, hostReport)}`);
|
|
93
|
+
printFindings(findings);
|
|
94
|
+
}));
|
|
95
|
+
remote.command("list").description("Contact each machine in remote.machines and report its build and device-host approval, in placement order. Completes the connection to a machine that approved since the last contact; asks nothing new.").option("--json", "print the machines as JSON").action((opts) => run(Boolean(opts.json), async () => {
|
|
96
|
+
const entries = configuredMachines();
|
|
97
|
+
if (entries === null) throw invalidSetting();
|
|
98
|
+
const options = {
|
|
99
|
+
fix: false,
|
|
100
|
+
version,
|
|
101
|
+
confirmKey: confirmer(Boolean(opts.json))
|
|
102
|
+
};
|
|
103
|
+
const build = await inspectBuildMachines(options, io, entries);
|
|
104
|
+
const host = await inspectDeviceHostMachines(options, io, entries);
|
|
105
|
+
const machines = entries.map((machine, at) => ({
|
|
106
|
+
machine,
|
|
107
|
+
priority: at + 1,
|
|
108
|
+
build: build.machines.find((each) => each.machine === machine) ?? null,
|
|
109
|
+
deviceHost: host.machines.find((each) => each.machine === machine) ?? null
|
|
110
|
+
}));
|
|
111
|
+
const findings = [...build.findings, ...host.findings];
|
|
112
|
+
if (opts.json) {
|
|
113
|
+
console.log(JSON.stringify({
|
|
114
|
+
machines,
|
|
115
|
+
findings
|
|
116
|
+
}));
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
if (!entries.length) {
|
|
120
|
+
console.log("No remote machines. Add one with `stim remote add <machine>`.");
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
for (const each of machines) console.log(`${each.priority} ${each.machine}: ${stateLine(each.build, each.deviceHost)}`);
|
|
124
|
+
printFindings(findings);
|
|
125
|
+
}));
|
|
126
|
+
remote.command("remove <machine>").description("Remove a machine from remote.machines and forget this machine's credentials for it. Approval on that machine stays until a person there revokes it; prints the command.").option("--json", "print the result as JSON").action((machine, opts) => run(Boolean(opts.json), async () => {
|
|
127
|
+
if (configuredMachines() === null) throw invalidSetting();
|
|
128
|
+
const credentials = [...readBuildMachines(), ...readDeviceHostMachines()].filter((each) => each.machine === machine);
|
|
129
|
+
const revoke = [...new Set(credentials.flatMap((each) => each.deviceId ? [each.deviceId] : []))].map((id) => `stim-server devices revoke ${id}`);
|
|
130
|
+
const pending = credentials.some((each) => !each.deviceId);
|
|
131
|
+
const { before, after } = await updateRemoteMachinesAsync((machines) => machines.filter((each) => each !== machine), await io.status());
|
|
132
|
+
if (before === null) throw invalidSetting();
|
|
133
|
+
const removed = before.includes(machine);
|
|
134
|
+
const busy = `another run holds the hosting credentials, so this machine's credentials for ${machine} were kept.`;
|
|
135
|
+
if (!await forgetDeviceHostMachine(machine)) throw refusal("STIM_CLAIM_REFUSED", removed ? `Removed ${machine} from remote.machines, but ${busy}` : `Nothing changed: ${busy}`, `Run \`stim remote remove ${machine}\` again after it finishes.`);
|
|
136
|
+
await forgetBuildMachine(machine);
|
|
137
|
+
if (opts.json) {
|
|
138
|
+
console.log(JSON.stringify({
|
|
139
|
+
machine,
|
|
140
|
+
removed,
|
|
141
|
+
forgot: credentials.length > 0,
|
|
142
|
+
machines: after,
|
|
143
|
+
revoke,
|
|
144
|
+
pending
|
|
145
|
+
}));
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
if (!removed && !credentials.length) {
|
|
149
|
+
console.log(`${machine} is not in remote.machines.`);
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
console.log(removed ? `Removed ${machine} from remote.machines and forgot its credentials.` : `${machine} was not in remote.machines; forgot its credentials.`);
|
|
153
|
+
if (revoke.length) console.log(chalk.dim(` -> ${machine} keeps this machine's approval until a person there runs: ${revoke.join("; ")}`));
|
|
154
|
+
if (pending) console.log(chalk.dim(` -> A request to ${machine} was still pending here. If a person there approved it, find this machine in \`stim-server devices\` there and revoke it.`));
|
|
155
|
+
}));
|
|
156
|
+
}
|
|
157
|
+
//#endregion
|
|
158
|
+
export { remoteCommand as default };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { f as WorkspaceProcessCleanupError } from "./exec-CGuDzt40.mjs";
|
|
2
|
-
import { l as phaseLine } from "./command-output-
|
|
3
|
-
import {
|
|
4
|
-
import { B as publicUrlSetting, G as remoteIosSetting, L as parseIosRemote, W as remoteEasFallbackSetting, ot as tunnelModeSetting } from "./settings-
|
|
5
|
-
import "./device-capacity-
|
|
6
|
-
import { _t as runCancellationSignal } from "./toolchain-
|
|
7
|
-
import { b as resolveSimulatorAppFlag } from "./support-
|
|
8
|
-
import { n as devicePlacementRecord } from "./placement-log-
|
|
9
|
-
import { n as devicePlacementLine } from "./auto-placement-
|
|
2
|
+
import { l as phaseLine } from "./command-output-T3cDctRE.mjs";
|
|
3
|
+
import { pt as deviceSlotPlatforms } from "./config-BA3TgoIP.mjs";
|
|
4
|
+
import { B as publicUrlSetting, G as remoteIosSetting, L as parseIosRemote, W as remoteEasFallbackSetting, ot as tunnelModeSetting } from "./settings-Bap-qjnp.mjs";
|
|
5
|
+
import "./device-capacity-CpAVcKgq.mjs";
|
|
6
|
+
import { _t as runCancellationSignal } from "./toolchain-DCnWAxQL.mjs";
|
|
7
|
+
import { b as resolveSimulatorAppFlag } from "./support-BJbXovoO.mjs";
|
|
8
|
+
import { n as devicePlacementRecord } from "./placement-log-B8RCSzOm.mjs";
|
|
9
|
+
import { n as devicePlacementLine } from "./auto-placement-CKFpFCuq.mjs";
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
//#region src/commands/ios/remote.ts
|
|
12
12
|
function deviceRemoteConflict(remote, physical) {
|