rnxsim 0.1.353 → 0.1.354
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-cli/bin.js +5 -5
- package/dist-cli/chunks/{agent-YTAX6OQQ.js → agent-FB7RPXO6.js} +2 -2
- package/dist-cli/chunks/{agent-wrapper-2QSUXMNK.js → agent-wrapper-LFU3XEIG.js} +2 -2
- package/dist-cli/chunks/{app-fonts-4EVHPXVG.js → app-fonts-FK6SETRG.js} +2 -2
- package/dist-cli/chunks/{assert-IXMSQLVY.js → assert-3KQYZDDK.js} +2 -2
- package/dist-cli/chunks/{auth-6QFWU2T5.js → auth-RFE3J27C.js} +2 -2
- package/dist-cli/chunks/{beta-27I5WWRE.js → beta-XVY4WOYH.js} +2 -2
- package/dist-cli/chunks/{camera-4HFUBXPM.js → camera-JROBX5GM.js} +2 -2
- package/dist-cli/chunks/{chunk-7V5O6I4Q.js → chunk-24DA3Y2Z.js} +1 -1
- package/dist-cli/chunks/{chunk-LMFAIAA5.js → chunk-37S36DFW.js} +1 -1
- package/dist-cli/chunks/{chunk-DSBUGNC5.js → chunk-3QLERZYJ.js} +2 -2
- package/dist-cli/chunks/{chunk-YQJOM55S.js → chunk-3RW6W3ZO.js} +1 -1
- package/dist-cli/chunks/{chunk-T2ZZSSCP.js → chunk-4AQCDL24.js} +2 -2
- package/dist-cli/chunks/{chunk-IX7W5BXL.js → chunk-4OS3SXPZ.js} +2 -2
- package/dist-cli/chunks/{chunk-UNBVUOIC.js → chunk-766UIGCS.js} +2 -2
- package/dist-cli/chunks/{chunk-57YZEJ6J.js → chunk-77CBLMD4.js} +1 -1
- package/dist-cli/chunks/{chunk-6JBOKETZ.js → chunk-7WANPS3W.js} +2 -2
- package/dist-cli/chunks/{chunk-HZTWQZUD.js → chunk-ATQPDEED.js} +2 -2
- package/dist-cli/chunks/{chunk-MA5E6HJR.js → chunk-B7OMSJXC.js} +2 -2
- package/dist-cli/chunks/{chunk-R4KBCGXX.js → chunk-BAWV2UEF.js} +3 -3
- package/dist-cli/chunks/{chunk-TX2T5KPQ.js → chunk-BNXXNT3I.js} +2 -2
- package/dist-cli/chunks/{chunk-JVVO63QH.js → chunk-CKKDXTKV.js} +1 -1
- package/dist-cli/chunks/{chunk-WU25RTIX.js → chunk-CUK6Y2RR.js} +2 -2
- package/dist-cli/chunks/{chunk-3IWR7KHR.js → chunk-ENPWD62S.js} +2 -2
- package/dist-cli/chunks/{chunk-ZXHAAVTH.js → chunk-EWPX6LEN.js} +2 -2
- package/dist-cli/chunks/{chunk-YYYWU6LL.js → chunk-FEHHM2LV.js} +3 -3
- package/dist-cli/chunks/{chunk-LAFKQUT7.js → chunk-FPH4TYZO.js} +3 -3
- package/dist-cli/chunks/{chunk-PNQ33FJB.js → chunk-GNKXRXND.js} +2 -2
- package/dist-cli/chunks/{chunk-CYS3D7RG.js → chunk-GYGDIT5V.js} +2 -2
- package/dist-cli/chunks/{chunk-4NPZ5FO2.js → chunk-HIYCRDUP.js} +2 -2
- package/dist-cli/chunks/{chunk-HWMBTYJX.js → chunk-HUU7ZUQK.js} +2 -2
- package/dist-cli/chunks/{chunk-5DLBRZAG.js → chunk-IGV4KCCM.js} +2 -2
- package/dist-cli/chunks/{chunk-7SKQRS74.js → chunk-IICFLREN.js} +1 -1
- package/dist-cli/chunks/{chunk-RMOSWLWG.js → chunk-IUL2WUWW.js} +2 -2
- package/dist-cli/chunks/{chunk-ELBDKQK2.js → chunk-JJOHJNUQ.js} +2 -2
- package/dist-cli/chunks/{chunk-HVLZYUGF.js → chunk-JT435OOM.js} +2 -2
- package/dist-cli/chunks/{chunk-3XDGLCNP.js → chunk-JT4IMNCO.js} +2 -2
- package/dist-cli/chunks/{chunk-WTGQUQ32.js → chunk-JWXAXCC6.js} +2 -2
- package/dist-cli/chunks/{chunk-3UXMNDMH.js → chunk-JXNR2KAB.js} +2 -2
- package/dist-cli/chunks/{chunk-VLI54BKH.js → chunk-LC77IVGY.js} +2 -2
- package/dist-cli/chunks/{chunk-V7X543SB.js → chunk-LCPZNPIB.js} +1 -1
- package/dist-cli/chunks/{chunk-WKQ6W74M.js → chunk-LETVUC6M.js} +1 -1
- package/dist-cli/chunks/{chunk-WV3TKN7D.js → chunk-LRVL5MAX.js} +1 -1
- package/dist-cli/chunks/{chunk-ZJ4O636U.js → chunk-MIK6LMG4.js} +1 -1
- package/dist-cli/chunks/{chunk-KIQVNLVD.js → chunk-N3CE6AZP.js} +2 -2
- package/dist-cli/chunks/{chunk-6NE5Z6KG.js → chunk-OKFSCCFC.js} +1 -1
- package/dist-cli/chunks/{chunk-BK5TJXUU.js → chunk-P4GCLNFM.js} +2 -2
- package/dist-cli/chunks/{chunk-ZF53H457.js → chunk-PHIYWV44.js} +2 -2
- package/dist-cli/chunks/{chunk-RRX5RZI2.js → chunk-QQNNY43R.js} +1 -1
- package/dist-cli/chunks/{chunk-ZYGWIVW4.js → chunk-QRYTCPNO.js} +2 -2
- package/dist-cli/chunks/{chunk-XVLYLZOM.js → chunk-SLD2EMLZ.js} +2 -2
- package/dist-cli/chunks/{chunk-GAYCF2O5.js → chunk-THFM2CFT.js} +1 -1
- package/dist-cli/chunks/{chunk-ECIDT6F5.js → chunk-TJRKLRNP.js} +1 -1
- package/dist-cli/chunks/{chunk-CMQIFA4L.js → chunk-UAYXEP74.js} +1 -1
- package/dist-cli/chunks/{chunk-PBTG4UCS.js → chunk-UI2IFVHB.js} +1 -1
- package/dist-cli/chunks/{chunk-OEU2MEZQ.js → chunk-UVIWE3LD.js} +1 -1
- package/dist-cli/chunks/{chunk-UQBXA3AK.js → chunk-UX6D4X6B.js} +2 -2
- package/dist-cli/chunks/{chunk-VZDW2U64.js → chunk-X2DJK3TB.js} +2 -2
- package/dist-cli/chunks/{chunk-KZLGVYCX.js → chunk-Y4GUWO3X.js} +1 -1
- package/dist-cli/chunks/{chunk-37J74ASV.js → chunk-YATZ7U4S.js} +1 -1
- package/dist-cli/chunks/{chunk-7FUSVOMH.js → chunk-YIUIFZAE.js} +2 -2
- package/dist-cli/chunks/{chunk-4PV6QASJ.js → chunk-YXBNGSG6.js} +1 -1
- package/dist-cli/chunks/{chunk-UEILOAPW.js → chunk-ZJUFI3R7.js} +1 -1
- package/dist-cli/chunks/{chunk-4IXIONDR.js → chunk-ZNABCRWX.js} +2 -2
- package/dist-cli/chunks/{cleanup-ULH3BHAE.js → cleanup-F74ISXJC.js} +2 -2
- package/dist-cli/chunks/cli-version-VSDCFXXN.js +4 -0
- package/dist-cli/chunks/{compat-ONN5DOHB.js → compat-C3RGYGXL.js} +2 -2
- package/dist-cli/chunks/{config-OPZU73MX.js → config-CDY2RB7Q.js} +2 -2
- package/dist-cli/chunks/{control-WNYEAI4K.js → control-J35HAFZA.js} +2 -2
- package/dist-cli/chunks/daemon-DLLEODJY.js +4 -0
- package/dist-cli/chunks/{debug-GNI3HDAK.js → debug-3P2DUTUQ.js} +3 -3
- package/dist-cli/chunks/{desktop-DF65PDJG.js → desktop-XIXW34VW.js} +3 -3
- package/dist-cli/chunks/{detox-N267KW2Y.js → detox-KAKTJ4P4.js} +2 -2
- package/dist-cli/chunks/{device-RFU44PE3.js → device-4MAWLZMR.js} +2 -2
- package/dist-cli/chunks/{diagnose-XR2JIGDE.js → diagnose-A3R7HUYA.js} +2 -2
- package/dist-cli/chunks/{disk-cleanup-DPY6TYXA.js → disk-cleanup-5R7JYCO6.js} +2 -2
- package/dist-cli/chunks/drivers-BB3BRKDS.js +4 -0
- package/dist-cli/chunks/{film-NQQZPZ2W.js → film-GY5U752Q.js} +3 -3
- package/dist-cli/chunks/flow-ALMSRBVL.js +4 -0
- package/dist-cli/chunks/help-3ZL7MRUX.js +4 -0
- package/dist-cli/chunks/{hidden-runtime-alias-APCBIXJ6.js → hidden-runtime-alias-HSGN3GN4.js} +2 -2
- package/dist-cli/chunks/{home-paths-27GY5EPD.js → home-paths-BIUN4CBO.js} +2 -2
- package/dist-cli/chunks/inspect-RCU7XVAO.js +4 -0
- package/dist-cli/chunks/install-desktop-LYVKLTCU.js +4 -0
- package/dist-cli/chunks/{login-6KIO5FR4.js → login-WKNMS4GG.js} +2 -2
- package/dist-cli/chunks/{logout-WMCYGTYA.js → logout-6UFUOESK.js} +2 -2
- package/dist-cli/chunks/{maestro-7QLOUZIE.js → maestro-SJGV7B3W.js} +3 -3
- package/dist-cli/chunks/{maestro-generate-QIGCQANR.js → maestro-generate-PMF2LLKX.js} +3 -3
- package/dist-cli/chunks/{mode-3H662MUJ.js → mode-MN7LZCLB.js} +2 -2
- package/dist-cli/chunks/{optional-demo-registry-FQV54ASP.js → optional-demo-registry-HFA27YSP.js} +2 -2
- package/dist-cli/chunks/{perf-KC6LOGFD.js → perf-XGANSJT3.js} +2 -2
- package/dist-cli/chunks/{permissions-UGVHA3L6.js → permissions-25UWEJKW.js} +2 -2
- package/dist-cli/chunks/privacy-SIDMP5EF.js +4 -0
- package/dist-cli/chunks/{record-V72Q363I.js → record-MA3AI752.js} +3 -3
- package/dist-cli/chunks/{report-issue-MILOOCMG.js → report-issue-4DTESWE2.js} +2 -2
- package/dist-cli/chunks/reset-GPHG5XN3.js +4 -0
- package/dist-cli/chunks/runtime-VOEIOODA.js +4 -0
- package/dist-cli/chunks/{screenshot-command-FYMZF5AF.js → screenshot-command-JUXMWXS5.js} +3 -3
- package/dist-cli/chunks/{screenshot-layers-OXLW6GEJ.js → screenshot-layers-DJF2E4PE.js} +2 -2
- package/dist-cli/chunks/{screenshots-capture-N3LKTUKB.js → screenshots-capture-UGZU5GOW.js} +2 -2
- package/dist-cli/chunks/{serve-USDREK3N.js → serve-H7GNKJSM.js} +2 -2
- package/dist-cli/chunks/setup-G2WYLPM6.js +4 -0
- package/dist-cli/chunks/{skills-3MIZF3DS.js → skills-4JGPOSFE.js} +2 -2
- package/dist-cli/chunks/{state-MCFLWQHV.js → state-DEAQFKVP.js} +2 -2
- package/dist-cli/chunks/{storage-KXNS5WEC.js → storage-Y6F5NTGH.js} +2 -2
- package/dist-cli/chunks/store-3EQT7VU6.js +4 -0
- package/dist-cli/chunks/telemetry-FANCQHKG.js +4 -0
- package/dist-cli/chunks/{timeline-QJ3USMSX.js → timeline-HOHYYDOC.js} +2 -2
- package/dist-cli/chunks/{upgrade-LXFD4DFX.js → upgrade-QF5YHLSG.js} +2 -2
- package/dist-cli/chunks/upload-QKJHFAX7.js +4 -0
- package/dist-cli/chunks/{version-D5DLNPHP.js → version-PDCKYJLB.js} +2 -2
- package/dist-cli/chunks/{web-FRFNTTZ4.js → web-C5EUAFFW.js} +2 -2
- package/dist-cli/chunks/welcome-3CQ2GE4F.js +5 -0
- package/dist-cli/chunks/{what-happened-FJ6GRQAS.js → what-happened-L56ZFIMJ.js} +2 -2
- package/dist-lib/agent-daemon-client.cjs +1 -1
- package/dist-lib/agent-events.cjs +1 -1
- package/dist-lib/agent-identity.cjs +1 -1
- package/dist-lib/agent-sessions.cjs +1 -1
- package/dist-lib/attached-projects.cjs +1 -1
- package/dist-lib/auth/shared-session.cjs +1 -1
- package/dist-lib/backend-origin.cjs +1 -1
- package/dist-lib/beta.cjs +1 -1
- package/dist-lib/beta.mjs +1 -1
- package/dist-lib/bridge-constants.cjs +1 -1
- package/dist-lib/bridge-contract.cjs +1 -1
- package/dist-lib/cli-constants.cjs +1 -1
- package/dist-lib/config.cjs +1 -1
- package/dist-lib/detox/index.cjs +1 -1
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +1 -1
- package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
- package/dist-lib/host/replacement-module-handler.cjs +1 -1
- package/dist-lib/host/websocket-proxy.cjs +1 -1
- package/dist-lib/index.cjs +1 -1
- package/dist-lib/jump-to-source-babel.cjs +1 -1
- package/dist-lib/menu.cjs +1 -1
- package/dist-lib/menu.mjs +1 -1
- package/dist-lib/metro-production-bundle.cjs +1 -1
- package/dist-lib/metro-production-bundle.mjs +1 -1
- package/dist-lib/metro.cjs +1 -1
- package/dist-lib/profiles.cjs +1 -1
- package/dist-lib/public-brand.cjs +1 -1
- package/dist-lib/react-native-host-modules.cjs +1 -1
- package/dist-lib/react-native-host-modules.mjs +1 -1
- package/dist-lib/render-mode.cjs +1 -1
- package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
- package/dist-lib/sdk.cjs +1 -1
- package/dist-lib/sdk.mjs +1 -1
- package/dist-lib/skills.cjs +1 -1
- package/dist-lib/vite.cjs +1 -1
- package/package.json +1 -1
- package/dist-cli/chunks/cli-version-I2E56I4W.js +0 -4
- package/dist-cli/chunks/daemon-5J6V2GLG.js +0 -4
- package/dist-cli/chunks/drivers-OIZC544W.js +0 -4
- package/dist-cli/chunks/flow-3NHEHRF4.js +0 -4
- package/dist-cli/chunks/help-VACWNWEH.js +0 -4
- package/dist-cli/chunks/inspect-2JELKZ5A.js +0 -4
- package/dist-cli/chunks/install-desktop-4R7UTGQU.js +0 -4
- package/dist-cli/chunks/privacy-E6KH2DRJ.js +0 -4
- package/dist-cli/chunks/reset-LEL5ZGFN.js +0 -4
- package/dist-cli/chunks/runtime-RT2OTIQC.js +0 -4
- package/dist-cli/chunks/setup-QC7W7NCL.js +0 -4
- package/dist-cli/chunks/store-GL6DFPJL.js +0 -4
- package/dist-cli/chunks/telemetry-OOW5FMZQ.js +0 -4
- package/dist-cli/chunks/upload-EUEO4D5N.js +0 -4
- package/dist-cli/chunks/welcome-YYYGS5WD.js +0 -5
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{a as nt}from"./chunk-
|
|
4
|
+
import{a as nt}from"./chunk-3RW6W3ZO.js";import{a as st}from"./chunk-JT4IMNCO.js";import{e as ot}from"./chunk-7WANPS3W.js";import{a as Qe,b as fe,c as me,d as tt,e as ge,f as we,g as rt,h as ye,i as it}from"./chunk-FEHHM2LV.js";import{a as et}from"./chunk-ATQPDEED.js";import{g as qe,h as Ye,p as ze,r as Xe,v as Ze}from"./chunk-B7OMSJXC.js";import{k as Ne}from"./chunk-IGV4KCCM.js";import{h as Je,m as Ge}from"./chunk-766UIGCS.js";import{J as he,m as He,n as Ue,o as We,p as je,q as Ve}from"./chunk-UAYXEP74.js";import{b as Ce}from"./chunk-77CBLMD4.js";import{a as Oe,b as _e,c as De}from"./chunk-X2DJK3TB.js";import{g as ce,h as Be,q as ue,r as pe,s as Le}from"./chunk-JJOHJNUQ.js";import{a as Ke}from"./chunk-Y4GUWO3X.js";import*as P from"fs";import{createHash as qt,randomUUID as Yt}from"node:crypto";import{tmpdir as Y}from"os";import*as w from"path";import*as x from"fs";import*as S from"path";var $t="inset 0 0 0 0.5px #000, inset 0 0 0 2px #757575, inset 0 0 0 5px #212121",lt=1;function At(n){let e=De(n),t=e.scale,r=e.statusBarHeight>0&&!e.dynamicIsland&&e.homeIndicatorHeight===0&&e.cornerRadius===0,i=e.width,o=e.height,a=Oe(e),s=r?e.width+58:a.frameWidth,l=r?e.height+111+111:a.frameHeight,p=9.5,u=lt,m=s+p*2,b=l+lt*2,g=p+(r?29:a.screenLeft),A=r?111:a.screenTop,k=r?52:a.frameRadius,H=[{side:e.hardwareButtons.lock.side,top:e.hardwareButtons.lock.top,height:e.hardwareButtons.lock.height,width:e.hardwareButtons.width},{side:e.hardwareButtons.ringToggle.side,top:e.hardwareButtons.ringToggle.top,height:e.hardwareButtons.ringToggle.height,width:e.hardwareButtons.width},{side:e.hardwareButtons.volumeUp.side,top:e.hardwareButtons.volumeUp.top,height:e.hardwareButtons.volumeUp.height,width:e.hardwareButtons.width},{side:e.hardwareButtons.volumeDown.side,top:e.hardwareButtons.volumeDown.top,height:e.hardwareButtons.volumeDown.height,width:e.hardwareButtons.width}];return{model:n,renderScale:t,outerWidth:Math.round(m*t),outerHeight:Math.round(b*t),logicalOuterWidth:m,logicalOuterHeight:b,logicalFrameWidth:s,logicalFrameHeight:l,logicalFrameLeft:p,logicalFrameTop:u,logicalScreenWidth:i,logicalScreenHeight:o,logicalScreenLeft:g,logicalScreenTop:A,logicalScreenRadius:r?0:a.screenRadius,logicalFrameRadius:k,frameBackground:r?"linear-gradient(180deg, #1b1c20 0%, #0f1012 42%, #050608 100%)":"#000000",frameOutline:r?"0 0 0 1px #1f2125":"0 0 0 1px #333",metallicRingShadow:r?null:$t,buttons:H,legacyHomeButton:r?{top:111+e.height+47/2,left:e.width/2-64/2+29,size:64,ring:1.5}:null,showHomeIndicator:e.homeIndicatorHeight>0,logicalHomeIndicatorStripHeight:e.homeIndicatorHeight}}function Rt(n){let e=n.side==="right",t=e?"inset(-3px -3px -3px 0)":"inset(-3px 0 -3px -3px)";return`
|
|
5
5
|
<div
|
|
6
6
|
aria-hidden="true"
|
|
7
7
|
style="
|
|
@@ -535,7 +535,7 @@ flow extension:
|
|
|
535
535
|
})()`}),console.log(` captured ${M.length} partial replay events`)}catch(d){console.warn(` event recorder stop failed: ${d?.message||String(d)}`)}console.error(`
|
|
536
536
|
x failed: ${h.message}
|
|
537
537
|
`),R&&(console.log(" partial profile:"),ht(R)),F&&console.log(` partial video: ${F}`);try{let d=c.lastFailedStep,y=d?`step-${String(d.index+1).padStart(2,"0")}-${d.kind}`:"unstaged",I=w.join(s,y);await c.captureFailureBundle(I,{error:h,stepIndex:d?.index,stepKind:d?.kind,stepTarget:d?.target}),de=I,console.log(` failure bundle: ${I}`),console.log(" (contents: screenshot.png, describe.json, a11y.txt, tree.txt, console.json, error.json)")}catch(d){try{let y=w.join(s,"error.png");await c.captureScreenshot(y),console.log(` error screenshot: ${y}`)}catch{}console.log(` (failure bundle capture failed: ${d instanceof Error?d.message:String(d)})`)}await Ge(E,{errorsCommand:`sootsim get errors 5${c.simId?` --sim ${c.simId}`:""}`,warningsCommand:`sootsim get warnings 5${c.simId?` --sim ${c.simId}`:""}`,requestsCommand:`sootsim get requests 5${c.simId?` --sim ${c.simId}`:""}`}),V=1}if(await c.liveStatus?.end(V===0?"passed":"failed"),g&&(V===0||F||M))try{let h=await Qt(M??[]),d=["--origin",A,"--events",h];k&&d.push("--public-origin",k),F&&d.push("--video",F),j&&d.push("--screenshot",j),F&&L&&Number.isFinite(L)&&(d.push("--video-duration-ms",String(Math.round(L))),d.push("--recorded-duration-ms",String(Math.round(L))));let y=c.getLastRecordingStartedAtMs();y&&Number.isFinite(y)&&d.push("--recording-started-at-ms",String(Math.round(y))),v.wsPort&&d.push("--port",String(v.wsPort)),c.simId&&d.push("--sim",c.simId),H&&d.push("--open"),Fe&&d.push("--owner",Fe),Ie&&d.push("--repo",Ie),d.push("--run-scope",mt),U&&d.push("--billing-kind",U),console.log(`
|
|
538
|
-
preparing preview upload\u2026`);let I=c.getFlowTraceSteps();I.length>0&&d.push("--timeline-events",await er(I));let J=await tr(I,y);J&&d.push("--snapshot-manifest",J),de&&d.push("--failure-bundle",de);let O=c.getLastRecordingFrameStats();O&&d.push("--trace-frame-stats",await rr(O));let{runUpload:Ft}=await import("./upload-
|
|
538
|
+
preparing preview upload\u2026`);let I=c.getFlowTraceSteps();I.length>0&&d.push("--timeline-events",await er(I));let J=await tr(I,y);J&&d.push("--snapshot-manifest",J),de&&d.push("--failure-bundle",de);let O=c.getLastRecordingFrameStats();O&&d.push("--trace-frame-stats",await rr(O));let{runUpload:Ft}=await import("./upload-QKJHFAX7.js");Te=await Ft(d,{})}catch(h){console.error(` preview upload failed: ${h?.message||h}`),V=1}return Ee=c.getFlowTraceSteps(),E.close(),ae?(c.simId&&le.add(c.simId),await Zt(v.wsPort,v.commandTimeoutMs,[...le])):c.simId&&c.simId!==z&&Be(c.simId),V}async function Zt(n,e,t){let r=[...new Set(t.filter(Boolean))];if(r.length===0)return;let i=pe(n,{commandTimeoutMs:e});try{let o=await i.listSims(),a=r.filter(l=>o.some(p=>p.id===l&&p.readyState==="open"));if(a.length===0)return;let s=await Ze(i,n,e,a);await ze(o,a),s.closed.length>0&&console.log(` closed flow sim(s): ${s.closed.join(", ")}`),s.remaining.length>0&&console.warn(` warn: flow sim(s) still connected after close: ${s.remaining.join(", ")}`)}catch(o){console.warn(` warn: failed to close flow sim(s): ${o instanceof Error?o.message:String(o)}`)}finally{i.close()}}async function Qt(n){let{gzipSync:e}=await import("zlib"),t=n.map(o=>JSON.stringify(o)).join(`
|
|
539
539
|
`)+(n.length?`
|
|
540
540
|
`:""),r=e(Buffer.from(t,"utf8")),i=w.join(Y(),`sootsim-events-${Date.now()}.jsonl.gz`);return P.writeFileSync(i,r),console.log(` events: ${n.length} written to ${i} (${r.length} bytes gz)`),i}async function er(n){let{gzipSync:e}=await import("zlib"),t=n.map((a,s)=>({schemaVersion:1,t:a.endedAtMs,seq:1e6+s,context:"host",kind:"flow-step",id:`flow-step-${a.stepIndex}`,data:{stepIndex:a.stepIndex,stepNumber:a.stepIndex+1,stepName:a.stepName,...a.targetLabel?{targetLabel:a.targetLabel}:{},status:a.status,durationMs:a.durationMs,startedAtMs:a.startedAtMs,endedAtMs:a.endedAtMs,...a.error?{error:a.error}:{}}})),r=t.map(a=>JSON.stringify(a)).join(`
|
|
541
541
|
`)+`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{a as k}from"./chunk-
|
|
4
|
+
import{a as k}from"./chunk-THFM2CFT.js";import{createHash as L}from"node:crypto";import{createRequire as j}from"node:module";var P=/(^|\/)expo-splash-screen$/,w=/(^|\/)react-native-bootsplash$/;function A(n,e){let r=e.replace(/\/+$/,""),t=n.replace(/^\.\//,"").replace(/^\/+/,"");if(t)return`${r}/assets/${t}`}function d(n,e,r){return r?r(n):A(n,e)}function y(n){if(n==="cover")return"cover";if(n==="contain"||n==="native")return"contain"}function c(n){return typeof n=="string"&&n.length>0?n:void 0}function S(n){return typeof n=="number"&&Number.isFinite(n)?n:void 0}function R(n,e,r){if(!n||typeof n!="object")return null;let t=n,o={source:"expo-splash-screen",backgroundColor:c(t.backgroundColor)??"#ffffff"},i=c(t.image);i&&(o.imageUrl=d(i,e,r));let s=S(t.imageWidth);s!=null&&(o.imageWidthPx=s);let l=y(t.resizeMode);l&&(o.resizeMode=l);let p=t.dark;if(p&&typeof p=="object"){let u=p,g=c(u.backgroundColor),f=c(u.image);(g||f)&&(o.dark={},g&&(o.dark.backgroundColor=g),f&&(o.dark.imageUrl=d(f,e,r)))}return o}function O(n,e,r,t){let a=n[e],o=a&&typeof a=="object"?a.splash:void 0,i=n.splash,s=o&&typeof o=="object"?o:i;if(!s||typeof s!="object")return null;let p={source:"expo-legacy",backgroundColor:c(s.backgroundColor)??"#ffffff",imageWidthPx:S(s.imageWidth)??200,resizeMode:y(s.resizeMode)??"contain"},u=c(s.image);u&&(p.imageUrl=d(u,r,t));let g=s.dark;if(g&&typeof g=="object"){let f=g,m=c(f.backgroundColor),h=c(f.image);(m||h)&&(p.dark={},m&&(p.dark.backgroundColor=m),h&&(p.dark.imageUrl=d(h,r,t)))}return p}function v(n,e,r){if(!n||typeof n!="object")return null;let t=n,a=c(t.logo);if(!a)return null;let o={source:"react-native-bootsplash",backgroundColor:c(t.background)??"#fff",imageUrl:d(a,e,r),imageWidthPx:S(t.logoWidth)??100,resizeMode:"contain"},i=c(t.darkBackground),s=c(t.darkLogo);return(i||s)&&(o.dark={},i&&(o.dark.backgroundColor=i),s&&(o.dark.imageUrl=d(s,e,r))),o}function C(n,e,r,t={}){if(!n||typeof n!="object")return null;let a=n,o=a.plugins,i=null,s=null;if(Array.isArray(o))for(let l of o){let p=Array.isArray(l)?l[0]:l;if(typeof p!="string")continue;let u=Array.isArray(l)?l[1]??{}:{};!i&&P.test(p)?i=R(u,r,t.resolveAssetUrl):!s&&w.test(p)&&(s=v(u,r,t.resolveAssetUrl))}return s||i||O(a,e,r,t.resolveAssetUrl)}var b=j(import.meta.url);function E(n){try{let e=new URL(n),r=e.hostname.replace(/^\[|\]$/g,"").toLowerCase();if(r==="localhost"||r.endsWith(".localhost")||r==="0.0.0.0"||r==="::1"||/^127(?:\.\d{1,3}){3}$/.test(r))return e.origin}catch{}return null}function G(n){let e=E(n.bundleUrl);if(!e)return null;let t=k(n.projectDir)?.appDir??null;if(!t)return null;let a=(n.platform||process.env.CONTRAST_PLATFORM||"ios").toLowerCase(),o=null;try{let s=b.resolve("@expo/config",{paths:[t]}),l=b(s);typeof l.getConfig=="function"&&(o=l.getConfig)}catch{}if(!o)return null;let i;try{let s=o(t,{skipSDKVersionRequirement:!0});s?.exp&&typeof s.exp=="object"&&(i=s.exp)}catch{}return!i||typeof i!="object"?null:C(i,a==="android"?"android":"ios",e)}function q(n){return encodeURIComponent(JSON.stringify(n))}function z(n){if(!n)return null;try{let e=JSON.parse(decodeURIComponent(n));if(!e||typeof e!="object")return null;let r=e;return r.source!=="expo-splash-screen"&&r.source!=="expo-legacy"&&r.source!=="react-native-bootsplash"||typeof r.backgroundColor!="string"?null:e}catch{return null}}function I(n){let e=new Set;return n.imageUrl&&e.add(n.imageUrl),n.dark?.imageUrl&&e.add(n.dark.imageUrl),[...e]}function M(n){let e=(n.split("?")[0].split(".").pop()||"").toLowerCase();return e==="png"?"image/png":e==="jpg"||e==="jpeg"?"image/jpeg":e==="webp"?"image/webp":e==="gif"?"image/gif":e==="svg"?"image/svg+xml":"application/octet-stream"}async function H(n,e){let r=z(n);if(!r)return[];let t=[],a=new Set;for(let o of I(r)){let i=L("sha256").update(o).digest("hex");if(!a.has(i)){a.add(i);try{let s=await fetch(o);if(!s.ok){e?.onError?.(o,new Error(`${s.status} ${s.statusText}`));continue}let l=new Uint8Array(await s.arrayBuffer());t.push({url:o,urlhash:i,contentType:M(o),bytes:l}),e?.onStaged?.({url:o,byteLength:l.byteLength})}catch(s){e?.onError?.(o,s)}}}return t}import{spawn as D}from"child_process";function U(n,e={}){if(!n)throw new Error("openUrl requires a url");let r=e.platform??process.platform;return r==="darwin"?{command:"open",args:e.background===!1?[n]:["-g",n],via:"system"}:r==="win32"?{command:"cmd",args:["/c","start","",n],via:"system"}:{command:"xdg-open",args:[n],via:"system"}}async function W(n,e,r){return new Promise((t,a)=>{let o=D(n,e,{detached:r,stdio:"ignore"});o.once("error",a),o.once("spawn",()=>{r&&o.unref(),t(o.pid)})})}async function x(n,e={}){let r=U(n,e),t=await W(r.command,r.args,e.detached??!0);return{...r,pid:t,attachUrl:n}}async function F(n,e={}){await x(n,e)}export{G as a,q as b,H as c,F as d};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
4
|
var o=!0,e="public beta",t=e,n="we send anonymous error and dependency data while you use it";export{o as a,e as b,t as c,n as d};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{a as d}from"./chunk-
|
|
4
|
+
import{a as d}from"./chunk-N3CE6AZP.js";import{a as s}from"./chunk-LC77IVGY.js";import{a as e}from"./chunk-HUU7ZUQK.js";import{a as n}from"./chunk-JJOHJNUQ.js";import{d as m,e as p,f as u}from"./chunk-UVIWE3LD.js";import{a}from"./chunk-JWXAXCC6.js";import{a as i}from"./chunk-UI2IFVHB.js";import{a as f,c}from"./chunk-CKKDXTKV.js";function g(){return`${i.commandName} CLI v${a()} \xB7 ${d().primary}`}function E(){let r=p({bridgePort:7668,defaultShellUrl:n},e()),o=`
|
|
5
5
|
${c}
|
|
6
6
|
`;console.log(`${g()}
|
|
7
7
|
${o}${r}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{a as i}from"./chunk-
|
|
4
|
+
import{a as i}from"./chunk-4AQCDL24.js";var c=["ghs_","ghp_","gho_","ghu_","github_pat_"];function p(n){return!!(n&&n.length>=20&&c.some(e=>n.startsWith(e)))}function a(){let n=process.env.CONTRAST_INSTALLATION_TOKEN?.trim(),e=process.env.GITHUB_TOKEN?.trim(),t=n||e;if(!p(t))return null;let r=(process.env.CONTRAST_REPO||process.env.GITHUB_REPOSITORY||"").trim();if(!r)return null;let[o,s]=r.includes("/")?r.split("/",2):[null,null],u=(process.env.CONTRAST_REPO_ID||process.env.GITHUB_REPOSITORY_ID||"").trim(),l=(process.env.CONTRAST_INSTALLATION_ID||process.env.GITHUB_APP_INSTALLATION_ID||"").trim();return{kind:"github",token:t,repoId:r,repositoryId:u||null,owner:o||null,repo:s||null,installationId:l||null,source:n?"contrast-runner":"github-actions"}}function d(n){return n.startsWith("sk_rnx_")||n.startsWith("sk_sootsim_")}function I(){for(let n of["RNX_API_KEY","SOOTSIM_API_KEY"]){let e=process.env[n]?.trim();if(e&&d(e))return{secret:e,envName:n}}return null}function _(){let n=I();if(n)return{kind:"api-key",secret:n.secret,source:"env",envName:n.envName};let e=a();if(e)return e;let t=i();return t?.token?{kind:"session",token:t.token,origin:t.origin}:null}function A(n){return n.kind==="api-key"?`Bearer ${n.secret}`:`Bearer ${n.token}`}function h(n){return!n||n.kind!=="github"?null:{repoId:n.repoId,owner:n.owner??void 0,repo:n.repo??void 0,installationId:n.installationId}}export{_ as a,A as b,h as c};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{a as r}from"./chunk-
|
|
4
|
+
import{a as r}from"./chunk-UVIWE3LD.js";var i=[{title:"Overview",route:"/docs/rnx/cli"},...r.slice().sort((o,t)=>o.order-t.order).map(o=>({title:o.navTitle,route:`/docs/rnx/cli/${o.slug}`}))];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{b as jt,c as qt}from"./chunk-
|
|
4
|
+
import{b as jt,c as qt}from"./chunk-LRVL5MAX.js";import{a as Bt,b as Ct}from"./chunk-YXBNGSG6.js";import{a as de}from"./chunk-ATQPDEED.js";import{k as Dt}from"./chunk-B7OMSJXC.js";import{a as oe,b as C,c as B,d as Me,e as ae,f as X,g as me,h as ye,i as At,j as Et,k as Ne,l as _t}from"./chunk-766UIGCS.js";import{A as Mt,B as Nt,C as Ft,F as Pt,H as Ot,J as pe,K as Rt,Q as We,a as Ie,b as mt,c as ft,d as gt,e as yt,f as ht,g as bt,h as wt,i as xt,j as $t,k as Ce,l as je,r as qe,s as St,t as vt,u as ge,v as kt,w as Te,x as Le,y as It,z as Tt}from"./chunk-UAYXEP74.js";import{a as Q}from"./chunk-LC77IVGY.js";import{e as it,j as at,o as lt,q as ct,s as dt,t as ut,u as pt,v as ce}from"./chunk-JJOHJNUQ.js";import{a as st}from"./chunk-37S36DFW.js";import{c as nt,d as Be,f as rt}from"./chunk-UVIWE3LD.js";import{a as ue}from"./chunk-OKFSCCFC.js";function Je(e){return`(async () => {
|
|
5
5
|
const bridge = globalThis.SootSim && globalThis.SootSim.bridges && globalThis.SootSim.bridges.hotRemount
|
|
6
6
|
if (!bridge || typeof bridge.reloadExternalApp !== 'function') return false
|
|
7
7
|
await bridge.reloadExternalApp({ resetStorage: ${e?"true":"false"} })
|
|
@@ -552,7 +552,7 @@ import{b as jt,c as qt}from"./chunk-WV3TKN7D.js";import{a as Bt,b as Ct}from"./c
|
|
|
552
552
|
`),process.exit(0))}let o=["do","get","debug","wait"].map(n=>Be(n,S)).filter(n=>n!=null).join(`
|
|
553
553
|
|
|
554
554
|
`);console.log(`${o}
|
|
555
|
-
`),process.exit(0)}let M=d.wsPort,x=d.simId,_=d.simIdSource,P=d.commandTimeoutMs;if(b==="get"&&p==="diagnosis"){let S=i.indexOf("diagnosis"),o=S>=0?[...i.slice(0,S),...i.slice(S+1)]:i,{runDiagnose:n}=await import("./diagnose-
|
|
555
|
+
`),process.exit(0)}let M=d.wsPort,x=d.simId,_=d.simIdSource,P=d.commandTimeoutMs;if(b==="get"&&p==="diagnosis"){let S=i.indexOf("diagnosis"),o=S>=0?[...i.slice(0,S),...i.slice(S+1)]:i,{runDiagnose:n}=await import("./diagnose-A3R7HUYA.js"),a=await n(["recent",...o],t);process.exitCode=a;return}if(b==="do"&&p==="scan"){let{runCamera:S}=await import("./camera-JROBX5GM.js");process.exitCode=await S(i,{port:t.port});return}if(p==="list"&&i.some(S=>S==="--drivers"||S==="-D")){let{buildDriverListRows:S}=await import("./drivers-BB3BRKDS.js"),o=S();console.log(` available drivers (${o.length}):
|
|
556
556
|
`);let n=Math.max(...o.map(l=>l.id.length),6),a=Math.max(...o.map(l=>l.kind.length),4);for(let l of o){let u=l.available?"\u2713":"\u2717",m=l.id.padEnd(n),f=l.kind.padEnd(a);console.log(` ${u} ${m} ${f} ${l.description}`),l.available&&l.detail?console.log(` ${l.detail}`):!l.available&&l.reason&&console.log(` unavailable: ${l.reason}`)}return}let c=dt(d),D=x||"default",R=new Set(["errors","warnings","requests","js","reload","globals","perf","storage-clear","list","wait","sleep"]),E=200;function J(S){let o=S.replace(/\s+/g," ").trim();if(!o)return"";if(/^<(!doctype html|html|\?xml)|<body[\s>]/i.test(o)){let a=/<title[^>]*>([^<]+)<\/title>/i.exec(S)?.[1]?.trim(),l=/<body[^>]*>([\s\S]*?)<\//i.exec(S)?.[1]?.replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim().slice(0,80),u=a||l||"html error page";return`<html ${S.length}B> "${u}" (body elided \u2014 add --json for the full payload)`}return o.length<=E?o:`${o.slice(0,E)}\u2026 (+${o.length-E} more bytes)`}function U(S){let o=S.displayUrl||S.url;return S.status!=null?`${S.method} ${o} -> ${S.status}${S.statusText?` ${S.statusText}`:""}`:S.error?`${S.method} ${o} -> ${S.error}`:`${S.method} ${o}`}async function T(S){let o=ue()?400:200;try{let{settled:n,elapsed:a}=await se({bridge:S,maxMs:o,pollMs:32,stablePolls:2});n||process.stderr.write(` \u26A0 auto-wait timed out after ${a??o}ms \u2014 next command may see mid-animation state. use \`rnx do settle\` for a longer wait.
|
|
557
557
|
`)}catch{}}function O(S,o){if(o.result?.reason==="offscreen"){let{x:n,y:a,screen:l}=o.result;console.error(` tap failed: ${S} resolved to (${Math.round(n)},${Math.round(a)}), outside the ${l?.width}x${l?.height} screen`),console.error(" the node exists but is scrolled out of view \u2014 scroll it on-screen first (rnx do scroll / swipe), then tap.");return}console.error(` tap failed: ${S} stayed visible but did not receive a hittable press after ${o.attempts} attempt${o.attempts===1?"":"s"}`),o.result&&console.error(` last result: ${JSON.stringify(o.result)}`)}async function H(){try{return await c.send({type:"evaluate",code:`(() => ({
|
|
558
558
|
console: ${Te},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{b as $}from"./chunk-
|
|
4
|
+
import{b as $}from"./chunk-YIUIFZAE.js";import{n as x}from"./chunk-JJOHJNUQ.js";import{b as y,c as R,d as f,e as w,f as a}from"./chunk-4OS3SXPZ.js";import{L as g,M as u,N as d,T as h,l as p}from"./chunk-LETVUC6M.js";import O from"fs";import{WebSocket as E}from"ws";function C(t){if(!t||typeof t!="object")return!1;let e=Reflect.get(t,"sections");return typeof Reflect.get(t,"title")=="string"&&Array.isArray(e)&&e.every(o=>o&&typeof o=="object"&&typeof Reflect.get(o,"title")=="string"&&Array.isArray(Reflect.get(o,"items"))&&Reflect.get(o,"items").every(n=>n&&typeof n=="object"&&typeof Reflect.get(n,"summary")=="string"&&typeof Reflect.get(n,"hash")=="string"))}async function b(t,e=fetch){try{let o=new URL(w);o.searchParams.set("version",t);let n=await e(o,{headers:{accept:"application/json"},signal:AbortSignal.timeout(5e3)});if(!n.ok)return null;let s=await n.json();if(!s||typeof s!="object")return null;let i=Reflect.get(s,"entries");return!Array.isArray(i)||!C(i[0])?null:i[0]}catch{return null}}function A(t,e){let o=[`what's new in rnx engine v${t}:`];if(!e||e.sections.length===0)o.push(" release notes are not available yet");else for(let n of e.sections){o.push(` ${n.title}:`);for(let s of n.items)o.push(` \u2022 ${s.summary}`)}return o.push(` full changelog: ${f}`),o.join(`
|
|
5
5
|
`)}async function Q(t,e={}){let[o,...n]=t;if(!o||o==="--help"||o==="-h"){S();return}switch(o){case"install":return L(n,e);case"list":return j(n);case"use":return T(n);case"remove":return D(n);case"which":return G();case"notes":return U(n);default:console.error(` unknown runtime subcommand: ${o}`),S(),process.exit(1)}}function S(){console.log(`
|
|
6
6
|
rnx runtime \u2014 manage engine runtimes under ~/.sootsim/runtimes/
|
|
7
7
|
|
|
@@ -27,4 +27,4 @@ examples:
|
|
|
27
27
|
rnx runtime install --channel beta
|
|
28
28
|
rnx runtime use 1.2.3
|
|
29
29
|
rnx runtime notes
|
|
30
|
-
`)}async function L(t,e){let{version:o,flags:n}=F(t),s=n.channel??e.channel??"stable",i=n.force===!0,l=n.setActive!==!1;g(),console.log("rnx runtime install"),console.log(` cdn: ${a.resolveCdnOrigin()}`);try{let r=await a.install({version:o,channel:s,force:i,setActive:l,protectVersions:h()});return console.log(` version: ${r.version} (channel: ${r.channel})`),r.installed?console.log(` installed ${r.version}`):console.log(` already installed at ${r.runtimeDir}`),l&&await k(r.version),r}catch(r){console.error(` ${I(r)}`),process.exit(1)}}async function k(t){d(t),console.log(` active: ${t}`),await _(t)||console.log(` (no daemon running \u2014 next sootsim/electron launch will pick up ${t})`)}async function _(t){let{isDaemonLockfileFresh:e,readDaemonLockfile:o}=await import("./home-paths-
|
|
30
|
+
`)}async function L(t,e){let{version:o,flags:n}=F(t),s=n.channel??e.channel??"stable",i=n.force===!0,l=n.setActive!==!1;g(),console.log("rnx runtime install"),console.log(` cdn: ${a.resolveCdnOrigin()}`);try{let r=await a.install({version:o,channel:s,force:i,setActive:l,protectVersions:h()});return console.log(` version: ${r.version} (channel: ${r.channel})`),r.installed?console.log(` installed ${r.version}`):console.log(` already installed at ${r.runtimeDir}`),l&&await k(r.version),r}catch(r){console.error(` ${I(r)}`),process.exit(1)}}async function k(t){d(t),console.log(` active: ${t}`),await _(t)||console.log(` (no daemon running \u2014 next sootsim/electron launch will pick up ${t})`)}async function _(t){let{isDaemonLockfileFresh:e,readDaemonLockfile:o}=await import("./home-paths-BIUN4CBO.js"),n=o();if(!e(n))return!1;let s=x();return new Promise(i=>{let l=!1,r=!1,m=N=>{l||(l=!0,i(N))},c=new E(`ws://127.0.0.1:${s}`,{handshakeTimeout:800}),v=setTimeout(()=>{try{c.close()}catch{}m(r)},1500);c.on("open",()=>{try{c.send(JSON.stringify({type:"runtime:use",version:t,id:0})),r=!0}catch{}setTimeout(()=>{try{c.close()}catch{}},100)}),c.on("close",()=>{clearTimeout(v),m(r)}),c.on("error",()=>{clearTimeout(v),m(!1)})})}async function j(t){g();let e=a.listInstalled(),o=u();if(console.log("installed:"),e.length===0)console.log(" (none)");else for(let n of e)console.log(` ${n===o?"*":" "} ${n}`);try{let n=await a.fetchManifest();console.log("available (latest per channel):");for(let[i,l]of Object.entries(n.channels))console.log(` ${i.padEnd(8)} ${l.latest}`);let s=Object.keys(n.versions).sort(y).reverse();if(s.length>1){console.log("hosted versions:");for(let i of s)console.log(` ${i}`)}}catch(n){console.log(`available: (could not fetch manifest: ${I(n)})`)}}async function T(t){let e=t[0];e||(console.error(" usage: rnx runtime use <version>"),process.exit(1));let o=a.listInstalled();o.includes(e)||(console.error(` version ${e} is not installed`),console.error(` installed: ${o.join(", ")||"(none)"}`),console.error(` run \`rnx runtime install ${e}\` first`),process.exit(1)),await k(e)}async function D(t){let e=t[0];e||(console.error(" usage: rnx runtime remove <version>"),process.exit(1)),u()===e&&(console.error(` cannot remove active runtime ${e}`),console.error(" switch with `rnx runtime use <other>` first, or install another version"),process.exit(1)),h().includes(e)&&(console.error(` cannot remove runtime ${e} while a project is using it`),process.exit(1));let n=p(e);if(!O.existsSync(n)){console.error(` ${e} is not installed`);return}O.rmSync(n,{recursive:!0,force:!0}),console.log(` removed ${e}`)}async function G(){let t=u();if(!t){console.log(" no active runtime");return}console.log(t)}async function U(t){t.length>0&&(console.error(" usage: rnx runtime notes"),process.exit(1));let{config:e}=await $(),o=e?.runtimeVersion??u();if(!o){console.log(" no active runtime"),console.log(` release notes: ${f}`);return}console.log(A(o,await b(o)))}function F(t){let e={},o=[];for(let n=0;n<t.length;n++){let s=t[n];if(s==="--channel"&&n+1<t.length){e.channel=t[n+1],n++;continue}if(s.startsWith("--channel=")){e.channel=s.slice(10);continue}if(s==="--force"){e.force=!0;continue}if(s==="--set-active=false"||s==="--no-set-active"){e.setActive=!1;continue}o.push(s)}return{version:o[0]??null,flags:e}}function I(t){return t instanceof Error?t.message:String(t)}export{b as a,A as b,Q as c};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{c as V}from"./chunk-
|
|
4
|
+
import{c as V}from"./chunk-CUK6Y2RR.js";import{P as j,R as M,g as F,j as I,s as U,t as D,u as O}from"./chunk-LETVUC6M.js";import{a as H}from"./chunk-JWXAXCC6.js";import{a as k}from"./chunk-UI2IFVHB.js";import{execFileSync as J,spawnSync as c}from"child_process";import{existsSync as s,mkdirSync as P,readFileSync as ae,realpathSync as le,rmSync as h,writeFileSync as X}from"fs";import{homedir as v}from"os";import{basename as ue,dirname as C,resolve as u,sep as Q}from"path";import{execFileSync as te}from"child_process";import{chmodSync as re,mkdirSync as A,rmSync as oe,writeFileSync as T}from"fs";import{dirname as _}from"path";var ne="dev.sootsim.daemon",Y="SootSim Daemon",G="0.1.36";function q(e,t,r){let n=D(),o=O(),a=_(_(o)),l=_(o),d=`${a}/Resources`;oe(n,{recursive:!0,force:!0}),A(U(),{recursive:!0}),A(l,{recursive:!0}),A(d,{recursive:!0}),T(`${a}/Info.plist`,se()),T(`${a}/PkgInfo`,"APPL????"),T(o,ie(e,t,r)),re(o,493);try{te("codesign",["--force","--sign","-","--deep",n],{stdio:"pipe"})}catch(i){let f=i instanceof Error?i.message:String(i);console.warn(` warning: ad-hoc codesign of ${n} failed: ${f}
|
|
5
5
|
the daemon will still run, but Login Items may show a generic name.`)}return{bundlePath:n,launcherPath:o}}function se(){return`<?xml version="1.0" encoding="UTF-8"?>
|
|
6
6
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
7
7
|
<plist version="1.0">
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{b as C}from"./chunk-
|
|
4
|
+
import{b as C}from"./chunk-LCPZNPIB.js";import{f as h}from"./chunk-4OS3SXPZ.js";import{L as B,T as b,g as S}from"./chunk-LETVUC6M.js";import o from"node:fs";import c from"node:path";var g=1,k=`automatic-cleanup-v${g}.json`,x=`automatic-cleanup-v${g}.lock`,A=360*60*1e3;function w(){let i=c.join(S(),k);try{return JSON.parse(o.readFileSync(i,"utf8")).generation===g}catch{return!1}}function $(i){if(i<1024)return`${i} B`;let e=["KiB","MiB","GiB","TiB"],n=i/1024,r=e[0];for(let s=1;s<e.length&&n>=1024;s++)n/=1024,r=e[s];return`${n.toFixed(n>=10?1:2)} ${r}`}function p(i){let e;try{e=o.lstatSync(i)}catch{return 0}let n=e.blocks>0?e.blocks*512:e.size;if(!e.isDirectory()||e.isSymbolicLink())return n;let r=n;try{for(let s of o.readdirSync(i))r+=p(c.join(i,s))}catch{}return r}function E(i){for(let e of["SingletonLock","SingletonSocket","lockfile"])try{if(o.lstatSync(c.join(i,e)))return!0}catch{}return!1}function v(i,e){let n;try{n=o.readdirSync(i,{withFileTypes:!0})}catch{return[]}let r=E(e),s=[];for(let t of n){if(!t.isDirectory()||t.isSymbolicLink())continue;let a=c.join(i,t.name);if(C(t.name)){s.push({path:a,bytes:p(a),kind:"browser-cache",state:r?"in-use":"safe",selected:!r,detail:r?"browser profile is open; close it before cleanup":"disposable browser HTTP, bytecode, or GPU cache"});continue}s.push(...v(a,e))}return s}function P(i){let e=c.join(i,"profiles","playwright"),n;try{n=o.readdirSync(e,{withFileTypes:!0})}catch{return[]}return n.flatMap(r=>{if(!r.isDirectory()||r.isSymbolicLink())return[];let s=c.join(e,r.name);return v(s,s)})}function L(i){let e=c.join(i,"electron","userData");return v(e,e)}function R(i,e){let n=c.join(i,"recordings"),r;try{r=o.readdirSync(n,{withFileTypes:!0})}catch{return[]}return r.map(s=>{let t=c.join(n,s.name);return{path:t,bytes:p(t),kind:"recording",state:"aggressive",selected:e,detail:"user-created recording or captured-frame output"}})}function T(i,e){let n=c.join(i,"camera-fixtures"),r;try{r=o.readdirSync(n,{withFileTypes:!0})}catch{return[]}return r.map(s=>{let t=c.join(n,s.name);return{path:t,bytes:p(t),kind:"camera-fixture",state:"aggressive",selected:e,detail:"staged camera fixture video"}})}function U(i){let e=new Set(b()),n=[...e],r=h.planLocalRetention({retainVersions:2,protectVersions:n}),s=h.planLocalRetention({retainVersions:1,protectVersions:n}),t=new Set(r.removeVersions),a=new Set(s.removeVersions),l=new Set([...r.keepVersions,...r.removeVersions,...s.keepVersions,...s.removeVersions]),m=[];for(let u of[...l].sort()){let d=h.product.runtimeDir(u),y="retained",f="retained runtime";e.has(u)&&u!==r.activeVersion?(y="in-use",f="runtime is serving a connected simulator"):t.has(u)?(y="safe",f="inactive runtime outside the two-version rollback window"):a.has(u)?(y="aggressive",f="most recent rollback runtime"):u===r.activeVersion&&(f="active runtime; always protected"),m.push({path:d,bytes:p(d),kind:"runtime-version",state:y,selected:y==="safe"||y==="aggressive"&&i,detail:f})}for(let u of r.removeCacheFiles)m.push({path:u,bytes:p(u),kind:"runtime-archive",state:"safe",selected:!0,detail:"downloaded archive is unnecessary after successful extraction"});return{activeRuntime:r.activeVersion,entries:m}}function D(i={}){let e=i.aggressive===!0,n=S(),r=U(e),s=[...r.entries,...P(n),...L(n),...R(n,e),...T(n,e)].sort((t,a)=>a.bytes-t.bytes||t.path.localeCompare(a.path));return{home:n,activeRuntime:r.activeRuntime,entries:s,reclaimableBytes:s.reduce((t,a)=>t+(a.selected?a.bytes:0),0),protectedBytes:s.reduce((t,a)=>t+(a.selected?0:a.bytes),0),totalBytes:p(n)}}function I(i,e){let n=c.relative(i,e);if(!n||n.startsWith("..")||c.isAbsolute(n))throw new Error(`refusing cleanup target outside the rnx data home: ${e}`)}function V(i={}){let e=D(i),n=i.aggressive===!0?1:2;h.pruneLocalRetention({retainVersions:n,protectVersions:b()});for(let t of e.entries)if(t.selected&&!(t.kind==="runtime-archive"||t.kind==="runtime-version")){if(t.kind==="browser-cache"){let l=c.relative(e.home,t.path).split(c.sep),m=l[0]==="profiles"&&l[1]==="playwright"&&l[2]?c.join(e.home,"profiles","playwright",l[2]):l[0]==="electron"&&l[1]==="userData"?c.join(e.home,"electron","userData"):null;if(m&&E(m)){t.state="in-use",t.selected=!1,t.detail="browser profile opened while cleanup was starting";continue}}I(e.home,t.path),o.rmSync(t.path,{recursive:!0,force:!0})}let r=e.entries.filter(t=>t.selected&&!o.existsSync(t.path)).map(t=>t.path),s=p(e.home);return{...e,removedPaths:r,reclaimedBytes:Math.max(0,e.totalBytes-s),remainingBytes:s}}function M(){B();let i=S(),e=c.join(i,k),n=c.join(i,x);if(w())return{status:"already-complete",reclaimedBytes:0,remainingBytes:0,deferredInUseBytes:0};let r=null;for(let s=0;s<2&&r===null;s++)try{let t=o.openSync(n,"wx");try{o.writeFileSync(t,`${JSON.stringify({pid:process.pid,startedAt:Date.now()})}
|
|
5
5
|
`,"utf8"),r=t}catch(a){o.closeSync(t);try{o.unlinkSync(n)}catch{}throw a}}catch(t){if((t instanceof Error&&"code"in t?t.code:null)!=="EEXIST")throw t;let l=0,m=0,u=null;try{u=o.lstatSync(n);let d=JSON.parse(o.readFileSync(n,"utf8"));l=typeof d.pid=="number"?d.pid:0,m=typeof d.startedAt=="number"?d.startedAt:0}catch{}if(l>0&&m>0&&Date.now()-m<A)try{return process.kill(l,0),{status:"busy",reclaimedBytes:0,remainingBytes:0,deferredInUseBytes:0}}catch{}if(!u)continue;try{let d=o.lstatSync(n);if(d.dev!==u.dev||d.ino!==u.ino)return{status:"busy",reclaimedBytes:0,remainingBytes:0,deferredInUseBytes:0};o.unlinkSync(n)}catch{}}if(r===null)return{status:"busy",reclaimedBytes:0,remainingBytes:0,deferredInUseBytes:0};try{if(w())return{status:"already-complete",reclaimedBytes:0,remainingBytes:0,deferredInUseBytes:0};let s=V(),t=s.entries.reduce((l,m)=>l+(m.state==="in-use"?m.bytes:0),0);if(t>0)return{status:"deferred",reclaimedBytes:s.reclaimedBytes,remainingBytes:s.remainingBytes,deferredInUseBytes:t};let a=`${e}.${process.pid}.tmp`;return o.writeFileSync(a,`${JSON.stringify({generation:g,completedAt:Date.now(),reclaimedBytes:s.reclaimedBytes})}
|
|
6
6
|
`,"utf8"),o.renameSync(a,e),{status:"complete",reclaimedBytes:s.reclaimedBytes,remainingBytes:s.remainingBytes,deferredInUseBytes:0}}finally{o.closeSync(r);try{o.unlinkSync(n)}catch{}}}export{w as a,$ as b,D as c,V as d,M as e};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{a as t}from"./chunk-
|
|
4
|
+
import{a as t}from"./chunk-OKFSCCFC.js";import{i as s}from"./chunk-24DA3Y2Z.js";import{F as o,G as n}from"./chunk-LETVUC6M.js";function a(){return process.env.CI==="1"||process.env.CI==="true"||process.env.GITHUB_ACTIONS==="true"}function c(){return process.stdin.isTTY===!0&&!a()&&!t()}function l(e=o()){let r=process.env.DO_NOT_TRACK;return r==="1"||r==="true"||!c()?!1:e.configured&&e.productAnalytics}async function P(e){let r=o();if(r.configured)return r;if(!e.prompt||!c())return{productAnalytics:!1,crashReports:!1,configured:!1};let i=await s("Share anonymous package incompatibilities and error classes to improve rnx?",!1);return n({productAnalytics:i,crashReports:!1}),o()}export{c as a,l as b,P as c};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
import { createRequire as __sootsimCreateRequire } from 'node:module'
|
|
3
3
|
var require = __sootsimCreateRequire(import.meta.url)
|
|
4
|
-
import{l as n}from"./chunk-
|
|
4
|
+
import{l as n}from"./chunk-X2DJK3TB.js";var i=[];for(let[t,e]of Object.entries(n))e.cliFlag&&i.push({name:`--${e.cliFlag}`,short:e.cliFlagShort?`-${e.cliFlagShort}`:void 0,key:t,type:e.type==="enum"?"string":e.type,description:e.description,options:e.options,default:e.default});var a=i;function g(){let t=[];for(let e of a){let s=e.short?`${e.short}, ${e.name}`:` ${e.name}`,o=e.options?` [${e.options.join("|")}]`:"",r=e.default!==void 0?` (default: ${e.default})`:"";t.push(` ${s.padEnd(24)}${e.description}${o}${r}`)}return t.join(`
|
|
5
5
|
`)}export{g as a};
|