sootsim 0.1.243 → 0.1.245
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 +4 -4
- package/dist-cli/chunks/{agent-FXEWVX5T.js → agent-UMI3624H.js} +2 -2
- package/dist-cli/chunks/{agent-wrapper-GUN6VZ5X.js → agent-wrapper-32NCVUN3.js} +2 -2
- package/dist-cli/chunks/{app-fonts-QRKKOMUI.js → app-fonts-TBS2JXBD.js} +2 -2
- package/dist-cli/chunks/{assert-NM7TWETJ.js → assert-OMMFZ746.js} +2 -2
- package/dist-cli/chunks/{auth-HDYJCDMP.js → auth-WSMHQHRX.js} +2 -2
- package/dist-cli/chunks/beta-SF4DAISL.js +2 -0
- package/dist-cli/chunks/{camera-ZDSBFJL5.js → camera-PDBRIA46.js} +2 -2
- package/dist-cli/chunks/{chunk-FSKOS7WC.js → chunk-2BPZJTMF.js} +1 -1
- package/dist-cli/chunks/{chunk-3TYXB26Z.js → chunk-2JMGQZXX.js} +1 -1
- package/dist-cli/chunks/{chunk-D2AQJY2L.js → chunk-3DDBZ2FZ.js} +2 -2
- package/dist-cli/chunks/chunk-3FX4CPRD.js +1 -0
- package/dist-cli/chunks/{chunk-U3O2ZVZJ.js → chunk-3R74AUXP.js} +2 -2
- package/dist-cli/chunks/{chunk-6YFIKQI7.js → chunk-3ZCD72ZT.js} +2 -2
- package/dist-cli/chunks/{chunk-4ZRA4LSB.js → chunk-4QTQ7IB6.js} +2 -2
- package/dist-cli/chunks/{chunk-QNQJW3CU.js → chunk-4SFP6OAX.js} +2 -2
- package/dist-cli/chunks/{chunk-YGZYZ5PG.js → chunk-54VL33HG.js} +2 -2
- package/dist-cli/chunks/{chunk-GUFB26IN.js → chunk-5GUYHQTQ.js} +1 -1
- package/dist-cli/chunks/{chunk-4ET5SQJ7.js → chunk-76656NTC.js} +2 -2
- package/dist-cli/chunks/{chunk-SUJVPDRY.js → chunk-7YJ5YDCN.js} +3 -3
- package/dist-cli/chunks/{chunk-SZYSZKHI.js → chunk-AKT6TFRG.js} +2 -2
- package/dist-cli/chunks/{chunk-PYRQ46AN.js → chunk-C4HOGMXJ.js} +3 -3
- package/dist-cli/chunks/{chunk-J45AZS5J.js → chunk-CMGNS5BS.js} +3 -3
- package/dist-cli/chunks/{chunk-LRWFVZOL.js → chunk-DRU4THKE.js} +1 -1
- package/dist-cli/chunks/{chunk-3I6TOP3W.js → chunk-EADC2EO4.js} +69 -69
- package/dist-cli/chunks/{chunk-YJ2PDE4K.js → chunk-ECI6JGA5.js} +2 -2
- package/dist-cli/chunks/{chunk-JF4J3LFL.js → chunk-FJSEDCSJ.js} +1 -1
- package/dist-cli/chunks/{chunk-XZ2FVQMY.js → chunk-FTWJFLIX.js} +1 -1
- package/dist-cli/chunks/{chunk-5G3LJUYE.js → chunk-H5UF73ZY.js} +1 -1
- package/dist-cli/chunks/chunk-IRQ7AX6M.js +103 -0
- package/dist-cli/chunks/{chunk-4ZUKMTEH.js → chunk-JQOVMKKD.js} +2 -2
- package/dist-cli/chunks/{chunk-3SDYUIT5.js → chunk-JXVG6Q3C.js} +1 -1
- package/dist-cli/chunks/{chunk-SXIRWCAW.js → chunk-KJZI5667.js} +1 -1
- package/dist-cli/chunks/{chunk-GEJBVV4M.js → chunk-LJINY7Y4.js} +1 -1
- package/dist-cli/chunks/{chunk-QOE3DNO5.js → chunk-MBKGVLMH.js} +1 -1
- package/dist-cli/chunks/{chunk-HQTOG4X4.js → chunk-OR3BDGW6.js} +2 -2
- package/dist-cli/chunks/chunk-PFAHCNFB.js +2 -0
- package/dist-cli/chunks/{chunk-CBOYNMNP.js → chunk-RDXNAJED.js} +2 -2
- package/dist-cli/chunks/chunk-RPHRM35M.js +1 -0
- package/dist-cli/chunks/{chunk-TDA6GMMJ.js → chunk-SANCSFUC.js} +1 -1
- package/dist-cli/chunks/{chunk-6D4GB3TT.js → chunk-SVJJCPWT.js} +2 -2
- package/dist-cli/chunks/{chunk-SP2DEZXG.js → chunk-TJI5OFJV.js} +2 -2
- package/dist-cli/chunks/{chunk-MO2QVYFW.js → chunk-TOW7WQWO.js} +2 -2
- package/dist-cli/chunks/{chunk-EGQBLGHM.js → chunk-TUHXJKDI.js} +2 -2
- package/dist-cli/chunks/{chunk-RNBYQ5TF.js → chunk-UWQG2IZU.js} +1 -1
- package/dist-cli/chunks/{chunk-RWIXBCIJ.js → chunk-VOR45PVI.js} +2 -2
- package/dist-cli/chunks/{chunk-ED4PHTSN.js → chunk-WGEQ5ERO.js} +2 -2
- package/dist-cli/chunks/{chunk-TXGYN5YH.js → chunk-WU5OEQS2.js} +6 -6
- package/dist-cli/chunks/{chunk-HCE47EED.js → chunk-XN4CFIPA.js} +1 -1
- package/dist-cli/chunks/{chunk-IFIE63FU.js → chunk-XSFLFCHE.js} +2 -2
- package/dist-cli/chunks/{chunk-EHFPZFQE.js → chunk-XUA5QIEZ.js} +1 -1
- package/dist-cli/chunks/{chunk-FIDOMJXL.js → chunk-YTKWLW7X.js} +1 -1
- package/dist-cli/chunks/cli-version-VSVRSPXF.js +2 -0
- package/dist-cli/chunks/{compat-LYH3JXAH.js → compat-N54KQAGG.js} +3 -3
- package/dist-cli/chunks/{config-IORPXBOY.js → config-7ZXR72CY.js} +2 -2
- package/dist-cli/chunks/{control-IJVA52FL.js → control-QALBPKIH.js} +2 -2
- package/dist-cli/chunks/daemon-HLYIFX53.js +2 -0
- package/dist-cli/chunks/{debug-U7A5EU4C.js → debug-UYH3J6U3.js} +3 -3
- package/dist-cli/chunks/{desktop-55T7IQER.js → desktop-TM4MENZU.js} +3 -3
- package/dist-cli/chunks/{detox-MJIXMF2Z.js → detox-JOQJUBLP.js} +2 -2
- package/dist-cli/chunks/{device-PVRAGZPQ.js → device-FYMBNXT2.js} +2 -2
- package/dist-cli/chunks/{diagnose-4GDAZJTI.js → diagnose-7WJUXS4O.js} +2 -2
- package/dist-cli/chunks/drivers-MNRFJMBA.js +2 -0
- package/dist-cli/chunks/{film-P2LE6XM6.js → film-T7CLCOS2.js} +3 -3
- package/dist-cli/chunks/flow-UVSIUAFJ.js +2 -0
- package/dist-cli/chunks/help-I3LIJA4S.js +2 -0
- package/dist-cli/chunks/{hidden-runtime-alias-SS2MFPJT.js → hidden-runtime-alias-BRNXNJQG.js} +2 -2
- package/dist-cli/chunks/{home-paths-GE2WICB2.js → home-paths-HHCAAVCG.js} +2 -2
- package/dist-cli/chunks/inspect-354EP4YM.js +2 -0
- package/dist-cli/chunks/install-desktop-3BH6M4S3.js +2 -0
- package/dist-cli/chunks/{login-ZAKDNYE6.js → login-TQAT5LPH.js} +4 -4
- package/dist-cli/chunks/{logout-V5QL47PV.js → logout-GDQEZTKP.js} +2 -2
- package/dist-cli/chunks/{maestro-DUMTBJA3.js → maestro-QYA3C7DI.js} +3 -3
- package/dist-cli/chunks/{maestro-generate-2J36R5WJ.js → maestro-generate-K4MEYSBB.js} +3 -3
- package/dist-cli/chunks/{mode-LAVXTH3K.js → mode-SGYFVJ4F.js} +2 -2
- package/dist-cli/chunks/optional-demo-registry-FQRZRVLM.js +2 -0
- package/dist-cli/chunks/{perf-ZDLZ7WFT.js → perf-HZXIAQPN.js} +2 -2
- package/dist-cli/chunks/{record-B6BHP2KY.js → record-GET7EHCQ.js} +3 -3
- package/dist-cli/chunks/runtime-ZR4YFU7J.js +2 -0
- package/dist-cli/chunks/{screenshot-command-3OMBI6OQ.js → screenshot-command-DQ4SSPVJ.js} +9 -8
- package/dist-cli/chunks/{screenshots-capture-EIEG7WBP.js → screenshots-capture-I53ST6HQ.js} +2 -2
- package/dist-cli/chunks/{serve-UZE7D7I7.js → serve-F6ADSU46.js} +2 -2
- package/dist-cli/chunks/{setup-C7FLHLXZ.js → setup-VLD6A6KK.js} +3 -3
- package/dist-cli/chunks/{skills-3RPTVTZ7.js → skills-ZOUVVU2U.js} +2 -2
- package/dist-cli/chunks/{storage-MRXCZ5X7.js → storage-WAL7ICBS.js} +2 -2
- package/dist-cli/chunks/store-YVNWLTST.js +2 -0
- package/dist-cli/chunks/telemetry-HOTMJXDS.js +2 -0
- package/dist-cli/chunks/{timeline-6F5MN4BT.js → timeline-L3YLCXES.js} +2 -2
- package/dist-cli/chunks/{upgrade-USHBFEFD.js → upgrade-N7KMSLXU.js} +2 -2
- package/dist-cli/chunks/upload-GZR6SJIQ.js +2 -0
- package/dist-cli/chunks/{version-VK7TXLXO.js → version-BUJFV5ZF.js} +2 -2
- package/dist-cli/chunks/{web-5FXZSCMD.js → web-3UOCXNQ6.js} +2 -2
- package/dist-cli/chunks/{what-happened-GCE2WS2O.js → what-happened-JJZYWMHI.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/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/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 +27 -3
- package/dist-lib/menu.mjs +27 -3
- package/dist-lib/metro.cjs +1 -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 +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/src/menu.ts +26 -0
- package/dist-cli/chunks/beta-FZWO5IHA.js +0 -2
- package/dist-cli/chunks/chunk-AUOXELFC.js +0 -89
- package/dist-cli/chunks/chunk-EP5524NT.js +0 -1
- package/dist-cli/chunks/chunk-JI4QHZWI.js +0 -2
- package/dist-cli/chunks/chunk-RK7C5U3G.js +0 -1
- package/dist-cli/chunks/cli-version-SF2RISK3.js +0 -2
- package/dist-cli/chunks/daemon-OOTI5UKF.js +0 -2
- package/dist-cli/chunks/drivers-ZFC7LCIG.js +0 -2
- package/dist-cli/chunks/flow-NNEJSUCZ.js +0 -2
- package/dist-cli/chunks/help-C6UYHCX7.js +0 -2
- package/dist-cli/chunks/inspect-QRU6GSC3.js +0 -2
- package/dist-cli/chunks/install-desktop-7Q3Q4EDN.js +0 -2
- package/dist-cli/chunks/optional-demo-registry-L4MJWR2U.js +0 -2
- package/dist-cli/chunks/runtime-PZRJDSB4.js +0 -2
- package/dist-cli/chunks/store-FP3OZ75R.js +0 -2
- package/dist-cli/chunks/telemetry-HV232CTG.js +0 -2
- package/dist-cli/chunks/upload-BKS77SNB.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.245 | (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-WU5OEQS2.js";import{g as A,i as _}from"./chunk-WGEQ5ERO.js";import"./chunk-JXVG6Q3C.js";import{c as k}from"./chunk-UWQG2IZU.js";import"./chunk-5GUYHQTQ.js";import"./chunk-XN4CFIPA.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,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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.245 | (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;
|
|
@@ -179,18 +179,42 @@ function debugMenu(state) {
|
|
|
179
179
|
return {
|
|
180
180
|
label: "Debug",
|
|
181
181
|
items: [
|
|
182
|
+
// both toggles are stateful in the browser, where the open state lives
|
|
183
|
+
// in the same document. electron's menu process cannot see it, so it
|
|
184
|
+
// keeps the plain (stateless) items rather than a permanently
|
|
185
|
+
// unchecked checkbox — same reasoning as the screenshot/3d entries
|
|
186
|
+
// being hidden there. accelerators stay single-registered per surface.
|
|
182
187
|
{
|
|
183
188
|
label: "Toggle Devtools",
|
|
184
189
|
accelerator: "Alt+I",
|
|
185
190
|
action: "toggle-devtools",
|
|
191
|
+
showInShortcutDocs: true,
|
|
192
|
+
hiddenIn: "browser"
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
label: "Toggle Devtools",
|
|
196
|
+
type: "checkbox",
|
|
197
|
+
checked: state.devtoolsOpen,
|
|
198
|
+
accelerator: "Alt+I",
|
|
199
|
+
action: "toggle-devtools",
|
|
186
200
|
browserAccelerator: true,
|
|
187
|
-
showInShortcutDocs: true
|
|
201
|
+
showInShortcutDocs: true,
|
|
202
|
+
hiddenIn: "electron"
|
|
188
203
|
},
|
|
189
204
|
{
|
|
190
205
|
label: "Inspect",
|
|
191
206
|
accelerator: "CmdOrCtrl+I",
|
|
192
207
|
action: "toggle-inspect",
|
|
193
|
-
|
|
208
|
+
hiddenIn: "browser"
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
label: "Inspect",
|
|
212
|
+
type: "checkbox",
|
|
213
|
+
checked: state.inspectMode,
|
|
214
|
+
accelerator: "CmdOrCtrl+I",
|
|
215
|
+
action: "toggle-inspect",
|
|
216
|
+
browserAccelerator: true,
|
|
217
|
+
hiddenIn: "electron"
|
|
194
218
|
},
|
|
195
219
|
{ type: "separator" },
|
|
196
220
|
{
|
package/dist-lib/menu.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
|
|
3
3
|
// src/menu.ts
|
|
4
4
|
var SOOTSIM_ENGINE_EVENT_NAME = "sootsim:engine-event";
|
|
@@ -146,18 +146,42 @@ function debugMenu(state) {
|
|
|
146
146
|
return {
|
|
147
147
|
label: "Debug",
|
|
148
148
|
items: [
|
|
149
|
+
// both toggles are stateful in the browser, where the open state lives
|
|
150
|
+
// in the same document. electron's menu process cannot see it, so it
|
|
151
|
+
// keeps the plain (stateless) items rather than a permanently
|
|
152
|
+
// unchecked checkbox — same reasoning as the screenshot/3d entries
|
|
153
|
+
// being hidden there. accelerators stay single-registered per surface.
|
|
149
154
|
{
|
|
150
155
|
label: "Toggle Devtools",
|
|
151
156
|
accelerator: "Alt+I",
|
|
152
157
|
action: "toggle-devtools",
|
|
158
|
+
showInShortcutDocs: true,
|
|
159
|
+
hiddenIn: "browser"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
label: "Toggle Devtools",
|
|
163
|
+
type: "checkbox",
|
|
164
|
+
checked: state.devtoolsOpen,
|
|
165
|
+
accelerator: "Alt+I",
|
|
166
|
+
action: "toggle-devtools",
|
|
153
167
|
browserAccelerator: true,
|
|
154
|
-
showInShortcutDocs: true
|
|
168
|
+
showInShortcutDocs: true,
|
|
169
|
+
hiddenIn: "electron"
|
|
155
170
|
},
|
|
156
171
|
{
|
|
157
172
|
label: "Inspect",
|
|
158
173
|
accelerator: "CmdOrCtrl+I",
|
|
159
174
|
action: "toggle-inspect",
|
|
160
|
-
|
|
175
|
+
hiddenIn: "browser"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
label: "Inspect",
|
|
179
|
+
type: "checkbox",
|
|
180
|
+
checked: state.inspectMode,
|
|
181
|
+
accelerator: "CmdOrCtrl+I",
|
|
182
|
+
action: "toggle-inspect",
|
|
183
|
+
browserAccelerator: true,
|
|
184
|
+
hiddenIn: "electron"
|
|
161
185
|
},
|
|
162
186
|
{ type: "separator" },
|
|
163
187
|
{
|
package/dist-lib/metro.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (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/profiles.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (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.245 | (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.245 | (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/sdk.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (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/sdk.mjs
CHANGED
package/dist-lib/skills.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (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/vite.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.245 | (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/package.json
CHANGED
package/src/menu.ts
CHANGED
|
@@ -38,6 +38,8 @@ export interface SootSimMenuState {
|
|
|
38
38
|
showTopBar: boolean
|
|
39
39
|
screenshotMode: boolean
|
|
40
40
|
threeMode: boolean
|
|
41
|
+
inspectMode: boolean
|
|
42
|
+
devtoolsOpen: boolean
|
|
41
43
|
alwaysShowLiveWebViews: boolean
|
|
42
44
|
stayOnTop: boolean
|
|
43
45
|
scaleMode: SootSimScaleMode
|
|
@@ -232,18 +234,42 @@ function debugMenu(state: SootSimMenuState): SootSimMenuDef {
|
|
|
232
234
|
return {
|
|
233
235
|
label: 'Debug',
|
|
234
236
|
items: [
|
|
237
|
+
// both toggles are stateful in the browser, where the open state lives
|
|
238
|
+
// in the same document. electron's menu process cannot see it, so it
|
|
239
|
+
// keeps the plain (stateless) items rather than a permanently
|
|
240
|
+
// unchecked checkbox — same reasoning as the screenshot/3d entries
|
|
241
|
+
// being hidden there. accelerators stay single-registered per surface.
|
|
235
242
|
{
|
|
236
243
|
label: 'Toggle Devtools',
|
|
237
244
|
accelerator: 'Alt+I',
|
|
238
245
|
action: 'toggle-devtools',
|
|
246
|
+
showInShortcutDocs: true,
|
|
247
|
+
hiddenIn: 'browser',
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
label: 'Toggle Devtools',
|
|
251
|
+
type: 'checkbox',
|
|
252
|
+
checked: state.devtoolsOpen,
|
|
253
|
+
accelerator: 'Alt+I',
|
|
254
|
+
action: 'toggle-devtools',
|
|
239
255
|
browserAccelerator: true,
|
|
240
256
|
showInShortcutDocs: true,
|
|
257
|
+
hiddenIn: 'electron',
|
|
241
258
|
},
|
|
242
259
|
{
|
|
243
260
|
label: 'Inspect',
|
|
244
261
|
accelerator: 'CmdOrCtrl+I',
|
|
245
262
|
action: 'toggle-inspect',
|
|
263
|
+
hiddenIn: 'browser',
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
label: 'Inspect',
|
|
267
|
+
type: 'checkbox',
|
|
268
|
+
checked: state.inspectMode,
|
|
269
|
+
accelerator: 'CmdOrCtrl+I',
|
|
270
|
+
action: 'toggle-inspect',
|
|
246
271
|
browserAccelerator: true,
|
|
272
|
+
hiddenIn: 'electron',
|
|
247
273
|
},
|
|
248
274
|
{ type: 'separator' },
|
|
249
275
|
{
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{g as k,i as x,l as P,m as v}from"./chunk-ED4PHTSN.js";import{createHash as q}from"node:crypto";import{mkdirSync as G,readFileSync as J,readdirSync as H,unlinkSync as Y,writeFileSync as z}from"node:fs";import{dirname as Q,extname as X,resolve as T}from"node:path";function W(e){let t=e[0]?.toLowerCase()??"toggle";return t!=="on"&&t!=="off"&&t!=="toggle"&&(console.error(` unknown argument: "${t}" (expected on | off | toggle)`),process.exit(1)),t}async function D(e,t,o){let n=k(e,{port:t.port}),r=W(n.positional),d=x({...n,commandTimeoutMs:5e3});try{let l=!!(await P(d,"SootSim.bridges.settings.get"))?.[o.modeKey],m=r==="on"?!0:r==="off"?!1:!l;if(l===m)return console.log(` ${o.displayName}: already ${m?"on":"off"}`),{current:l,target:m,changed:!1};if(!await d.send({type:"evaluate",acquireLock:!0,code:`(async () => {
|
|
3
|
-
const modeKey = ${JSON.stringify(o.modeKey)}
|
|
4
|
-
const target = ${JSON.stringify(m)}
|
|
5
|
-
window.dispatchEvent(new CustomEvent('sootsim:shell-command', {
|
|
6
|
-
detail: { type: 'fire-action', id: ${JSON.stringify(o.actionId)} },
|
|
7
|
-
}))
|
|
8
|
-
const deadline = Date.now() + 1200
|
|
9
|
-
while (Date.now() < deadline) {
|
|
10
|
-
if (Boolean(window.SootSim?.bridges?.settings?.get?.()?.[modeKey]) === target) {
|
|
11
|
-
return true
|
|
12
|
-
}
|
|
13
|
-
await new Promise((resolve) => setTimeout(resolve, 40))
|
|
14
|
-
}
|
|
15
|
-
return false
|
|
16
|
-
})()`}))throw new Error(`${o.displayName} did not change to ${m?"on":"off"}; the live shell may not support this mode`);return console.log(` ${o.displayName}: ${l?"on":"off"} -> ${m?"on":"off"}`),{current:l,target:m,changed:!0}}finally{d.close()}}var A=12e3,Z=6e5,ee=new Set(["load","seek","play","pause","render"]);async function be(e,t){(e.includes("--help")||e.includes("-h"))&&(console.log(`
|
|
17
|
-
sootsim mode three \u2014 toggle the 3d device stage
|
|
18
|
-
|
|
19
|
-
usage:
|
|
20
|
-
sootsim mode three [on|off|toggle]
|
|
21
|
-
sootsim mode three configure [options]
|
|
22
|
-
sootsim mode three load <timeline.json>
|
|
23
|
-
sootsim mode three seek <time-ms>
|
|
24
|
-
sootsim mode three play|pause
|
|
25
|
-
sootsim mode three render <timeline.json> --output <dir> [options]
|
|
26
|
-
|
|
27
|
-
arguments:
|
|
28
|
-
on enable 3d mode
|
|
29
|
-
off disable 3d mode
|
|
30
|
-
toggle flip the current state (default)
|
|
31
|
-
|
|
32
|
-
configure options:
|
|
33
|
-
--background <id> set the 3d background
|
|
34
|
-
--gradient <stops> custom gradient bg: comma-separated css hex stops,
|
|
35
|
-
e.g. "#0a0e1a,#16243f,#05080f" (overrides --background;
|
|
36
|
-
evenly spaced, or use "color@offset" for explicit %)
|
|
37
|
-
--gradient-angle <deg> custom gradient angle (default 180 = top\u2192bottom)
|
|
38
|
-
--colorway <id> set the phone colorway
|
|
39
|
-
--script <id> apply a camera preset pose
|
|
40
|
-
--progress <0..1> script progress to sample (default: 1)
|
|
41
|
-
--animate run the script instead of sampling one frame
|
|
42
|
-
--slow run the script slowly when --animate is set
|
|
43
|
-
--environment on|off enable or disable environment objects
|
|
44
|
-
--env-shape <id> orb | pill | diamond | pane
|
|
45
|
-
--env-spread <id> tight | medium | wide
|
|
46
|
-
--env-size <id> small | medium | large
|
|
47
|
-
--env-color <id> peach | gold | mint | sky | violet
|
|
48
|
-
--env-glow on|off enable or disable environment glow
|
|
49
|
-
--env-plastic on|off enable or disable environment plastic material
|
|
50
|
-
--setting <id> none | room | white-backdrop
|
|
51
|
-
--focus on|off enable or disable Focus depth of field
|
|
52
|
-
--focus-amount <id> subtle | medium | strong | dramatic
|
|
53
|
-
--focus-range <id> tight | balanced | wide
|
|
54
|
-
--reset-pose return to the default hero pose before other changes
|
|
55
|
-
|
|
56
|
-
render options:
|
|
57
|
-
--output <dir> write frame-%05d.png + timeline-render.json
|
|
58
|
-
--fps <number> frames per second (default: 30)
|
|
59
|
-
--width <px> exact output width (default: 1920)
|
|
60
|
-
--height <px> exact output height (default: 1080)
|
|
61
|
-
--from <ms> first timeline time (default: 0)
|
|
62
|
-
--to <ms> exclusive end time (default: timeline duration)
|
|
63
|
-
--overwrite replace this command's existing frames in the dir
|
|
64
|
-
|
|
65
|
-
examples:
|
|
66
|
-
sootsim mode three
|
|
67
|
-
sootsim mode three on
|
|
68
|
-
sootsim mode three configure --script hero-arc --background gradient-tide
|
|
69
|
-
sootsim mode three configure --environment on --env-shape pane --setting room
|
|
70
|
-
sootsim mode three render ./cinematic.json --output ./frames --fps 30
|
|
71
|
-
sootsim mode three off
|
|
72
|
-
`),process.exit(0));let o=re(e);if(o){await de(o,e,t);return}if(te(e)){await oe(e,t);return}(await D(e,t,{modeKey:"threeMode",displayName:"three-mode",actionId:"toggle-three-mode"})).target&&await ne(e,t)}function te(e){return e[0]==="configure"||e.some(t=>["--background","--gradient","--gradient-angle","--colorway","--script","--progress","--animate","--slow","--environment","--env-shape","--env-spread","--env-size","--env-color","--env-glow","--env-plastic","--setting","--focus","--focus-amount","--focus-range","--reset-pose"].includes(t))}async function oe(e,t){let o=k(e,{port:t.port,stripBooleanFlags:["--animate","--slow","--reset-pose"],stripValueFlags:["--background","--gradient","--gradient-angle","--colorway","--script","--progress","--environment","--env-shape","--env-spread","--env-size","--env-color","--env-glow","--env-plastic","--setting","--focus","--focus-amount","--focus-range"]}),n=le(e),r=x({...o,commandTimeoutMs:A+1e3});try{await j(r);let d=await v(r,"SootSim.bridges.threeMode.configure",n);console.log(` three-mode: configured (${ce(d)})`)}finally{r.close()}}async function ne(e,t){let o=k(e,{port:t.port}),n=x({...o,commandTimeoutMs:A+1e3});try{await j(n)}finally{n.close()}}async function j(e){let t=await e.send({type:"evaluate",code:`(async () => {
|
|
73
|
-
const deadline = Date.now() + ${A}
|
|
74
|
-
while (Date.now() < deadline) {
|
|
75
|
-
const settings = window.SootSim?.bridges?.settings?.get?.()
|
|
76
|
-
if (settings && settings.threeMode !== true) {
|
|
77
|
-
return { ready: false, disabled: true }
|
|
78
|
-
}
|
|
79
|
-
const bridge = window.SootSim?.bridges?.threeMode
|
|
80
|
-
const state = typeof bridge?.getState === 'function' ? bridge.getState() : null
|
|
81
|
-
if (state?.ready === true) return state
|
|
82
|
-
await new Promise((resolve) => setTimeout(resolve, 50))
|
|
83
|
-
}
|
|
84
|
-
const bridge = window.SootSim?.bridges?.threeMode
|
|
85
|
-
const state = typeof bridge?.getState === 'function' ? bridge.getState() : null
|
|
86
|
-
return state || { ready: false }
|
|
87
|
-
})()`});if(t?.ready===!0)return t;throw t?.disabled?new Error("3d mode is off; run `sootsim mode three on` before configure"):new Error("3d mode runtime did not become ready")}function re(e){for(let t=0;t<e.length;t+=1){let o=e[t];if(o==="--sim"||o==="--port"||o==="-p"){t+=1;continue}if(!o.startsWith("-"))return ee.has(o)?o:null}return null}function K(e,t){let o=e.indexOf(t);return o>=0?e[o+1]:void 0}function F(e,t,o,n=0){let r=K(e,t);if(r===void 0)return o;let d=Number.parseFloat(r);if(!Number.isFinite(d)||d<n)throw new Error(`${t} expects a number greater than or equal to ${n}`);return d}function U(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ie(e,t){let o=X(e).toLowerCase();return t==="recording"?o===".mp4"||o===".m4v"?"video/mp4":"video/webm":o===".jpg"||o===".jpeg"?"image/jpeg":o===".webp"?"image/webp":"image/png"}function C(e,t){if(Array.isArray(e))return e.map(n=>C(n,t));if(!U(e))return e;let o={};for(let[n,r]of Object.entries(e))o[n]=C(r,t);if((o.type==="recording"||o.type==="screenshot")&&typeof o.src=="string"&&!/^(?:blob:|data:|https?:)/i.test(o.src)){let n=T(t,o.src),r=J(n);o.src=`data:${ie(n,o.type)};base64,${r.toString("base64")}`}return o}function se(e){let t=T(e),o=JSON.parse(J(t,"utf8"));return{absolutePath:t,timeline:C(o,Q(t))}}async function ae(e){await v(e,"SootSim.bridges.settings.set","threeMode",!0),await j(e)}async function de(e,t,o){let n=k(t,{port:o.port,commandTimeoutMs:Z,stripBooleanFlags:["--overwrite"],stripValueFlags:["--output","--fps","--width","--height","--from","--to"]}),r=x(n);try{if(await ae(r),e==="seek"){let i=n.positional[1],u=i===void 0?Number.NaN:Number.parseFloat(i);if(!Number.isFinite(u))throw new Error("three-mode seek expects time in ms");let f=await v(r,"SootSim.bridges.threeMode.seek",u);console.log(` three-mode: ${Math.round(f.timeMs)}ms / ${Math.round(f.durationMs)}ms (${f.shotId??"no shot"})`);return}if(e==="play"||e==="pause"){let i=await v(r,`SootSim.bridges.threeMode.${e}`),u=U(i.timeline)?i.timeline:{};console.log(` three-mode: ${e} (${Math.round(Number(u.timeMs??0))}ms)`);return}let d=n.positional[1];if(!d)throw new Error(`three-mode ${e} expects a timeline JSON path`);let g=se(d),l=await v(r,"SootSim.bridges.threeMode.loadTimeline",g.timeline);if(e==="load"){console.log(` three-mode: loaded ${g.absolutePath} (${Math.round(l.durationMs)}ms)`);return}let m=K(t,"--output");if(!m)throw new Error("three-mode render requires --output <dir>");let p=T(m),b=F(t,"--fps",30,.001),y=Math.round(F(t,"--width",1920,1)),B=Math.round(F(t,"--height",1080,1)),M=F(t,"--from",0,0),h=F(t,"--to",l.durationMs,0);if(h<=M||h>l.durationMs)throw new Error(`--to must be greater than --from and at most ${l.durationMs}`);let s=1e3/b,a=Math.ceil((h-M)/s);G(p,{recursive:!0});let c=H(p).filter(i=>/^frame-\d{5}\.png$/.test(i)||i==="timeline-render.json");if(c.length>0&&!t.includes("--overwrite"))throw new Error(`${p} already has timeline frames; pass --overwrite to replace them`);for(let i of c)Y(T(p,i));let S=[],$=4;for(let i=0;i<a;i+=$){let u=Math.min($,a-i),f=M+i*s,V=Math.min(h,f+u*s),N=await v(r,"SootSim.bridges.threeMode.renderFrames",{fps:b,from:f,to:V,width:y,height:B,count:u});if(N.frames.length!==u)throw new Error(`3d renderer returned ${N.frames.length} frames for a ${u}-frame batch`);for(let w of N.frames){let L=i+w.index,I=`frame-${String(L).padStart(5,"0")}.png`,O=w.dataUrl.indexOf(",");if(O<0||!w.dataUrl.slice(0,O).includes("image/png;base64"))throw new Error(`3d renderer returned a non-PNG frame at ${w.timeMs}ms`);let _=Buffer.from(w.dataUrl.slice(O+1),"base64");z(T(p,I),_),S.push({file:I,timeMs:w.timeMs,sha256:q("sha256").update(_).digest("hex"),alpha:w.alpha,phoneCollision:w.phoneCollision})}process.stderr.write(`\r three-mode: rendered ${Math.min(i+u,a)}/${a}`)}process.stderr.write(`
|
|
88
|
-
`);let R={version:2,timeline:g.absolutePath,fps:b,from:M,to:h,width:y,height:B,frameCount:a,transparent:S.every(i=>i.alpha.transparentPixels>0),frames:S};z(T(p,"timeline-render.json"),`${JSON.stringify(R,null,2)}
|
|
89
|
-
`),console.log(` three-mode: wrote ${a} deterministic RGBA frames to ${p}`)}finally{r.close()}}function le(e){let t=s=>e.find((a,c)=>e[c-1]===s),o={},n=t("--colorway");n&&(o.colorway=n);let r=t("--background");r&&(o.background=r);let d=t("--gradient");if(d){let s=d.split(",").map($=>$.trim()).filter(Boolean),a=s.map(($,R)=>{let[i,u]=$.split("@"),f=u!==void 0?Number.parseFloat(u):s.length>1?R/(s.length-1):0;return f>1&&(f=f/100),Number.isFinite(f)||(f=s.length>1?R/(s.length-1):0),{color:i.trim(),offset:f}}),c=t("--gradient-angle"),S=c===void 0?void 0:Number.parseFloat(c);if(c!==void 0&&!Number.isFinite(S))throw new Error(`--gradient-angle expects a number, got "${c}"`);o.customGradient={stops:a,...S!==void 0?{angleDeg:S}:{}}}let g=t("--setting");if(g){if(g!=="none"&&g!=="room"&&g!=="white-backdrop")throw new Error(`--setting expects none, room, or white-backdrop, got "${g}"`);o.setting=g}let l={},m=E(t("--focus"),"--focus");m!==void 0&&(l.enabled=m);for(let[s,a]of[["--focus-amount","amount"],["--focus-range","range"]]){let c=t(s);c&&(l[a]=c)}Object.keys(l).length>0&&(o.focus=l),e.includes("--reset-pose")&&(o.resetPose=!0);let p=E(t("--environment"),"--environment"),b={},y={};for(let[s,a]of[["--env-shape","shape"],["--env-spread","spread"],["--env-size","size"],["--env-color","color"]]){let c=t(s);c&&(b[a]=c)}let B=E(t("--env-glow"),"--env-glow");B!==void 0&&(y.glow=B);let M=E(t("--env-plastic"),"--env-plastic");M!==void 0&&(y.plastic=M),(p!==void 0||Object.keys(b).length>0||Object.keys(y).length>0)&&(o.environment=p===!1?!1:{pins:b,effects:y});let h=t("--script");if(h){let s=t("--progress"),a=s===void 0?1:Number.parseFloat(s);if(!Number.isFinite(a))throw new Error(`--progress expects a number from 0 to 1, got "${s}"`);o.script={id:h,progress:a,animate:e.includes("--animate"),slow:e.includes("--slow")}}return o}function E(e,t){if(e===void 0)return;let o=e.toLowerCase();if(["on","true","yes","1"].includes(o))return!0;if(["off","false","no","0"].includes(o))return!1;throw new Error(`${t} expects on or off, got "${e}"`)}function ce(e){return[`ready=${!!e.ready}`,`background=${String(e.background??"unknown")}`,`colorway=${String(e.colorway??"unknown")}`,`environment=${e.environmentActive?"on":"off"}`,`setting=${String(e.setting??"none")}`,`focus=${e.focus&&typeof e.focus=="object"&&e.focus.enabled?"on":"off"}`].join(", ")}export{D as a,be as b,j as c,le as d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{h as w,j as u,k as m,l}from"./chunk-MO2QVYFW.js";var p="sootsim:settings",v=["errorReporting","colorScheme","reduceMotion","a11yMode","a11yDepth","screenshotCanvas","screenshotBackground","screenshotText","screenshotPose","screenshotDynamicSize","alwaysShowLiveWebViews","agentProvider","onboardingComplete","betaConsentVersion","detailedTelemetry"];function S(){if(typeof window>"u")return null;let e=window.sootsimElectron;return e&&typeof e=="object"?e:null}function g(e){let t={};for(let n of v){if(!(n in e))continue;let r=e[n],o=u[n];o.validate&&!o.validate(r)||o.options&&!o.options.includes(r)||(t[n]=r)}return t}function h(e){let t={};for(let n of v)t[n]=e[n];return t}function _(){if(typeof localStorage>"u")return{};try{let e=localStorage.getItem(p);return e?g(JSON.parse(e)):{}}catch{return{}}}function V(e){if(!(typeof localStorage>"u"))try{localStorage.setItem(p,JSON.stringify(h(e)))}catch{}}function E(){let t=S()?.sharedConfig?.settings;return!t||typeof t!="object"?{}:g(t)}function K(e){let t=S();if(t?.writeSharedConfig)try{t.writeSharedConfig({settings:h(e)})}catch{}}function b(){if(typeof window>"u")return null;let e=window.__sootsimSharedConfig;return e&&typeof e=="object"?e:null}function j(){let e=b()?.settings;return!e||typeof e!="object"?{}:g(e)}function D(e){if(!b())return;let t={settings:h(e)};try{if(globalThis.__sootsimBridgeRequest?.writeSharedConfig?.(t))return}catch{}if(!(typeof fetch>"u"))try{fetch("/__sootsim/shared-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),keepalive:!0}).catch(()=>{})}catch{}}function k(){let e=_(),t=j(),n=E();return{...e,...t,...n}}function R(e){V(e),K(e),D(e)}function C(e){if(typeof window>"u")return()=>{};let t=i=>{if(!(i.key!==p||i.newValue==null))try{e(g(JSON.parse(i.newValue)))}catch{}};window.addEventListener("storage",t);let n=S(),r;n?.onSharedConfigChanged&&(r=n.onSharedConfigChanged(i=>{let d=i?.settings;!d||typeof d!="object"||e(g(d))}));let c=globalThis.__sootsimBridgeRequest?.subscribeSharedConfig?.(i=>{let d=i?.settings;!d||typeof d!="object"||e(g(d))});return()=>{window.removeEventListener("storage",t),r?.(),c?.()}}var M=l(),P=k();for(let e of Object.keys(m()))delete P[e];var s={...M,...P},f=[],a=null;function y(){for(let e of f)e();R(s)}C(e=>{let t={...s},n=!1;for(let[r,o]of Object.entries(e)){let c=r;t[c]!==o&&(t[c]=o,n=!0)}if(n){s=t,a=null;for(let r of f)r()}});var L={get(e){return s[e]},set(e,t){let n=u[e];n.validate&&!n.validate(t)||n.options&&!n.options.includes(t)||s[e]!==t&&(s={...s,[e]:t},e==="deviceModel"&&(a=null),y())},getAll(){return s},apply(e){let t=!1,n={...s};for(let[r,o]of Object.entries(e)){if(o===void 0)continue;let c=r,i=u[c];i&&(i.validate&&!i.validate(o)||i.options&&!i.options.includes(o)||n[c]!==o&&(n[c]=o,t=!0))}t&&(s=n,a=null,y())},reset(){s=l(),a=null,y()},subscribe(e){return f.push(e),()=>{f=f.filter(t=>t!==e)}},getDeviceSpec(){return a||(a=w(s.deviceModel)),a},getA11yMode(){return s.a11yMode},setA11yMode(e){this.set("a11yMode",e)},getInspectMode(){return s.inspectMode},setInspectMode(e){this.set("inspectMode",e)}};export{L as a};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{a,b,c,d,e}from"./chunk-D2AQJY2L.js";import"./chunk-4ZUKMTEH.js";import"./chunk-U3O2ZVZJ.js";import"./chunk-6YFIKQI7.js";import"./chunk-4ZRA4LSB.js";import"./chunk-YJ2PDE4K.js";import"./chunk-CBOYNMNP.js";import"./chunk-3SDYUIT5.js";import"./chunk-RNBYQ5TF.js";import"./chunk-FIDOMJXL.js";import"./chunk-GUFB26IN.js";import"./chunk-JF4J3LFL.js";import"./chunk-QOE3DNO5.js";import"./chunk-MO2QVYFW.js";import"./chunk-HCE47EED.js";export{c as daemonInstall,b as getDaemonServiceStatus,a as runDaemon,d as teardownDaemonService,e as teardownSootsimHome};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import"./chunk-RK7C5U3G.js";import{f as a,g as b,h as c,i as d,j as e,k as f,l as g,m as h,n as i}from"./chunk-RWIXBCIJ.js";import"./chunk-SXIRWCAW.js";import"./chunk-GEJBVV4M.js";import"./chunk-RNBYQ5TF.js";import"./chunk-GUFB26IN.js";import"./chunk-HCE47EED.js";export{e as ALL_DRIVERS,i as buildDriverListRows,a as chromiumDriver,b as electronDriver,f as getAllDrivers,g as getDriver,c as playwrightDriver,h as resolveDriver,d as systemDriver};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{c,d,e,f,g,h}from"./chunk-3I6TOP3W.js";import"./chunk-4ET5SQJ7.js";import"./chunk-TDA6GMMJ.js";import{c as a,d as b}from"./chunk-PYRQ46AN.js";import"./chunk-IFIE63FU.js";import"./chunk-SZYSZKHI.js";import"./chunk-6D4GB3TT.js";import"./chunk-HQTOG4X4.js";import"./chunk-SP2DEZXG.js";import"./chunk-EP5524NT.js";import"./chunk-RWIXBCIJ.js";import"./chunk-SXIRWCAW.js";import"./chunk-XZ2FVQMY.js";import"./chunk-3TYXB26Z.js";import"./chunk-GEJBVV4M.js";import"./chunk-5G3LJUYE.js";import"./chunk-EGQBLGHM.js";import"./chunk-TXGYN5YH.js";import"./chunk-ED4PHTSN.js";import"./chunk-LRWFVZOL.js";import"./chunk-4ZUKMTEH.js";import"./chunk-U3O2ZVZJ.js";import"./chunk-YJ2PDE4K.js";import"./chunk-CBOYNMNP.js";import"./chunk-3SDYUIT5.js";import"./chunk-RNBYQ5TF.js";import"./chunk-FIDOMJXL.js";import"./chunk-GUFB26IN.js";import"./chunk-JI4QHZWI.js";import"./chunk-MO2QVYFW.js";import"./chunk-HCE47EED.js";export{e as discoverSootsimUrl,c as getLastFlowPreviewUploadResult,d as getLastFlowTraceSteps,g as hoistLeadingSimFlag,a as parseFlowFile,f as runFlowPlayback,h as runMaestroAuthoring,b as validateFlowFile};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{a,b,c}from"./chunk-6YFIKQI7.js";import"./chunk-4ZRA4LSB.js";import"./chunk-YJ2PDE4K.js";import"./chunk-CBOYNMNP.js";import"./chunk-3SDYUIT5.js";import"./chunk-RNBYQ5TF.js";import"./chunk-FIDOMJXL.js";import"./chunk-GUFB26IN.js";import"./chunk-JF4J3LFL.js";import"./chunk-QOE3DNO5.js";import"./chunk-MO2QVYFW.js";import"./chunk-HCE47EED.js";export{c as printCommandHelp,b as printGroupHelp,a as printHelp};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{j as a,k as b}from"./chunk-PYRQ46AN.js";import"./chunk-IFIE63FU.js";import"./chunk-HQTOG4X4.js";import"./chunk-SP2DEZXG.js";import"./chunk-EP5524NT.js";import"./chunk-RWIXBCIJ.js";import"./chunk-SXIRWCAW.js";import"./chunk-XZ2FVQMY.js";import"./chunk-3TYXB26Z.js";import"./chunk-GEJBVV4M.js";import"./chunk-5G3LJUYE.js";import"./chunk-EGQBLGHM.js";import"./chunk-TXGYN5YH.js";import"./chunk-ED4PHTSN.js";import"./chunk-LRWFVZOL.js";import"./chunk-YJ2PDE4K.js";import"./chunk-CBOYNMNP.js";import"./chunk-3SDYUIT5.js";import"./chunk-RNBYQ5TF.js";import"./chunk-FIDOMJXL.js";import"./chunk-GUFB26IN.js";import"./chunk-JI4QHZWI.js";import"./chunk-MO2QVYFW.js";import"./chunk-HCE47EED.js";export{a as printShellPerfReport,b as runInspect};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{a}from"./chunk-SUJVPDRY.js";import"./chunk-YGZYZ5PG.js";import"./chunk-ED4PHTSN.js";import"./chunk-3SDYUIT5.js";import"./chunk-RNBYQ5TF.js";import"./chunk-GUFB26IN.js";import"./chunk-HCE47EED.js";export{a as runRuntime};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.243 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{e as a,f as b,g as c}from"./chunk-SZYSZKHI.js";import"./chunk-6D4GB3TT.js";import"./chunk-XZ2FVQMY.js";import"./chunk-3TYXB26Z.js";import"./chunk-GEJBVV4M.js";import"./chunk-ED4PHTSN.js";import"./chunk-4ZUKMTEH.js";import"./chunk-U3O2ZVZJ.js";import"./chunk-3SDYUIT5.js";import"./chunk-RNBYQ5TF.js";import"./chunk-GUFB26IN.js";import"./chunk-HCE47EED.js";export{a as resolveDefaultUploadOrigin,b as resolvePublicPreviewOrigin,c as runUpload};
|