rnxsim 0.1.340 → 0.1.342
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-DZRALHKK.js → agent-5OQUM7V3.js} +2 -2
- package/dist-cli/chunks/{agent-wrapper-FFCII533.js → agent-wrapper-SF2JKICI.js} +2 -2
- package/dist-cli/chunks/{app-fonts-P5TIE2BI.js → app-fonts-KGKAF26F.js} +2 -2
- package/dist-cli/chunks/{assert-L6YWZZH7.js → assert-J47XI4PJ.js} +2 -2
- package/dist-cli/chunks/{auth-2QUOSD3D.js → auth-OTPHAJKA.js} +2 -2
- package/dist-cli/chunks/{beta-DSQASQV7.js → beta-ABCO4OWD.js} +2 -2
- package/dist-cli/chunks/{camera-KONNW6GF.js → camera-CMCDVOCD.js} +2 -2
- package/dist-cli/chunks/{chunk-7IBTDBHW.js → chunk-44LTYSAH.js} +2 -2
- package/dist-cli/chunks/{chunk-CA3D6BWR.js → chunk-4CEJ33SY.js} +2 -2
- package/dist-cli/chunks/{chunk-52LBSDBQ.js → chunk-4DYFL7VF.js} +3 -3
- package/dist-cli/chunks/{chunk-AV323BT6.js → chunk-4M32SWCZ.js} +2 -2
- package/dist-cli/chunks/{chunk-6HQ2CUG5.js → chunk-5UZIVCQI.js} +1 -1
- package/dist-cli/chunks/{chunk-LQIMPJRD.js → chunk-5Y6USZTP.js} +2 -2
- package/dist-cli/chunks/{chunk-VP7D322G.js → chunk-6A7YWTDH.js} +1 -1
- package/dist-cli/chunks/{chunk-NZVA5ZGD.js → chunk-6AXSCU4S.js} +1 -1
- package/dist-cli/chunks/{chunk-Z7ILCEXG.js → chunk-7GX6PWOA.js} +2 -2
- package/dist-cli/chunks/{chunk-2FT3GZ2P.js → chunk-7H7KVISJ.js} +2 -2
- package/dist-cli/chunks/{chunk-U4ZHMDGL.js → chunk-7IXFMHDF.js} +1 -1
- package/dist-cli/chunks/{chunk-3KDMR5FE.js → chunk-B3KW5RNB.js} +2 -2
- package/dist-cli/chunks/{chunk-JJKRVEA6.js → chunk-C5FIGNQO.js} +1 -1
- package/dist-cli/chunks/{chunk-WRPLAFZP.js → chunk-CDLSM2CG.js} +2 -2
- package/dist-cli/chunks/{chunk-RYXIRFY2.js → chunk-DBGUZSSZ.js} +2 -2
- package/dist-cli/chunks/{chunk-MXXR5IDW.js → chunk-DPRJFFAG.js} +3 -3
- package/dist-cli/chunks/{chunk-LXED7YNR.js → chunk-EMPIVO3K.js} +1 -1
- package/dist-cli/chunks/{chunk-DB4DBTM2.js → chunk-GR7ES5RM.js} +2 -2
- package/dist-cli/chunks/{chunk-DEK47I44.js → chunk-HL2T3M2K.js} +3 -3
- package/dist-cli/chunks/{chunk-CYAEO7E3.js → chunk-HPMFCGIJ.js} +2 -2
- package/dist-cli/chunks/{chunk-YNS55EN5.js → chunk-HSBBMOXY.js} +2 -2
- package/dist-cli/chunks/{chunk-UH2S5SLV.js → chunk-IQ3TZS5H.js} +2 -2
- package/dist-cli/chunks/{chunk-JRJDACNV.js → chunk-IWUK7NKH.js} +2 -2
- package/dist-cli/chunks/{chunk-BCGO3XWB.js → chunk-J5RGKRWA.js} +2 -2
- package/dist-cli/chunks/{chunk-AZWECMXO.js → chunk-JAKZI5XW.js} +2 -2
- package/dist-cli/chunks/{chunk-J2EHW26I.js → chunk-JENXSTLF.js} +2 -2
- package/dist-cli/chunks/{chunk-X5C3SLYU.js → chunk-JMATTXDX.js} +1 -1
- package/dist-cli/chunks/{chunk-MYTUISZ3.js → chunk-KXEXEJCK.js} +2 -2
- package/dist-cli/chunks/{chunk-TRGIXJN4.js → chunk-L4ZWROFC.js} +3 -3
- package/dist-cli/chunks/{chunk-MKFOWHFO.js → chunk-LZUAVMRN.js} +1 -1
- package/dist-cli/chunks/{chunk-DMAUBOZ2.js → chunk-M6BDXBBX.js} +1 -1
- package/dist-cli/chunks/{chunk-CKKJUPAA.js → chunk-MLKTJDI4.js} +1 -1
- package/dist-cli/chunks/{chunk-UKKT5KM4.js → chunk-N47YVJNO.js} +2 -2
- package/dist-cli/chunks/{chunk-5ULMLFND.js → chunk-N5DUNSYF.js} +1 -1
- package/dist-cli/chunks/{chunk-EZ2WX6EK.js → chunk-NNPXO7FN.js} +3 -3
- package/dist-cli/chunks/{chunk-L6FANSWV.js → chunk-NPVDNQVZ.js} +1 -1
- package/dist-cli/chunks/{chunk-W34ZT5MF.js → chunk-NZZN7N5T.js} +2 -2
- package/dist-cli/chunks/{chunk-UOK37RTL.js → chunk-ODT3EOJJ.js} +1 -1
- package/dist-cli/chunks/{chunk-TAPZRN4C.js → chunk-PL6N5CU2.js} +1 -1
- package/dist-cli/chunks/{chunk-ZEU5RFAH.js → chunk-RAOGHSN7.js} +2 -2
- package/dist-cli/chunks/{chunk-PH37P7G2.js → chunk-T5CRWQLR.js} +2 -2
- package/dist-cli/chunks/chunk-TOGF7MYL.js +4 -0
- package/dist-cli/chunks/{chunk-NAG3Y5BF.js → chunk-TRYEPGYJ.js} +1 -1
- package/dist-cli/chunks/{chunk-WRNCAZIB.js → chunk-TTODHCTW.js} +2 -2
- package/dist-cli/chunks/{chunk-5JKZGU2L.js → chunk-U2AADABK.js} +1 -1
- package/dist-cli/chunks/{chunk-HWIUC6SX.js → chunk-UKA7NDFM.js} +2 -2
- package/dist-cli/chunks/{chunk-M76E72WP.js → chunk-UXDMXYTX.js} +2 -2
- package/dist-cli/chunks/{chunk-JX5LGYG2.js → chunk-W6PV2XYW.js} +2 -2
- package/dist-cli/chunks/{chunk-PYZHCZFD.js → chunk-WCIXZX5I.js} +2 -2
- package/dist-cli/chunks/{chunk-2C7MJXES.js → chunk-X5ZDVNIE.js} +1 -1
- package/dist-cli/chunks/{chunk-QRHLTYK7.js → chunk-XUAPY2KD.js} +2 -2
- package/dist-cli/chunks/{chunk-CKK6IEZD.js → chunk-ZA67W7D7.js} +1 -1
- package/dist-cli/chunks/{chunk-AVGWPMGX.js → chunk-ZK4KQ2TD.js} +1 -1
- package/dist-cli/chunks/{cleanup-BPGPA6WN.js → cleanup-V2KZHPOA.js} +2 -2
- package/dist-cli/chunks/cli-version-DWSKEOEO.js +4 -0
- package/dist-cli/chunks/{compat-2L5FPDKU.js → compat-RQHJHE2Q.js} +2 -2
- package/dist-cli/chunks/{config-NRXBYFB7.js → config-5MVB76TM.js} +2 -2
- package/dist-cli/chunks/{control-G5SMCB2U.js → control-T4J5JGBR.js} +2 -2
- package/dist-cli/chunks/daemon-6D6ULGTW.js +4 -0
- package/dist-cli/chunks/{debug-CTYLINPI.js → debug-UX6P5BH7.js} +3 -3
- package/dist-cli/chunks/{desktop-JNYUDHX5.js → desktop-CBYXUPMH.js} +3 -3
- package/dist-cli/chunks/{detox-ZWP5MUPJ.js → detox-B6SIPXJD.js} +2 -2
- package/dist-cli/chunks/{device-Y7ANIQJY.js → device-XEGDYSSM.js} +2 -2
- package/dist-cli/chunks/{diagnose-GFPN44ER.js → diagnose-MZPH2KWO.js} +2 -2
- package/dist-cli/chunks/{disk-cleanup-OUHB2MKC.js → disk-cleanup-PVVJXX6R.js} +2 -2
- package/dist-cli/chunks/drivers-IW6E7LM7.js +4 -0
- package/dist-cli/chunks/{film-RNPYZHQA.js → film-2ALX5SOY.js} +3 -3
- package/dist-cli/chunks/flow-W2ZYYD5K.js +4 -0
- package/dist-cli/chunks/help-YHL7MPG4.js +4 -0
- package/dist-cli/chunks/{hidden-runtime-alias-DGMIDDY6.js → hidden-runtime-alias-4Q7EZXOS.js} +2 -2
- package/dist-cli/chunks/{home-paths-YEFW63N5.js → home-paths-HFBMNWOC.js} +2 -2
- package/dist-cli/chunks/inspect-WVXDXHMN.js +4 -0
- package/dist-cli/chunks/install-desktop-55VB3WWL.js +4 -0
- package/dist-cli/chunks/{login-ASAFHSEL.js → login-OBHPF6UA.js} +4 -4
- package/dist-cli/chunks/{logout-F3B5TUCU.js → logout-6WKGJQO7.js} +2 -2
- package/dist-cli/chunks/{maestro-MJD54Z7R.js → maestro-I5WFU3PF.js} +3 -3
- package/dist-cli/chunks/{maestro-generate-PQZ33V42.js → maestro-generate-NNP2N67P.js} +3 -3
- package/dist-cli/chunks/{mode-TKOOHJNS.js → mode-Y4XK5J54.js} +2 -2
- package/dist-cli/chunks/{optional-demo-registry-VX3WVJXT.js → optional-demo-registry-46YP5U6M.js} +2 -2
- package/dist-cli/chunks/{perf-JRREHJB6.js → perf-XEVJTUKL.js} +2 -2
- package/dist-cli/chunks/{permissions-RQZLGYVF.js → permissions-I24GHFT6.js} +2 -2
- package/dist-cli/chunks/{record-LBNBJ6U4.js → record-AYGKXOYA.js} +3 -3
- package/dist-cli/chunks/{report-issue-O63Z4GXO.js → report-issue-WIICO2DJ.js} +2 -2
- package/dist-cli/chunks/reset-BXBLNYH6.js +4 -0
- package/dist-cli/chunks/runtime-RYQEKHHK.js +4 -0
- package/dist-cli/chunks/{screenshot-command-OLZIGKZR.js → screenshot-command-ZC7XYX57.js} +3 -3
- package/dist-cli/chunks/{screenshot-layers-ZCKD62ME.js → screenshot-layers-LAHCPH2S.js} +2 -2
- package/dist-cli/chunks/{screenshots-capture-CJFJACD7.js → screenshots-capture-VN4TB243.js} +2 -2
- package/dist-cli/chunks/{serve-L6QW4B55.js → serve-I66IDV2N.js} +2 -2
- package/dist-cli/chunks/{setup-CHUHRWKS.js → setup-TWBWYYVW.js} +2 -2
- package/dist-cli/chunks/{skills-J44O4CRY.js → skills-ATBYFW3M.js} +2 -2
- package/dist-cli/chunks/{state-MSTCUB5E.js → state-NBWQEDG7.js} +2 -2
- package/dist-cli/chunks/{storage-23Y5YSD3.js → storage-LJ7DMI3K.js} +2 -2
- package/dist-cli/chunks/store-BAITAM2R.js +4 -0
- package/dist-cli/chunks/telemetry-QQOI3O5B.js +4 -0
- package/dist-cli/chunks/{timeline-R7VNARZ5.js → timeline-Q3X2ZL72.js} +2 -2
- package/dist-cli/chunks/{upgrade-YUASBYYN.js → upgrade-2AOUC4ZH.js} +2 -2
- package/dist-cli/chunks/upload-Z7MVZ6B5.js +4 -0
- package/dist-cli/chunks/{version-FSV3NQBN.js → version-ROS6OUSE.js} +2 -2
- package/dist-cli/chunks/{web-LZH2QIJ5.js → web-XM2QS2QN.js} +2 -2
- package/dist-cli/chunks/{what-happened-F45IZ34K.js → what-happened-FVO5EM5T.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 +231 -27
- package/dist-lib/vite.cjs +1 -1
- package/package.json +1 -1
- package/skills/rnx-visual/SKILL.md +9 -3
- package/dist-cli/chunks/chunk-F4SGYRAP.js +0 -4
- package/dist-cli/chunks/cli-version-GJ55D3JI.js +0 -4
- package/dist-cli/chunks/daemon-HDNSS5A3.js +0 -4
- package/dist-cli/chunks/drivers-3PUAZF6B.js +0 -4
- package/dist-cli/chunks/flow-XQUTMOQZ.js +0 -4
- package/dist-cli/chunks/help-C7Y5IENX.js +0 -4
- package/dist-cli/chunks/inspect-4NF3PPRZ.js +0 -4
- package/dist-cli/chunks/install-desktop-66LPKLQI.js +0 -4
- package/dist-cli/chunks/reset-734HPURU.js +0 -4
- package/dist-cli/chunks/runtime-PRF4VZAB.js +0 -4
- package/dist-cli/chunks/store-IK5DQZ2G.js +0 -4
- package/dist-cli/chunks/telemetry-SCC2A4KF.js +0 -4
- package/dist-cli/chunks/upload-BFCTC54P.js +0 -4
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.342 | (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,b as V,c as Le}from"./chunk-
|
|
4
|
+
import{a as K,b as V,c as Le}from"./chunk-UXDMXYTX.js";import{c as Ne,d as Ce}from"./chunk-44LTYSAH.js";import{k as Fe}from"./chunk-IWUK7NKH.js";import{c as _e,d as E}from"./chunk-JAKZI5XW.js";import{a as Ue}from"./chunk-N47YVJNO.js";import{q as Pe,s as $e,u as B}from"./chunk-KXEXEJCK.js";import{a as Ae}from"./chunk-ODT3EOJJ.js";import{createHash as vt}from"crypto";import{readFileSync as M}from"fs";import qe from"path";import{gzipSync as ge,gunzipSync as xt}from"zlib";function Oe(e){let t=(e||"").toLowerCase().split(";")[0].trim();return t?!(t.startsWith("image/")||t.startsWith("video/")||t.startsWith("audio/")||t==="font/woff2"||t==="application/font-woff2"||t==="application/zip"||t==="application/gzip"):!0}import{brotliCompressSync as ct,constants as dt}from"node:zlib";var pt=9;function ze(e){return ct(e,{params:{[dt.BROTLI_PARAM_QUALITY]:pt}})}function ce(e,t){let r=new AbortController,s=setTimeout(()=>r.abort(new Error(`${t} timed out after ${e/1e3}s`)),e);return{signal:r.signal,cancel:()=>clearTimeout(s)}}async function ft(e){let t=ce(12e4,`PUT ${e.url}`),r;try{r=await fetch(e.url,{method:"PUT",headers:{"content-type":e.contentType},body:e.bytes,signal:t.signal})}finally{t.cancel()}if(!r.ok){let s=await r.text().catch(()=>"");throw new Error(`PUT ${e.url} failed ${r.status}: ${s.slice(0,200)}`)}}async function mt(e,t=8,r){let s=0,o=0,i=e.length;await Promise.all(Array.from({length:Math.min(t,i)},async()=>{for(;s<i;){let l=e[s++];await ft(l),o++,r?.(o,i)}}))}function gt(e,t,r,s){let o=[];o.push({url:e.bundle.putUrl,contentType:e.bundle.contentType,bytes:t});for(let i of e.files){let l=r.get(i.urlhash);l&&o.push({url:i.putUrl,contentType:i.contentType,bytes:l})}e.events&&s?.eventsBytes&&o.push({url:e.events.putUrl,contentType:e.events.contentType,bytes:s.eventsBytes}),e.timeline&&s?.timelineBytes&&o.push({url:e.timeline.putUrl,contentType:e.timeline.contentType,bytes:s.timelineBytes}),e.flowVideo&&s?.videoBytes&&o.push({url:e.flowVideo.putUrl,contentType:e.flowVideo.contentType,bytes:s.videoBytes}),e.storage&&s?.storageBytes&&o.push({url:e.storage.putUrl,contentType:e.storage.contentType,bytes:s.storageBytes}),e.failureBundle&&s?.failureBundleBytes&&o.push({url:e.failureBundle.putUrl,contentType:e.failureBundle.contentType,bytes:s.failureBundleBytes});for(let i of e.snapshots??[]){let l=s?.snapshotBytes?.get(i.id);l&&o.push({url:i.putUrl,contentType:i.contentType,bytes:l})}return o}function ht(e){return e.replace(/\/+$/,"")}var W=class extends Error{constructor(r,s,o,i=""){super(r);this.status=s;this.phase=o;this.responseText=i;this.name="PresignedUploadError"}};async function De(e){let t=ht(e.originBase),r={"content-type":"application/json"};e.authHeader&&(r.authorization=e.authHeader),e.adminBypassToken&&(r["x-contrast-admin-upload-bypass"]=e.adminBypassToken);let s=ce(3e4,"init"),o;try{o=await fetch(`${t}/api/preview/upload/init`,{method:"POST",headers:r,body:JSON.stringify(e.initBody),signal:s.signal})}finally{s.cancel()}if(!o.ok){let T=await o.text().catch(()=>"");throw new W(`init failed: ${o.status} ${T.slice(0,200)}`,o.status,"init",T)}let i=await o.json(),l=gt(i,e.bundleBytes,e.filesByHash,e.extras);await mt(l,e.concurrency??8,e.onPutProgress);let f=ce(3e4,"finalize"),c;try{c=await fetch(`${t}/api/preview/upload/finalize`,{method:"POST",headers:r,body:JSON.stringify({token:i.token}),signal:f.signal})}finally{f.cancel()}if(!c.ok){let T=await c.text().catch(()=>"");throw new W(`finalize failed: ${c.status} ${T.slice(0,200)}`,c.status,"finalize",T)}let h=await c.json();return{init:i,finalize:h}}function yt(e){return e!==null&&typeof e=="object"?e:null}function He(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function de(e){let t=yt(e);return t?t.schemaVersion===1&&He(t.t)!==void 0&&He(t.seq)!==void 0&&typeof t.context=="string"&&typeof t.kind=="string"&&"data"in t:!1}function bt(e,t){let r=[];for(let s of e.split(`
|
|
5
5
|
`)){let o=s.trim();if(o)try{let i=JSON.parse(o);t(i)&&r.push(i)}catch{}}return r}function je(e){return bt(e,de)}import{execSync as wt}from"child_process";function fe(e){try{return wt(e,{stdio:["ignore","pipe","ignore"],timeout:3e3,encoding:"utf8"}).trim()||null}catch{return null}}function pe(e){let t=e?.trim();return!t||!/^\d+$/.test(t)?null:Number(t)}function Mt(){let e=fe("git remote get-url origin");if(!e)return null;let t=e.match(/github\.com[/:]([^/\s]+)\/([^/\s]+?)(?:\.git)?\/?$/i);return t?{owner:t[1],repo:t[2]}:null}function me(){let e=process.env.GITHUB_ACTIONS==="true",t=process.env.CONTRAST_BRANCH?.trim()||null,r=process.env.CONTRAST_SHA?.trim()||null,s=process.env.CONTRAST_PR_TITLE?.trim()||null,o=(process.env.CONTRAST_REPO||process.env.GITHUB_REPOSITORY||"").trim(),[i,l]=o.includes("/")?o.split("/",2):[null,null];if(e){let h=process.env.GITHUB_REF?.match(/^refs\/pull\/(\d+)\//)?.[1];return{owner:i,repo:l,branch:t||process.env.GITHUB_HEAD_REF?.trim()||process.env.GITHUB_REF_NAME?.trim()||null,commitSha:r||process.env.GITHUB_SHA?.trim()||null,githubUsername:process.env.GITHUB_ACTOR?.trim()||null,pullRequestNumber:pe(process.env.CONTRAST_PR_NUMBER)??pe(h),pullRequestTitle:s,githubRunId:process.env.GITHUB_RUN_ID?.trim()||null,source:"ci"}}let f=t??fe("git rev-parse --abbrev-ref HEAD"),c=i?null:Mt();return{owner:i??c?.owner??null,repo:l??c?.repo??null,branch:f==="HEAD"?null:f,commitSha:r??fe("git rev-parse HEAD"),githubUsername:null,pullRequestNumber:pe(process.env.CONTRAST_PR_NUMBER),pullRequestTitle:s,githubRunId:null,source:"cli"}}function Qt(e){if(e.length===0)return{stepCount:null,failedStepIndex:null};let t=e.find(r=>r.status==="failure");return{stepCount:e.length,failedStepIndex:t?t.stepIndex:null}}function Xt(e){return e.auth?e.uploadedShare?!0:e.auth.kind==="github"||process.env.GITHUB_ACTIONS==="true":!1}async function Zt(e){let t=e.auth??K();if(!t)return null;let r=me(),s=e.owner??(t.kind==="github"?t.owner:null)??r.owner,o=e.repo??(t.kind==="github"?t.repo:null)??r.repo;try{let i=await fetch(`${e.origin.replace(/\/$/,"")}/api/sootsim/test-runs`,{method:"POST",headers:{"content-type":"application/json",authorization:V(t)},body:JSON.stringify({kind:e.kind,source:r.source,name:e.name??void 0,prompt:e.prompt??void 0,summary:e.summary??void 0,status:e.status,failureMessage:e.failureMessage??void 0,previewShareId:e.previewShareId??void 0,owner:s??void 0,repo:o??void 0,branch:r.branch??void 0,commitSha:r.commitSha??void 0,githubUsername:r.githubUsername??void 0,pullRequestNumber:r.pullRequestNumber??void 0,githubRunId:r.githubRunId??void 0,stepCount:e.stepCount??void 0,failedStepIndex:e.failedStepIndex??void 0,durationMs:e.durationMs??void 0,flowYamlSizeBytes:e.flowYamlSizeBytes??void 0})});if(!i.ok){let f=await i.text().catch(()=>"");return console.warn(` warn: run registration failed: /api/sootsim/test-runs ${i.status}${f?`: ${f.slice(0,200)}`:""}`),null}let l=await i.json();return l.run?.id?{id:l.run.id,previewUrl:l.run.previewUrl??null,traceUrl:l.run.traceUrl??null}:(console.warn(" warn: run registration returned no id"),null)}catch(i){return console.warn(` warn: run registration failed: ${i instanceof Error?i.message:String(i)}`),null}}function Rt(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t.message=="string"&&t.message?t.message:null}catch{return null}}function kt(e){let t=JSON.parse(M(e,"utf8"));if(!Array.isArray(t))throw new Error("snapshot manifest must be an array");let r=new Set;return t.map((s,o)=>{if(s===null||typeof s!="object")throw new Error(`snapshot manifest entry ${o} must be an object`);let i=Reflect.get(s,"id"),l=Reflect.get(s,"label"),f=Reflect.get(s,"path"),c=Reflect.get(s,"t");if(typeof i!="string"||!i||r.has(i))throw new Error(`snapshot manifest entry ${o} has an invalid or duplicate id`);if(typeof f!="string"||!f)throw new Error(`snapshot manifest entry ${o} has no PNG path`);if(typeof c!="number"||!Number.isFinite(c)||c<0)throw new Error(`snapshot manifest entry ${o} has an invalid capture time`);r.add(i);let h=M(f);return{meta:{id:i,label:typeof l=="string"&&l?l:i,kind:"interaction",t:Math.round(c),contentType:"image/png",sizeBytes:h.byteLength},bytes:h}})}var We=process.env.SOOTSIM_UPLOAD_ORIGIN||"https://contrast.dev",Ye=process.env.SOOTSIM_PREVIEW_ORIGIN||Ae.origin,ye="https://contrast.localhost:3000",Et=2e3;async function Bt(e){if(e)return e;if(process.env.SOOTSIM_UPLOAD_ORIGIN)return process.env.SOOTSIM_UPLOAD_ORIGIN;try{let t=await fetch(`${ye}/api/preview/upload/init`,{method:"OPTIONS",signal:AbortSignal.timeout(Et)});if(t.ok||t.status===204||t.status===405)return ye}catch{}return We}function C(e){return e.replace(/\/$/,"")}function It(e){try{let r=new URL(e).hostname.replace(/^\[|\]$/g,"").toLowerCase();return r==="localhost"||r.endsWith(".localhost")||r==="0.0.0.0"||r==="::1"||/^127(?:\.\d{1,3}){3}$/.test(r)}catch{return!1}}function At(e){try{let t=new URL(e).hostname.toLowerCase();return t==="contrast.dev"||t.endsWith(".contrast.dev")}catch{return!1}}function Ut(e,t){return t?C(t):process.env.SOOTSIM_PREVIEW_ORIGIN?C(process.env.SOOTSIM_PREVIEW_ORIGIN):It(e)?C(e):At(e)?C(Ye):C(e)}function _t(){console.log(`
|
|
6
6
|
rnx record upload \u2014 publish the current recorded bundle as a /preview/<id> link
|
|
7
7
|
|