sootsim 0.1.164 → 0.1.166

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.
Files changed (166) hide show
  1. package/README.md +7 -0
  2. package/dist-cli/bin.js +3 -3
  3. package/dist-cli/chunks/{agent-5PVW4KHZ.js → agent-C2HTMDLW.js} +2 -2
  4. package/dist-cli/chunks/{agent-wrapper-REXQODXV.js → agent-wrapper-EE2BNDAQ.js} +2 -2
  5. package/dist-cli/chunks/{app-fonts-XAXAUEB5.js → app-fonts-5JUWVRIA.js} +2 -2
  6. package/dist-cli/chunks/{assert-QDOO5I6J.js → assert-KF2OHBES.js} +2 -2
  7. package/dist-cli/chunks/auto-bootstrap-ITBEBASC.js +2 -0
  8. package/dist-cli/chunks/beta-FUBQGOA5.js +2 -0
  9. package/dist-cli/chunks/{camera-VUJYI6SX.js → camera-L2DDKMHH.js} +2 -2
  10. package/dist-cli/chunks/{chunk-3VE6THTL.js → chunk-2TE65ODE.js} +1 -1
  11. package/dist-cli/chunks/chunk-3CTBL6ST.js +1 -0
  12. package/dist-cli/chunks/chunk-4SYV3YPR.js +4 -0
  13. package/dist-cli/chunks/{chunk-XFJGEFTK.js → chunk-6OOIOB2X.js} +3 -3
  14. package/dist-cli/chunks/{chunk-TFB7NU6N.js → chunk-7534S5IR.js} +1 -1
  15. package/dist-cli/chunks/{chunk-6RAT7QRJ.js → chunk-7RFYWPAN.js} +1 -1
  16. package/dist-cli/chunks/chunk-B47GJVB3.js +3 -0
  17. package/dist-cli/chunks/{chunk-LJUGD5H3.js → chunk-BFEM7E4T.js} +2 -2
  18. package/dist-cli/chunks/{chunk-7UZSNS5H.js → chunk-C7KANC2Z.js} +2 -2
  19. package/dist-cli/chunks/{chunk-46J7FLJB.js → chunk-D3GGZIBS.js} +5 -4
  20. package/dist-cli/chunks/{chunk-ZE2PAAZW.js → chunk-EFCPQBFY.js} +1 -1
  21. package/dist-cli/chunks/{chunk-LN5AJIPO.js → chunk-F4FR47MS.js} +3 -3
  22. package/dist-cli/chunks/chunk-FEWTUTZE.js +1 -0
  23. package/dist-cli/chunks/chunk-FLDFTC6A.js +27 -0
  24. package/dist-cli/chunks/chunk-GS6OBVQR.js +1 -0
  25. package/dist-cli/chunks/{chunk-J6TNRMST.js → chunk-H52Z73AU.js} +2 -2
  26. package/dist-cli/chunks/{chunk-RHWMAYGO.js → chunk-HHMW6MXX.js} +2 -2
  27. package/dist-cli/chunks/{chunk-PQMXEPA5.js → chunk-HNZF4VNH.js} +1 -1
  28. package/dist-cli/chunks/{chunk-R4K3EZQP.js → chunk-ITF7FOSZ.js} +1 -1
  29. package/dist-cli/chunks/{chunk-422J3RDX.js → chunk-ITJSVY3L.js} +2 -2
  30. package/dist-cli/chunks/{chunk-SG5ONZJA.js → chunk-J7FYMPIN.js} +1 -1
  31. package/dist-cli/chunks/{chunk-YDZJR4M3.js → chunk-JXHFW3SD.js} +1 -1
  32. package/dist-cli/chunks/{chunk-T6VPZ5ES.js → chunk-KCP7TTSW.js} +2 -2
  33. package/dist-cli/chunks/chunk-LIYFRTZG.js +2 -0
  34. package/dist-cli/chunks/{chunk-JNC5ZO7K.js → chunk-LOGFVSIT.js} +1 -1
  35. package/dist-cli/chunks/{chunk-AZMD3HP3.js → chunk-LSDWJEFJ.js} +2 -2
  36. package/dist-cli/chunks/{chunk-TDPLTM27.js → chunk-M77N57QN.js} +1 -1
  37. package/dist-cli/chunks/{chunk-53DOSJFQ.js → chunk-MC5ENPQM.js} +2 -2
  38. package/dist-cli/chunks/{chunk-FUD4ZCJ2.js → chunk-MPJ2W2JQ.js} +1 -1
  39. package/dist-cli/chunks/{chunk-2QMMSZ4Z.js → chunk-O3PHDVRF.js} +2 -2
  40. package/dist-cli/chunks/chunk-OIVSYUZ4.js +5 -0
  41. package/dist-cli/chunks/{chunk-YJ3CJUUU.js → chunk-OY57XV3X.js} +2 -2
  42. package/dist-cli/chunks/{chunk-4PJLRB36.js → chunk-OYY6EJM7.js} +2 -2
  43. package/dist-cli/chunks/chunk-QIPSGUG7.js +13 -0
  44. package/dist-cli/chunks/{chunk-3C3MA5ZZ.js → chunk-R3YXB2EL.js} +2 -2
  45. package/dist-cli/chunks/{chunk-AXSNLS34.js → chunk-S2MAMEQX.js} +1 -1
  46. package/dist-cli/chunks/{chunk-XHNXDUYR.js → chunk-S4DTM5EZ.js} +23 -13
  47. package/dist-cli/chunks/chunk-SBMHSZXI.js +119 -0
  48. package/dist-cli/chunks/{chunk-PGN2263R.js → chunk-USUANHKD.js} +2 -2
  49. package/dist-cli/chunks/{chunk-4V6DKD5E.js → chunk-V6OGDC6H.js} +1 -1
  50. package/dist-cli/chunks/{chunk-NKAWHNJR.js → chunk-VKAJ6AJC.js} +1 -1
  51. package/dist-cli/chunks/{chunk-E5KU4NBO.js → chunk-VS5TCZSA.js} +6 -6
  52. package/dist-cli/chunks/{chunk-ZUYTGVNA.js → chunk-WCJQSVYO.js} +1 -1
  53. package/dist-cli/chunks/{chunk-2U5VK6PG.js → chunk-WPJGFVZ5.js} +2 -2
  54. package/dist-cli/chunks/{chunk-YBO4Z43H.js → chunk-Y6RN5IR4.js} +1 -1
  55. package/dist-cli/chunks/{chunk-EOQBPXIN.js → chunk-Y7PCKIZD.js} +2 -2
  56. package/dist-cli/chunks/cli-version-7JACJRBF.js +2 -0
  57. package/dist-cli/chunks/{compat-UKAJB7JZ.js → compat-SSS76KYC.js} +3 -3
  58. package/dist-cli/chunks/{config-MTGWPMUR.js → config-6HJMGQPE.js} +2 -2
  59. package/dist-cli/chunks/control-X3X6VYUC.js +2 -0
  60. package/dist-cli/chunks/{cpu-profile-4GAXCXJO.js → cpu-profile-UQKTGYR7.js} +2 -2
  61. package/dist-cli/chunks/daemon-XSH6YITB.js +67 -0
  62. package/dist-cli/chunks/{debug-MKV3W32U.js → debug-UCOOENBO.js} +3 -3
  63. package/dist-cli/chunks/{detox-PHFTGHRM.js → detox-BJP2O7XH.js} +2 -2
  64. package/dist-cli/chunks/{device-ACKEFGW6.js → device-CVN2YZJF.js} +2 -2
  65. package/dist-cli/chunks/{diagnose-TSP4DCH2.js → diagnose-7XEK27S3.js} +2 -2
  66. package/dist-cli/chunks/drivers-JQ5QIRRE.js +2 -0
  67. package/dist-cli/chunks/{electron-N7KR775O.js → electron-4HYAKJ2I.js} +3 -3
  68. package/dist-cli/chunks/flow-YTT2UHCY.js +2 -0
  69. package/dist-cli/chunks/help-C4GBFKLP.js +2 -0
  70. package/dist-cli/chunks/{hints-6IYSDQA3.js → hints-DWCFCVNT.js} +2 -2
  71. package/dist-cli/chunks/{home-paths-5P4PDEPL.js → home-paths-V6KYK6EL.js} +2 -2
  72. package/dist-cli/chunks/{inspect-F6KLATMN.js → inspect-TCCQEJHM.js} +3 -3
  73. package/dist-cli/chunks/install-EN2VEO4H.js +2 -0
  74. package/dist-cli/chunks/{install-desktop-65COOWJC.js → install-desktop-2YKS5HAY.js} +3 -3
  75. package/dist-cli/chunks/{keys-2RI5OCTX.js → keys-GQWGTUBQ.js} +2 -2
  76. package/dist-cli/chunks/{launch-JKAX6AOP.js → launch-26WSX7AZ.js} +3 -3
  77. package/dist-cli/chunks/{login-CD2MYGGF.js → login-TD7H5EDV.js} +4 -4
  78. package/dist-cli/chunks/{logout-2SPZSYJD.js → logout-6ARTPVDG.js} +2 -2
  79. package/dist-cli/chunks/{maestro-B4XYYVZV.js → maestro-DPZQ34MP.js} +2 -2
  80. package/dist-cli/chunks/optional-demo-registry-J65S4L7Y.js +2 -0
  81. package/dist-cli/chunks/{preview-YWXGWAZR.js → preview-RFQX4EDS.js} +2 -2
  82. package/dist-cli/chunks/{profile-YPKBHJOK.js → profile-RCTOBUDR.js} +2 -2
  83. package/dist-cli/chunks/{react-NNFPIW6R.js → react-ECJL6YMK.js} +2 -2
  84. package/dist-cli/chunks/{record-JGTPXRTW.js → record-3UMKAJKA.js} +4 -4
  85. package/dist-cli/chunks/runtime-GPY6OO6J.js +2 -0
  86. package/dist-cli/chunks/runtime-delivery-F4P6KJZM.js +2 -0
  87. package/dist-cli/chunks/{screenshot-RF55R7LF.js → screenshot-N2UGTFR3.js} +2 -2
  88. package/dist-cli/chunks/{screenshot-mode-X76SGXYB.js → screenshot-mode-OAMJJM3R.js} +2 -2
  89. package/dist-cli/chunks/{screenshots-FVO7MYFJ.js → screenshots-WRE3VRYN.js} +2 -2
  90. package/dist-cli/chunks/{server-BGZ2S4NF.js → server-6CLFPGMH.js} +3 -3
  91. package/dist-cli/chunks/setup-repo-2FQX6VMQ.js +2 -0
  92. package/dist-cli/chunks/{skills-DH5NOT3N.js → skills-HO4NIDC3.js} +2 -2
  93. package/dist-cli/chunks/{slides-CXQMYD3P.js → slides-PJ3DY3WK.js} +2 -2
  94. package/dist-cli/chunks/{start-6AZUCGBI.js → start-P2UWHC5R.js} +4 -4
  95. package/dist-cli/chunks/store-KUJUGFQQ.js +2 -0
  96. package/dist-cli/chunks/telemetry-ZD3GGZT5.js +2 -0
  97. package/dist-cli/chunks/{test-WEATIZNI.js → test-WV2CC6VE.js} +3 -3
  98. package/dist-cli/chunks/{three-mode-ZPRCTDNM.js → three-mode-BLBIUFK7.js} +2 -2
  99. package/dist-cli/chunks/{timeline-AA7E4QQF.js → timeline-T7DCGGXA.js} +2 -2
  100. package/dist-cli/chunks/{upgrade-O3HVW3U3.js → upgrade-MDJCUJG3.js} +2 -2
  101. package/dist-cli/chunks/upload-DBW7W7BM.js +2 -0
  102. package/dist-cli/chunks/version-LPLNI3HW.js +4 -0
  103. package/dist-cli/chunks/{web-VODHXXG7.js → web-BQYICLPD.js} +2 -2
  104. package/dist-cli/chunks/{what-happened-6KGU7OQL.js → what-happened-7QAYQKHI.js} +2 -2
  105. package/dist-cli/chunks/{whoami-4FBBNV5W.js → whoami-3PLHCC2N.js} +2 -2
  106. package/dist-lib/agent-daemon-client.cjs +1 -1
  107. package/dist-lib/agent-events.cjs +1 -1
  108. package/dist-lib/agent-sessions.cjs +1 -1
  109. package/dist-lib/attached-projects.cjs +1 -1
  110. package/dist-lib/auth/shared-session.cjs +1 -1
  111. package/dist-lib/backend-origin.cjs +1 -1
  112. package/dist-lib/beta.cjs +1 -1
  113. package/dist-lib/beta.mjs +1 -1
  114. package/dist-lib/bridge-constants.cjs +1 -1
  115. package/dist-lib/cli-constants.cjs +1 -1
  116. package/dist-lib/config.cjs +1 -1
  117. package/dist-lib/detox/index.cjs +1 -1
  118. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  119. package/dist-lib/home-paths.cjs +1 -1
  120. package/dist-lib/host/bridge-host.cjs +1 -1
  121. package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
  122. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  123. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  124. package/dist-lib/host/websocket-proxy.cjs +1 -1
  125. package/dist-lib/index.cjs +1 -1
  126. package/dist-lib/menu.cjs +1 -1
  127. package/dist-lib/menu.mjs +1 -1
  128. package/dist-lib/metro.cjs +1 -1
  129. package/dist-lib/profiles.cjs +1 -1
  130. package/dist-lib/render-mode.cjs +1 -1
  131. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  132. package/dist-lib/sdk.cjs +1 -1
  133. package/dist-lib/sdk.mjs +1 -1
  134. package/dist-lib/skills.cjs +1 -1
  135. package/dist-lib/vite.cjs +1 -1
  136. package/package.json +4 -2
  137. package/scripts/preuninstall.cjs +118 -0
  138. package/src/native-dev-bundle-url.ts +22 -0
  139. package/src/runtime-delivery.ts +6 -99
  140. package/dist-cli/chunks/auto-bootstrap-PAA3FSVB.js +0 -2
  141. package/dist-cli/chunks/beta-5ICQFWFG.js +0 -2
  142. package/dist-cli/chunks/chunk-36HXTKWO.js +0 -5
  143. package/dist-cli/chunks/chunk-CBKH2EZL.js +0 -4
  144. package/dist-cli/chunks/chunk-HAP45V4J.js +0 -13
  145. package/dist-cli/chunks/chunk-JTWMHYRS.js +0 -1
  146. package/dist-cli/chunks/chunk-PYX7POQN.js +0 -33
  147. package/dist-cli/chunks/chunk-Q2IYU4KK.js +0 -2
  148. package/dist-cli/chunks/chunk-SSTIFD3Y.js +0 -119
  149. package/dist-cli/chunks/chunk-U2Z32HGJ.js +0 -1
  150. package/dist-cli/chunks/chunk-VEQNMRGS.js +0 -1
  151. package/dist-cli/chunks/chunk-ZCPGEUMM.js +0 -3
  152. package/dist-cli/chunks/cli-version-4TLMMPH2.js +0 -2
  153. package/dist-cli/chunks/control-5FU4OLTE.js +0 -2
  154. package/dist-cli/chunks/daemon-VYP6PWR2.js +0 -67
  155. package/dist-cli/chunks/drivers-SDO5XDCT.js +0 -2
  156. package/dist-cli/chunks/flow-3NGH6OZO.js +0 -2
  157. package/dist-cli/chunks/help-ZKCJG65K.js +0 -2
  158. package/dist-cli/chunks/install-6EKDNJOM.js +0 -2
  159. package/dist-cli/chunks/optional-demo-registry-OBP5WLPI.js +0 -2
  160. package/dist-cli/chunks/runtime-D4T7CD4H.js +0 -2
  161. package/dist-cli/chunks/runtime-delivery-DN7LYYY6.js +0 -2
  162. package/dist-cli/chunks/setup-repo-FNIP3MNA.js +0 -2
  163. package/dist-cli/chunks/store-VWLWKCQT.js +0 -2
  164. package/dist-cli/chunks/telemetry-7C5WB6PU.js +0 -2
  165. package/dist-cli/chunks/upload-DQBOMRID.js +0 -2
  166. package/dist-cli/chunks/version-M2DLT2IX.js +0 -4
@@ -1,67 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a as N,b as B}from"./chunk-PGN2263R.js";import"./chunk-EOQBPXIN.js";import{c as O}from"./chunk-E5KU4NBO.js";import"./chunk-4PJLRB36.js";import"./chunk-SSTIFD3Y.js";import"./chunk-Q2IYU4KK.js";import"./chunk-ZUYTGVNA.js";import"./chunk-6RAT7QRJ.js";import"./chunk-R4K3EZQP.js";import"./chunk-PQMXEPA5.js";import{h as I,i as _,q as T,r as k,s as C}from"./chunk-4V6DKD5E.js";import{a as H}from"./chunk-TDPLTM27.js";import{execFileSync as rt,spawnSync as s}from"child_process";import{existsSync as d,mkdirSync as v,readFileSync as ot,rmSync as S,writeFileSync as M}from"fs";import{homedir as $}from"os";import{dirname as j,resolve as m}from"path";import{execFileSync as K}from"child_process";import{chmodSync as X,mkdirSync as E,rmSync as Q,writeFileSync as D}from"fs";import{dirname as L}from"path";var z="dev.sootsim.daemon",R="SootSim Daemon",U="0.1.36";function F(t,o,r){let e=k(),n=C(),a=L(L(n)),c=L(n),l=`${a}/Resources`;Q(e,{recursive:!0,force:!0}),E(T(),{recursive:!0}),E(c,{recursive:!0}),E(l,{recursive:!0}),D(`${a}/Info.plist`,J()),D(`${a}/PkgInfo`,"APPL????"),D(n,Z(t,o,r)),X(n,493);try{K("codesign",["--force","--sign","-","--deep",e],{stdio:"pipe"})}catch(i){let u=i instanceof Error?i.message:String(i);console.warn(` warning: ad-hoc codesign of ${e} failed: ${u}
3
- the daemon will still run, but Login Items may show a generic name.`)}return{bundlePath:e,launcherPath:n}}function J(){return`<?xml version="1.0" encoding="UTF-8"?>
4
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
5
- <plist version="1.0">
6
- <dict>
7
- <key>CFBundleDevelopmentRegion</key><string>en</string>
8
- <key>CFBundleDisplayName</key><string>${R}</string>
9
- <key>CFBundleExecutable</key><string>sootsim-daemon</string>
10
- <key>CFBundleIdentifier</key><string>${z}</string>
11
- <key>CFBundleInfoDictionaryVersion</key><string>6.0</string>
12
- <key>CFBundleName</key><string>${R}</string>
13
- <key>CFBundlePackageType</key><string>APPL</string>
14
- <key>CFBundleShortVersionString</key><string>${U}</string>
15
- <key>CFBundleSignature</key><string>????</string>
16
- <key>CFBundleVersion</key><string>${U}</string>
17
- <key>LSBackgroundOnly</key><true/>
18
- <key>LSUIElement</key><true/>
19
- <key>LSMinimumSystemVersion</key><string>13.0</string>
20
- <key>NSHumanReadableCopyright</key><string>Tamagui LLC</string>
21
- </dict>
22
- </plist>
23
- `}function Z(t,o,r){let n=[t.executable,...t.prefixArgs,"server","--quiet","--port",String(o)].map(tt).join(" ");return`#!/bin/sh
24
- # SootSim Daemon launcher \u2014 auto-generated by 'sootsim daemon install'.
25
- # launchd spawns this; we exec the real sootsim invocation in place so
26
- # launchd tracks the daemon process, not the shell wrapper.
27
- #
28
- # stdout: ${r.stdout}
29
- # stderr: ${r.stderr}
30
- exec ${n}
31
- `}function tt(t){return`'${t.replace(/'/g,"'\\''")}'`}var Y=60,y="dev.sootsim.daemon",A="dev.sootsim.server",g="sootsim-server",f=m($(),"Library/Logs/sootsim"),nt=m($(),".local/state/sootsim");async function Ct(t,o={}){let[r,...e]=t,n=o.port??7668;if(!r||r==="--help"||r==="-h"){V();return}new Set(["install","uninstall","restart","start","stop","logs"]).has(r)&&N({event:`daemon_${r}`,properties:{platform:process.platform,subsource:"daemon"}});try{switch(r){case"install":return await dt({port:n,force:e.includes("--force")});case"uninstall":return await pt();case"status":return await mt();case"restart":return await gt();case"start":return await ft();case"stop":return await yt();case"logs":return await ht(e);default:console.error(` unknown daemon subcommand: ${r}`),V(),process.exit(1)}}finally{await B()}}function V(){O("daemon")}function st(){let t=it();return{executable:process.execPath,prefixArgs:[t]}}function it(){try{let o=rt("which",["sootsim"],{encoding:"utf8"}).trim();if(o&&d(o))return G(o)}catch{}let t=process.argv[1];if(t&&d(t))return G(t);throw new Error("could not locate the sootsim binary")}function G(t){try{return H("fs").realpathSync(t)}catch{return t}}function at(t,o){v(f,{recursive:!0});let r=m(f,"server.out.log"),e=m(f,"server.err.log"),{launcherPath:n}=F(t,o,{stdout:r,stderr:e}),a=` <string>${lt(n)}</string>`;return`<?xml version="1.0" encoding="UTF-8"?>
32
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
33
- <plist version="1.0">
34
- <dict>
35
- <key>Label</key><string>${y}</string>
36
- <key>ProgramArguments</key>
37
- <array>
38
- ${a}
39
- </array>
40
- <key>RunAtLoad</key><true/>
41
- <key>KeepAlive</key><true/>
42
- <key>ThrottleInterval</key><integer>${Y}</integer>
43
- <key>ProcessType</key><string>Background</string>
44
- <key>StandardOutPath</key><string>${r}</string>
45
- <key>StandardErrorPath</key><string>${e}</string>
46
- </dict>
47
- </plist>
48
- `}function ct(t,o){return v(nt,{recursive:!0}),`[Unit]
49
- Description=sootsim bridge daemon
50
- After=default.target
51
-
52
- [Service]
53
- Type=simple
54
- ExecStart=${[t.executable,...t.prefixArgs].map(ut).join(" ")} server --quiet --port ${o}
55
- Restart=always
56
- RestartSec=${Y}
57
-
58
- [Install]
59
- WantedBy=default.target
60
- `}function lt(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function ut(t){return/[^\w@%+=:,./-]/.test(t)?`'${t.replace(/'/g,"'\\''")}'`:t}function b(){return m($(),"Library/LaunchAgents",`${y}.plist`)}function q(){return m($(),"Library/LaunchAgents",`${A}.plist`)}function x(){return m($(),".config/systemd/user",`${g}.service`)}function W(){let t=q();return d(t)?(s("launchctl",["bootout",`gui/${process.getuid()}/${A}`],{stdio:"ignore"}),S(t,{force:!0}),!0):!1}async function dt({port:t,force:o}){if(_()){let e=I()?"this is a dev workstation (IS_TAMAGUI_DEV=1)":"this is a dev checkout";throw new Error(`refusing to install the persistent sootsim daemon agent \u2014 ${e}.
61
- the launchd / systemd agent would point at workspace artifacts / dev env that
62
- change between sessions, and would serve stale prod-built engine assets instead
63
- of the live \`bun dev:sootsim\` output. start the daemon manually in another
64
- shell with: sootsim server
65
- (set SOOTSIM_FORCE_DAEMON_INSTALL=1 to override.)`)}let r=st();if(console.log(` binary: ${[r.executable,...r.prefixArgs].join(" ")}`),console.log(` port: ${t}`),process.platform==="darwin"){W()&&console.log(` migrated away from legacy ${A} plist`);let e=b();if(d(e)&&!o){console.log(` already installed at ${e}`),console.log(" pass --force to overwrite, or use 'sootsim daemon restart' to reload");return}v(j(e),{recursive:!0}),M(e,at(r,t)),console.log(` wrote ${e}`);let n=`gui/${process.getuid()}`,a=`${n}/${y}`,c=()=>{let p=s("launchctl",["bootstrap",n,e],{stdio:"pipe",encoding:"utf8"}),w=(p.stderr||p.stdout||"").trim();if(p.status!==0)return{ok:!1,reason:`bootstrap exit ${p.status}${w?`: ${w}`:""}`};let P=s("launchctl",["print",a],{encoding:"utf8"});return P.status!==0?{ok:!1,reason:`bootstrap returned 0 but service not registered (print exit ${P.status})`}:{ok:!0}},l=c();if(!l.ok){let p=l.reason;if(s("launchctl",["bootout",a],{stdio:"ignore"}),l=c(),!l.ok)throw new Error(`launchctl bootstrap failed: ${l.reason}`+(p!==l.reason?` (initial: ${p})`:"")+" \u2014 try `sootsim daemon uninstall` then retry, or reboot if launchd state is stuck.")}let i=Date.now()+4e3,u,h;for(;Date.now()<i;){let p=s("launchctl",["print",a],{encoding:"utf8"});if(p.status===0&&(u=p.stdout?.match(/state\s*=\s*(\w+)/)?.[1],h=p.stdout?.match(/pid\s*=\s*(\d+)/)?.[1],u==="running"||h))break;await new Promise(w=>setTimeout(w,150))}if(u!=="running"&&!h)throw new Error(`daemon registered but did not reach running state within 4s (last state: ${u||"unknown"}). check ${m(f,"server.err.log")} \u2014 typically a stale runtime or a port already bound by another process.`);console.log(` registered (state: ${u||"unknown"}${h?`, pid ${h}`:""}, log: ${m(f,"server.err.log")})`);return}if(process.platform==="linux"){let e=x();if(d(e)&&!o){console.log(` already installed at ${e}`),console.log(" pass --force to overwrite, or use 'sootsim daemon restart' to reload");return}v(j(e),{recursive:!0}),M(e,ct(r,t)),console.log(` wrote ${e}`);let n=s("systemctl",["--user","daemon-reload"],{stdio:"pipe",encoding:"utf8"});if(n.status!==0){let i=(n.stderr||n.stdout||"").trim();throw new Error(`systemctl daemon-reload failed${i?`: ${i}`:""}`)}let a=s("systemctl",["--user","enable","--now",g],{stdio:"pipe",encoding:"utf8"});if(a.status!==0){let i=(a.stderr||a.stdout||"").trim();throw new Error(`systemctl enable --now failed${i?`: ${i}`:""} \u2014 try \`sootsim daemon uninstall\` then retry.`)}let l=(s("systemctl",["--user","is-active",g],{encoding:"utf8"}).stdout||"").trim()||"unknown";console.log(` registered (state: ${l}, journalctl --user -u ${g} to tail logs)`);try{let i=process.env.USER||process.env.LOGNAME||"";if(i){let u=s("loginctl",["show-user",i,"--property=Linger","--value"],{encoding:"utf8"});!((u.stdout||"").trim().toLowerCase()==="yes")&&u.status===0&&console.log(` note: linger is not enabled for "${i}". the daemon will exit at logout.
66
- enable persistence with: sudo loginctl enable-linger ${i}`)}}catch{}return}console.error(` sootsim daemon install is not supported on ${process.platform}`),console.error(" run 'sootsim server' in a persistent shell instead"),process.exit(1)}async function pt(){if(process.platform==="darwin"){let t=b(),o=W();o&&console.log(` removed legacy ${q()}`);let r=d(t);r&&(s("launchctl",["bootout",`gui/${process.getuid()}/${y}`],{stdio:"ignore"}),S(t,{force:!0}),console.log(` removed ${t}`));let e=k();d(e)&&(S(e,{recursive:!0,force:!0}),console.log(` removed ${e}`)),!r&&!o&&console.log(" not installed");return}if(process.platform==="linux"){let t=x();if(!d(t)){console.log(" not installed");return}s("systemctl",["--user","disable","--now",g],{stdio:"ignore"}),S(t,{force:!0}),s("systemctl",["--user","daemon-reload"],{stdio:"ignore"}),console.log(` removed ${t}`);return}console.error(` unsupported platform: ${process.platform}`),process.exit(1)}async function mt(){if(process.platform==="darwin"){let t=b();if(!d(t)){console.log(" installed: no");return}console.log(` installed: yes (${t})`);let o=$t(t);o&&console.log(` binary: ${o}`);let r=s("launchctl",["print",`gui/${process.getuid()}/${y}`],{encoding:"utf8"});if(r.status===0){let e=r.stdout.match(/state\s*=\s*(\w+)/)?.[1],n=r.stdout.match(/pid\s*=\s*(\d+)/)?.[1];console.log(` state: ${e||"unknown"}${n?` (pid ${n})`:""}`)}else console.log(" state: not running");return}if(process.platform==="linux"){let t=x();if(!d(t)){console.log(" installed: no");return}console.log(` installed: yes (${t})`);let o=s("systemctl",["--user","is-active",g],{encoding:"utf8"});console.log(` state: ${o.stdout.trim()||"unknown"}`);return}console.error(` unsupported platform: ${process.platform}`),process.exit(1)}async function gt(){if(process.platform==="darwin"){let t=b();d(t)||(console.error(" daemon not registered \u2014 run any sootsim command to bootstrap it"),process.exit(1));let o=s("launchctl",["kickstart","-k",`gui/${process.getuid()}/${y}`],{stdio:"pipe",encoding:"utf8"});o.status!==0&&(console.error(` kickstart failed: ${o.stderr?.trim()}`),process.exit(1)),console.log(" restarted");return}if(process.platform==="linux"){let t=x();d(t)||(console.error(" daemon not registered \u2014 run any sootsim command to bootstrap it"),process.exit(1));let o=s("systemctl",["--user","restart",g],{stdio:"pipe",encoding:"utf8"});o.status!==0&&(console.error(` restart failed: ${o.stderr?.trim()}`),process.exit(1)),console.log(" restarted");return}console.error(` unsupported platform: ${process.platform}`),process.exit(1)}async function ft(){if(process.platform==="darwin"){s("launchctl",["kickstart",`gui/${process.getuid()}/${y}`],{stdio:"inherit"});return}if(process.platform==="linux"){s("systemctl",["--user","start",g],{stdio:"inherit"});return}console.error(` unsupported platform: ${process.platform}`),process.exit(1)}async function yt(){if(process.platform==="darwin"){s("launchctl",["bootout",`gui/${process.getuid()}/${y}`],{stdio:"inherit"});return}if(process.platform==="linux"){s("systemctl",["--user","stop",g],{stdio:"inherit"});return}console.error(` unsupported platform: ${process.platform}`),process.exit(1)}async function ht(t){let o=t.find(n=>/^-n\d+$|^--lines=\d+$|^\d+$/.test(n)),r=o?Number(o.replace(/\D/g,"")):200,e=t.includes("-f")||t.includes("--follow");if(process.platform==="darwin"){let n=m(f,"server.out.log"),a=m(f,"server.err.log"),c=[n,a].filter(i=>d(i));c.length===0&&(console.error(` no daemon logs yet at ${f} \u2014 run any sootsim command to start the daemon`),process.exit(1));let l=e?["-n",String(r),"-F",...c]:["-n",String(r),...c];s("tail",l,{stdio:"inherit"});return}if(process.platform==="linux"){let n=`${g}.service`,a=["--user","-u",n,"-n",String(r),"--no-pager"],c=s("journalctl",e?[...a,"-f"]:a,{encoding:"utf8",stdio:e?"inherit":"pipe"});if(e)return;let l=`${c.stdout||""}${c.stderr||""}`,i=/insufficient permissions|No journal files were opened/i.test(l);if(c.status===0&&!i){process.stdout.write(c.stdout||"");return}let u=s("journalctl",[`_SYSTEMD_USER_UNIT=${n}`,"-n",String(r),"--no-pager"],{encoding:"utf8"});if(u.status===0&&(u.stdout||"").trim()){process.stdout.write(u.stdout);return}console.error(` could not read --user journal for ${n} (this user isn't in the systemd-journal group yet).
67
- run: sudo journalctl _SYSTEMD_USER_UNIT=${n} -n ${r} --no-pager`),process.exit(1)}console.error(` unsupported platform: ${process.platform}`),process.exit(1)}function $t(t){try{return ot(t,"utf8").match(/<array>\s*<string>([^<]+)<\/string>/)?.[1]||null}catch{return null}}export{dt as daemonInstall,Ct as runDaemon};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import"./chunk-U2Z32HGJ.js";import{a,b,c,d,e,f,g,h,i}from"./chunk-46J7FLJB.js";import"./chunk-JNC5ZO7K.js";import"./chunk-YJ3CJUUU.js";import"./chunk-JTWMHYRS.js";import"./chunk-ZE2PAAZW.js";import"./chunk-3VE6THTL.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.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.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a as c,b as d,c as e,d as f}from"./chunk-XFJGEFTK.js";import"./chunk-2U5VK6PG.js";import"./chunk-VEQNMRGS.js";import"./chunk-AZMD3HP3.js";import"./chunk-LJUGD5H3.js";import"./chunk-J6TNRMST.js";import{c as a,d as b}from"./chunk-RHWMAYGO.js";import"./chunk-HAP45V4J.js";import"./chunk-36HXTKWO.js";import"./chunk-2QMMSZ4Z.js";import"./chunk-YDZJR4M3.js";import"./chunk-YBO4Z43H.js";import"./chunk-AXSNLS34.js";import"./chunk-T6VPZ5ES.js";import"./chunk-FUD4ZCJ2.js";import"./chunk-46J7FLJB.js";import"./chunk-JNC5ZO7K.js";import"./chunk-YJ3CJUUU.js";import"./chunk-JTWMHYRS.js";import"./chunk-ZE2PAAZW.js";import"./chunk-3VE6THTL.js";import"./chunk-PGN2263R.js";import"./chunk-EOQBPXIN.js";import"./chunk-4PJLRB36.js";import"./chunk-Q2IYU4KK.js";import"./chunk-ZUYTGVNA.js";import"./chunk-422J3RDX.js";import"./chunk-PQMXEPA5.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{c as discoverSootsimUrl,e as hoistLeadingSimFlag,a as parseFlowFile,f as runFlow,d as runFlowPlayback,b as validateFlowFile};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a,b,c}from"./chunk-E5KU4NBO.js";import"./chunk-4PJLRB36.js";import"./chunk-SSTIFD3Y.js";import"./chunk-Q2IYU4KK.js";import"./chunk-ZUYTGVNA.js";import"./chunk-6RAT7QRJ.js";import"./chunk-R4K3EZQP.js";import"./chunk-PQMXEPA5.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{c as printCommandHelp,b as printGroupHelp,a as printHelp};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a as o}from"./chunk-XHNXDUYR.js";import"./chunk-NKAWHNJR.js";import"./chunk-LN5AJIPO.js";import"./chunk-T6VPZ5ES.js";import"./chunk-3VE6THTL.js";import"./chunk-PGN2263R.js";import"./chunk-EOQBPXIN.js";import"./chunk-ZUYTGVNA.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";async function t(n){console.error(" note: `sootsim install` is now `sootsim setup-repo`. forwarding\u2026\n"),await o(n)}export{t as runInstall};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a,b}from"./chunk-FUD4ZCJ2.js";import"./chunk-TDPLTM27.js";export{a as loadOptionalDemoApps,b as optionalDemoAppsSync};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a,b}from"./chunk-PYX7POQN.js";import"./chunk-T6VPZ5ES.js";import"./chunk-3VE6THTL.js";import"./chunk-ZUYTGVNA.js";import"./chunk-CBKH2EZL.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{b as formatReleaseEntry,a as runRuntime};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n}from"./chunk-CBKH2EZL.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{a as DEFAULT_RUNTIME_CDN_ORIGIN,b as RUNTIME_CDN_ORIGIN_ENV,c as RUNTIME_CHANNEL_ENV,n as checkRuntimeUpToDate,h as fetchRuntimeManifest,j as fetchRuntimeReleases,l as installRuntime,d as resolveRuntimeCdnOrigin,e as resolveRuntimeChannel,k as resolveRuntimeVersion,f as runtimeManifestUrl,i as runtimeReleasesUrl,g as runtimeTarballUrl,m as updateRuntimeToLatest};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a}from"./chunk-XHNXDUYR.js";import"./chunk-NKAWHNJR.js";import"./chunk-LN5AJIPO.js";import"./chunk-T6VPZ5ES.js";import"./chunk-3VE6THTL.js";import"./chunk-PGN2263R.js";import"./chunk-EOQBPXIN.js";import"./chunk-ZUYTGVNA.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{a as runSetupRepo};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a}from"./chunk-422J3RDX.js";import"./chunk-PQMXEPA5.js";import"./chunk-TDPLTM27.js";export{a as settingsStore};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a,b}from"./chunk-PGN2263R.js";import"./chunk-EOQBPXIN.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{b as flushCliTelemetry,a as trackCliEvent};
@@ -1,2 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a,b,c}from"./chunk-LJUGD5H3.js";import"./chunk-J6TNRMST.js";import"./chunk-YBO4Z43H.js";import"./chunk-AXSNLS34.js";import"./chunk-T6VPZ5ES.js";import"./chunk-JTWMHYRS.js";import"./chunk-ZE2PAAZW.js";import"./chunk-3VE6THTL.js";import"./chunk-PGN2263R.js";import"./chunk-EOQBPXIN.js";import"./chunk-ZUYTGVNA.js";import"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";export{a as resolveDefaultUploadOrigin,b as resolvePublicPreviewOrigin,c as runUpload};
@@ -1,4 +0,0 @@
1
- /*! sootsim v0.1.164 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a as u}from"./chunk-6RAT7QRJ.js";import{e as f,j as g,n as v}from"./chunk-CBKH2EZL.js";import{B as m}from"./chunk-4V6DKD5E.js";import"./chunk-TDPLTM27.js";async function d(a){let{IS_BETA:e,BETA_LABEL:t}=await import("./beta-5ICQFWFG.js"),n=e?` \xB7 ${t}`:"";console.log(`sootsim v${u()}${n}`);let i=m(),l=f();console.log(i?`runtime v${i} \xB7 ${l}`:"runtime not installed \u2014 run `sootsim runtime install`");let o=await v({channel:l});o.outdated&&o.latest&&console.log(`
3
- \u2191 runtime v${o.latest} available \u2014 run \`sootsim upgrade\``);let c=[];try{c=await g()}catch{return}let r=c.find(s=>s.version===(o.latest||i));if(r){let s=R(r);s&&console.log(`
4
- what's new in v${r.version}: ${s} \u2014 \`sootsim runtime notes\``)}}function R(a){let e=[];for(let t of a.sections){let n=t.items.length;n>0&&e.push(`${n} ${t.title.toLowerCase()}`)}return e.join(", ")}export{d as runVersion};