hyperframes 0.8.111 → 0.8.113

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 (189) hide show
  1. package/dist/{add-M5WN2AM2.js → add-ILIGSLV4.js} +15 -15
  2. package/dist/{agentPromptGenerator-QL2KAWEP.js → agentPromptGenerator-VIIPZCJ3.js} +1 -1
  3. package/dist/{animatedGifPrep-NMGFOSIL.js → animatedGifPrep-U7FMC7DB.js} +6 -6
  4. package/dist/{asset-GUASPIKN.js → asset-OFDEIAGM.js} +2 -2
  5. package/dist/{assetCataloger-FXEHOUA3.js → assetCataloger-5LCGR5XU.js} +2 -2
  6. package/dist/{auth-3YMEVUKJ.js → auth-5JDDEX2M.js} +2 -2
  7. package/dist/{autoUpdate-FYCGHBPC.js → autoUpdate-JXVZVJCV.js} +2 -2
  8. package/dist/{backgroundChecks-ZLYIRMTS.js → backgroundChecks-BBWGY3V6.js} +3 -3
  9. package/dist/backgroundChecksWorker.js +3 -3
  10. package/dist/{batchRender-ZTHFMHZY.js → batchRender-QVJ7NEUH.js} +3 -3
  11. package/dist/{beats-GXY5ZBPB.js → beats-YEYVQMX6.js} +11 -11
  12. package/dist/{benchmark-MJFVBVNW.js → benchmark-J2V46VWI.js} +12 -12
  13. package/dist/{browser-ZDI7IX6H.js → browser-XBWASLD2.js} +11 -11
  14. package/dist/{bundleWithLocalizedFonts-4Q3ETTHW.js → bundleWithLocalizedFonts-4CVITCYK.js} +2 -2
  15. package/dist/{capture-4OPH4PMK.js → capture-F2Y7TIHU.js} +41 -43
  16. package/dist/{capture-OG6532RA.js → capture-GLHK4ST7.js} +3 -3
  17. package/dist/{captureFile-JOPOCRU7.js → captureFile-LYOJOUIE.js} +3 -1
  18. package/dist/{catalog-23DP7KCW.js → catalog-3QDMTDK2.js} +15 -15
  19. package/dist/{check-5X6BJA2P.js → check-O3RR4NWI.js} +52 -40
  20. package/dist/{checkBrowser-3QHBTMYM.js → checkBrowser-K36DAG4S.js} +32 -31
  21. package/dist/{chunk-NIGUNLOO.js → chunk-2DBYGR4N.js} +10 -9
  22. package/dist/{chunk-TIZQC44K.js → chunk-3IUSKIZW.js} +1 -1
  23. package/dist/{chunk-YLOSZHA2.js → chunk-3XPZJUKM.js} +2 -2
  24. package/dist/{chunk-32P7FTFC.js → chunk-4KGMIOMY.js} +9 -8
  25. package/dist/{chunk-N34BYX3E.js → chunk-4PFZPP2N.js} +54 -30
  26. package/dist/{chunk-JTTAS7N6.js → chunk-7543YIMQ.js} +1 -1
  27. package/dist/{chunk-AMSBTN6L.js → chunk-7CGIICLA.js} +3 -3
  28. package/dist/{chunk-LAQEZHOH.js → chunk-BOUDTDBQ.js} +1 -1
  29. package/dist/chunk-C6AIZOQN.js +3541 -0
  30. package/dist/{chunk-EE6SV6KW.js → chunk-DDK22K3I.js} +3 -3
  31. package/dist/{chunk-QXERSWXX.js → chunk-DQBY7FRR.js} +123 -3
  32. package/dist/{chunk-HQGJLZB6.js → chunk-DR7QW6C5.js} +2 -2
  33. package/dist/{chunk-E4AYSXMS.js → chunk-E52XEEAA.js} +3 -3
  34. package/dist/{chunk-J4RPT4QW.js → chunk-E6RPWJVC.js} +1 -1
  35. package/dist/{chunk-QMAXDSCH.js → chunk-EMZF2TPA.js} +2 -2
  36. package/dist/{chunk-XYVFPDNU.js → chunk-ENHAGQEP.js} +1 -1
  37. package/dist/{chunk-B25H4M4V.js → chunk-FCEFKWPM.js} +1 -1
  38. package/dist/{chunk-BQYGGX3B.js → chunk-FW7K32YT.js} +1 -1
  39. package/dist/{chunk-6CI65KCP.js → chunk-FXHVADV6.js} +1 -1
  40. package/dist/{chunk-OF3RKOPU.js → chunk-G2T2X6FZ.js} +189 -111
  41. package/dist/{chunk-5ON5GH3X.js → chunk-GDJ74GHW.js} +4 -3
  42. package/dist/{chunk-I5WWEBDG.js → chunk-HTQR7SUZ.js} +1 -1
  43. package/dist/{chunk-TQKKC4MB.js → chunk-HYXL3VJA.js} +5 -5
  44. package/dist/{chunk-AWUZ3AUD.js → chunk-IP3XINRB.js} +1 -1
  45. package/dist/{chunk-HPEHQUJX.js → chunk-IRJBTYJF.js} +1 -1
  46. package/dist/chunk-K4WKGXRC.js +18 -0
  47. package/dist/{chunk-CQRF7VU3.js → chunk-L5QASNBN.js} +1 -1
  48. package/dist/{chunk-ITBEN3QD.js → chunk-L5SYYW2P.js} +2 -2
  49. package/dist/{chunk-MGFVNTIB.js → chunk-LMC46FK5.js} +2 -2
  50. package/dist/chunk-MRF4AMKD.js +104 -0
  51. package/dist/{chunk-U4TDAJZE.js → chunk-OCNCK5FQ.js} +2 -2
  52. package/dist/{chunk-JWPSBANO.js → chunk-OEA2J2TF.js} +3 -3
  53. package/dist/{chunk-N32ITJ7L.js → chunk-P3FGUSFK.js} +15 -12
  54. package/dist/{chunk-2JXJ5SGK.js → chunk-QPR4N2D4.js} +6 -6
  55. package/dist/{chunk-LFUXJBYA.js → chunk-R4NWAW35.js} +7 -7
  56. package/dist/{chunk-C4TZBEHY.js → chunk-SIN32SJB.js} +2 -2
  57. package/dist/{chunk-M224DAMG.js → chunk-T3NMEYGM.js} +1 -1
  58. package/dist/{chunk-Q2QNAFQV.js → chunk-U4VSY56O.js} +1 -1
  59. package/dist/{chunk-NH75EKOP.js → chunk-VFCKXTBB.js} +6 -3
  60. package/dist/{chunk-V4HKT2LV.js → chunk-VIJ35BJ6.js} +10 -10
  61. package/dist/{chunk-5ER3PYYP.js → chunk-VLC7JS4K.js} +1 -1
  62. package/dist/{chunk-MR2LOG32.js → chunk-VTP4VSRP.js} +8 -8
  63. package/dist/{chunk-ZU54D6MI.js → chunk-XFJXFNJF.js} +3 -3
  64. package/dist/{chunk-YIXEH4TF.js → chunk-XXKBPGPJ.js} +2 -2
  65. package/dist/{chunk-JUP65S7D.js → chunk-XZM2I47O.js} +3 -3
  66. package/dist/{chunk-BAVM2XBR.js → chunk-YJEGT5L6.js} +209 -33
  67. package/dist/{chunk-CFC3EEDQ.js → chunk-ZMMSMDCA.js} +1 -1
  68. package/dist/{chunk-PFEKMIN5.js → chunk-ZYSS3JED.js} +1 -1
  69. package/dist/{chunk-ZXSNGIYS.js → chunk-ZZIXIOK2.js} +4 -4
  70. package/dist/{clean-ATMEGSGP.js → clean-RPB34TT6.js} +16 -16
  71. package/dist/cli.js +122 -54
  72. package/dist/{cloud-ZFGUHACY.js → cloud-QECFFPKC.js} +4 -4
  73. package/dist/{cloudrun-LVZ4OPPC.js → cloudrun-BML6ZG7K.js} +3 -3
  74. package/dist/commands/layout-audit.browser.js +178 -202
  75. package/dist/commands/motion-sample.browser.js +24 -71
  76. package/dist/commands/motion-signature.browser.js +374 -0
  77. package/dist/{compare-55LEUY7M.js → compare-PF6WHQ4T.js} +26 -26
  78. package/dist/{compiler-C32VXLE2.js → compiler-ZHVIEP26.js} +3 -3
  79. package/dist/{component-3EDFANIC.js → component-4ENCNLED.js} +3 -3
  80. package/dist/{compositions-OPU6U6GM.js → compositions-5UA33RSG.js} +11 -11
  81. package/dist/{contactSheet-54AJDSR5.js → contactSheet-27SRU7A4.js} +2 -2
  82. package/dist/{delete-PJE4P3HH.js → delete-SARS5LIK.js} +2 -2
  83. package/dist/{deploy-4T3RMA5G.js → deploy-MX76RZ36.js} +1 -1
  84. package/dist/{destroy-EYDBVHGF.js → destroy-H2TZBYHH.js} +1 -1
  85. package/dist/{dist-FMHQMEMX.js → dist-HRBNHR4M.js} +1 -1
  86. package/dist/{dist-YUIPB7OX.js → dist-OKRUIHYU.js} +2 -2
  87. package/dist/docker/Dockerfile.render +1 -1
  88. package/dist/{doctor-EIVBJJAF.js → doctor-TSAQGYP4.js} +11 -11
  89. package/dist/{events-NP666TF4.js → events-3HUO73ZE.js} +9 -9
  90. package/dist/{events-ISMT4RDW.js → events-SZ5NWYWD.js} +8 -8
  91. package/dist/{feedback-4OSLMKBW.js → feedback-42OTOFC6.js} +10 -10
  92. package/dist/{figma-Y7ZHFCOU.js → figma-RYNFCYXB.js} +3 -3
  93. package/dist/fontLocalizeCli.js +8 -8
  94. package/dist/{get-E4GBRHQK.js → get-IRHLG5OQ.js} +2 -2
  95. package/dist/{gpuPolicy-CA6KRFQQ.js → gpuPolicy-LRMOZXFU.js} +6 -6
  96. package/dist/{grade-compare-B2EHEOLR.js → grade-compare-KGJP5HV7.js} +24 -24
  97. package/dist/{help-ISGUWGOR.js → help-C5HS56RZ.js} +1 -1
  98. package/dist/{history-FNRU3TL4.js → history-DFJNDM2T.js} +16 -17
  99. package/dist/hyperframe-runtime.js +54 -54
  100. package/dist/hyperframe.manifest.json +1 -1
  101. package/dist/hyperframe.runtime.iife.js +54 -54
  102. package/dist/hyperframes-player.global.js +1 -1
  103. package/dist/{info-FO7VR5NC.js → info-26GTDTKN.js} +11 -11
  104. package/dist/{init-IGW4DTVC.js → init-RXA6NI73.js} +25 -24
  105. package/dist/{inspect-D4GUGDW7.js → inspect-2S5GAZYC.js} +25 -25
  106. package/dist/{installer-NBEN3ZIP.js → installer-DGYYDGWJ.js} +4 -4
  107. package/dist/{keyframes-CXZLEC3R.js → keyframes-WBMAX7XZ.js} +12 -12
  108. package/dist/{lambda-BFHJMMCG.js → lambda-OQBFCEFA.js} +6 -6
  109. package/dist/{layout-XEDEOLAH.js → layout-ZRU7PXBG.js} +25 -25
  110. package/dist/{lint-LLGMCVZ5.js → lint-ATVNZ6FG.js} +12 -12
  111. package/dist/{lintProject-X7L7EZWZ.js → lintProject-TOLC6HDS.js} +1 -1
  112. package/dist/{list-LUCWSLK6.js → list-E2GHYPCQ.js} +2 -2
  113. package/dist/{login-SMWYXJWJ.js → login-LOC4KA7H.js} +4 -4
  114. package/dist/{manager-NEVLEZK3.js → manager-CT3D67CG.js} +1 -1
  115. package/dist/{media-treatment-OYTNU6PX.js → media-treatment-L43MVH2V.js} +15 -14
  116. package/dist/{models-RILNQV3Z.js → models-JF5OOZ5A.js} +7 -7
  117. package/dist/{motionShot-5F4DCMWC.js → motionShot-BJ5CLYMN.js} +12 -12
  118. package/dist/{normalize-audio-4LHYKFON.js → normalize-audio-K33FKGAF.js} +11 -11
  119. package/dist/{pipeline-5UY45ELH.js → pipeline-IWPF5ZMK.js} +6 -6
  120. package/dist/{play-D4AHRZQD.js → play-PHHXYCQI.js} +20 -20
  121. package/dist/{preflight-3V5IHGWQ.js → preflight-2GH2Z4GZ.js} +8 -8
  122. package/dist/{present-VUH7PLOO.js → present-KBFK2YVB.js} +16 -16
  123. package/dist/{preview-NCFC65VR.js → preview-T3E5TFDC.js} +159 -87
  124. package/dist/{producer-7JGAPEAF.js → producer-SL66UNEP.js} +1 -1
  125. package/dist/{projectConfig-JHEWPAA5.js → projectConfig-7AKXZNNR.js} +6 -6
  126. package/dist/{publication-7XA2H7UB.js → publication-B2OERUY7.js} +2 -2
  127. package/dist/{publish-257VZMWI.js → publish-ZGKT7KED.js} +8 -8
  128. package/dist/{remove-background-EV6XVADN.js → remove-background-4LRTT6YL.js} +7 -7
  129. package/dist/{render-DHCMWKFV.js → render-H6RSJF2V.js} +12 -12
  130. package/dist/{render-DKXGFQVW.js → render-OKNPNMFS.js} +23 -23
  131. package/dist/{render-4C3YKVZI.js → render-TGCDBKMP.js} +3 -3
  132. package/dist/{render-batch-AFDBPDMM.js → render-batch-WRQFW4UC.js} +3 -3
  133. package/dist/{renderCancellation-VIZELWDD.js → renderCancellation-BFCQYGVV.js} +6 -6
  134. package/dist/renderSetupWorker.js +2 -2
  135. package/dist/{resolver-S72XBTEQ.js → resolver-37UOGAMT.js} +4 -4
  136. package/dist/{screenshotCapture-FA5HPN7Q.js → screenshotCapture-ECBTLCU6.js} +3 -3
  137. package/dist/{sherpa-BAADWCHB.js → sherpa-SDVKYXCX.js} +7 -7
  138. package/dist/skills/hyperframes/references/frame-worker-core.md +2 -2
  139. package/dist/skills/hyperframes-cli/references/lint-validate-inspect.md +2 -2
  140. package/dist/skills/media-use/audio/references/bgm.md +1 -1
  141. package/dist/skills/media-use/audio/references/tts.md +1 -1
  142. package/dist/skills/media-use/audio/scripts/lib/python.mjs +19 -5
  143. package/dist/skills/media-use/audio/scripts/lib/python.test.mjs +69 -1
  144. package/dist/{skills-2BGFBUR6.js → skills-O25ZTFTO.js} +40 -14
  145. package/dist/{skillsUpdateCheck-5LYFYHUF.js → skillsUpdateCheck-Y2V4OMMT.js} +3 -3
  146. package/dist/{snapshot-Z37DZL4T.js → snapshot-KGM2HZIC.js} +52 -31
  147. package/dist/{src-GD7RGV5U.js → src-PJJ6NISA.js} +5 -5
  148. package/dist/{src-GRC63B6L.js → src-PLWCT745.js} +7 -7
  149. package/dist/{staticProjectServer-SFINO3DE.js → staticProjectServer-OCE7GU5S.js} +14 -14
  150. package/dist/{status-LXQL3L3H.js → status-LENRPQS5.js} +6 -6
  151. package/dist/studio/assets/{hyperframes-player-DvJeHBHi.js → hyperframes-player-DzJbtQVO.js} +1 -1
  152. package/dist/studio/assets/{index-SFktf7O1.js → index-DRhF3v4Z.js} +194 -194
  153. package/dist/studio/assets/{index-C7apTvpr.css → index-DbfKVTId.css} +1 -1
  154. package/dist/studio/assets/{index--G6c4Q_x.js → index-DgwDQK5G.js} +1 -1
  155. package/dist/studio/assets/{index-Bt4vDkfw.js → index-n5FUn1xv.js} +1 -1
  156. package/dist/studio/{chunk-PQFEBX32.js → chunk-BIUXP3PG.js} +2 -2
  157. package/dist/studio/{chunk-6LUNLTHR.js → chunk-K47E2ZJA.js} +13 -8
  158. package/dist/studio/chunk-K47E2ZJA.js.map +1 -0
  159. package/dist/studio/{chunk-QUXZVHOJ.js → chunk-VWT7STY3.js} +2 -2
  160. package/dist/studio/{domEditingLayers-JQPQGGT7.js → domEditingLayers-V67MS4WP.js} +3 -3
  161. package/dist/studio/index.d.ts +80 -46
  162. package/dist/studio/index.html +2 -2
  163. package/dist/studio/index.js +7294 -6844
  164. package/dist/studio/index.js.map +1 -1
  165. package/dist/studio/player.js +2 -2
  166. package/dist/studio/styles.css +1 -1
  167. package/dist/{studio-api-WRSCXPWS.js → studio-api-IEQ5BIHT.js} +8 -8
  168. package/dist/{studioSelectionClient-A6JCWRRW.js → studioSelectionClient-IUUPKUHZ.js} +1 -2
  169. package/dist/{studioServer-HTLRGC5G.js → studioServer-LXJ34MGN.js} +43 -43
  170. package/dist/{system-EEWYEHYX.js → system-4KRSV2B7.js} +6 -6
  171. package/dist/{telemetry-NLEEMXO2.js → telemetry-R3BPD6VK.js} +9 -9
  172. package/dist/{timeline-7C4KM3KD.js → timeline-N5UKVS2S.js} +15 -15
  173. package/dist/{tokens-QQLJXW4G.js → tokens-774UBF2R.js} +2 -2
  174. package/dist/{transcribe-GCKJF5A6.js → transcribe-3UXXEDXX.js} +7 -7
  175. package/dist/{transcribe-TGR5CTA7.js → transcribe-IP74EZLM.js} +12 -12
  176. package/dist/{tts-DO2W6NLB.js → tts-P3LIPIL5.js} +13 -6
  177. package/dist/{updateCheck-73JM5QR3.js → updateCheck-EXHNAPKI.js} +2 -2
  178. package/dist/{upgrade-V6E5P53C.js → upgrade-A4M3O2F2.js} +2 -2
  179. package/dist/{urlDownloader-NYXPEBUN.js → urlDownloader-4KNER64L.js} +5 -5
  180. package/dist/{validate-INP7WJAK.js → validate-DV75GM6J.js} +15 -15
  181. package/dist/{video-KWQ5TSVD.js → video-GINAMW5I.js} +17 -9
  182. package/package.json +1 -1
  183. package/dist/chunk-5GQAJ43Q.js +0 -31
  184. package/dist/chunk-VWA4HODG.js +0 -129
  185. package/dist/chunk-YLVI7VL5.js +0 -3541
  186. package/dist/studio/chunk-6LUNLTHR.js.map +0 -1
  187. /package/dist/studio/{chunk-PQFEBX32.js.map → chunk-BIUXP3PG.js.map} +0 -0
  188. /package/dist/studio/{chunk-QUXZVHOJ.js.map → chunk-VWT7STY3.js.map} +0 -0
  189. /package/dist/studio/{domEditingLayers-JQPQGGT7.js.map → domEditingLayers-V67MS4WP.js.map} +0 -0
@@ -12,43 +12,45 @@ import {
12
12
  import {
13
13
  resolveProject,
14
14
  resolveProjectOrThrow
15
- } from "./chunk-HPEHQUJX.js";
15
+ } from "./chunk-IRJBTYJF.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-LAQEZHOH.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-M224DAMG.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-XYVFPDNU.js";
41
- import "./chunk-HQGJLZB6.js";
42
- import "./chunk-AWUZ3AUD.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-AMSBTN6L.js";
46
- import "./chunk-EE6SV6KW.js";
47
+ import "./chunk-7CGIICLA.js";
48
+ import "./chunk-DDK22K3I.js";
47
49
  import "./chunk-VWG7OQKU.js";
48
50
  import {
49
51
  c
50
52
  } from "./chunk-ZTZA4UWZ.js";
51
- import "./chunk-CQRF7VU3.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-OF3RKOPU.js";
62
- import "./chunk-B25H4M4V.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-U4TDAJZE.js";
66
- import "./chunk-YLVI7VL5.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-BAVM2XBR.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-YLOSZHA2.js";
94
+ import "./chunk-3XPZJUKM.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);
@@ -357,24 +375,48 @@ async function readPreviewLifecycleState(projectDir, startPort, dependencies) {
357
375
  const scanned = await scan(scanStart);
358
376
  return { scan, stateHome, saved, scanStart, scanned };
359
377
  }
378
+ function unmetPreferredPort(port, preferredPort) {
379
+ return preferredPort !== void 0 && port !== preferredPort ? preferredPort : void 0;
380
+ }
381
+ function reuseExistingPreview(reusableExisting, candidates, dependencies) {
382
+ if (!reusableExisting || dependencies.forceNew) return null;
383
+ const unmet = unmetPreferredPort(reusableExisting.port, dependencies.preferredPort);
384
+ if (unmet !== void 0) {
385
+ throw new PreviewServerPortMismatchError(
386
+ unmet,
387
+ candidates,
388
+ ` To start one on port ${unmet} instead, add --force-new or run --stop first.`
389
+ );
390
+ }
391
+ return {
392
+ type: "reused",
393
+ port: reusableExisting.port,
394
+ pid: reusableExisting.pid ? Number(reusableExisting.pid) : null,
395
+ logPath: null
396
+ };
397
+ }
398
+ async function addPreferredPortServer(scanned, scanStart, dependencies) {
399
+ const preferred = dependencies.preferredPort;
400
+ if (preferred === void 0) return;
401
+ if (preferred >= scanStart && preferred < scanStart + MAX_PORT_SCAN) return;
402
+ const server = await (dependencies.probe ?? activeServerOnPort)(preferred);
403
+ if (server) scanned.push(server);
404
+ }
360
405
  async function startBackgroundPreview(projectDir, startPort, dependencies = {}) {
361
- const { scan, stateHome, saved, scanned } = await readPreviewLifecycleState(
406
+ const { scan, stateHome, saved, scanStart, scanned } = await readPreviewLifecycleState(
362
407
  projectDir,
363
408
  startPort,
364
409
  dependencies
365
410
  );
366
- const requestedExisting = matchingServer(scanned, projectDir, dependencies.browserGpuMode);
411
+ await addPreferredPortServer(scanned, scanStart, dependencies);
412
+ const candidates = policyMatchingServers(scanned, projectDir, dependencies.browserGpuMode);
413
+ const onPreferredPort = candidates.find((server2) => server2.port === dependencies.preferredPort) ?? null;
414
+ const requestedExisting = candidates[0] ?? null;
367
415
  const ownedExisting = savedOwnedPreview(scanned, saved, projectDir);
368
416
  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
- }
417
+ const reusableExisting = onPreferredPort ?? reusableOwned ?? (ownedExisting ? null : requestedExisting);
418
+ const reused = reuseExistingPreview(reusableExisting, candidates, dependencies);
419
+ if (reused) return reused;
378
420
  await stopOwnedPreviewBeforeReplacement(ownedExisting, projectDir, dependencies);
379
421
  const preLaunchPorts = sameProjectPorts(await scan(startPort), projectDir);
380
422
  const { pid, wrapperIdentity, logPath } = spawnDetachedPreview(
@@ -382,6 +424,39 @@ async function startBackgroundPreview(projectDir, startPort, dependencies = {})
382
424
  stateHome,
383
425
  dependencies
384
426
  );
427
+ const kill = dependencies.kill ?? stopProcess;
428
+ const server = await awaitStartedServer(projectDir, startPort, preLaunchPorts, dependencies);
429
+ if (!server) {
430
+ await kill(pid);
431
+ throw new Error(`background preview did not become ready; see ${logPath}`);
432
+ }
433
+ const unmet = unmetPreferredPort(server.port, dependencies.preferredPort);
434
+ if (unmet !== void 0) {
435
+ await kill(pid);
436
+ if (!await awaitServerGone(projectDir, startPort, server.port, dependencies)) {
437
+ throw new Error(
438
+ `background preview on port ${server.port} did not stop after failing to bind port ${unmet}; see ${logPath}`
439
+ );
440
+ }
441
+ throw new PreviewPortUnavailableError(unmet, server.port);
442
+ }
443
+ const ready = readyPreviewSession(
444
+ server,
445
+ pid,
446
+ wrapperIdentity,
447
+ projectDir,
448
+ logPath,
449
+ dependencies
450
+ );
451
+ writePreviewSession(ready.session, stateHome);
452
+ return {
453
+ type: "started",
454
+ ...ready.session,
455
+ pid: ready.publicPid
456
+ };
457
+ }
458
+ async function awaitStartedServer(projectDir, startPort, preLaunchPorts, dependencies) {
459
+ const scan = dependencies.scan ?? scanActiveServers;
385
460
  const sleep = dependencies.sleep ?? delay;
386
461
  for (let attempt = 0; attempt < 50; attempt++) {
387
462
  const server = startedServer(
@@ -390,29 +465,13 @@ async function startBackgroundPreview(projectDir, startPort, dependencies = {})
390
465
  preLaunchPorts,
391
466
  dependencies.browserGpuMode
392
467
  );
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
- }
468
+ if (server) return server;
409
469
  await sleep(200);
410
470
  }
411
- await (dependencies.kill ?? stopProcess)(pid);
412
- throw new Error(`background preview did not become ready; see ${logPath}`);
471
+ return null;
413
472
  }
414
473
  async function stopBackgroundPreview(projectDir, startPort, dependencies = {}) {
415
- const { scan, stateHome, saved, scanStart, scanned } = await readPreviewLifecycleState(
474
+ const { stateHome, saved, scanStart, scanned } = await readPreviewLifecycleState(
416
475
  projectDir,
417
476
  startPort,
418
477
  dependencies
@@ -428,15 +487,20 @@ async function stopBackgroundPreview(projectDir, startPort, dependencies = {}) {
428
487
  }
429
488
  const kill = dependencies.kill ?? stopProcess;
430
489
  await kill(ownedStopTargetPid(saved, pid, dependencies));
490
+ if (!await awaitServerGone(projectDir, scanStart, server.port, dependencies)) {
491
+ throw new Error(`background preview did not stop for ${resolve(projectDir)}`);
492
+ }
493
+ removePreviewSession(projectDir, stateHome);
494
+ return true;
495
+ }
496
+ async function awaitServerGone(projectDir, scanStart, port, dependencies) {
497
+ const scan = dependencies.scan ?? scanActiveServers;
431
498
  const sleep = dependencies.sleep ?? delay;
432
499
  for (let attempt = 0; attempt < 25; attempt++) {
433
- if (!matchingServerAtPort(await scan(scanStart), projectDir, server.port)) {
434
- removePreviewSession(projectDir, stateHome);
435
- return true;
436
- }
500
+ if (!matchingServerAtPort(await scan(scanStart), projectDir, port)) return true;
437
501
  await sleep(100);
438
502
  }
439
- throw new Error(`background preview did not stop for ${resolve(projectDir)}`);
503
+ return false;
440
504
  }
441
505
 
442
506
  // src/commands/previewLifecycleOutput.ts
@@ -479,7 +543,14 @@ var examples = [
479
543
  "hyperframes preview --lint-verbose"
480
544
  ]
481
545
  ];
546
+ var STUDIO_CHILD_SHUTDOWN_SIGNALS = ["SIGINT", "SIGTERM", "SIGHUP"];
482
547
  var DEFAULT_CONTEXT_FIELDS = ["server", "selection", "lint", "capabilities"];
548
+ var PREVIEW_PORT_MISMATCH_CODE = "preview-port-mismatch";
549
+ function backgroundStartFailureCode(error) {
550
+ if (error instanceof PreviewServerPortMismatchError) return PREVIEW_PORT_MISMATCH_CODE;
551
+ if (error instanceof PreviewPortUnavailableError) return "preview-port-unavailable";
552
+ return "preview-start-failed";
553
+ }
483
554
  var preview_default = defineCommand({
484
555
  meta: {
485
556
  name: "preview",
@@ -632,7 +703,7 @@ var preview_default = defineCommand({
632
703
  if (args["browser-gpu"] === true) process.env.PRODUCER_BROWSER_GPU_MODE = "hardware";
633
704
  if (args["browser-gpu"] === false) process.env.PRODUCER_BROWSER_GPU_MODE = "software";
634
705
  const startPort = parseInt(args.port ?? "3002", 10);
635
- const preferredContextPort = hasExplicitPreviewPort(process.argv) ? startPort : void 0;
706
+ const explicitPort = hasExplicitPreviewPort(process.argv) ? startPort : void 0;
636
707
  if (args.status || args.stop) {
637
708
  try {
638
709
  const project2 = args.json ? resolveProjectOrThrow(args.dir) : resolveProject(args.dir);
@@ -717,17 +788,12 @@ var preview_default = defineCommand({
717
788
  json: Boolean(args.json),
718
789
  fields: args["context-fields"],
719
790
  detail: args["context-detail"],
720
- ...preferredContextPort === void 0 ? {} : { preferredPort: preferredContextPort }
791
+ preferredPort: explicitPort
721
792
  });
722
793
  }
723
794
  if (args.selection) {
724
795
  const project2 = resolveProject(args.dir);
725
- return printCurrentSelection(
726
- project2.dir,
727
- startPort,
728
- Boolean(args.json),
729
- preferredContextPort
730
- );
796
+ return printCurrentSelection(project2.dir, startPort, Boolean(args.json), explicitPort);
731
797
  }
732
798
  const rawArg = args.dir;
733
799
  const isImplicitCwd = !rawArg || rawArg === "." || rawArg === "./";
@@ -813,12 +879,15 @@ var preview_default = defineCommand({
813
879
  // A bare launch promises same-project reuse, regardless of the mode
814
880
  // the existing managed server resolved earlier. Only an explicit
815
881
  // --browser-gpu/--no-browser-gpu request authorizes replacement.
816
- browserGpuMode: args["browser-gpu"] === void 0 ? void 0 : browserGpuMode
882
+ browserGpuMode: args["browser-gpu"] === void 0 ? void 0 : browserGpuMode,
883
+ preferredPort: explicitPort
817
884
  });
818
885
  } catch (error) {
819
886
  const message = normalizeErrorMessage(error);
820
887
  if (args.json) {
821
- writeLifecycleJson(lifecycleFailurePayload("start", "preview-start-failed", message));
888
+ writeLifecycleJson(
889
+ lifecycleFailurePayload("start", backgroundStartFailureCode(error), message)
890
+ );
822
891
  } else {
823
892
  R.error(message);
824
893
  }
@@ -1125,10 +1194,10 @@ function addContextError(payload, field, error) {
1125
1194
  async function printCurrentSelection(projectDir, startPort, json, preferredPort) {
1126
1195
  const {
1127
1196
  AmbiguousPreviewServerError,
1128
- PreviewServerPortMismatchError,
1197
+ PreviewServerPortMismatchError: PreviewServerPortMismatchError2,
1129
1198
  fetchStudioSelection,
1130
1199
  findPreviewServerForProject
1131
- } = await import("./studioSelectionClient-A6JCWRRW.js");
1200
+ } = await import("./studioSelectionClient-IUUPKUHZ.js");
1132
1201
  let server;
1133
1202
  try {
1134
1203
  server = await findPreviewServerForProject(
@@ -1143,8 +1212,8 @@ async function printCurrentSelection(projectDir, startPort, json, preferredPort)
1143
1212
  printSelectionFailure("ambiguous-preview-server", err.message, json);
1144
1213
  return;
1145
1214
  }
1146
- if (err instanceof PreviewServerPortMismatchError) {
1147
- printSelectionFailure("preview-port-mismatch", err.message, json);
1215
+ if (err instanceof PreviewServerPortMismatchError2) {
1216
+ printSelectionFailure(PREVIEW_PORT_MISMATCH_CODE, err.message, json);
1148
1217
  return;
1149
1218
  }
1150
1219
  throw err;
@@ -1226,11 +1295,11 @@ async function printCurrentContext(projectDir, startPort, options) {
1226
1295
  }
1227
1296
  const {
1228
1297
  AmbiguousPreviewServerError,
1229
- PreviewServerPortMismatchError,
1298
+ PreviewServerPortMismatchError: PreviewServerPortMismatchError2,
1230
1299
  fetchStudioLint,
1231
1300
  fetchStudioSelection,
1232
1301
  findPreviewServerForProject
1233
- } = await import("./studioSelectionClient-A6JCWRRW.js");
1302
+ } = await import("./studioSelectionClient-IUUPKUHZ.js");
1234
1303
  let server;
1235
1304
  try {
1236
1305
  server = await findPreviewServerForProject(
@@ -1245,8 +1314,8 @@ async function printCurrentContext(projectDir, startPort, options) {
1245
1314
  printSelectionFailure("ambiguous-preview-server", err.message, options.json);
1246
1315
  return;
1247
1316
  }
1248
- if (err instanceof PreviewServerPortMismatchError) {
1249
- printSelectionFailure("preview-port-mismatch", err.message, options.json);
1317
+ if (err instanceof PreviewServerPortMismatchError2) {
1318
+ printSelectionFailure(PREVIEW_PORT_MISMATCH_CODE, err.message, options.json);
1250
1319
  return;
1251
1320
  }
1252
1321
  throw err;
@@ -1466,14 +1535,12 @@ function waitForStudioChildClose(child, signalTarget = process) {
1466
1535
  const shutdown = () => {
1467
1536
  if (child.pid) killProcessTree(child.pid);
1468
1537
  };
1469
- signalTarget.once("SIGINT", shutdown);
1470
- signalTarget.once("SIGTERM", shutdown);
1538
+ for (const signal of STUDIO_CHILD_SHUTDOWN_SIGNALS) signalTarget.once(signal, shutdown);
1471
1539
  const closed = child.exitCode !== null || child.signalCode !== null ? Promise.resolve() : new Promise((resolveClose) => {
1472
1540
  child.once("exit", () => resolveClose());
1473
1541
  });
1474
1542
  return closed.finally(() => {
1475
- signalTarget.off("SIGINT", shutdown);
1476
- signalTarget.off("SIGTERM", shutdown);
1543
+ for (const signal of STUDIO_CHILD_SHUTDOWN_SIGNALS) signalTarget.off(signal, shutdown);
1477
1544
  });
1478
1545
  }
1479
1546
  function attachStudioReadyHandler(child, spinner, projectName, projectDir, options) {
@@ -1536,6 +1603,7 @@ async function runDevMode(dir, options) {
1536
1603
  const child = spawn("bun", ["run", "dev", "--", ...previewViteArgs(options?.port)], {
1537
1604
  cwd: studioPkgDir,
1538
1605
  stdio: ["ignore", "pipe", "pipe"],
1606
+ windowsHide: true,
1539
1607
  env: studioProxyEnv(options?.autoProxy ?? true, process.env, {
1540
1608
  projectDir: dir,
1541
1609
  projectName: pName,
@@ -1568,6 +1636,7 @@ async function runLocalStudioMode(dir, options) {
1568
1636
  const child = spawn(viteCommand.command, viteCommand.args, {
1569
1637
  cwd: studioPkgPath,
1570
1638
  stdio: ["ignore", "pipe", "pipe"],
1639
+ windowsHide: true,
1571
1640
  env: studioProxyEnv(options?.autoProxy ?? true, process.env, {
1572
1641
  projectDir: dir,
1573
1642
  projectName: pName,
@@ -1579,7 +1648,7 @@ async function runLocalStudioMode(dir, options) {
1579
1648
  return waitForStudioChildClose(child);
1580
1649
  }
1581
1650
  async function runEmbeddedMode(dir, startPort, options) {
1582
- const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-HTLRGC5G.js");
1651
+ const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-LXJ34MGN.js");
1583
1652
  const pName = options?.projectName ?? basename(dir);
1584
1653
  const studioBundle = resolveStudioBundle();
1585
1654
  if (!options?.json) ge(c.bold("hyperframes preview"));
@@ -1708,7 +1777,7 @@ async function runEmbeddedMode(dir, startPort, options) {
1708
1777
  };
1709
1778
  process.on("SIGINT", shutdown);
1710
1779
  process.on("SIGTERM", shutdown);
1711
- import("./src-GD7RGV5U.js").then(({ killTrackedProcesses }) => {
1780
+ import("./src-PJJ6NISA.js").then(({ killTrackedProcesses }) => {
1712
1781
  process.once("exit", () => {
1713
1782
  if (!shuttingDown) killTrackedProcesses();
1714
1783
  });
@@ -1717,6 +1786,7 @@ async function runEmbeddedMode(dir, startPort, options) {
1717
1786
  });
1718
1787
  }
1719
1788
  export {
1789
+ backgroundStartFailureCode,
1720
1790
  preview_default as default,
1721
1791
  examples,
1722
1792
  foregroundPreviewReadyPayload,
@@ -1729,6 +1799,8 @@ export {
1729
1799
  previewViteArgs,
1730
1800
  publicPreviewPid,
1731
1801
  reportPreviewShutdown,
1802
+ runDevMode,
1803
+ runLocalStudioMode,
1732
1804
  studioDeepLink,
1733
1805
  studioReadyUrl,
1734
1806
  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-5ER3PYYP.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-LAQEZHOH.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-XYVFPDNU.js";
25
- import "./chunk-HQGJLZB6.js";
26
- import "./chunk-AWUZ3AUD.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-B25H4M4V.js";
29
+ import "./chunk-FCEFKWPM.js";
30
30
  import "./chunk-UUDQD62L.js";
31
31
  import "./chunk-DPVXBVLL.js";
32
- import "./chunk-YLVI7VL5.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-B25H4M4V.js";
11
+ import "./chunk-FCEFKWPM.js";
12
12
  import "./chunk-UUDQD62L.js";
13
13
  import "./chunk-DPVXBVLL.js";
14
- import "./chunk-YLVI7VL5.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-MGFVNTIB.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-LAQEZHOH.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-XYVFPDNU.js";
46
- import "./chunk-HQGJLZB6.js";
47
- import "./chunk-AWUZ3AUD.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-B25H4M4V.js";
60
+ import "./chunk-FCEFKWPM.js";
61
61
  import "./chunk-UUDQD62L.js";
62
62
  import "./chunk-DPVXBVLL.js";
63
- import "./chunk-YLVI7VL5.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-BAVM2XBR.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-C4TZBEHY.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-OF3RKOPU.js";
32
- import "./chunk-B25H4M4V.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-U4TDAJZE.js";
36
- import "./chunk-YLVI7VL5.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-BAVM2XBR.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-5UY45ELH.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 {