sootsim 0.1.185 → 0.1.186
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 +3 -3
- package/dist-cli/chunks/{agent-VF756RZU.js → agent-HOCS7BA7.js} +2 -2
- package/dist-cli/chunks/{agent-wrapper-IAFL7ROV.js → agent-wrapper-OFIKO65K.js} +2 -2
- package/dist-cli/chunks/{app-fonts-VWLEC7ZA.js → app-fonts-PXVMBZZ7.js} +2 -2
- package/dist-cli/chunks/{assert-I55QVGG7.js → assert-OZS6AXZE.js} +2 -2
- package/dist-cli/chunks/beta-LUMNYREE.js +2 -0
- package/dist-cli/chunks/{camera-CYYBJH7W.js → camera-QJ2PKIJB.js} +2 -2
- package/dist-cli/chunks/{chunk-2T73IGB2.js → chunk-2B2D2EBR.js} +2 -2
- package/dist-cli/chunks/{chunk-ARNLQPMQ.js → chunk-353E6UCU.js} +2 -2
- package/dist-cli/chunks/chunk-3ISH4ZRW.js +1 -0
- package/dist-cli/chunks/{chunk-PIUKLO3W.js → chunk-4HVMPXJZ.js} +1 -1
- package/dist-cli/chunks/chunk-5TTEOJ4A.js +1 -0
- package/dist-cli/chunks/chunk-5XIRXMOS.js +971 -0
- package/dist-cli/chunks/chunk-6MJVRIUP.js +118 -0
- package/dist-cli/chunks/{chunk-EXFB33AZ.js → chunk-6OQVIQY7.js} +2 -2
- package/dist-cli/chunks/chunk-BU5CRHHR.js +24 -0
- package/dist-cli/chunks/{chunk-TUF6EPCQ.js → chunk-DPXVA7ZF.js} +2 -2
- package/dist-cli/chunks/{chunk-R4KLD4P4.js → chunk-FN64EREO.js} +2 -2
- package/dist-cli/chunks/{chunk-BI56RR3G.js → chunk-FUHNIWFL.js} +4 -4
- package/dist-cli/chunks/{chunk-WEJKLJ4B.js → chunk-GNGEYMS3.js} +2 -2
- package/dist-cli/chunks/{chunk-QTFCJYBF.js → chunk-I65LTDPY.js} +3 -3
- package/dist-cli/chunks/{chunk-BMCBPMTC.js → chunk-INIASYOZ.js} +1 -1
- package/dist-cli/chunks/{chunk-FUHXL6BW.js → chunk-KNICGV7H.js} +1 -1
- package/dist-cli/chunks/{chunk-E5DE33BU.js → chunk-LV7DFIBL.js} +1 -1
- package/dist-cli/chunks/{chunk-M3P67TBN.js → chunk-MAGDSBXT.js} +1 -1
- package/dist-cli/chunks/chunk-MP4CRGWM.js +2 -0
- package/dist-cli/chunks/{chunk-MADEJDFD.js → chunk-MPUCQL3Q.js} +1 -1
- package/dist-cli/chunks/{chunk-FY6DJGOS.js → chunk-N3PLEUYD.js} +39 -15
- package/dist-cli/chunks/{chunk-CYBRFHPU.js → chunk-NYYP5QQK.js} +2 -2
- package/dist-cli/chunks/{chunk-4OUQAR34.js → chunk-O2SQQXUO.js} +1 -1
- package/dist-cli/chunks/{chunk-K2THZIVC.js → chunk-OMFESSKA.js} +1 -1
- package/dist-cli/chunks/{chunk-C3UEINOZ.js → chunk-P5UT637B.js} +2 -2
- package/dist-cli/chunks/{chunk-C63EVPDN.js → chunk-POOE26UD.js} +2 -2
- package/dist-cli/chunks/{chunk-HQG4DRQ3.js → chunk-PTUTIFWJ.js} +1 -1
- package/dist-cli/chunks/{chunk-IJP257WP.js → chunk-QBLTH2F6.js} +1 -1
- package/dist-cli/chunks/{chunk-LJ3SOZBF.js → chunk-RAY2ZSNI.js} +2 -2
- package/dist-cli/chunks/{chunk-DZLBZGHN.js → chunk-RDM3LVH2.js} +2 -2
- package/dist-cli/chunks/chunk-RP5CVR6O.js +382 -0
- package/dist-cli/chunks/{chunk-PKZNXDUJ.js → chunk-TYV3FMBE.js} +2 -2
- package/dist-cli/chunks/{chunk-4NUQVW5P.js → chunk-U3BTJLRM.js} +17 -6
- package/dist-cli/chunks/{chunk-QQ4NSPAD.js → chunk-UATE6GSA.js} +2 -2
- package/dist-cli/chunks/chunk-V434ATFM.js +13 -0
- package/dist-cli/chunks/{chunk-GX6MKIFC.js → chunk-VGAD3CMW.js} +1 -1
- package/dist-cli/chunks/{chunk-LI4RLX6B.js → chunk-VPUJQTEO.js} +1 -1
- package/dist-cli/chunks/chunk-WBPTJ3WC.js +5 -0
- package/dist-cli/chunks/{chunk-NL5IFN4T.js → chunk-WFSLSEGX.js} +2 -2
- package/dist-cli/chunks/{chunk-TFZO277G.js → chunk-XFQOFRYY.js} +1 -1
- package/dist-cli/chunks/{chunk-TNHF6BON.js → chunk-XQ6PPMM6.js} +1 -1
- package/dist-cli/chunks/{chunk-FHJTTB3W.js → chunk-YYZGAZQI.js} +2 -2
- package/dist-cli/chunks/{chunk-WBY4JJ2K.js → chunk-ZE2O7AA5.js} +2 -2
- package/dist-cli/chunks/{chunk-X4KS33ZC.js → chunk-ZJ64K2PL.js} +2 -2
- package/dist-cli/chunks/cli-version-474OBNTF.js +2 -0
- package/dist-cli/chunks/{compat-ZJA3N4ZT.js → compat-BNXJOVMU.js} +3 -3
- package/dist-cli/chunks/control-6LPRGKTF.js +2 -0
- package/dist-cli/chunks/{cpu-profile-ACSQMVXY.js → cpu-profile-3KXOGOJP.js} +2 -2
- package/dist-cli/chunks/daemon-OMT3RVU4.js +2 -0
- package/dist-cli/chunks/{debug-W2ZOVTQO.js → debug-B3MN6772.js} +11 -10
- package/dist-cli/chunks/{detox-ANJO6T27.js → detox-YKSX4DUO.js} +2 -2
- package/dist-cli/chunks/{device-KPPN4KYD.js → device-NZX6AKQI.js} +2 -2
- package/dist-cli/chunks/{diagnose-5PEJYGES.js → diagnose-26HE6KS5.js} +2 -2
- package/dist-cli/chunks/drivers-2PZC4QA3.js +2 -0
- package/dist-cli/chunks/{electron-U456QLSQ.js → electron-XEUWIM47.js} +3 -3
- package/dist-cli/chunks/flow-P22NDT6V.js +2 -0
- package/dist-cli/chunks/help-ECGL4JSP.js +2 -0
- package/dist-cli/chunks/{hints-MBBQLMQU.js → hints-C56M4PMW.js} +2 -2
- package/dist-cli/chunks/{home-paths-KQKYP2SE.js → home-paths-EYH3RBPS.js} +2 -2
- package/dist-cli/chunks/inspect-LJYG4WC6.js +2 -0
- package/dist-cli/chunks/{install-desktop-OR6ZJ43X.js → install-desktop-UWHLWFKB.js} +3 -3
- package/dist-cli/chunks/{keys-JSQMBUE7.js → keys-Q37NM52E.js} +2 -2
- package/dist-cli/chunks/{login-DVMWAI3G.js → login-6E6ZEJRF.js} +4 -4
- package/dist-cli/chunks/{logout-RIVPFE5N.js → logout-A7QHH6DQ.js} +2 -2
- package/dist-cli/chunks/{maestro-TX6FPTVH.js → maestro-YJRGFGDQ.js} +2 -2
- package/dist-cli/chunks/optional-demo-registry-OVWOHGTW.js +2 -0
- package/dist-cli/chunks/{preview-3AD7WNA6.js → preview-3OYFVL4A.js} +2 -2
- package/dist-cli/chunks/{profile-HY55VFNR.js → profile-5Z2YGBCJ.js} +2 -2
- package/dist-cli/chunks/{react-HDRCKCKV.js → react-ZNFFE3VQ.js} +2 -2
- package/dist-cli/chunks/{record-HW4C7QYN.js → record-V4CBW3GG.js} +2 -2
- package/dist-cli/chunks/runtime-OC6S2C22.js +2 -0
- package/dist-cli/chunks/{screenshot-XFR3QN5T.js → screenshot-QWMRWTIQ.js} +2 -2
- package/dist-cli/chunks/{screenshot-mode-Y5CVO267.js → screenshot-mode-36EUFBF5.js} +2 -2
- package/dist-cli/chunks/{screenshots-RKUL2ZZT.js → screenshots-LOS6WHZN.js} +2 -2
- package/dist-cli/chunks/{screenshots-capture-RVNF75ZD.js → screenshots-capture-6D6TBI6A.js} +2 -2
- package/dist-cli/chunks/{serve-QMRYLWL5.js → serve-YWGZ2JSI.js} +16 -16
- package/dist-cli/chunks/{setup-ELNJS7AI.js → setup-JS35KZ6P.js} +3 -3
- package/dist-cli/chunks/{skills-GPSJYS4W.js → skills-2TRDAXNC.js} +2 -2
- package/dist-cli/chunks/{slides-OCFNPIFG.js → slides-AO5MBP5Q.js} +2 -2
- package/dist-cli/chunks/store-HQKPCA6W.js +2 -0
- package/dist-cli/chunks/telemetry-I2H25VVF.js +2 -0
- package/dist-cli/chunks/{telemetry-KFZQUFG5.js → telemetry-MBWJUKBU.js} +2 -2
- package/dist-cli/chunks/{test-Z2HZXCZM.js → test-TRP2O6AP.js} +3 -3
- package/dist-cli/chunks/{three-mode-NKJFCDYS.js → three-mode-VVNOGAZT.js} +2 -2
- package/dist-cli/chunks/{timeline-PRGQMQRR.js → timeline-4WDFXUXB.js} +2 -2
- package/dist-cli/chunks/{upgrade-3NW7JRRX.js → upgrade-NHQRFD4J.js} +2 -2
- package/dist-cli/chunks/upload-6C2EC56N.js +2 -0
- package/dist-cli/chunks/{version-FDTZRIYT.js → version-T7O46MZL.js} +2 -2
- package/dist-cli/chunks/{web-4N5QQEQJ.js → web-7YW2ISLF.js} +2 -2
- package/dist-cli/chunks/{what-happened-IX2RRCOS.js → what-happened-IDOUXSFI.js} +2 -2
- package/dist-cli/chunks/{whoami-QZ42FYYF.js → whoami-DQBR3UTO.js} +2 -2
- package/dist-lib/agent-daemon-client.cjs +1 -1
- package/dist-lib/agent-events.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/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 +2 -2
- package/dist-lib/host/bridge-host.cjs +77 -44
- 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/websocket-proxy.cjs +1 -1
- package/dist-lib/index.cjs +28 -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.cjs +28 -1
- package/dist-lib/profiles.cjs +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 +38 -10
- package/dist-lib/sdk.mjs +38 -10
- package/dist-lib/skills.cjs +283 -254
- package/dist-lib/vite.cjs +28 -1
- package/package.json +1 -1
- package/src/home-paths.ts +8 -1
- package/src/host/bridge-host.ts +15 -1
- package/src/runtime-assets.ts +70 -0
- package/src/vite-plugin.ts +9 -0
- package/dist-cli/chunks/beta-X6YPQVZH.js +0 -2
- package/dist-cli/chunks/chunk-7OAUPGLN.js +0 -23
- package/dist-cli/chunks/chunk-IGJHME3T.js +0 -1
- package/dist-cli/chunks/chunk-JRL7PFNZ.js +0 -463
- package/dist-cli/chunks/chunk-KOKIECMB.js +0 -118
- package/dist-cli/chunks/chunk-OAHGYDJR.js +0 -13
- package/dist-cli/chunks/chunk-PDLQWZN4.js +0 -2
- package/dist-cli/chunks/chunk-SL6565MR.js +0 -1
- package/dist-cli/chunks/chunk-V4M2R6FZ.js +0 -2
- package/dist-cli/chunks/chunk-V5JEPE3P.js +0 -5
- package/dist-cli/chunks/chunk-XU5EMZ4B.js +0 -264
- package/dist-cli/chunks/cli-version-ICHQMND6.js +0 -2
- package/dist-cli/chunks/control-CZFSYSYG.js +0 -2
- package/dist-cli/chunks/daemon-337B4P3B.js +0 -2
- package/dist-cli/chunks/drivers-MSDIFHBD.js +0 -2
- package/dist-cli/chunks/flow-JL3SC6HC.js +0 -2
- package/dist-cli/chunks/help-PA4RTR5X.js +0 -2
- package/dist-cli/chunks/inspect-ZP5SM4EW.js +0 -987
- package/dist-cli/chunks/optional-demo-registry-ONYG6DUI.js +0 -2
- package/dist-cli/chunks/runtime-RHHPW5WO.js +0 -2
- package/dist-cli/chunks/store-MBKDUQEQ.js +0 -2
- package/dist-cli/chunks/telemetry-46XXIUEE.js +0 -2
- package/dist-cli/chunks/upload-QVDVJ6ZK.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
2
|
-
import{C as N,D as F,F as y,Q as T,R as b,S}from"./chunk-
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
+
import{C as N,D as F,F as y,Q as T,R as b,S}from"./chunk-N3PLEUYD.js";import{g as A,i as _}from"./chunk-BU5CRHHR.js";import"./chunk-MP4CRGWM.js";import{b as k}from"./chunk-LV7DFIBL.js";import"./chunk-FUHNIWFL.js";import"./chunk-VGAD3CMW.js";function O(n){let t=[];for(let e=0;e<n.length;e++)if(n[e]==="--since"&&e+1<n.length){t.push(e,e+1);let s=n[e+1].trim(),l=/^(\d+(?:\.\d+)?)(ms|s|m)?$/.exec(s);if(l){let r=Number(l[1]),u=l[2]??"ms",v=u==="s"?r*1e3:u==="m"?r*6e4:r;return{since:Date.now()-v,consumed:t}}let i=Number(s);if(Number.isFinite(i)&&i>1e12)return{since:i,consumed:t}}return{consumed:t}}function B(n){let t=[];for(let e=0;e<n.length;e++)if(n[e]==="--kinds"&&e+1<n.length)return t.push(e,e+1),{kinds:n[e+1].split(",").map(s=>s.trim()).filter(Boolean),consumed:t};return{consumed:t}}function D(n){let t=[];for(let e=0;e<n.length;e++)if(n[e]==="--limit"&&e+1<n.length){t.push(e,e+1);let s=Number(n[e+1]);if(Number.isFinite(s)&&s>0)return{limit:s,consumed:t}}return{consumed:t}}function x(n){let t=[],e={label:"initial state",events:[],startedAt:n[0]?.t??null};t.push(e);for(let s of n)if(e.events.push(s),s.kind==="screen"||s.kind==="route"){let l=s.data,i=l?.phase;if(!i||i==="enter"||i==="appear"||i==="active"){let r=l?.name||l?.activeName||l?.path||l?.pathname||s.kind;t.length===1&&e.events.length===1?e.label=`${s.kind}: ${r}`:(e={label:`${s.kind}: ${r}`,events:[],startedAt:s.t},t.push(e))}}return t}async function J(n,t){let e=A(n,{port:t.port,stripBooleanFlags:["--summary","--all","--json","--no-advance","--help","-h","--flow","--noisy"],stripValueFlags:["--since","--kinds","--limit"]});(n.includes("--help")||n.includes("-h"))&&(console.log(`
|
|
3
3
|
sootsim what-happened \u2014 show recent events from the semantic timeline
|
|
4
4
|
|
|
5
5
|
usage:
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
2
|
-
import{d as i}from"./chunk-
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
+
import{d as i}from"./chunk-TYV3FMBE.js";import{d as n}from"./chunk-RAY2ZSNI.js";import"./chunk-FUHNIWFL.js";import"./chunk-VGAD3CMW.js";async function u(){let o=i();if(o||(console.log(" not signed in"),console.log(" set SOOTSIM_API_KEY=sk_sootsim_\u2026 or run `sootsim login`"),process.exit(1)),o.kind==="api-key"){let r=`${o.secret.slice(0,14)}\u2026`,t=o.source==="env"?"SOOTSIM_API_KEY env var":"saved key (~/.config/sootsim/credentials.json)";console.log(` api key ${r}`),console.log(` source: ${t}`);return}if(o.kind==="github"){console.log(` github token (${o.source})`),console.log(` repo: ${o.repoId}`);return}let e=await n(),s=e?.user;console.log(` ${s?.email||s?.name||s?.id||"signed in"}`),console.log(` origin: ${e?.origin??o.origin}`),e?.updatedAt&&console.log(` updated: ${e.updatedAt}`)}export{u as runWhoami};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/beta.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/beta.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/config.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/detox/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/home-paths.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -271,7 +271,7 @@ function readDevBridgeLockfile() {
|
|
|
271
271
|
const bytesRead = import_node_fs.default.readSync(fd, buf, 0, DAEMON_LOCKFILE_MAX_BYTES, 0);
|
|
272
272
|
const raw = buf.subarray(0, bytesRead).toString("utf8");
|
|
273
273
|
const parsed = JSON.parse(raw);
|
|
274
|
-
if (parsed && parsed.schema === 1 && parsed.source === "vite-dev" && typeof parsed.pid === "number" && typeof parsed.bridgePort === "number" && typeof parsed.runtimePort === "number" && typeof parsed.cwd === "string" && typeof parsed.startedAt === "number" && typeof parsed.heartbeatAt === "number") {
|
|
274
|
+
if (parsed && parsed.schema === 1 && parsed.source === "vite-dev" && typeof parsed.pid === "number" && typeof parsed.bridgePort === "number" && typeof parsed.runtimePort === "number" && typeof parsed.cwd === "string" && typeof parsed.startedAt === "number" && typeof parsed.heartbeatAt === "number" && (parsed.shellPort === void 0 || typeof parsed.shellPort === "number")) {
|
|
275
275
|
return parsed;
|
|
276
276
|
}
|
|
277
277
|
return null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -71,9 +71,9 @@ __export(bridge_host_exports, {
|
|
|
71
71
|
});
|
|
72
72
|
module.exports = __toCommonJS(bridge_host_exports);
|
|
73
73
|
var import_child_process4 = require("child_process");
|
|
74
|
-
var
|
|
74
|
+
var import_fs4 = __toESM(require("fs"), 1);
|
|
75
75
|
var import_http3 = require("http");
|
|
76
|
-
var
|
|
76
|
+
var import_path4 = __toESM(require("path"), 1);
|
|
77
77
|
var import_ws2 = require("ws");
|
|
78
78
|
|
|
79
79
|
// scripts/dev-server-scanner.ts
|
|
@@ -156,10 +156,10 @@ function tcpPing(port, timeout = TCP_GATE_MS) {
|
|
|
156
156
|
sock.connect(port, "localhost");
|
|
157
157
|
});
|
|
158
158
|
}
|
|
159
|
-
function httpGet(port,
|
|
159
|
+
function httpGet(port, path9, method = "GET", timeout = TIMEOUT_MS, headers = {}) {
|
|
160
160
|
return new Promise((resolve) => {
|
|
161
161
|
const req = import_http.default.request(
|
|
162
|
-
{ hostname: "localhost", port, path:
|
|
162
|
+
{ hostname: "localhost", port, path: path9, method, timeout, headers },
|
|
163
163
|
(res) => {
|
|
164
164
|
let body = "";
|
|
165
165
|
res.on("data", (c) => body += c.toString());
|
|
@@ -786,11 +786,40 @@ function removeDevBridgeLockfile() {
|
|
|
786
786
|
}
|
|
787
787
|
}
|
|
788
788
|
|
|
789
|
+
// src/runtime-assets.ts
|
|
790
|
+
var import_fs = __toESM(require("fs"), 1);
|
|
791
|
+
var import_path = __toESM(require("path"), 1);
|
|
792
|
+
var import_url = require("url");
|
|
793
|
+
var _monorepoRootCache;
|
|
794
|
+
function findMonorepoRoot() {
|
|
795
|
+
if (_monorepoRootCache !== void 0) return _monorepoRootCache;
|
|
796
|
+
let dir = import_path.default.dirname((0, import_url.fileURLToPath)(__sootsim_import_meta_url));
|
|
797
|
+
for (let i = 0; i < 12 && dir !== import_path.default.dirname(dir); i++) {
|
|
798
|
+
if (import_fs.default.existsSync(import_path.default.join(dir, "packages/sootsim-engine/package.json")) && import_fs.default.existsSync(import_path.default.join(dir, "public/sootsim"))) {
|
|
799
|
+
_monorepoRootCache = dir;
|
|
800
|
+
return dir;
|
|
801
|
+
}
|
|
802
|
+
dir = import_path.default.dirname(dir);
|
|
803
|
+
}
|
|
804
|
+
_monorepoRootCache = null;
|
|
805
|
+
return null;
|
|
806
|
+
}
|
|
807
|
+
function resolveDevCheckoutRuntimeRoot() {
|
|
808
|
+
if (process.env.SOOTSIM_HOME && readActiveRuntime()) return null;
|
|
809
|
+
const root = findMonorepoRoot();
|
|
810
|
+
if (!root) return null;
|
|
811
|
+
const devBuild = import_path.default.join(root, "public/sootsim");
|
|
812
|
+
if (import_fs.default.existsSync(import_path.default.join(devBuild, "index.html")) && import_fs.default.existsSync(import_path.default.join(devBuild, "engine/index.html")) && import_fs.default.existsSync(import_path.default.join(devBuild, "engine-tenant/worker.js"))) {
|
|
813
|
+
return devBuild;
|
|
814
|
+
}
|
|
815
|
+
return null;
|
|
816
|
+
}
|
|
817
|
+
|
|
789
818
|
// src/runtime-delivery.ts
|
|
790
819
|
var import_child_process2 = require("child_process");
|
|
791
820
|
var import_crypto = __toESM(require("crypto"), 1);
|
|
792
|
-
var
|
|
793
|
-
var
|
|
821
|
+
var import_fs2 = __toESM(require("fs"), 1);
|
|
822
|
+
var import_path2 = __toESM(require("path"), 1);
|
|
794
823
|
var import_stream = require("stream");
|
|
795
824
|
var import_promises = require("stream/promises");
|
|
796
825
|
var DEFAULT_RUNTIME_CDN_ORIGIN = "https://sootbean.com";
|
|
@@ -798,7 +827,7 @@ var RUNTIME_CDN_ORIGIN_ENV = "SOOTSIM_CDN_ORIGIN";
|
|
|
798
827
|
var RUNTIME_CHANNEL_ENV = "SOOTSIM_RUNTIME_CHANNEL";
|
|
799
828
|
function readConfig() {
|
|
800
829
|
try {
|
|
801
|
-
const parsed = JSON.parse(
|
|
830
|
+
const parsed = JSON.parse(import_fs2.default.readFileSync(configFilePath(), "utf8"));
|
|
802
831
|
return parsed && typeof parsed === "object" ? parsed : {};
|
|
803
832
|
} catch {
|
|
804
833
|
return {};
|
|
@@ -852,7 +881,7 @@ async function installRuntime(opts = {}) {
|
|
|
852
881
|
const { version, channel, entry } = resolveRuntimeVersion(manifest, opts);
|
|
853
882
|
const destDir = runtimeDir(version);
|
|
854
883
|
const setActive = opts.setActive !== false;
|
|
855
|
-
if (!opts.force &&
|
|
884
|
+
if (!opts.force && import_fs2.default.existsSync(import_path2.default.join(destDir, "index.html"))) {
|
|
856
885
|
if (setActive) writeActiveRuntime(version);
|
|
857
886
|
return {
|
|
858
887
|
version,
|
|
@@ -865,7 +894,7 @@ async function installRuntime(opts = {}) {
|
|
|
865
894
|
};
|
|
866
895
|
}
|
|
867
896
|
const tarUrl = entry.tarball || runtimeTarballUrl(version, cdnOrigin);
|
|
868
|
-
const tarCachePath =
|
|
897
|
+
const tarCachePath = import_path2.default.join(cacheDir(), `sootsim-runtime-${version}.tar.gz`);
|
|
869
898
|
process.stderr.write(`sootsim: downloading runtime ${version}\u2026
|
|
870
899
|
`);
|
|
871
900
|
await downloadToFile(tarUrl, tarCachePath);
|
|
@@ -873,23 +902,23 @@ async function installRuntime(opts = {}) {
|
|
|
873
902
|
`);
|
|
874
903
|
const actualSha = await sha256File(tarCachePath);
|
|
875
904
|
if (actualSha !== entry.sha256) {
|
|
876
|
-
|
|
905
|
+
import_fs2.default.rmSync(tarCachePath, { force: true });
|
|
877
906
|
throw new Error(
|
|
878
907
|
`sha256 mismatch for runtime ${version}: expected ${entry.sha256}, actual ${actualSha}`
|
|
879
908
|
);
|
|
880
909
|
}
|
|
881
|
-
const tmpDir =
|
|
882
|
-
|
|
883
|
-
|
|
910
|
+
const tmpDir = import_path2.default.join(import_path2.default.dirname(destDir), `.installing-${version}-${process.pid}`);
|
|
911
|
+
import_fs2.default.rmSync(tmpDir, { recursive: true, force: true });
|
|
912
|
+
import_fs2.default.mkdirSync(tmpDir, { recursive: true });
|
|
884
913
|
try {
|
|
885
914
|
await extractTarball(tarCachePath, tmpDir);
|
|
886
|
-
if (!
|
|
915
|
+
if (!import_fs2.default.existsSync(import_path2.default.join(tmpDir, "index.html"))) {
|
|
887
916
|
throw new Error(`extracted tarball for runtime ${version} is missing index.html`);
|
|
888
917
|
}
|
|
889
|
-
|
|
890
|
-
|
|
918
|
+
import_fs2.default.rmSync(destDir, { recursive: true, force: true });
|
|
919
|
+
import_fs2.default.renameSync(tmpDir, destDir);
|
|
891
920
|
} catch (err) {
|
|
892
|
-
|
|
921
|
+
import_fs2.default.rmSync(tmpDir, { recursive: true, force: true });
|
|
893
922
|
throw err;
|
|
894
923
|
}
|
|
895
924
|
if (setActive) writeActiveRuntime(version);
|
|
@@ -929,7 +958,7 @@ async function updateRuntimeToLatest(opts = {}) {
|
|
|
929
958
|
}
|
|
930
959
|
const activeVersion = readActiveRuntime();
|
|
931
960
|
const activeDir = activeVersion ? runtimeDir(activeVersion) : null;
|
|
932
|
-
const activeInstalled = activeDir ?
|
|
961
|
+
const activeInstalled = activeDir ? import_fs2.default.existsSync(import_path2.default.join(activeDir, "index.html")) : false;
|
|
933
962
|
const shouldInstall = !activeVersion || !activeInstalled || compareSemver(latestVersion, activeVersion) > 0;
|
|
934
963
|
if (!shouldInstall) {
|
|
935
964
|
return {
|
|
@@ -959,17 +988,17 @@ async function downloadToFile(url, destPath) {
|
|
|
959
988
|
if (!res.ok || !res.body) {
|
|
960
989
|
throw new Error(`download failed: ${res.status} ${res.statusText} (${url})`);
|
|
961
990
|
}
|
|
962
|
-
|
|
991
|
+
import_fs2.default.mkdirSync(import_path2.default.dirname(destPath), { recursive: true });
|
|
963
992
|
const tmp = `${destPath}.partial`;
|
|
964
993
|
try {
|
|
965
994
|
await (0, import_promises.pipeline)(
|
|
966
995
|
import_stream.Readable.fromWeb(res.body),
|
|
967
|
-
|
|
996
|
+
import_fs2.default.createWriteStream(tmp)
|
|
968
997
|
);
|
|
969
|
-
|
|
998
|
+
import_fs2.default.renameSync(tmp, destPath);
|
|
970
999
|
} catch (err) {
|
|
971
1000
|
try {
|
|
972
|
-
|
|
1001
|
+
import_fs2.default.unlinkSync(tmp);
|
|
973
1002
|
} catch {
|
|
974
1003
|
}
|
|
975
1004
|
throw err;
|
|
@@ -978,7 +1007,7 @@ async function downloadToFile(url, destPath) {
|
|
|
978
1007
|
function sha256File(filePath) {
|
|
979
1008
|
return new Promise((resolve, reject) => {
|
|
980
1009
|
const hash = import_crypto.default.createHash("sha256");
|
|
981
|
-
const stream =
|
|
1010
|
+
const stream = import_fs2.default.createReadStream(filePath);
|
|
982
1011
|
stream.on("data", (chunk) => hash.update(chunk));
|
|
983
1012
|
stream.on("error", reject);
|
|
984
1013
|
stream.on("end", () => resolve(hash.digest("hex")));
|
|
@@ -2546,9 +2575,9 @@ function handleAppApiRequest(req, res) {
|
|
|
2546
2575
|
|
|
2547
2576
|
// src/host/open-url.ts
|
|
2548
2577
|
var import_child_process3 = require("child_process");
|
|
2549
|
-
var
|
|
2578
|
+
var import_fs3 = require("fs");
|
|
2550
2579
|
var import_os = require("os");
|
|
2551
|
-
var
|
|
2580
|
+
var import_path3 = require("path");
|
|
2552
2581
|
var MAC_CHROMIUM_CANDIDATES = [
|
|
2553
2582
|
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
|
|
2554
2583
|
"~/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
|
|
@@ -2586,12 +2615,12 @@ var UNIX_CHROMIUM_COMMANDS = [
|
|
|
2586
2615
|
];
|
|
2587
2616
|
var WINDOWS_CHROMIUM_COMMANDS = ["chrome", "msedge", "brave"];
|
|
2588
2617
|
function expandHome(candidate) {
|
|
2589
|
-
return candidate.startsWith("~/") ? (0,
|
|
2618
|
+
return candidate.startsWith("~/") ? (0, import_path3.join)((0, import_os.homedir)(), candidate.slice(2)) : candidate;
|
|
2590
2619
|
}
|
|
2591
2620
|
function firstExisting(candidates) {
|
|
2592
2621
|
for (const candidate of candidates) {
|
|
2593
2622
|
const expanded = expandHome(candidate);
|
|
2594
|
-
if ((0,
|
|
2623
|
+
if ((0, import_fs3.existsSync)(expanded)) return expanded;
|
|
2595
2624
|
}
|
|
2596
2625
|
return null;
|
|
2597
2626
|
}
|
|
@@ -2610,7 +2639,7 @@ function lookupExecutable(command, platform) {
|
|
|
2610
2639
|
}
|
|
2611
2640
|
function resolveChromiumBinary(platform = process.platform) {
|
|
2612
2641
|
const envCandidate = process.env.CHROME_PATH || process.env.CHROMIUM_PATH;
|
|
2613
|
-
if (envCandidate && (0,
|
|
2642
|
+
if (envCandidate && (0, import_fs3.existsSync)(envCandidate)) return envCandidate;
|
|
2614
2643
|
const direct = platform === "darwin" ? firstExisting(MAC_CHROMIUM_CANDIDATES) : platform === "win32" ? firstExisting(WINDOWS_CHROMIUM_CANDIDATES) : firstExisting(LINUX_CHROMIUM_CANDIDATES);
|
|
2615
2644
|
if (direct) return direct;
|
|
2616
2645
|
const commands = platform === "win32" ? WINDOWS_CHROMIUM_COMMANDS : UNIX_CHROMIUM_COMMANDS;
|
|
@@ -2982,6 +3011,7 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
2982
3011
|
automationSimActiveGraceMs;
|
|
2983
3012
|
shouldWriteLockfile;
|
|
2984
3013
|
shouldWriteDevLockfile;
|
|
3014
|
+
getShellPort;
|
|
2985
3015
|
sootbeanOrigin = null;
|
|
2986
3016
|
effectivePort = 0;
|
|
2987
3017
|
startedAt = 0;
|
|
@@ -3014,6 +3044,7 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3014
3044
|
this.port = this.preferredPort;
|
|
3015
3045
|
this.shouldWriteLockfile = opts.writeLockfile === true;
|
|
3016
3046
|
this.shouldWriteDevLockfile = opts.writeDevLockfile === true;
|
|
3047
|
+
this.getShellPort = opts.getShellPort ?? null;
|
|
3017
3048
|
this.portFallbackCount = Math.max(1, opts.portFallbackCount ?? 10);
|
|
3018
3049
|
this.openUrlHandler = opts.openUrl;
|
|
3019
3050
|
this.agentHost = new AgentHost({
|
|
@@ -3619,12 +3650,14 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3619
3650
|
};
|
|
3620
3651
|
}
|
|
3621
3652
|
buildDevLockfileSnapshot() {
|
|
3653
|
+
const shellPort = this.getShellPort?.() ?? null;
|
|
3622
3654
|
return {
|
|
3623
3655
|
schema: 1,
|
|
3624
3656
|
pid: process.pid,
|
|
3625
3657
|
platform: process.platform,
|
|
3626
3658
|
bridgePort: this.effectivePort,
|
|
3627
3659
|
runtimePort: this.effectivePort,
|
|
3660
|
+
...shellPort && shellPort > 0 ? { shellPort } : {},
|
|
3628
3661
|
cwd: process.cwd(),
|
|
3629
3662
|
startedAt: this.startedAt,
|
|
3630
3663
|
heartbeatAt: Date.now(),
|
|
@@ -3639,7 +3672,7 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3639
3672
|
}
|
|
3640
3673
|
refreshActiveRuntime() {
|
|
3641
3674
|
this.activeRuntimeVersion = readActiveRuntime();
|
|
3642
|
-
this.activeRuntimeDirPath = activeRuntimeDir();
|
|
3675
|
+
this.activeRuntimeDirPath = resolveDevCheckoutRuntimeRoot() ?? activeRuntimeDir();
|
|
3643
3676
|
}
|
|
3644
3677
|
runServerScan() {
|
|
3645
3678
|
if (this.inflightScan) return this.inflightScan;
|
|
@@ -3929,34 +3962,34 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3929
3962
|
return;
|
|
3930
3963
|
}
|
|
3931
3964
|
}
|
|
3932
|
-
const resolved =
|
|
3933
|
-
const baseWithSep = baseDir.endsWith(
|
|
3965
|
+
const resolved = import_path4.default.resolve(baseDir, "." + rel);
|
|
3966
|
+
const baseWithSep = baseDir.endsWith(import_path4.default.sep) ? baseDir : baseDir + import_path4.default.sep;
|
|
3934
3967
|
if (!resolved.startsWith(baseWithSep) && resolved !== baseDir) {
|
|
3935
3968
|
res.writeHead(403);
|
|
3936
3969
|
res.end("forbidden");
|
|
3937
3970
|
return;
|
|
3938
3971
|
}
|
|
3939
|
-
|
|
3972
|
+
import_fs4.default.realpath(resolved, (realErr, realResolved) => {
|
|
3940
3973
|
const servePath = realErr ? resolved : realResolved;
|
|
3941
|
-
const servePathWithSep = servePath.endsWith(
|
|
3974
|
+
const servePathWithSep = servePath.endsWith(import_path4.default.sep) ? servePath : servePath + import_path4.default.sep;
|
|
3942
3975
|
if (!realErr) {
|
|
3943
3976
|
const realBaseWithSep = (() => {
|
|
3944
3977
|
try {
|
|
3945
|
-
const rb =
|
|
3946
|
-
return rb.endsWith(
|
|
3978
|
+
const rb = import_fs4.default.realpathSync(baseDir);
|
|
3979
|
+
return rb.endsWith(import_path4.default.sep) ? rb : rb + import_path4.default.sep;
|
|
3947
3980
|
} catch {
|
|
3948
3981
|
return baseWithSep;
|
|
3949
3982
|
}
|
|
3950
3983
|
})();
|
|
3951
|
-
if (!servePathWithSep.startsWith(realBaseWithSep) && servePath +
|
|
3984
|
+
if (!servePathWithSep.startsWith(realBaseWithSep) && servePath + import_path4.default.sep !== realBaseWithSep) {
|
|
3952
3985
|
res.writeHead(403);
|
|
3953
3986
|
res.end("forbidden");
|
|
3954
3987
|
return;
|
|
3955
3988
|
}
|
|
3956
3989
|
}
|
|
3957
|
-
|
|
3990
|
+
import_fs4.default.stat(servePath, (err, stats) => {
|
|
3958
3991
|
if (err || !stats?.isFile()) {
|
|
3959
|
-
const ext2 =
|
|
3992
|
+
const ext2 = import_path4.default.extname(rel).toLowerCase();
|
|
3960
3993
|
if (ext2 && ext2 !== ".html") {
|
|
3961
3994
|
res.writeHead(404);
|
|
3962
3995
|
res.end("not found");
|
|
@@ -3967,8 +4000,8 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3967
4000
|
res.end("not found");
|
|
3968
4001
|
return;
|
|
3969
4002
|
}
|
|
3970
|
-
const indexPath =
|
|
3971
|
-
|
|
4003
|
+
const indexPath = import_path4.default.join(baseDir, "index.html");
|
|
4004
|
+
import_fs4.default.readFile(indexPath, (err2, data) => {
|
|
3972
4005
|
if (err2) {
|
|
3973
4006
|
res.writeHead(404);
|
|
3974
4007
|
res.end("not found");
|
|
@@ -3988,7 +4021,7 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3988
4021
|
});
|
|
3989
4022
|
return;
|
|
3990
4023
|
}
|
|
3991
|
-
const ext =
|
|
4024
|
+
const ext = import_path4.default.extname(servePath).toLowerCase();
|
|
3992
4025
|
const contentType = HTTP_MIME_TYPES[ext] || "application/octet-stream";
|
|
3993
4026
|
res.writeHead(200, {
|
|
3994
4027
|
"Content-Type": contentType,
|
|
@@ -3999,7 +4032,7 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
3999
4032
|
return;
|
|
4000
4033
|
}
|
|
4001
4034
|
if (ext === ".html") {
|
|
4002
|
-
|
|
4035
|
+
import_fs4.default.readFile(servePath, (readErr, data) => {
|
|
4003
4036
|
if (readErr) {
|
|
4004
4037
|
try {
|
|
4005
4038
|
res.end();
|
|
@@ -4013,7 +4046,7 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
4013
4046
|
});
|
|
4014
4047
|
return;
|
|
4015
4048
|
}
|
|
4016
|
-
const stream =
|
|
4049
|
+
const stream = import_fs4.default.createReadStream(servePath);
|
|
4017
4050
|
stream.pipe(res);
|
|
4018
4051
|
stream.on("error", () => {
|
|
4019
4052
|
try {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
|
|
3
3
|
// src/host/fetch-proxy-overrides.ts
|
|
4
4
|
var FETCH_PROXY_BROWSER_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -114,7 +114,32 @@ function isDaemonLockfileFresh(lock, now = Date.now()) {
|
|
|
114
114
|
// src/runtime-assets.ts
|
|
115
115
|
var import_fs = __toESM(require("fs"), 1);
|
|
116
116
|
var import_path = __toESM(require("path"), 1);
|
|
117
|
+
var import_url = require("url");
|
|
117
118
|
var SOOTSIM_RUNTIME_MISSING_MESSAGE = "[sootsim] no engine runtime installed \u2014 run `sootsim setup`, or `sootsim runtime install`";
|
|
119
|
+
var _monorepoRootCache;
|
|
120
|
+
function findMonorepoRoot() {
|
|
121
|
+
if (_monorepoRootCache !== void 0) return _monorepoRootCache;
|
|
122
|
+
let dir = import_path.default.dirname((0, import_url.fileURLToPath)(__sootsim_import_meta_url));
|
|
123
|
+
for (let i = 0; i < 12 && dir !== import_path.default.dirname(dir); i++) {
|
|
124
|
+
if (import_fs.default.existsSync(import_path.default.join(dir, "packages/sootsim-engine/package.json")) && import_fs.default.existsSync(import_path.default.join(dir, "public/sootsim"))) {
|
|
125
|
+
_monorepoRootCache = dir;
|
|
126
|
+
return dir;
|
|
127
|
+
}
|
|
128
|
+
dir = import_path.default.dirname(dir);
|
|
129
|
+
}
|
|
130
|
+
_monorepoRootCache = null;
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
function resolveDevCheckoutRuntimeRoot() {
|
|
134
|
+
if (process.env.SOOTSIM_HOME && readActiveRuntime()) return null;
|
|
135
|
+
const root = findMonorepoRoot();
|
|
136
|
+
if (!root) return null;
|
|
137
|
+
const devBuild = import_path.default.join(root, "public/sootsim");
|
|
138
|
+
if (import_fs.default.existsSync(import_path.default.join(devBuild, "index.html")) && import_fs.default.existsSync(import_path.default.join(devBuild, "engine/index.html")) && import_fs.default.existsSync(import_path.default.join(devBuild, "engine-tenant/worker.js"))) {
|
|
139
|
+
return devBuild;
|
|
140
|
+
}
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
118
143
|
var MIME_TYPES = {
|
|
119
144
|
".js": "application/javascript",
|
|
120
145
|
".mjs": "application/javascript",
|
|
@@ -150,6 +175,8 @@ var ROOT_RUNTIME_PATHS = [
|
|
|
150
175
|
"/preview-sw.js"
|
|
151
176
|
];
|
|
152
177
|
function resolveActiveRuntimeRoot() {
|
|
178
|
+
const devRoot = resolveDevCheckoutRuntimeRoot();
|
|
179
|
+
if (devRoot) return devRoot;
|
|
153
180
|
const active = readActiveRuntime();
|
|
154
181
|
if (!active) return null;
|
|
155
182
|
const dir = runtimeDir(active);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/menu.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/menu.mjs
CHANGED
package/dist-lib/metro.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -42,6 +42,7 @@ var import_path2 = __toESM(require("path"), 1);
|
|
|
42
42
|
// src/runtime-assets.ts
|
|
43
43
|
var import_fs = __toESM(require("fs"), 1);
|
|
44
44
|
var import_path = __toESM(require("path"), 1);
|
|
45
|
+
var import_url = require("url");
|
|
45
46
|
|
|
46
47
|
// src/home-paths.ts
|
|
47
48
|
var import_node_fs = __toESM(require("node:fs"), 1);
|
|
@@ -75,6 +76,30 @@ var DAEMON_LOCKFILE_MAX_BYTES = 16 * 1024;
|
|
|
75
76
|
|
|
76
77
|
// src/runtime-assets.ts
|
|
77
78
|
var SOOTSIM_RUNTIME_MISSING_MESSAGE = "[sootsim] no engine runtime installed \u2014 run `sootsim setup`, or `sootsim runtime install`";
|
|
79
|
+
var _monorepoRootCache;
|
|
80
|
+
function findMonorepoRoot() {
|
|
81
|
+
if (_monorepoRootCache !== void 0) return _monorepoRootCache;
|
|
82
|
+
let dir = import_path.default.dirname((0, import_url.fileURLToPath)(__sootsim_import_meta_url));
|
|
83
|
+
for (let i = 0; i < 12 && dir !== import_path.default.dirname(dir); i++) {
|
|
84
|
+
if (import_fs.default.existsSync(import_path.default.join(dir, "packages/sootsim-engine/package.json")) && import_fs.default.existsSync(import_path.default.join(dir, "public/sootsim"))) {
|
|
85
|
+
_monorepoRootCache = dir;
|
|
86
|
+
return dir;
|
|
87
|
+
}
|
|
88
|
+
dir = import_path.default.dirname(dir);
|
|
89
|
+
}
|
|
90
|
+
_monorepoRootCache = null;
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
function resolveDevCheckoutRuntimeRoot() {
|
|
94
|
+
if (process.env.SOOTSIM_HOME && readActiveRuntime()) return null;
|
|
95
|
+
const root = findMonorepoRoot();
|
|
96
|
+
if (!root) return null;
|
|
97
|
+
const devBuild = import_path.default.join(root, "public/sootsim");
|
|
98
|
+
if (import_fs.default.existsSync(import_path.default.join(devBuild, "index.html")) && import_fs.default.existsSync(import_path.default.join(devBuild, "engine/index.html")) && import_fs.default.existsSync(import_path.default.join(devBuild, "engine-tenant/worker.js"))) {
|
|
99
|
+
return devBuild;
|
|
100
|
+
}
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
78
103
|
var MIME_TYPES = {
|
|
79
104
|
".js": "application/javascript",
|
|
80
105
|
".mjs": "application/javascript",
|
|
@@ -110,6 +135,8 @@ var ROOT_RUNTIME_PATHS = [
|
|
|
110
135
|
"/preview-sw.js"
|
|
111
136
|
];
|
|
112
137
|
function resolveActiveRuntimeRoot() {
|
|
138
|
+
const devRoot = resolveDevCheckoutRuntimeRoot();
|
|
139
|
+
if (devRoot) return devRoot;
|
|
113
140
|
const active = readActiveRuntime();
|
|
114
141
|
if (!active) return null;
|
|
115
142
|
const dir = runtimeDir(active);
|
package/dist-lib/profiles.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/render-mode.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.186 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|