hyperframes 0.8.112 → 0.8.114

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 (163) hide show
  1. package/dist/{add-NIVC2YMT.js → add-KCBOVKEU.js} +15 -15
  2. package/dist/{animatedGifPrep-NWAJKCHG.js → animatedGifPrep-U7FMC7DB.js} +6 -6
  3. package/dist/{asset-O6JJKF3Z.js → asset-AJ4ZZE3K.js} +2 -2
  4. package/dist/{assetCataloger-DJSPW3RL.js → assetCataloger-5LCGR5XU.js} +2 -2
  5. package/dist/{auth-6XRZQQQS.js → auth-PSEHAWSA.js} +2 -2
  6. package/dist/{autoUpdate-GZHLQBLS.js → autoUpdate-E32YLKFZ.js} +2 -2
  7. package/dist/{backgroundChecks-4QQRGJ5S.js → backgroundChecks-FNHBA7YI.js} +3 -3
  8. package/dist/backgroundChecksWorker.js +3 -3
  9. package/dist/{batchRender-PJGNXN7F.js → batchRender-QVJ7NEUH.js} +3 -3
  10. package/dist/{beats-VYR6B4UB.js → beats-F67KZC3V.js} +11 -11
  11. package/dist/{benchmark-CGP2NKIP.js → benchmark-CGD6CPRK.js} +12 -12
  12. package/dist/{browser-ZWD4ETXK.js → browser-FPX3Z2AR.js} +11 -11
  13. package/dist/{bundleWithLocalizedFonts-JWHKLSZM.js → bundleWithLocalizedFonts-4CVITCYK.js} +2 -2
  14. package/dist/{capture-C4MPRLJV.js → capture-F2Y7TIHU.js} +8 -8
  15. package/dist/{capture-IQ7AUK6M.js → capture-GLHK4ST7.js} +2 -2
  16. package/dist/{catalog-RZ7PWQMS.js → catalog-4BZX7MQQ.js} +15 -15
  17. package/dist/{check-7UU4SSO6.js → check-IO3HWLLU.js} +32 -32
  18. package/dist/{checkBrowser-6KYNYIU7.js → checkBrowser-JTQ7ABCL.js} +29 -29
  19. package/dist/{chunk-OWN3ZIIK.js → chunk-3IUSKIZW.js} +1 -1
  20. package/dist/{chunk-UTXMQVB2.js → chunk-3SH322X7.js} +10 -10
  21. package/dist/{chunk-YQ5MFXWG.js → chunk-4KGMIOMY.js} +5 -5
  22. package/dist/{chunk-N34BYX3E.js → chunk-4PFZPP2N.js} +54 -30
  23. package/dist/{chunk-2GXKCB7J.js → chunk-6U3K3U62.js} +1 -1
  24. package/dist/{chunk-7G25WGTA.js → chunk-752X6G7T.js} +2 -2
  25. package/dist/{chunk-KQ3VNA6R.js → chunk-7543YIMQ.js} +1 -1
  26. package/dist/{chunk-GODQ5XA4.js → chunk-7ZR25WGW.js} +8 -16
  27. package/dist/{chunk-OXZO4WQI.js → chunk-BORVRAHJ.js} +9 -9
  28. package/dist/{chunk-H3WFEPV2.js → chunk-BOUDTDBQ.js} +1 -1
  29. package/dist/chunk-C6AIZOQN.js +3541 -0
  30. package/dist/{chunk-QXERSWXX.js → chunk-DQBY7FRR.js} +123 -3
  31. package/dist/{chunk-36XLW2TP.js → chunk-DR7QW6C5.js} +2 -2
  32. package/dist/{chunk-VW6CVKVA.js → chunk-E52XEEAA.js} +2 -2
  33. package/dist/{chunk-5SDXALUQ.js → chunk-ENHAGQEP.js} +1 -1
  34. package/dist/{chunk-C4JINRJK.js → chunk-FCEFKWPM.js} +1 -1
  35. package/dist/{chunk-P74PW7KR.js → chunk-G2T2X6FZ.js} +3 -3
  36. package/dist/{chunk-CS4IE5G7.js → chunk-GDJ74GHW.js} +4 -3
  37. package/dist/{chunk-KS5HFREQ.js → chunk-HGMKPPGD.js} +4 -4
  38. package/dist/{chunk-VHRHI3CU.js → chunk-HTQR7SUZ.js} +1 -1
  39. package/dist/{chunk-M4RYK5OF.js → chunk-IP3XINRB.js} +1 -1
  40. package/dist/{chunk-E664L6K3.js → chunk-IPXPSCWV.js} +3 -3
  41. package/dist/{chunk-LYBFDHXD.js → chunk-JH7ZJRDL.js} +3 -3
  42. package/dist/chunk-K4WKGXRC.js +18 -0
  43. package/dist/{chunk-JRULOVZK.js → chunk-L5QASNBN.js} +1 -1
  44. package/dist/{chunk-NOOBRCMC.js → chunk-LDSWUYZB.js} +3 -3
  45. package/dist/{chunk-TSZU5JMC.js → chunk-LMC46FK5.js} +2 -2
  46. package/dist/{chunk-P3AQVFY2.js → chunk-LSSIYIXI.js} +3 -3
  47. package/dist/{chunk-TXVN43SX.js → chunk-LYNBNESS.js} +80 -13
  48. package/dist/{chunk-BD3MHTSR.js → chunk-MLLBZR2U.js} +2 -2
  49. package/dist/{chunk-Q7U7QRC7.js → chunk-MR6BQLGM.js} +2 -2
  50. package/dist/{chunk-POEGJGEA.js → chunk-MST5JBOR.js} +1 -1
  51. package/dist/{chunk-J2S4MY2M.js → chunk-OCNCK5FQ.js} +2 -2
  52. package/dist/{chunk-BSBIG74E.js → chunk-P3FGUSFK.js} +8 -8
  53. package/dist/{chunk-4BXTKKRD.js → chunk-QPR4N2D4.js} +1 -1
  54. package/dist/{chunk-EA4LCCJI.js → chunk-RKSRXPKV.js} +5 -5
  55. package/dist/{chunk-KIIKVKHB.js → chunk-SIN32SJB.js} +2 -2
  56. package/dist/{chunk-PRETPA7Z.js → chunk-SSM2TJYE.js} +1 -1
  57. package/dist/{chunk-BLI5XATY.js → chunk-SYQOD3W7.js} +1 -1
  58. package/dist/{chunk-KPSRL2NB.js → chunk-T3NMEYGM.js} +1 -1
  59. package/dist/{chunk-3Q7HXIXZ.js → chunk-VFCKXTBB.js} +5 -2
  60. package/dist/{chunk-7VIXEM6Q.js → chunk-VLC7JS4K.js} +1 -1
  61. package/dist/{chunk-A6GVXZZ3.js → chunk-WAS5VEA4.js} +1 -1
  62. package/dist/{chunk-BZGWHPRW.js → chunk-XFJXFNJF.js} +3 -3
  63. package/dist/{chunk-7OJSZTJK.js → chunk-XXKBPGPJ.js} +2 -2
  64. package/dist/{chunk-YAFO7V4A.js → chunk-YJEGT5L6.js} +1 -1
  65. package/dist/{chunk-2BEOCUAG.js → chunk-ZMMSMDCA.js} +1 -1
  66. package/dist/{clean-263PH5CR.js → clean-MCL76KQH.js} +16 -16
  67. package/dist/cli.js +122 -54
  68. package/dist/{cloud-STLYEQNN.js → cloud-444K6HIK.js} +4 -4
  69. package/dist/{cloudrun-7ZVNB6FY.js → cloudrun-BML6ZG7K.js} +3 -3
  70. package/dist/{compare-33JLJ52D.js → compare-CGNTCOR2.js} +24 -24
  71. package/dist/{compiler-H3QAMMC2.js → compiler-ZHVIEP26.js} +3 -3
  72. package/dist/{component-O5JLM26B.js → component-HTXLOIHR.js} +3 -3
  73. package/dist/{compositions-CN4ZVT5G.js → compositions-KK46F5AC.js} +11 -11
  74. package/dist/{delete-Z23A45R3.js → delete-SSRZKKWQ.js} +2 -2
  75. package/dist/{deploy-PJLSZMUH.js → deploy-MX76RZ36.js} +1 -1
  76. package/dist/{destroy-IPUDK6YN.js → destroy-H2TZBYHH.js} +1 -1
  77. package/dist/{dist-ICXYT7XK.js → dist-HRBNHR4M.js} +1 -1
  78. package/dist/{dist-7VEVT4NT.js → dist-OKRUIHYU.js} +2 -2
  79. package/dist/{doctor-6QLXSGPK.js → doctor-IIOX25KM.js} +11 -11
  80. package/dist/{events-UA4DJUO2.js → events-DCUZBRW6.js} +9 -9
  81. package/dist/{events-EAAIWITP.js → events-TYMMAKHX.js} +8 -8
  82. package/dist/{feedback-2CIRCBHY.js → feedback-RIAGW6LG.js} +10 -10
  83. package/dist/{figma-DFCCII66.js → figma-VBOUGJNX.js} +3 -3
  84. package/dist/fontLocalizeCli.js +8 -8
  85. package/dist/{get-UQ2AAXWM.js → get-LT6NUGNR.js} +2 -2
  86. package/dist/{gpuPolicy-CPCLBMS5.js → gpuPolicy-LRMOZXFU.js} +6 -6
  87. package/dist/{grade-compare-THUUFHO3.js → grade-compare-WWYQSQUM.js} +24 -24
  88. package/dist/{help-SR2MRL3U.js → help-55ZV2M5U.js} +1 -1
  89. package/dist/{history-WLI7KFXB.js → history-QCY7CO4P.js} +16 -17
  90. package/dist/hyperframe-runtime.js +52 -52
  91. package/dist/hyperframe.manifest.json +1 -1
  92. package/dist/hyperframe.runtime.iife.js +52 -52
  93. package/dist/hyperframes-player.global.js +1 -1
  94. package/dist/{info-DFJM3YRJ.js → info-ROTXHRAH.js} +11 -11
  95. package/dist/{init-HEAMOTGH.js → init-5XFOWGGN.js} +25 -24
  96. package/dist/{inspect-TO2EXJNK.js → inspect-3UF4VLTM.js} +25 -25
  97. package/dist/{installer-REA7ZASD.js → installer-DGYYDGWJ.js} +4 -4
  98. package/dist/{keyframes-XHEBAJY7.js → keyframes-OFZ6XNMC.js} +12 -12
  99. package/dist/{lambda-MSWYKDNT.js → lambda-OQBFCEFA.js} +6 -6
  100. package/dist/{layout-UQXCTFFV.js → layout-B4XF2734.js} +25 -25
  101. package/dist/{lint-BSMZ526C.js → lint-3YIJITTC.js} +12 -12
  102. package/dist/{lintProject-VNE322A7.js → lintProject-TOLC6HDS.js} +1 -1
  103. package/dist/{list-RNP5EMTX.js → list-276FF3QE.js} +2 -2
  104. package/dist/{login-S6V75HG5.js → login-SA3MCAIS.js} +4 -4
  105. package/dist/{manager-NEVLEZK3.js → manager-CT3D67CG.js} +1 -1
  106. package/dist/{media-treatment-IHEEEDUQ.js → media-treatment-ICA5DWHS.js} +12 -12
  107. package/dist/{models-OQEBKNJI.js → models-JF5OOZ5A.js} +7 -7
  108. package/dist/{motionShot-EAIFVJ2I.js → motionShot-TQBDZZ4M.js} +12 -12
  109. package/dist/{normalize-audio-4ACUR6W6.js → normalize-audio-URNASKUV.js} +11 -11
  110. package/dist/{pipeline-SOQHD5YN.js → pipeline-IWPF5ZMK.js} +6 -6
  111. package/dist/{play-3WJPS3FE.js → play-JYBAII35.js} +20 -20
  112. package/dist/{preflight-ZUADCOLZ.js → preflight-2GH2Z4GZ.js} +8 -8
  113. package/dist/{present-MU23WZZA.js → present-WIEZRZET.js} +16 -16
  114. package/dist/{preview-VOTNRX67.js → preview-YUPU646E.js} +171 -93
  115. package/dist/{producer-HKRMTCPU.js → producer-SL66UNEP.js} +1 -1
  116. package/dist/{projectConfig-H37MQGE6.js → projectConfig-7AKXZNNR.js} +6 -6
  117. package/dist/{publication-QVDKMAKD.js → publication-B2OERUY7.js} +2 -2
  118. package/dist/{publish-54IPKU5O.js → publish-ZGKT7KED.js} +8 -8
  119. package/dist/{remove-background-KQQ2WPKP.js → remove-background-4LRTT6YL.js} +7 -7
  120. package/dist/{render-HJQ44SEI.js → render-AX77WC3C.js} +12 -12
  121. package/dist/{render-P7727PLY.js → render-F3QVCKKA.js} +23 -23
  122. package/dist/{render-S2T3SLI4.js → render-TGCDBKMP.js} +3 -3
  123. package/dist/{render-batch-DUFAHD6F.js → render-batch-WRQFW4UC.js} +3 -3
  124. package/dist/{renderCancellation-BSVXXGZM.js → renderCancellation-BFCQYGVV.js} +6 -6
  125. package/dist/renderSetupWorker.js +2 -2
  126. package/dist/{resolver-PHWKDEH2.js → resolver-37UOGAMT.js} +4 -4
  127. package/dist/{sherpa-GHQOWXFV.js → sherpa-SDVKYXCX.js} +7 -7
  128. package/dist/{skills-SOCMD66Y.js → skills-M6ETUUH5.js} +11 -11
  129. package/dist/{skillsUpdateCheck-PONPICQM.js → skillsUpdateCheck-UTX5LT5C.js} +3 -3
  130. package/dist/{snapshot-ECXEZ4TY.js → snapshot-HMDAENTY.js} +143 -54
  131. package/dist/{src-LVBNYMJW.js → src-PJJ6NISA.js} +5 -5
  132. package/dist/{src-RQE5HXZK.js → src-PLWCT745.js} +7 -7
  133. package/dist/{staticProjectServer-TQYP44CW.js → staticProjectServer-XDH5SQV6.js} +14 -14
  134. package/dist/{status-HVI7QZHE.js → status-LENRPQS5.js} +6 -6
  135. package/dist/studio/assets/{hyperframes-player-CBpg41JM.js → hyperframes-player-aXNJKiIg.js} +1 -1
  136. package/dist/studio/assets/index-BYnsJnJV.css +1 -0
  137. package/dist/studio/assets/{index-BFitquwi.js → index-Bn2RJNTJ.js} +1 -1
  138. package/dist/studio/assets/{index-CZfrSyU9.js → index-C9N-DGjC.js} +1 -1
  139. package/dist/studio/assets/{index-BKy_birQ.js → index-Dz7doz9l.js} +199 -199
  140. package/dist/studio/index.d.ts +3 -3
  141. package/dist/studio/index.html +2 -2
  142. package/dist/studio/index.js +1605 -1536
  143. package/dist/studio/index.js.map +1 -1
  144. package/dist/studio/styles.css +1 -1
  145. package/dist/{studio-api-EKF6TFDB.js → studio-api-E5WFZ7YK.js} +8 -8
  146. package/dist/{studioSelectionClient-A6JCWRRW.js → studioSelectionClient-IUUPKUHZ.js} +1 -2
  147. package/dist/{studioServer-BSNDGK63.js → studioServer-C7GTHTRY.js} +43 -43
  148. package/dist/{system-NLNIE7PO.js → system-4KRSV2B7.js} +6 -6
  149. package/dist/{telemetry-XNDAM6JU.js → telemetry-XH6D37RL.js} +9 -9
  150. package/dist/{timeline-IKWTTCNY.js → timeline-4RR7O6QW.js} +15 -15
  151. package/dist/{tokens-KOTFKBAK.js → tokens-MVTK3RPO.js} +2 -2
  152. package/dist/{transcribe-ELJHKA5B.js → transcribe-3UXXEDXX.js} +7 -7
  153. package/dist/{transcribe-STEYOXIO.js → transcribe-I6WDPH7E.js} +12 -12
  154. package/dist/{tts-DO2W6NLB.js → tts-P3LIPIL5.js} +13 -6
  155. package/dist/{updateCheck-OJMEQUST.js → updateCheck-ELMPFCBF.js} +2 -2
  156. package/dist/{upgrade-NIS32YR6.js → upgrade-6UAOGP4D.js} +2 -2
  157. package/dist/{urlDownloader-KJSQAFN7.js → urlDownloader-4KNER64L.js} +5 -5
  158. package/dist/{validate-7MCKNH5K.js → validate-ZMMGUMBD.js} +15 -15
  159. package/dist/{video-TUXP3VGQ.js → video-GINAMW5I.js} +6 -6
  160. package/package.json +1 -1
  161. package/dist/chunk-S6TH5G6Z.js +0 -3541
  162. package/dist/chunk-VWA4HODG.js +0 -129
  163. package/dist/studio/assets/index-DbfKVTId.css +0 -1
@@ -12,43 +12,45 @@ import {
12
12
  import {
13
13
  resolveProject,
14
14
  resolveProjectOrThrow
15
- } from "./chunk-A6GVXZZ3.js";
15
+ } from "./chunk-WAS5VEA4.js";
16
16
  import {
17
17
  formatLintStartupMessage
18
18
  } from "./chunk-6CSYCFQV.js";
19
19
  import "./chunk-IHFUKJOR.js";
20
20
  import {
21
- activeServerOnPort,
22
- findPortAndServe,
23
- killActiveServers,
24
- scanActiveServers
25
- } from "./chunk-QXERSWXX.js";
21
+ resolveLocalBrowserGpuMode
22
+ } from "./chunk-T3NMEYGM.js";
26
23
  import {
27
24
  resolveAutoProxy
28
- } from "./chunk-H3WFEPV2.js";
25
+ } from "./chunk-BOUDTDBQ.js";
29
26
  import "./chunk-XT7X6QCP.js";
30
27
  import "./chunk-4YYJOFKS.js";
31
28
  import "./chunk-HVW7ABXD.js";
32
29
  import {
33
- resolveLocalBrowserGpuMode
34
- } from "./chunk-KPSRL2NB.js";
30
+ MAX_PORT_SCAN,
31
+ PreviewServerPortMismatchError,
32
+ activeServerOnPort,
33
+ findPortAndServe,
34
+ killActiveServers,
35
+ scanActiveServers
36
+ } from "./chunk-DQBY7FRR.js";
35
37
  import {
36
38
  R,
37
39
  ft,
38
40
  ge
39
41
  } from "./chunk-WMQNIQDJ.js";
40
- import "./chunk-5SDXALUQ.js";
41
- import "./chunk-36XLW2TP.js";
42
- import "./chunk-M4RYK5OF.js";
42
+ import "./chunk-ENHAGQEP.js";
43
+ import "./chunk-DR7QW6C5.js";
44
+ import "./chunk-IP3XINRB.js";
43
45
  import "./chunk-AWDFDFI3.js";
44
46
  import "./chunk-GMECXFAN.js";
45
- import "./chunk-LYBFDHXD.js";
46
- import "./chunk-E664L6K3.js";
47
+ import "./chunk-JH7ZJRDL.js";
48
+ import "./chunk-IPXPSCWV.js";
47
49
  import "./chunk-VWG7OQKU.js";
48
50
  import {
49
51
  c
50
52
  } from "./chunk-ZTZA4UWZ.js";
51
- import "./chunk-JRULOVZK.js";
53
+ import "./chunk-L5QASNBN.js";
52
54
  import "./chunk-AMKC3AXA.js";
53
55
  import {
54
56
  defineCommand
@@ -58,12 +60,12 @@ import {
58
60
  requestCliExit,
59
61
  setCommandExitCode
60
62
  } from "./chunk-PBN6GBJE.js";
61
- import "./chunk-P74PW7KR.js";
62
- import "./chunk-C4JINRJK.js";
63
+ import "./chunk-G2T2X6FZ.js";
64
+ import "./chunk-FCEFKWPM.js";
63
65
  import "./chunk-UUDQD62L.js";
64
66
  import "./chunk-DPVXBVLL.js";
65
- import "./chunk-J2S4MY2M.js";
66
- import "./chunk-S6TH5G6Z.js";
67
+ import "./chunk-OCNCK5FQ.js";
68
+ import "./chunk-C6AIZOQN.js";
67
69
  import "./chunk-VC76R6W2.js";
68
70
  import "./chunk-OFQWTKPW.js";
69
71
  import {
@@ -77,7 +79,7 @@ import {
77
79
  terminateProcessTree
78
80
  } from "./chunk-LCSMOLGX.js";
79
81
  import "./chunk-TWWSYAKJ.js";
80
- import "./chunk-YAFO7V4A.js";
82
+ import "./chunk-YJEGT5L6.js";
81
83
  import "./chunk-HBBJFK6I.js";
82
84
  import "./chunk-PJ3HDUCY.js";
83
85
  import "./chunk-TQFG7HTI.js";
@@ -89,7 +91,7 @@ import "./chunk-WERLJGIC.js";
89
91
  import {
90
92
  isDevMode
91
93
  } from "./chunk-ISN5GRYI.js";
92
- import "./chunk-BD3MHTSR.js";
94
+ import "./chunk-MLLBZR2U.js";
93
95
  import {
94
96
  normalizeErrorMessage
95
97
  } from "./chunk-KNU5COPB.js";
@@ -137,6 +139,18 @@ import {
137
139
  } from "fs";
138
140
  import { homedir } from "os";
139
141
  import { dirname, join, resolve } from "path";
142
+ var PreviewPortUnavailableError = class extends Error {
143
+ requestedPort;
144
+ boundPort;
145
+ constructor(requestedPort, boundPort) {
146
+ super(
147
+ `Port ${requestedPort} is already in use; the background preview would have started on port ${boundPort} instead. Free port ${requestedPort}, pick another --port, or omit --port to accept the next free port.`
148
+ );
149
+ this.name = "PreviewPortUnavailableError";
150
+ this.requestedPort = requestedPort;
151
+ this.boundPort = boundPort;
152
+ }
153
+ };
140
154
  function defaultStateHome() {
141
155
  return process.env.XDG_STATE_HOME || join(homedir(), ".local", "state");
142
156
  }
@@ -205,9 +219,12 @@ function removePreviewSession(projectDir, stateHome = defaultStateHome()) {
205
219
  rmSync(previewSessionPath(projectDir, stateHome), { force: true });
206
220
  }
207
221
  function matchingServer(servers, projectDir, browserGpuMode) {
208
- return servers.find(
209
- (server) => normalized(server.projectDir) === normalized(projectDir) && (browserGpuMode === void 0 || server.browserGpuMode === browserGpuMode)
210
- ) ?? null;
222
+ return policyMatchingServers(servers, projectDir, browserGpuMode)[0] ?? null;
223
+ }
224
+ function policyMatchingServers(servers, projectDir, browserGpuMode) {
225
+ return sameProjectServers(servers, projectDir).filter(
226
+ (server) => browserGpuMode === void 0 || server.browserGpuMode === browserGpuMode
227
+ );
211
228
  }
212
229
  function matchingServerAtPort(servers, projectDir, port) {
213
230
  return matchingServer(
@@ -215,11 +232,12 @@ function matchingServerAtPort(servers, projectDir, port) {
215
232
  projectDir
216
233
  );
217
234
  }
218
- function sameProjectPorts(servers, projectDir) {
235
+ function sameProjectServers(servers, projectDir) {
219
236
  const project = normalized(projectDir);
220
- return new Set(
221
- servers.filter((server) => normalized(server.projectDir) === project).map((server) => server.port)
222
- );
237
+ return servers.filter((server) => normalized(server.projectDir) === project);
238
+ }
239
+ function sameProjectPorts(servers, projectDir) {
240
+ return new Set(sameProjectServers(servers, projectDir).map((server) => server.port));
223
241
  }
224
242
  async function stopProcess(pid) {
225
243
  await terminateProcessTree(pid);
@@ -252,15 +270,20 @@ function spawnDetachedPreview(projectDir, stateHome, dependencies) {
252
270
  logPath
253
271
  };
254
272
  }
255
- function startedServer(servers, projectDir, preLaunchPorts, browserGpuMode) {
256
- const candidates = servers.filter((server) => !preLaunchPorts.has(server.port));
257
- return matchingServer(candidates, projectDir, browserGpuMode);
273
+ function startedServer(servers, projectDir, preLaunchPorts, launchedPid, dependencies) {
274
+ const isDescendant = dependencies.isDescendant ?? isProcessDescendant;
275
+ const ours = (server) => {
276
+ const pid = Number(server.pid);
277
+ return pid === launchedPid || isDescendant(pid, launchedPid);
278
+ };
279
+ const candidates = servers.filter((server) => !preLaunchPorts.has(server.port) && ours(server));
280
+ return matchingServer(candidates, projectDir, dependencies.browserGpuMode);
258
281
  }
259
282
  function buildBackgroundPreviewArgs(argv) {
260
283
  const filtered = argv.filter(
261
- (arg) => arg !== "--background" && !arg.startsWith("--background=") && arg !== "--foreground" && !arg.startsWith("--foreground=") && arg !== "--open" && arg !== "--no-open" && arg !== "--json"
284
+ (arg) => arg !== "--background" && !arg.startsWith("--background=") && arg !== "--foreground" && !arg.startsWith("--foreground=") && arg !== "--open" && arg !== "--no-open" && arg !== "--force-new" && arg !== "--json"
262
285
  );
263
- return [...filtered, "--foreground", "--no-open"];
286
+ return [...filtered, "--foreground", "--no-open", "--force-new"];
264
287
  }
265
288
  async function readBackgroundPreviewStatus(projectDir, startPort, dependencies = {}) {
266
289
  const scan = dependencies.scan ?? scanActiveServers;
@@ -357,24 +380,48 @@ async function readPreviewLifecycleState(projectDir, startPort, dependencies) {
357
380
  const scanned = await scan(scanStart);
358
381
  return { scan, stateHome, saved, scanStart, scanned };
359
382
  }
383
+ function unmetPreferredPort(port, preferredPort) {
384
+ return preferredPort !== void 0 && port !== preferredPort ? preferredPort : void 0;
385
+ }
386
+ function reuseExistingPreview(reusableExisting, candidates, dependencies) {
387
+ if (!reusableExisting || dependencies.forceNew) return null;
388
+ const unmet = unmetPreferredPort(reusableExisting.port, dependencies.preferredPort);
389
+ if (unmet !== void 0) {
390
+ throw new PreviewServerPortMismatchError(
391
+ unmet,
392
+ candidates,
393
+ ` To start one on port ${unmet} instead, add --force-new or run --stop first.`
394
+ );
395
+ }
396
+ return {
397
+ type: "reused",
398
+ port: reusableExisting.port,
399
+ pid: reusableExisting.pid ? Number(reusableExisting.pid) : null,
400
+ logPath: null
401
+ };
402
+ }
403
+ async function addPreferredPortServer(scanned, scanStart, dependencies) {
404
+ const preferred = dependencies.preferredPort;
405
+ if (preferred === void 0) return;
406
+ if (preferred >= scanStart && preferred < scanStart + MAX_PORT_SCAN) return;
407
+ const server = await (dependencies.probe ?? activeServerOnPort)(preferred);
408
+ if (server) scanned.push(server);
409
+ }
360
410
  async function startBackgroundPreview(projectDir, startPort, dependencies = {}) {
361
- const { scan, stateHome, saved, scanned } = await readPreviewLifecycleState(
411
+ const { scan, stateHome, saved, scanStart, scanned } = await readPreviewLifecycleState(
362
412
  projectDir,
363
413
  startPort,
364
414
  dependencies
365
415
  );
366
- const requestedExisting = matchingServer(scanned, projectDir, dependencies.browserGpuMode);
416
+ await addPreferredPortServer(scanned, scanStart, dependencies);
417
+ const candidates = policyMatchingServers(scanned, projectDir, dependencies.browserGpuMode);
418
+ const onPreferredPort = candidates.find((server2) => server2.port === dependencies.preferredPort) ?? null;
419
+ const requestedExisting = candidates[0] ?? null;
367
420
  const ownedExisting = savedOwnedPreview(scanned, saved, projectDir);
368
421
  const reusableOwned = ownedExisting ? matchingServer([ownedExisting], projectDir, dependencies.browserGpuMode) : null;
369
- const reusableExisting = reusableOwned ?? (ownedExisting ? null : requestedExisting);
370
- if (reusableExisting && !dependencies.forceNew) {
371
- return {
372
- type: "reused",
373
- port: reusableExisting.port,
374
- pid: reusableExisting.pid ? Number(reusableExisting.pid) : null,
375
- logPath: null
376
- };
377
- }
422
+ const reusableExisting = onPreferredPort ?? reusableOwned ?? (ownedExisting ? null : requestedExisting);
423
+ const reused = reuseExistingPreview(reusableExisting, candidates, dependencies);
424
+ if (reused) return reused;
378
425
  await stopOwnedPreviewBeforeReplacement(ownedExisting, projectDir, dependencies);
379
426
  const preLaunchPorts = sameProjectPorts(await scan(startPort), projectDir);
380
427
  const { pid, wrapperIdentity, logPath } = spawnDetachedPreview(
@@ -382,37 +429,55 @@ async function startBackgroundPreview(projectDir, startPort, dependencies = {})
382
429
  stateHome,
383
430
  dependencies
384
431
  );
432
+ const kill = dependencies.kill ?? stopProcess;
433
+ const server = await awaitStartedServer(projectDir, startPort, preLaunchPorts, pid, dependencies);
434
+ if (!server) {
435
+ await kill(pid);
436
+ throw new Error(`background preview did not become ready; see ${logPath}`);
437
+ }
438
+ const unmet = unmetPreferredPort(server.port, dependencies.preferredPort);
439
+ if (unmet !== void 0) {
440
+ await kill(pid);
441
+ if (!await awaitServerGone(projectDir, startPort, server.port, dependencies)) {
442
+ throw new Error(
443
+ `background preview on port ${server.port} did not stop after failing to bind port ${unmet}; see ${logPath}`
444
+ );
445
+ }
446
+ throw new PreviewPortUnavailableError(unmet, server.port);
447
+ }
448
+ const ready = readyPreviewSession(
449
+ server,
450
+ pid,
451
+ wrapperIdentity,
452
+ projectDir,
453
+ logPath,
454
+ dependencies
455
+ );
456
+ writePreviewSession(ready.session, stateHome);
457
+ return {
458
+ type: "started",
459
+ ...ready.session,
460
+ pid: ready.publicPid
461
+ };
462
+ }
463
+ async function awaitStartedServer(projectDir, startPort, preLaunchPorts, launchedPid, dependencies) {
464
+ const scan = dependencies.scan ?? scanActiveServers;
385
465
  const sleep = dependencies.sleep ?? delay;
386
466
  for (let attempt = 0; attempt < 50; attempt++) {
387
467
  const server = startedServer(
388
468
  await scan(startPort),
389
469
  projectDir,
390
470
  preLaunchPorts,
391
- dependencies.browserGpuMode
471
+ launchedPid,
472
+ dependencies
392
473
  );
393
- if (server) {
394
- const ready = readyPreviewSession(
395
- server,
396
- pid,
397
- wrapperIdentity,
398
- projectDir,
399
- logPath,
400
- dependencies
401
- );
402
- writePreviewSession(ready.session, stateHome);
403
- return {
404
- type: "started",
405
- ...ready.session,
406
- pid: ready.publicPid
407
- };
408
- }
474
+ if (server) return server;
409
475
  await sleep(200);
410
476
  }
411
- await (dependencies.kill ?? stopProcess)(pid);
412
- throw new Error(`background preview did not become ready; see ${logPath}`);
477
+ return null;
413
478
  }
414
479
  async function stopBackgroundPreview(projectDir, startPort, dependencies = {}) {
415
- const { scan, stateHome, saved, scanStart, scanned } = await readPreviewLifecycleState(
480
+ const { stateHome, saved, scanStart, scanned } = await readPreviewLifecycleState(
416
481
  projectDir,
417
482
  startPort,
418
483
  dependencies
@@ -428,15 +493,20 @@ async function stopBackgroundPreview(projectDir, startPort, dependencies = {}) {
428
493
  }
429
494
  const kill = dependencies.kill ?? stopProcess;
430
495
  await kill(ownedStopTargetPid(saved, pid, dependencies));
496
+ if (!await awaitServerGone(projectDir, scanStart, server.port, dependencies)) {
497
+ throw new Error(`background preview did not stop for ${resolve(projectDir)}`);
498
+ }
499
+ removePreviewSession(projectDir, stateHome);
500
+ return true;
501
+ }
502
+ async function awaitServerGone(projectDir, scanStart, port, dependencies) {
503
+ const scan = dependencies.scan ?? scanActiveServers;
431
504
  const sleep = dependencies.sleep ?? delay;
432
505
  for (let attempt = 0; attempt < 25; attempt++) {
433
- if (!matchingServerAtPort(await scan(scanStart), projectDir, server.port)) {
434
- removePreviewSession(projectDir, stateHome);
435
- return true;
436
- }
506
+ if (!matchingServerAtPort(await scan(scanStart), projectDir, port)) return true;
437
507
  await sleep(100);
438
508
  }
439
- throw new Error(`background preview did not stop for ${resolve(projectDir)}`);
509
+ return false;
440
510
  }
441
511
 
442
512
  // src/commands/previewLifecycleOutput.ts
@@ -479,7 +549,14 @@ var examples = [
479
549
  "hyperframes preview --lint-verbose"
480
550
  ]
481
551
  ];
552
+ var STUDIO_CHILD_SHUTDOWN_SIGNALS = ["SIGINT", "SIGTERM", "SIGHUP"];
482
553
  var DEFAULT_CONTEXT_FIELDS = ["server", "selection", "lint", "capabilities"];
554
+ var PREVIEW_PORT_MISMATCH_CODE = "preview-port-mismatch";
555
+ function backgroundStartFailureCode(error) {
556
+ if (error instanceof PreviewServerPortMismatchError) return PREVIEW_PORT_MISMATCH_CODE;
557
+ if (error instanceof PreviewPortUnavailableError) return "preview-port-unavailable";
558
+ return "preview-start-failed";
559
+ }
483
560
  var preview_default = defineCommand({
484
561
  meta: {
485
562
  name: "preview",
@@ -632,7 +709,7 @@ var preview_default = defineCommand({
632
709
  if (args["browser-gpu"] === true) process.env.PRODUCER_BROWSER_GPU_MODE = "hardware";
633
710
  if (args["browser-gpu"] === false) process.env.PRODUCER_BROWSER_GPU_MODE = "software";
634
711
  const startPort = parseInt(args.port ?? "3002", 10);
635
- const preferredContextPort = hasExplicitPreviewPort(process.argv) ? startPort : void 0;
712
+ const explicitPort = hasExplicitPreviewPort(process.argv) ? startPort : void 0;
636
713
  if (args.status || args.stop) {
637
714
  try {
638
715
  const project2 = args.json ? resolveProjectOrThrow(args.dir) : resolveProject(args.dir);
@@ -717,17 +794,12 @@ var preview_default = defineCommand({
717
794
  json: Boolean(args.json),
718
795
  fields: args["context-fields"],
719
796
  detail: args["context-detail"],
720
- ...preferredContextPort === void 0 ? {} : { preferredPort: preferredContextPort }
797
+ preferredPort: explicitPort
721
798
  });
722
799
  }
723
800
  if (args.selection) {
724
801
  const project2 = resolveProject(args.dir);
725
- return printCurrentSelection(
726
- project2.dir,
727
- startPort,
728
- Boolean(args.json),
729
- preferredContextPort
730
- );
802
+ return printCurrentSelection(project2.dir, startPort, Boolean(args.json), explicitPort);
731
803
  }
732
804
  const rawArg = args.dir;
733
805
  const isImplicitCwd = !rawArg || rawArg === "." || rawArg === "./";
@@ -813,12 +885,15 @@ var preview_default = defineCommand({
813
885
  // A bare launch promises same-project reuse, regardless of the mode
814
886
  // the existing managed server resolved earlier. Only an explicit
815
887
  // --browser-gpu/--no-browser-gpu request authorizes replacement.
816
- browserGpuMode: args["browser-gpu"] === void 0 ? void 0 : browserGpuMode
888
+ browserGpuMode: args["browser-gpu"] === void 0 ? void 0 : browserGpuMode,
889
+ preferredPort: explicitPort
817
890
  });
818
891
  } catch (error) {
819
892
  const message = normalizeErrorMessage(error);
820
893
  if (args.json) {
821
- writeLifecycleJson(lifecycleFailurePayload("start", "preview-start-failed", message));
894
+ writeLifecycleJson(
895
+ lifecycleFailurePayload("start", backgroundStartFailureCode(error), message)
896
+ );
822
897
  } else {
823
898
  R.error(message);
824
899
  }
@@ -1125,10 +1200,10 @@ function addContextError(payload, field, error) {
1125
1200
  async function printCurrentSelection(projectDir, startPort, json, preferredPort) {
1126
1201
  const {
1127
1202
  AmbiguousPreviewServerError,
1128
- PreviewServerPortMismatchError,
1203
+ PreviewServerPortMismatchError: PreviewServerPortMismatchError2,
1129
1204
  fetchStudioSelection,
1130
1205
  findPreviewServerForProject
1131
- } = await import("./studioSelectionClient-A6JCWRRW.js");
1206
+ } = await import("./studioSelectionClient-IUUPKUHZ.js");
1132
1207
  let server;
1133
1208
  try {
1134
1209
  server = await findPreviewServerForProject(
@@ -1143,8 +1218,8 @@ async function printCurrentSelection(projectDir, startPort, json, preferredPort)
1143
1218
  printSelectionFailure("ambiguous-preview-server", err.message, json);
1144
1219
  return;
1145
1220
  }
1146
- if (err instanceof PreviewServerPortMismatchError) {
1147
- printSelectionFailure("preview-port-mismatch", err.message, json);
1221
+ if (err instanceof PreviewServerPortMismatchError2) {
1222
+ printSelectionFailure(PREVIEW_PORT_MISMATCH_CODE, err.message, json);
1148
1223
  return;
1149
1224
  }
1150
1225
  throw err;
@@ -1226,11 +1301,11 @@ async function printCurrentContext(projectDir, startPort, options) {
1226
1301
  }
1227
1302
  const {
1228
1303
  AmbiguousPreviewServerError,
1229
- PreviewServerPortMismatchError,
1304
+ PreviewServerPortMismatchError: PreviewServerPortMismatchError2,
1230
1305
  fetchStudioLint,
1231
1306
  fetchStudioSelection,
1232
1307
  findPreviewServerForProject
1233
- } = await import("./studioSelectionClient-A6JCWRRW.js");
1308
+ } = await import("./studioSelectionClient-IUUPKUHZ.js");
1234
1309
  let server;
1235
1310
  try {
1236
1311
  server = await findPreviewServerForProject(
@@ -1245,8 +1320,8 @@ async function printCurrentContext(projectDir, startPort, options) {
1245
1320
  printSelectionFailure("ambiguous-preview-server", err.message, options.json);
1246
1321
  return;
1247
1322
  }
1248
- if (err instanceof PreviewServerPortMismatchError) {
1249
- printSelectionFailure("preview-port-mismatch", err.message, options.json);
1323
+ if (err instanceof PreviewServerPortMismatchError2) {
1324
+ printSelectionFailure(PREVIEW_PORT_MISMATCH_CODE, err.message, options.json);
1250
1325
  return;
1251
1326
  }
1252
1327
  throw err;
@@ -1466,14 +1541,12 @@ function waitForStudioChildClose(child, signalTarget = process) {
1466
1541
  const shutdown = () => {
1467
1542
  if (child.pid) killProcessTree(child.pid);
1468
1543
  };
1469
- signalTarget.once("SIGINT", shutdown);
1470
- signalTarget.once("SIGTERM", shutdown);
1544
+ for (const signal of STUDIO_CHILD_SHUTDOWN_SIGNALS) signalTarget.once(signal, shutdown);
1471
1545
  const closed = child.exitCode !== null || child.signalCode !== null ? Promise.resolve() : new Promise((resolveClose) => {
1472
1546
  child.once("exit", () => resolveClose());
1473
1547
  });
1474
1548
  return closed.finally(() => {
1475
- signalTarget.off("SIGINT", shutdown);
1476
- signalTarget.off("SIGTERM", shutdown);
1549
+ for (const signal of STUDIO_CHILD_SHUTDOWN_SIGNALS) signalTarget.off(signal, shutdown);
1477
1550
  });
1478
1551
  }
1479
1552
  function attachStudioReadyHandler(child, spinner, projectName, projectDir, options) {
@@ -1536,6 +1609,7 @@ async function runDevMode(dir, options) {
1536
1609
  const child = spawn("bun", ["run", "dev", "--", ...previewViteArgs(options?.port)], {
1537
1610
  cwd: studioPkgDir,
1538
1611
  stdio: ["ignore", "pipe", "pipe"],
1612
+ windowsHide: true,
1539
1613
  env: studioProxyEnv(options?.autoProxy ?? true, process.env, {
1540
1614
  projectDir: dir,
1541
1615
  projectName: pName,
@@ -1568,6 +1642,7 @@ async function runLocalStudioMode(dir, options) {
1568
1642
  const child = spawn(viteCommand.command, viteCommand.args, {
1569
1643
  cwd: studioPkgPath,
1570
1644
  stdio: ["ignore", "pipe", "pipe"],
1645
+ windowsHide: true,
1571
1646
  env: studioProxyEnv(options?.autoProxy ?? true, process.env, {
1572
1647
  projectDir: dir,
1573
1648
  projectName: pName,
@@ -1579,7 +1654,7 @@ async function runLocalStudioMode(dir, options) {
1579
1654
  return waitForStudioChildClose(child);
1580
1655
  }
1581
1656
  async function runEmbeddedMode(dir, startPort, options) {
1582
- const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-BSNDGK63.js");
1657
+ const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-C7GTHTRY.js");
1583
1658
  const pName = options?.projectName ?? basename(dir);
1584
1659
  const studioBundle = resolveStudioBundle();
1585
1660
  if (!options?.json) ge(c.bold("hyperframes preview"));
@@ -1708,7 +1783,7 @@ async function runEmbeddedMode(dir, startPort, options) {
1708
1783
  };
1709
1784
  process.on("SIGINT", shutdown);
1710
1785
  process.on("SIGTERM", shutdown);
1711
- import("./src-LVBNYMJW.js").then(({ killTrackedProcesses }) => {
1786
+ import("./src-PJJ6NISA.js").then(({ killTrackedProcesses }) => {
1712
1787
  process.once("exit", () => {
1713
1788
  if (!shuttingDown) killTrackedProcesses();
1714
1789
  });
@@ -1717,6 +1792,7 @@ async function runEmbeddedMode(dir, startPort, options) {
1717
1792
  });
1718
1793
  }
1719
1794
  export {
1795
+ backgroundStartFailureCode,
1720
1796
  preview_default as default,
1721
1797
  examples,
1722
1798
  foregroundPreviewReadyPayload,
@@ -1729,6 +1805,8 @@ export {
1729
1805
  previewViteArgs,
1730
1806
  publicPreviewPid,
1731
1807
  reportPreviewShutdown,
1808
+ runDevMode,
1809
+ runLocalStudioMode,
1732
1810
  studioDeepLink,
1733
1811
  studioReadyUrl,
1734
1812
  studioSummaryUrls,
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  loadProducer
9
- } from "./chunk-7VIXEM6Q.js";
9
+ } from "./chunk-VLC7JS4K.js";
10
10
  import "./chunk-M2WBOQ2Q.js";
11
11
  export {
12
12
  loadProducer
@@ -17,19 +17,19 @@ import {
17
17
  resolveAutoProxy,
18
18
  seedProjectAuthoringSkill,
19
19
  writeProjectConfig
20
- } from "./chunk-H3WFEPV2.js";
20
+ } from "./chunk-BOUDTDBQ.js";
21
21
  import "./chunk-XT7X6QCP.js";
22
22
  import "./chunk-4YYJOFKS.js";
23
23
  import "./chunk-HVW7ABXD.js";
24
- import "./chunk-5SDXALUQ.js";
25
- import "./chunk-36XLW2TP.js";
26
- import "./chunk-M4RYK5OF.js";
24
+ import "./chunk-ENHAGQEP.js";
25
+ import "./chunk-DR7QW6C5.js";
26
+ import "./chunk-IP3XINRB.js";
27
27
  import "./chunk-AWDFDFI3.js";
28
28
  import "./chunk-GMECXFAN.js";
29
- import "./chunk-C4JINRJK.js";
29
+ import "./chunk-FCEFKWPM.js";
30
30
  import "./chunk-UUDQD62L.js";
31
31
  import "./chunk-DPVXBVLL.js";
32
- import "./chunk-S6TH5G6Z.js";
32
+ import "./chunk-C6AIZOQN.js";
33
33
  import "./chunk-VC76R6W2.js";
34
34
  import "./chunk-OFQWTKPW.js";
35
35
  import "./chunk-HBBJFK6I.js";
@@ -8,10 +8,10 @@ import {
8
8
  publishRegistryFile,
9
9
  registryTargetPath
10
10
  } from "./chunk-GMECXFAN.js";
11
- import "./chunk-C4JINRJK.js";
11
+ import "./chunk-FCEFKWPM.js";
12
12
  import "./chunk-UUDQD62L.js";
13
13
  import "./chunk-DPVXBVLL.js";
14
- import "./chunk-S6TH5G6Z.js";
14
+ import "./chunk-C6AIZOQN.js";
15
15
  import "./chunk-VC76R6W2.js";
16
16
  import {
17
17
  realProjectRoot
@@ -26,13 +26,13 @@ import {
26
26
  resolveProxy,
27
27
  scanProjectMediaCodecMap,
28
28
  waitForProxy
29
- } from "./chunk-TSZU5JMC.js";
29
+ } from "./chunk-LMC46FK5.js";
30
30
  import {
31
31
  formatLintStartupMessage
32
32
  } from "./chunk-6CSYCFQV.js";
33
33
  import {
34
34
  resolveAutoProxy
35
- } from "./chunk-H3WFEPV2.js";
35
+ } from "./chunk-BOUDTDBQ.js";
36
36
  import "./chunk-XT7X6QCP.js";
37
37
  import "./chunk-4YYJOFKS.js";
38
38
  import "./chunk-HVW7ABXD.js";
@@ -42,9 +42,9 @@ import {
42
42
  q,
43
43
  ue
44
44
  } from "./chunk-WMQNIQDJ.js";
45
- import "./chunk-5SDXALUQ.js";
46
- import "./chunk-36XLW2TP.js";
47
- import "./chunk-M4RYK5OF.js";
45
+ import "./chunk-ENHAGQEP.js";
46
+ import "./chunk-DR7QW6C5.js";
47
+ import "./chunk-IP3XINRB.js";
48
48
  import "./chunk-AWDFDFI3.js";
49
49
  import "./chunk-GMECXFAN.js";
50
50
  import {
@@ -57,10 +57,10 @@ import {
57
57
  failCommand,
58
58
  setCommandExitCode
59
59
  } from "./chunk-PBN6GBJE.js";
60
- import "./chunk-C4JINRJK.js";
60
+ import "./chunk-FCEFKWPM.js";
61
61
  import "./chunk-UUDQD62L.js";
62
62
  import "./chunk-DPVXBVLL.js";
63
- import "./chunk-S6TH5G6Z.js";
63
+ import "./chunk-C6AIZOQN.js";
64
64
  import "./chunk-VC76R6W2.js";
65
65
  import "./chunk-OFQWTKPW.js";
66
66
  import {
@@ -72,7 +72,7 @@ import {
72
72
  isRemoteOrInlineUrl,
73
73
  lintProject,
74
74
  resolveLocalAssetCandidates
75
- } from "./chunk-YAFO7V4A.js";
75
+ } from "./chunk-YJEGT5L6.js";
76
76
  import "./chunk-HBBJFK6I.js";
77
77
  import "./chunk-PJ3HDUCY.js";
78
78
  import {
@@ -8,7 +8,7 @@ import {
8
8
  DEFAULT_QUALITY,
9
9
  QUALITIES,
10
10
  isQuality
11
- } from "./chunk-KIIKVKHB.js";
11
+ } from "./chunk-SIN32SJB.js";
12
12
  import {
13
13
  DEVICES,
14
14
  isDevice
@@ -28,17 +28,17 @@ import {
28
28
  import {
29
29
  failCommand
30
30
  } from "./chunk-PBN6GBJE.js";
31
- import "./chunk-P74PW7KR.js";
32
- import "./chunk-C4JINRJK.js";
31
+ import "./chunk-G2T2X6FZ.js";
32
+ import "./chunk-FCEFKWPM.js";
33
33
  import "./chunk-UUDQD62L.js";
34
34
  import "./chunk-DPVXBVLL.js";
35
- import "./chunk-J2S4MY2M.js";
36
- import "./chunk-S6TH5G6Z.js";
35
+ import "./chunk-OCNCK5FQ.js";
36
+ import "./chunk-C6AIZOQN.js";
37
37
  import "./chunk-VC76R6W2.js";
38
38
  import "./chunk-OFQWTKPW.js";
39
39
  import "./chunk-LCSMOLGX.js";
40
40
  import "./chunk-TWWSYAKJ.js";
41
- import "./chunk-YAFO7V4A.js";
41
+ import "./chunk-YJEGT5L6.js";
42
42
  import "./chunk-HBBJFK6I.js";
43
43
  import "./chunk-PJ3HDUCY.js";
44
44
  import "./chunk-TQFG7HTI.js";
@@ -159,7 +159,7 @@ var remove_background_default = defineCommand({
159
159
  const outputPath = resolve(args.output);
160
160
  const backgroundOutputArg = args["background-output"];
161
161
  const backgroundOutputPath = backgroundOutputArg ? resolve(backgroundOutputArg) : void 0;
162
- const { render } = await import("./pipeline-SOQHD5YN.js");
162
+ const { render } = await import("./pipeline-IWPF5ZMK.js");
163
163
  const spin = args.json ? null : ft();
164
164
  spin?.start("Preparing background-removal pipeline...");
165
165
  try {