sootsim 0.1.271 → 0.1.272
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/detox/expectations.ts +56 -48
- package/dist-cli/bin.js +4 -4
- package/dist-cli/chunks/{agent-L744OWW2.js → agent-P6GZSLRM.js} +2 -2
- package/dist-cli/chunks/{agent-wrapper-F7YU7YQY.js → agent-wrapper-2V6QR7JT.js} +2 -2
- package/dist-cli/chunks/{app-fonts-AOVWJ64N.js → app-fonts-KNRMKJXD.js} +2 -2
- package/dist-cli/chunks/{assert-VM6WQOSH.js → assert-VWMXT55P.js} +2 -2
- package/dist-cli/chunks/{auth-I73YF2VH.js → auth-GIM3YHL4.js} +2 -2
- package/dist-cli/chunks/beta-C322CH35.js +2 -0
- package/dist-cli/chunks/{camera-5LP32MN5.js → camera-LV3B3ERY.js} +2 -2
- package/dist-cli/chunks/{chunk-YGEZZQ34.js → chunk-2MSJ4TOR.js} +1 -1
- package/dist-cli/chunks/{chunk-QPJHNF2H.js → chunk-3D3WUHI2.js} +2 -2
- package/dist-cli/chunks/{chunk-BSKGIVGK.js → chunk-3GZ4ZGUW.js} +1 -1
- package/dist-cli/chunks/{chunk-Z6WIJUFD.js → chunk-3P3LAIKZ.js} +2 -2
- package/dist-cli/chunks/{chunk-4ISBAFYP.js → chunk-4BQDKWUP.js} +2 -2
- package/dist-cli/chunks/{chunk-DQCYF257.js → chunk-4RTPPDCM.js} +2 -2
- package/dist-cli/chunks/{chunk-3PDYKW67.js → chunk-52IU2APA.js} +1 -1
- package/dist-cli/chunks/{chunk-ACZDS4HL.js → chunk-5IBEBKBU.js} +1 -1
- package/dist-cli/chunks/{chunk-DVUSIJGM.js → chunk-647M3ME6.js} +2 -2
- package/dist-cli/chunks/{chunk-4SRHESEZ.js → chunk-6LJQM2PV.js} +2 -2
- package/dist-cli/chunks/{chunk-TQK4ONSC.js → chunk-6UXGVE7B.js} +3 -3
- package/dist-cli/chunks/{chunk-OFKDXQMY.js → chunk-77AHG7XC.js} +2 -2
- package/dist-cli/chunks/{chunk-KQTMW2VR.js → chunk-7FREST5Z.js} +2 -2
- package/dist-cli/chunks/{chunk-2MAZYB4E.js → chunk-AMOUIEAP.js} +1 -1
- package/dist-cli/chunks/{chunk-KNBKEQMZ.js → chunk-BIWYNMXB.js} +1 -1
- package/dist-cli/chunks/{chunk-MP55R5YC.js → chunk-E6FZKMNQ.js} +1 -1
- package/dist-cli/chunks/{chunk-I5GCWNIJ.js → chunk-EOIPXAUF.js} +1 -1
- package/dist-cli/chunks/{chunk-62CTB2NZ.js → chunk-HS527F2B.js} +1 -1
- package/dist-cli/chunks/{chunk-RVATR53A.js → chunk-JOSBLCUP.js} +1 -1
- package/dist-cli/chunks/{chunk-DDVJQ7KL.js → chunk-K4USS5KY.js} +1 -1
- package/dist-cli/chunks/{chunk-53YHX2QG.js → chunk-LSMPXU4D.js} +3 -3
- package/dist-cli/chunks/{chunk-GATLQUZD.js → chunk-NMPW3IKE.js} +2 -2
- package/dist-cli/chunks/{chunk-RBRFATPJ.js → chunk-NVY52AQE.js} +2 -2
- package/dist-cli/chunks/chunk-PHCPWYXA.js +1 -0
- package/dist-cli/chunks/{chunk-VI3WG25A.js → chunk-Q2RS3DKR.js} +2 -2
- package/dist-cli/chunks/{chunk-V6JB3XB7.js → chunk-QCZHL3KI.js} +2 -2
- package/dist-cli/chunks/{chunk-MVXVG2BX.js → chunk-QPADKGOP.js} +2 -2
- package/dist-cli/chunks/{chunk-5PLAZK5V.js → chunk-QUZDHDE3.js} +2 -2
- package/dist-cli/chunks/{chunk-QSUJV6FY.js → chunk-SWF6GSP2.js} +1 -1
- package/dist-cli/chunks/{chunk-SJRK4IQV.js → chunk-TRKOQX32.js} +2 -2
- package/dist-cli/chunks/{chunk-TIAKOUSI.js → chunk-U7UBIV75.js} +1 -1
- package/dist-cli/chunks/{chunk-ZBGUJKMS.js → chunk-UE2XRBIP.js} +3 -3
- package/dist-cli/chunks/chunk-UZH4THUY.js +1 -0
- package/dist-cli/chunks/{chunk-ILNCM267.js → chunk-V77BGSWB.js} +2 -2
- package/dist-cli/chunks/{chunk-KDQDKEGD.js → chunk-VE2JT5D4.js} +1 -1
- package/dist-cli/chunks/{chunk-7MWXZLC3.js → chunk-W5DZNFI3.js} +1 -1
- package/dist-cli/chunks/{chunk-UTYJQ65T.js → chunk-WO7QKCZR.js} +2 -2
- package/dist-cli/chunks/{chunk-WOLESEXG.js → chunk-WUKCADRK.js} +2 -2
- package/dist-cli/chunks/{chunk-MY2BVCQF.js → chunk-WZT2JQZ7.js} +3 -3
- package/dist-cli/chunks/{chunk-6GT6YSKU.js → chunk-YASTVFWI.js} +1 -1
- package/dist-cli/chunks/{chunk-WIYFHKRE.js → chunk-YMPQ6USJ.js} +2 -2
- package/dist-cli/chunks/{chunk-WU3TJDWA.js → chunk-YQ54F276.js} +2 -2
- package/dist-cli/chunks/{chunk-NXJIRSYB.js → chunk-YUU2LHZS.js} +1 -1
- package/dist-cli/chunks/{chunk-FLCWG5TT.js → chunk-ZJYKKMU7.js} +1 -1
- package/dist-cli/chunks/cli-version-EJ6Y575J.js +2 -0
- package/dist-cli/chunks/{compat-GTD44O52.js → compat-5WRD3HPR.js} +3 -3
- package/dist-cli/chunks/{config-75QCBOYK.js → config-2WYBXEGB.js} +2 -2
- package/dist-cli/chunks/{control-MOMQFZYG.js → control-LQT2NTEJ.js} +2 -2
- package/dist-cli/chunks/daemon-Y7L22R6N.js +2 -0
- package/dist-cli/chunks/{debug-MOQUSHCC.js → debug-AYCCUWM2.js} +3 -3
- package/dist-cli/chunks/{desktop-5TQB3QBP.js → desktop-ZZQMD6Q7.js} +3 -3
- package/dist-cli/chunks/{detox-EJIFEK7G.js → detox-7LRIEKC6.js} +2 -2
- package/dist-cli/chunks/{device-7XUADG3E.js → device-GDCBAZPE.js} +2 -2
- package/dist-cli/chunks/{diagnose-5DEHAEPK.js → diagnose-6VSIE264.js} +2 -2
- package/dist-cli/chunks/drivers-Q6FTTPFM.js +2 -0
- package/dist-cli/chunks/{film-AZXWITDW.js → film-7M3ZY5OZ.js} +3 -3
- package/dist-cli/chunks/flow-NFGZ4HEU.js +2 -0
- package/dist-cli/chunks/help-UXGBACTX.js +2 -0
- package/dist-cli/chunks/{hidden-runtime-alias-5FXUVO7I.js → hidden-runtime-alias-ADZDP6BO.js} +2 -2
- package/dist-cli/chunks/{home-paths-O6TNVGMZ.js → home-paths-H3OAW2FB.js} +2 -2
- package/dist-cli/chunks/inspect-T7L3UWXF.js +2 -0
- package/dist-cli/chunks/install-desktop-PRSRY6WV.js +2 -0
- package/dist-cli/chunks/{login-JZQBHZ6C.js → login-EJ2AKM3R.js} +4 -4
- package/dist-cli/chunks/{logout-W3ROHISE.js → logout-QI5YXZJQ.js} +2 -2
- package/dist-cli/chunks/{maestro-REMOLABE.js → maestro-DPMZM74Q.js} +3 -3
- package/dist-cli/chunks/{maestro-generate-IU2RUQLO.js → maestro-generate-CPUUFDJ3.js} +3 -3
- package/dist-cli/chunks/{mode-2GQRQPIW.js → mode-FSTSZ3MW.js} +2 -2
- package/dist-cli/chunks/optional-demo-registry-5MYUTZN2.js +2 -0
- package/dist-cli/chunks/{perf-CU7CUMKX.js → perf-VD26YPVC.js} +2 -2
- package/dist-cli/chunks/{record-XX3RELNP.js → record-M76CRKNG.js} +3 -3
- package/dist-cli/chunks/runtime-G35ZTARE.js +2 -0
- package/dist-cli/chunks/{screenshot-command-UCB5GMXA.js → screenshot-command-CQNZOJCP.js} +3 -3
- package/dist-cli/chunks/{screenshots-capture-3ALWS273.js → screenshots-capture-MUU37VUC.js} +2 -2
- package/dist-cli/chunks/{serve-GDMRYWRG.js → serve-RTBFO3EP.js} +2 -2
- package/dist-cli/chunks/{setup-HPSMVFGT.js → setup-DZQ4OLOY.js} +3 -3
- package/dist-cli/chunks/{skills-B3FYCUCU.js → skills-RESDEF2Z.js} +2 -2
- package/dist-cli/chunks/{storage-42GBCFPY.js → storage-SCHHLLFY.js} +2 -2
- package/dist-cli/chunks/store-RPDRE7TV.js +2 -0
- package/dist-cli/chunks/telemetry-TAT36E3X.js +2 -0
- package/dist-cli/chunks/{timeline-VOVG5QCE.js → timeline-K4N53W24.js} +2 -2
- package/dist-cli/chunks/{upgrade-AJJ3DDIH.js → upgrade-LKS7JREU.js} +2 -2
- package/dist-cli/chunks/upload-4CZLH275.js +2 -0
- package/dist-cli/chunks/{version-I46ZOIB5.js → version-RKRNYRKP.js} +2 -2
- package/dist-cli/chunks/{web-TA7Z2M3K.js → web-M2C2TSTH.js} +2 -2
- package/dist-cli/chunks/{what-happened-L7WYY5P3.js → what-happened-2ULBMYTD.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 +41 -43
- 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 +1 -1
- package/dist-lib/menu.mjs +1 -1
- 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/dist-cli/chunks/beta-FKJVCD4P.js +0 -2
- package/dist-cli/chunks/chunk-JTQM46FY.js +0 -1
- package/dist-cli/chunks/chunk-OFYXCIJ4.js +0 -1
- package/dist-cli/chunks/cli-version-YLTMQC3T.js +0 -2
- package/dist-cli/chunks/daemon-MCX26DKV.js +0 -2
- package/dist-cli/chunks/drivers-6QDWYOP5.js +0 -2
- package/dist-cli/chunks/flow-SBH3AZJ3.js +0 -2
- package/dist-cli/chunks/help-SLGCB5J2.js +0 -2
- package/dist-cli/chunks/inspect-NMJDGO37.js +0 -2
- package/dist-cli/chunks/install-desktop-PO67KHJF.js +0 -2
- package/dist-cli/chunks/optional-demo-registry-FNHY44IB.js +0 -2
- package/dist-cli/chunks/runtime-7TVHW27R.js +0 -2
- package/dist-cli/chunks/store-OTCZNVYJ.js +0 -2
- package/dist-cli/chunks/telemetry-LSW2JFI3.js +0 -2
- package/dist-cli/chunks/upload-D6KRF57A.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.272 | (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-ZJYKKMU7.js";import{g as A,i as _}from"./chunk-WO7QKCZR.js";import"./chunk-E6FZKMNQ.js";import{c as k}from"./chunk-YUU2LHZS.js";import"./chunk-SWF6GSP2.js";import"./chunk-VE2JT5D4.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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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;
|
|
@@ -711,36 +711,25 @@ async function scrollMatcherElement(page, findNode, matcher, pixels, direction)
|
|
|
711
711
|
if (!node) {
|
|
712
712
|
throw new Error(`scroll container not found: ${JSON.stringify(matcher)}`);
|
|
713
713
|
}
|
|
714
|
+
const before = scrollOffsetOf(node);
|
|
714
715
|
await dragScrollNode(page, node, pixels, direction);
|
|
716
|
+
const after = scrollOffsetOf(await findNode(matcher));
|
|
717
|
+
return Math.abs(after.x - before.x) + Math.abs(after.y - before.y);
|
|
715
718
|
}
|
|
716
|
-
function
|
|
717
|
-
|
|
718
|
-
return false;
|
|
719
|
-
}
|
|
720
|
-
const frame = node.visibleFrame ?? {
|
|
721
|
-
x: node.absolutePosition?.x ?? node.layout?.x ?? 0,
|
|
722
|
-
y: node.absolutePosition?.y ?? node.layout?.y ?? 0,
|
|
723
|
-
width: node.layout.width,
|
|
724
|
-
height: node.layout.height
|
|
725
|
-
};
|
|
726
|
-
const right = frame.x + frame.width;
|
|
727
|
-
const bottom = frame.y + frame.height;
|
|
728
|
-
const visibleWidth = Math.max(0, Math.min(right, viewport.width) - Math.max(frame.x, 0));
|
|
729
|
-
const visibleHeight = Math.max(
|
|
730
|
-
0,
|
|
731
|
-
Math.min(bottom, viewport.height) - Math.max(frame.y, 0)
|
|
732
|
-
);
|
|
733
|
-
const visibleArea = visibleWidth * visibleHeight;
|
|
734
|
-
const totalArea = node.layout.width * node.layout.height;
|
|
735
|
-
return totalArea > 0 && visibleArea / totalArea >= DEFAULT_VISIBILITY_THRESHOLD;
|
|
719
|
+
function scrollOffsetOf(node) {
|
|
720
|
+
return { x: node?.scrollOffsetX ?? 0, y: node?.scrollOffsetY ?? 0 };
|
|
736
721
|
}
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
722
|
+
function visibleFraction(node) {
|
|
723
|
+
const totalArea = (node?.layout?.width ?? 0) * (node?.layout?.height ?? 0);
|
|
724
|
+
const frame = node?.visibleFrame;
|
|
725
|
+
if (totalArea <= 0 || !frame) return 0;
|
|
726
|
+
const visibleArea = Math.max(0, frame.width) * Math.max(0, frame.height);
|
|
727
|
+
return visibleArea / totalArea;
|
|
728
|
+
}
|
|
729
|
+
function isNodeVisible(node) {
|
|
730
|
+
return visibleFraction(node) >= DEFAULT_VISIBILITY_THRESHOLD;
|
|
742
731
|
}
|
|
743
|
-
function describeNodeVisibility(node
|
|
732
|
+
function describeNodeVisibility(node) {
|
|
744
733
|
if (!node) return "not found";
|
|
745
734
|
const absX = node.absolutePosition?.x ?? node.layout?.x ?? 0;
|
|
746
735
|
const absY = node.absolutePosition?.y ?? node.layout?.y ?? 0;
|
|
@@ -754,7 +743,8 @@ function describeNodeVisibility(node, viewport) {
|
|
|
754
743
|
bottom: absY + (node.layout?.height ?? 0)
|
|
755
744
|
},
|
|
756
745
|
visibleFrame: node.visibleFrame ?? null,
|
|
757
|
-
|
|
746
|
+
visibleFraction: visibleFraction(node),
|
|
747
|
+
threshold: DEFAULT_VISIBILITY_THRESHOLD,
|
|
758
748
|
style: node.style ?? null
|
|
759
749
|
});
|
|
760
750
|
}
|
|
@@ -801,9 +791,7 @@ var SootSimExpectation = class _SootSimExpectation {
|
|
|
801
791
|
}
|
|
802
792
|
async toBeVisible() {
|
|
803
793
|
const node = await this.findNode(this.matcher);
|
|
804
|
-
const
|
|
805
|
-
const viewport = node ? await readSootsimInteractiveViewport(page) : void 0;
|
|
806
|
-
const visible = viewport ? isNodeVisibleInViewport(node, viewport) : false;
|
|
794
|
+
const visible = isNodeVisible(node);
|
|
807
795
|
if (this.negated) {
|
|
808
796
|
if (visible) {
|
|
809
797
|
throw new Error(
|
|
@@ -813,14 +801,14 @@ var SootSimExpectation = class _SootSimExpectation {
|
|
|
813
801
|
} else {
|
|
814
802
|
if (!visible) {
|
|
815
803
|
throw new Error(
|
|
816
|
-
`expected element to be visible but it is ${describeNodeVisibility(node
|
|
804
|
+
`expected element to be visible but it is ${describeNodeVisibility(node)}: ${JSON.stringify(this.matcher)}`
|
|
817
805
|
);
|
|
818
806
|
}
|
|
819
807
|
}
|
|
820
808
|
}
|
|
821
809
|
async toBeNotVisible() {
|
|
822
810
|
const node = await this.findNode(this.matcher);
|
|
823
|
-
const visible =
|
|
811
|
+
const visible = isNodeVisible(node);
|
|
824
812
|
if (visible) {
|
|
825
813
|
throw new Error(
|
|
826
814
|
`expected element NOT to be visible: ${JSON.stringify(this.matcher)}`
|
|
@@ -977,12 +965,10 @@ var SootSimWaitForChain = class {
|
|
|
977
965
|
toBeVisible() {
|
|
978
966
|
this.assertionFn = async () => {
|
|
979
967
|
const node = await this.findNode(this.matcher);
|
|
980
|
-
const
|
|
981
|
-
const viewport = node ? await readSootsimInteractiveViewport(page) : void 0;
|
|
982
|
-
const visible = viewport ? isNodeVisibleInViewport(node, viewport) : false;
|
|
968
|
+
const visible = isNodeVisible(node);
|
|
983
969
|
if (this._negated ? visible : !visible) {
|
|
984
970
|
throw new Error(
|
|
985
|
-
`waitFor toBeVisible failed (${describeNodeVisibility(node
|
|
971
|
+
`waitFor toBeVisible failed (${describeNodeVisibility(node)}): ${JSON.stringify(this.matcher)}`
|
|
986
972
|
);
|
|
987
973
|
}
|
|
988
974
|
};
|
|
@@ -991,7 +977,7 @@ var SootSimWaitForChain = class {
|
|
|
991
977
|
toBeNotVisible() {
|
|
992
978
|
this.assertionFn = async () => {
|
|
993
979
|
const node = await this.findNode(this.matcher);
|
|
994
|
-
const visible =
|
|
980
|
+
const visible = isNodeVisible(node);
|
|
995
981
|
if (visible) {
|
|
996
982
|
throw new Error(`waitFor toBeNotVisible failed: ${JSON.stringify(this.matcher)}`);
|
|
997
983
|
}
|
|
@@ -1080,22 +1066,34 @@ var SootSimWaitForScrollAction = class {
|
|
|
1080
1066
|
this.getPage = getPage2;
|
|
1081
1067
|
this.matcher = matcher;
|
|
1082
1068
|
}
|
|
1069
|
+
// detox scrolls the container until the expectation passes or the container
|
|
1070
|
+
// can no longer move. bounding this by wall clock instead made the result
|
|
1071
|
+
// depend on how fast the host dispatches pointer events: the same fixture and
|
|
1072
|
+
// the same assertion pass on an idle machine and fail on a loaded one,
|
|
1073
|
+
// because each 200px drag is a real pointer stream and fewer of them fit in
|
|
1074
|
+
// the budget. end on scroll exhaustion, which is a property of the content.
|
|
1083
1075
|
async scroll(pixels, direction, _startPositionX, _startPositionY) {
|
|
1084
1076
|
const page = this.getPage();
|
|
1085
|
-
const start = Date.now();
|
|
1086
|
-
const timeoutMs = 5e3;
|
|
1087
1077
|
let lastError = null;
|
|
1088
|
-
|
|
1078
|
+
let stalledSteps = 0;
|
|
1079
|
+
while (stalledSteps < 2) {
|
|
1089
1080
|
try {
|
|
1090
1081
|
await this.assertionFn();
|
|
1091
1082
|
return;
|
|
1092
1083
|
} catch (error) {
|
|
1093
1084
|
lastError = error;
|
|
1094
1085
|
}
|
|
1095
|
-
await scrollMatcherElement(
|
|
1086
|
+
const travelled = await scrollMatcherElement(
|
|
1087
|
+
page,
|
|
1088
|
+
this.findNode,
|
|
1089
|
+
this.matcher,
|
|
1090
|
+
pixels,
|
|
1091
|
+
direction
|
|
1092
|
+
);
|
|
1093
|
+
stalledSteps = travelled < 0.5 ? stalledSteps + 1 : 0;
|
|
1096
1094
|
}
|
|
1097
1095
|
throw lastError || new Error(
|
|
1098
|
-
`waitFor whileElement(...).scroll()
|
|
1096
|
+
`waitFor whileElement(...).scroll() reached the end of ${JSON.stringify(this.matcher)}`
|
|
1099
1097
|
);
|
|
1100
1098
|
}
|
|
1101
1099
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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.272 | (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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{a,b,c,d,e}from"./chunk-VI3WG25A.js";import"./chunk-Z6WIJUFD.js";import"./chunk-RBRFATPJ.js";import"./chunk-4ISBAFYP.js";import"./chunk-SJRK4IQV.js";import"./chunk-GATLQUZD.js";import"./chunk-DQCYF257.js";import"./chunk-MP55R5YC.js";import"./chunk-NXJIRSYB.js";import"./chunk-TIAKOUSI.js";import"./chunk-QSUJV6FY.js";import"./chunk-7MWXZLC3.js";import"./chunk-I5GCWNIJ.js";import"./chunk-RVATR53A.js";import"./chunk-KDQDKEGD.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.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import"./chunk-JTQM46FY.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-DVUSIJGM.js";import"./chunk-DDVJQ7KL.js";import"./chunk-2MAZYB4E.js";import"./chunk-NXJIRSYB.js";import"./chunk-QSUJV6FY.js";import"./chunk-KDQDKEGD.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.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{c,d,e,f,g,h}from"./chunk-ZBGUJKMS.js";import"./chunk-V6JB3XB7.js";import"./chunk-6GT6YSKU.js";import{c as a,d as b}from"./chunk-53YHX2QG.js";import"./chunk-WIYFHKRE.js";import"./chunk-MVXVG2BX.js";import"./chunk-5PLAZK5V.js";import"./chunk-KQTMW2VR.js";import"./chunk-WOLESEXG.js";import"./chunk-OFYXCIJ4.js";import"./chunk-DVUSIJGM.js";import"./chunk-DDVJQ7KL.js";import"./chunk-YGEZZQ34.js";import"./chunk-3PDYKW67.js";import"./chunk-2MAZYB4E.js";import"./chunk-KNBKEQMZ.js";import"./chunk-4SRHESEZ.js";import"./chunk-FLCWG5TT.js";import"./chunk-UTYJQ65T.js";import"./chunk-BSKGIVGK.js";import"./chunk-Z6WIJUFD.js";import"./chunk-RBRFATPJ.js";import"./chunk-GATLQUZD.js";import"./chunk-DQCYF257.js";import"./chunk-MP55R5YC.js";import"./chunk-NXJIRSYB.js";import"./chunk-TIAKOUSI.js";import"./chunk-QSUJV6FY.js";import"./chunk-ILNCM267.js";import"./chunk-RVATR53A.js";import"./chunk-KDQDKEGD.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.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{a,b,c}from"./chunk-4ISBAFYP.js";import"./chunk-SJRK4IQV.js";import"./chunk-GATLQUZD.js";import"./chunk-DQCYF257.js";import"./chunk-MP55R5YC.js";import"./chunk-NXJIRSYB.js";import"./chunk-TIAKOUSI.js";import"./chunk-QSUJV6FY.js";import"./chunk-7MWXZLC3.js";import"./chunk-I5GCWNIJ.js";import"./chunk-RVATR53A.js";import"./chunk-KDQDKEGD.js";export{c as printCommandHelp,b as printGroupHelp,a as printHelp};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{j as a,k as b}from"./chunk-53YHX2QG.js";import"./chunk-WIYFHKRE.js";import"./chunk-KQTMW2VR.js";import"./chunk-WOLESEXG.js";import"./chunk-OFYXCIJ4.js";import"./chunk-DVUSIJGM.js";import"./chunk-DDVJQ7KL.js";import"./chunk-YGEZZQ34.js";import"./chunk-3PDYKW67.js";import"./chunk-2MAZYB4E.js";import"./chunk-KNBKEQMZ.js";import"./chunk-4SRHESEZ.js";import"./chunk-FLCWG5TT.js";import"./chunk-UTYJQ65T.js";import"./chunk-BSKGIVGK.js";import"./chunk-GATLQUZD.js";import"./chunk-DQCYF257.js";import"./chunk-MP55R5YC.js";import"./chunk-NXJIRSYB.js";import"./chunk-TIAKOUSI.js";import"./chunk-QSUJV6FY.js";import"./chunk-ILNCM267.js";import"./chunk-RVATR53A.js";import"./chunk-KDQDKEGD.js";export{a as printShellPerfReport,b as runInspect};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{a}from"./chunk-TQK4ONSC.js";import"./chunk-WU3TJDWA.js";import"./chunk-UTYJQ65T.js";import"./chunk-MP55R5YC.js";import"./chunk-NXJIRSYB.js";import"./chunk-QSUJV6FY.js";import"./chunk-KDQDKEGD.js";export{a as runRuntime};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! sootsim v0.1.271 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
-
import{e as a,f as b,g as c}from"./chunk-MVXVG2BX.js";import"./chunk-5PLAZK5V.js";import"./chunk-YGEZZQ34.js";import"./chunk-3PDYKW67.js";import"./chunk-2MAZYB4E.js";import"./chunk-UTYJQ65T.js";import"./chunk-Z6WIJUFD.js";import"./chunk-RBRFATPJ.js";import"./chunk-MP55R5YC.js";import"./chunk-NXJIRSYB.js";import"./chunk-QSUJV6FY.js";import"./chunk-KDQDKEGD.js";export{a as resolveDefaultUploadOrigin,b as resolvePublicPreviewOrigin,c as runUpload};
|