hyperframes 0.8.143 → 0.8.144

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 (187) hide show
  1. package/dist/{add-Q5EYDUAY.js → add-CWRTVGDB.js} +12 -12
  2. package/dist/{animatedGifPrep-H2DUQEZ3.js → animatedGifPrep-JTOHIWI4.js} +7 -7
  3. package/dist/{asset-C7JBYYX4.js → asset-KU2Z4UFM.js} +2 -2
  4. package/dist/{assetCataloger-FRO4G6OU.js → assetCataloger-3CS2P7PA.js} +3 -3
  5. package/dist/{auth-FRWLCO36.js → auth-IDSOIQWG.js} +1 -1
  6. package/dist/{autoUpdate-E4OZXQK6.js → autoUpdate-373B4BA2.js} +2 -2
  7. package/dist/{backgroundChecks-FSUVHN5L.js → backgroundChecks-53Q3NAMG.js} +3 -3
  8. package/dist/backgroundChecksWorker.js +3 -3
  9. package/dist/{batchRender-4U73BYTU.js → batchRender-UKZA6BME.js} +4 -4
  10. package/dist/{beats-U6KJWF35.js → beats-N5JGEOFR.js} +13 -13
  11. package/dist/{benchmark-5ONT7V7B.js → benchmark-CUN3LN4V.js} +9 -9
  12. package/dist/{browser-R4DU46IE.js → browser-NCZT5AP6.js} +39 -55
  13. package/dist/{bundleWithLocalizedFonts-VH55VOAL.js → bundleWithLocalizedFonts-FWC7PE2D.js} +2 -2
  14. package/dist/{capture-26G2DPSI.js → capture-QBLG3VJR.js} +18 -18
  15. package/dist/{capture-OGQAEYKO.js → capture-YLS32UHT.js} +2 -2
  16. package/dist/{catalog-RKORTIUE.js → catalog-HIWNAFHW.js} +12 -12
  17. package/dist/{catch-up-4OBERRQO.js → catch-up-HGS7KIAC.js} +4 -4
  18. package/dist/{check-P2XDN57S.js → check-FH6UYYLO.js} +66 -55
  19. package/dist/{checkBrowser-NTGJGAEA.js → checkBrowser-RNWNOMCZ.js} +81 -30
  20. package/dist/{chunk-LVX6NK36.js → chunk-2DA2BBNY.js} +1 -1
  21. package/dist/{chunk-4M4EC7JX.js → chunk-3VYNNWVA.js} +12 -1
  22. package/dist/{chunk-N3DQEVSI.js → chunk-3XTEXWNN.js} +8 -5
  23. package/dist/{chunk-KO5QBV73.js → chunk-4LAR447G.js} +1 -1
  24. package/dist/{chunk-W35EKBS6.js → chunk-4OC7MQNB.js} +2 -2
  25. package/dist/{chunk-CLOH4LIB.js → chunk-54QISXOC.js} +2 -2
  26. package/dist/{chunk-HC7EVDEL.js → chunk-5HJ343GH.js} +1 -1
  27. package/dist/{chunk-33RZPZ4K.js → chunk-5VMR4WBS.js} +271 -119
  28. package/dist/{chunk-PJU63L6W.js → chunk-5WADG7PR.js} +1 -1
  29. package/dist/{chunk-LW6HO6U3.js → chunk-7RAYSCYT.js} +1 -1
  30. package/dist/{chunk-QRKLPWEX.js → chunk-7SDCIWHQ.js} +11 -2
  31. package/dist/{chunk-LAOCA3MQ.js → chunk-A4Q7W4LV.js} +13 -8
  32. package/dist/{chunk-BT27OYYX.js → chunk-A53CBD24.js} +18 -12
  33. package/dist/{chunk-4PFZPP2N.js → chunk-A6S35NYA.js} +54 -16
  34. package/dist/{chunk-HW4AKJ5F.js → chunk-AUBOF2PN.js} +1 -1
  35. package/dist/{chunk-ZLW2V65P.js → chunk-BSQ7XANM.js} +3 -2
  36. package/dist/{chunk-LCSMOLGX.js → chunk-BYSBRF24.js} +69 -8
  37. package/dist/{chunk-BFDJ63J5.js → chunk-DDIVWXN7.js} +1 -1
  38. package/dist/{chunk-KOEWEFHK.js → chunk-DIRJ322I.js} +10 -5
  39. package/dist/{chunk-PAGIICKN.js → chunk-EX6C672Y.js} +1 -1
  40. package/dist/{chunk-6XMFEICO.js → chunk-F2SMS24Q.js} +34 -19
  41. package/dist/{chunk-QVYVUCWD.js → chunk-GEWKFRFI.js} +1 -1
  42. package/dist/{chunk-P7THMINS.js → chunk-GZM2EFOE.js} +1 -1
  43. package/dist/{chunk-KJJLA674.js → chunk-GZVP4TWN.js} +1 -46
  44. package/dist/{chunk-TAMQYQGJ.js → chunk-I5KY7EZP.js} +1 -1
  45. package/dist/{chunk-XONFUK3M.js → chunk-IEIJRMLZ.js} +47 -35
  46. package/dist/chunk-IR35BCLK.js +13 -0
  47. package/dist/{chunk-2LBBHMKT.js → chunk-JEHFZQYT.js} +1 -1
  48. package/dist/{chunk-KDPYVTEU.js → chunk-KBB4RG6F.js} +6 -1
  49. package/dist/{chunk-VIVBA6E6.js → chunk-KFKZ3ISO.js} +1 -1
  50. package/dist/{sherpa-LVIUEAGF.js → chunk-L5TUCXWR.js} +11 -45
  51. package/dist/{chunk-GNBGPUJ7.js → chunk-LC3RQURJ.js} +3 -3
  52. package/dist/{chunk-I7QGQAZM.js → chunk-LFX2HEYP.js} +7 -7
  53. package/dist/{chunk-U3X3TPBW.js → chunk-MAYCCGMQ.js} +11 -2
  54. package/dist/{chunk-UICWP23D.js → chunk-MXNDKDFT.js} +3 -3
  55. package/dist/{chunk-POLR33RB.js → chunk-NOPBBSLA.js} +15 -17
  56. package/dist/{chunk-DF2BHILQ.js → chunk-NV4RXIQ7.js} +3 -3
  57. package/dist/{chunk-KQLGTGE5.js → chunk-OIDN7G42.js} +2 -2
  58. package/dist/{chunk-F26LCYRY.js → chunk-OUSLVRO4.js} +68 -77
  59. package/dist/{chunk-Y6QL2LGO.js → chunk-P6WH6QTV.js} +1 -1
  60. package/dist/{chunk-OBXQRJWQ.js → chunk-QATWIE4K.js} +1 -1
  61. package/dist/{chunk-QFN7NVWM.js → chunk-RG3QWWIE.js} +1 -1
  62. package/dist/{chunk-HLYOEIWM.js → chunk-RI53TS2Y.js} +2 -2
  63. package/dist/{chunk-5FISWJ37.js → chunk-RVFEDAUV.js} +4 -4
  64. package/dist/{chunk-HMT2RPZU.js → chunk-SLCFKB3Y.js} +13 -9
  65. package/dist/chunk-UPFUC4DB.js +136 -0
  66. package/dist/{chunk-BYK73CR7.js → chunk-VYSUZEJG.js} +5 -5
  67. package/dist/chunk-WJB7WI4J.js +3753 -0
  68. package/dist/{chunk-7UYBQ6NF.js → chunk-XGFHYAYN.js} +14 -10
  69. package/dist/{chunk-OSSHSIMD.js → chunk-XU5GGV6R.js} +1 -1
  70. package/dist/{chunk-FVYXDXEV.js → chunk-Y6UPYWJS.js} +2 -2
  71. package/dist/{chunk-UM2GRYM3.js → chunk-YJXHMIZA.js} +3 -3
  72. package/dist/{chunk-3NE7ZYU2.js → chunk-YUAXFWSQ.js} +3 -3
  73. package/dist/{chunk-TVCRUG2S.js → chunk-ZEUONDQG.js} +1 -1
  74. package/dist/{chunk-ZQQ3SEIE.js → chunk-ZOA2SC4P.js} +99 -31
  75. package/dist/{clean-YHGPY33K.js → clean-KPX27IKJ.js} +18 -18
  76. package/dist/cli.js +68 -56
  77. package/dist/{cloud-DOFI5ISR.js → cloud-P7DAOISN.js} +4 -4
  78. package/dist/{cloudrun-KTZ4XDHL.js → cloudrun-XM56TBOH.js} +4 -4
  79. package/dist/{compare-SMMIZN2C.js → compare-F6YAFZZM.js} +25 -25
  80. package/dist/{compiler-TEXQWW6N.js → compiler-JZ4GNFMG.js} +6 -4
  81. package/dist/{component-B3GCNGSS.js → component-3CFOGIQA.js} +3 -3
  82. package/dist/{compositions-OQNZZTKF.js → compositions-CPCMWF24.js} +11 -11
  83. package/dist/{delete-EL5LVSEP.js → delete-GYVKOKB6.js} +2 -2
  84. package/dist/{dist-5UVIRMSM.js → dist-KDJTFJHA.js} +2 -2
  85. package/dist/{dist-XN234YFQ.js → dist-YPWQDWJ4.js} +4 -4
  86. package/dist/{doctor-UOL3OI2A.js → doctor-GWI3B6JT.js} +13 -13
  87. package/dist/{events-NIZBS6S7.js → events-BRRUDPPT.js} +3 -3
  88. package/dist/{events-K2DB2PBC.js → events-V2QFN4YM.js} +2 -2
  89. package/dist/{feedback-QMP4E6L7.js → feedback-CXMD7FWL.js} +9 -9
  90. package/dist/{ffmpeg-QIUFEFTY.js → ffmpeg-T5SH2EFJ.js} +3 -2
  91. package/dist/{figma-2AUJRNVC.js → figma-YABDWD66.js} +3 -3
  92. package/dist/fontLocalizeCli.js +9 -9
  93. package/dist/{get-P5NC7SRM.js → get-L2SOQKHX.js} +2 -2
  94. package/dist/{gpuPolicy-7N5MCE2G.js → gpuPolicy-NBJNWHYS.js} +11 -9
  95. package/dist/{grade-compare-HV5AFZ6P.js → grade-compare-STXQPKYQ.js} +27 -27
  96. package/dist/{help-3TSTXBLN.js → help-4H6BSFLB.js} +2 -2
  97. package/dist/{history-D65XFJ6D.js → history-4IQOLTHJ.js} +5 -5
  98. package/dist/hyperframe-runtime.js +56 -56
  99. package/dist/hyperframe.manifest.json +1 -1
  100. package/dist/hyperframe.runtime.iife.js +56 -56
  101. package/dist/hyperframes-player.global.js +3 -3
  102. package/dist/{info-TXV7MLFO.js → info-2CZOTNBC.js} +8 -8
  103. package/dist/{init-OSDMJZJV.js → init-6BXK42VS.js} +35 -36
  104. package/dist/{inspect-RQQSAYIJ.js → inspect-VKU47TBH.js} +26 -26
  105. package/dist/{installer-CDOB32HE.js → installer-T2BSSUDY.js} +5 -5
  106. package/dist/{keyframes-V75Q6GRM.js → keyframes-IEYVHRPI.js} +6 -6
  107. package/dist/{lambda-RODV4RCX.js → lambda-TIKG25CK.js} +5 -5
  108. package/dist/{layout-IZAI5SFC.js → layout-XOI4PT7A.js} +26 -26
  109. package/dist/{lint-PLXOXY5R.js → lint-DWCMVIX5.js} +8 -8
  110. package/dist/{lintProject-OQ6H6XBR.js → lintProject-UBZ3TDHU.js} +2 -2
  111. package/dist/{list-BQBPNKDZ.js → list-7GXKG5QM.js} +2 -2
  112. package/dist/{login-NP6F4FHC.js → login-BQ5L2UHX.js} +4 -4
  113. package/dist/{manager-CT3D67CG.js → manager-BPSR6D3V.js} +2 -2
  114. package/dist/{manager-GXYF4AVO.js → manager-YKMHR6LN.js} +8 -5
  115. package/dist/{media-treatment-PXGMZ4A4.js → media-treatment-IFB7OSZ3.js} +12 -12
  116. package/dist/{models-CEZM6XZ7.js → models-TY4PJ545.js} +59 -19
  117. package/dist/{motionShot-R4GHYWYM.js → motionShot-WXMFHICW.js} +21 -22
  118. package/dist/{normalize-H6KUHHEI.js → normalize-U3SL5VG3.js} +2 -2
  119. package/dist/{normalize-audio-MQ7NFCOV.js → normalize-audio-RFD776HQ.js} +6 -6
  120. package/dist/{open-AKQTGNXF.js → open-7IXXGO2E.js} +4 -4
  121. package/dist/parakeetRunner-IHLYYMTZ.js +67 -0
  122. package/dist/{pipeline-SYJYP2RM.js → pipeline-TXKPLL2U.js} +10 -9
  123. package/dist/{play-NBH4B7PL.js → play-J2KP64UK.js} +19 -19
  124. package/dist/{preflight-Y5DN5D37.js → preflight-B4AFK3RG.js} +4 -4
  125. package/dist/{present-XAX55CFS.js → present-MHHNRVRA.js} +15 -15
  126. package/dist/{preview-OLANKNFA.js → preview-CONUOFFQ.js} +19 -19
  127. package/dist/{producer-Q6YNZZUJ.js → producer-ZI46K7HH.js} +1 -1
  128. package/dist/{projectConfig-EM26P45P.js → projectConfig-FGGVG5MV.js} +7 -7
  129. package/dist/{publication-OXWJZKSX.js → publication-TXFBMW6B.js} +3 -3
  130. package/dist/{publish-4VBWP2UB.js → publish-YZSPBFRD.js} +11 -11
  131. package/dist/{remove-background-REB7427G.js → remove-background-4ATVLHLG.js} +11 -10
  132. package/dist/{render-K25YOG3M.js → render-6FBYLYGJ.js} +11 -11
  133. package/dist/{render-3CVZ2SZG.js → render-GFW5BPES.js} +4 -4
  134. package/dist/{render-TSE75QUL.js → render-MH4IUPWB.js} +26 -26
  135. package/dist/{render-batch-GGUOK3DS.js → render-batch-XUCZ2PUJ.js} +4 -4
  136. package/dist/{renderCancellation-PZRWB53I.js → renderCancellation-XF7M7IUP.js} +10 -9
  137. package/dist/renderSetupWorker.js +32 -44
  138. package/dist/{resolver-S5VK6UCB.js → resolver-W7AYCQGS.js} +5 -5
  139. package/dist/sherpa-LDUB5NLY.js +75 -0
  140. package/dist/sherpaWorker.js +2 -1
  141. package/dist/skills/hyperframes-cli/references/lint-validate-inspect.md +1 -1
  142. package/dist/{skills-I65FU5HD.js → skills-VENERS5X.js} +7 -7
  143. package/dist/{skillsUpdateCheck-J57RNNIV.js → skillsUpdateCheck-UXFYTACG.js} +3 -3
  144. package/dist/{snapshot-YROOGY22.js → snapshot-C6T74HTI.js} +28 -28
  145. package/dist/{src-X426BZAG.js → src-FS5RSVEI.js} +8 -8
  146. package/dist/{src-JO5JOV7Y.js → src-VUJ2FUFK.js} +8 -6
  147. package/dist/{staticProjectServer-5VMBS262.js → staticProjectServer-V2RZ4DWD.js} +15 -15
  148. package/dist/studio/assets/{hyperframes-player-BXSuksFh.js → hyperframes-player-Bw_jIaSX.js} +3 -3
  149. package/dist/studio/assets/{index-J7jpL4pj.js → index-BVM9NuWl.js} +141 -141
  150. package/dist/studio/assets/{index-BgOVCqjo.js → index-Cj7W_c7p.js} +1 -1
  151. package/dist/studio/assets/{index-FgyO_5Kv.js → index-DyH9dT7b.js} +1 -1
  152. package/dist/studio/{chunk-TFLU2MGI.js → chunk-3GHTHPZD.js} +8 -1
  153. package/dist/studio/chunk-3GHTHPZD.js.map +1 -0
  154. package/dist/studio/{chunk-H2DUOXTF.js → chunk-G3EDKRZH.js} +3 -3
  155. package/dist/studio/{chunk-UYWON5AX.js → chunk-PEAKCOUW.js} +7 -3
  156. package/dist/studio/chunk-PEAKCOUW.js.map +1 -0
  157. package/dist/studio/{chunk-LOVBLSMR.js → chunk-Y2OHHNM2.js} +35 -19
  158. package/dist/studio/chunk-Y2OHHNM2.js.map +1 -0
  159. package/dist/studio/{domEditingLayers-KBTPQKGA.js → domEditingLayers-PYST4G45.js} +3 -3
  160. package/dist/studio/index.html +1 -1
  161. package/dist/studio/index.js +139 -70
  162. package/dist/studio/index.js.map +1 -1
  163. package/dist/studio/player.js +3 -3
  164. package/dist/studio/ui.d.ts +4 -5
  165. package/dist/studio/ui.js +1 -1
  166. package/dist/{studio-api-VRBZUGAE.js → studio-api-TQE7KWKO.js} +9 -9
  167. package/dist/{studioServer-DBNKZ6I6.js → studioServer-CYKSQK7L.js} +68 -52
  168. package/dist/{telemetry-CXAX3TO3.js → telemetry-A23PPRD6.js} +3 -3
  169. package/dist/{timeline-VQ34WH7J.js → timeline-T3QSGT3A.js} +69 -47
  170. package/dist/{tokens-62R7VFAZ.js → tokens-RT5HWA6C.js} +2 -2
  171. package/dist/{transcribe-XOHPPL2O.js → transcribe-FOLNOC5G.js} +115 -51
  172. package/dist/{transcribe-7KR7IPJA.js → transcribe-HCF64LQK.js} +14 -12
  173. package/dist/{tts-MUV42JXT.js → tts-B6AHFQEO.js} +1 -1
  174. package/dist/{updateCheck-POYNH3B5.js → updateCheck-27PIP3AA.js} +2 -2
  175. package/dist/{upgrade-NBNOT7J2.js → upgrade-TVGXBUPJ.js} +2 -2
  176. package/dist/{urlDownloader-3NS63A7B.js → urlDownloader-KBLBJKRL.js} +6 -6
  177. package/dist/{validate-Y2QDHAEP.js → validate-ZMYGK4QI.js} +20 -20
  178. package/dist/{video-SJDMTSTL.js → video-AVE5GIGM.js} +7 -7
  179. package/package.json +1 -1
  180. package/dist/chunk-6TPZSTCL.js +0 -3681
  181. package/dist/studio/chunk-LOVBLSMR.js.map +0 -1
  182. package/dist/studio/chunk-TFLU2MGI.js.map +0 -1
  183. package/dist/studio/chunk-UYWON5AX.js.map +0 -1
  184. package/dist/{screenshotCapture-TEUIWXWN.js → screenshotCapture-3JXXUZND.js} +3 -3
  185. package/dist/studio/{chunk-H2DUOXTF.js.map → chunk-G3EDKRZH.js.map} +0 -0
  186. package/dist/studio/{domEditingLayers-KBTPQKGA.js.map → domEditingLayers-PYST4G45.js.map} +0 -0
  187. package/dist/{synthesize-C3IWDAXF.js → synthesize-UCI4X5O7.js} +4 -4
@@ -11,30 +11,30 @@ import {
11
11
  } from "./chunk-3DKN5WKL.js";
12
12
  import {
13
13
  runAdd
14
- } from "./chunk-I7QGQAZM.js";
15
- import "./chunk-KO5QBV73.js";
14
+ } from "./chunk-LFX2HEYP.js";
15
+ import "./chunk-4LAR447G.js";
16
16
  import {
17
17
  DEFAULT_PROJECT_CONFIG,
18
18
  loadProjectConfig
19
- } from "./chunk-2LBBHMKT.js";
19
+ } from "./chunk-JEHFZQYT.js";
20
20
  import "./chunk-XT7X6QCP.js";
21
21
  import "./chunk-4YYJOFKS.js";
22
22
  import "./chunk-HVW7ABXD.js";
23
23
  import "./chunk-6BEFEWFB.js";
24
24
  import {
25
25
  loadAllItems
26
- } from "./chunk-HW4AKJ5F.js";
27
- import "./chunk-CLOH4LIB.js";
26
+ } from "./chunk-AUBOF2PN.js";
27
+ import "./chunk-54QISXOC.js";
28
28
  import {
29
29
  fetchRegistryManifest
30
- } from "./chunk-TAMQYQGJ.js";
30
+ } from "./chunk-I5KY7EZP.js";
31
31
  import "./chunk-AWDFDFI3.js";
32
32
  import "./chunk-P6LJ4Y32.js";
33
33
  import {
34
34
  downloadFile
35
35
  } from "./chunk-BHVFTYSI.js";
36
- import "./chunk-QFN7NVWM.js";
37
- import "./chunk-OSSHSIMD.js";
36
+ import "./chunk-RG3QWWIE.js";
37
+ import "./chunk-XU5GGV6R.js";
38
38
  import "./chunk-VWG7OQKU.js";
39
39
  import "./chunk-GQJZORQP.js";
40
40
  import "./chunk-AMKC3AXA.js";
@@ -53,8 +53,8 @@ import {
53
53
  finishCommand
54
54
  } from "./chunk-PBN6GBJE.js";
55
55
  import "./chunk-USDEMXXL.js";
56
- import "./chunk-4M4EC7JX.js";
57
- import "./chunk-6TPZSTCL.js";
56
+ import "./chunk-3VYNNWVA.js";
57
+ import "./chunk-WJB7WI4J.js";
58
58
  import "./chunk-VC76R6W2.js";
59
59
  import "./chunk-YA62XGXS.js";
60
60
  import "./chunk-MQZVBHEY.js";
@@ -67,7 +67,7 @@ import "./chunk-FXMKHHPO.js";
67
67
  import "./chunk-RQVDTPGD.js";
68
68
  import "./chunk-APDLWWFG.js";
69
69
  import "./chunk-3RM2ETQT.js";
70
- import "./chunk-ZLW2V65P.js";
70
+ import "./chunk-BSQ7XANM.js";
71
71
  import "./chunk-SDYDNHEE.js";
72
72
  import "./chunk-2PSPARWP.js";
73
73
  import "./chunk-T42U2W2R.js";
@@ -80,7 +80,7 @@ import {
80
80
  isAttendedTerminal
81
81
  } from "./chunk-WERLJGIC.js";
82
82
  import "./chunk-ISN5GRYI.js";
83
- import "./chunk-W35EKBS6.js";
83
+ import "./chunk-4OC7MQNB.js";
84
84
  import "./chunk-KNU5COPB.js";
85
85
  import {
86
86
  c
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  resolveProject
9
- } from "./chunk-VIVBA6E6.js";
9
+ } from "./chunk-KFKZ3ISO.js";
10
10
  import "./chunk-K2FLNJVB.js";
11
11
  import {
12
12
  filesChangedSince,
@@ -15,8 +15,8 @@ import {
15
15
  unseenTurns
16
16
  } from "./chunk-DCAI5DBR.js";
17
17
  import "./chunk-EOVYQ3IG.js";
18
- import "./chunk-QFN7NVWM.js";
19
- import "./chunk-OSSHSIMD.js";
18
+ import "./chunk-RG3QWWIE.js";
19
+ import "./chunk-XU5GGV6R.js";
20
20
  import "./chunk-VWG7OQKU.js";
21
21
  import "./chunk-GQJZORQP.js";
22
22
  import "./chunk-AMKC3AXA.js";
@@ -33,7 +33,7 @@ import "./chunk-K4WIOZFP.js";
33
33
  import "./chunk-XUXGIA7H.js";
34
34
  import "./chunk-WERLJGIC.js";
35
35
  import "./chunk-ISN5GRYI.js";
36
- import "./chunk-W35EKBS6.js";
36
+ import "./chunk-4OC7MQNB.js";
37
37
  import "./chunk-KNU5COPB.js";
38
38
  import {
39
39
  c
@@ -25,56 +25,59 @@ import {
25
25
  mergeSampleTimes,
26
26
  parseAt,
27
27
  readMotionSpec
28
- } from "./chunk-BT27OYYX.js";
28
+ } from "./chunk-A53CBD24.js";
29
29
  import {
30
30
  loadProducer
31
- } from "./chunk-QVYVUCWD.js";
31
+ } from "./chunk-GEWKFRFI.js";
32
32
  import {
33
33
  trackLintRun
34
- } from "./chunk-DF2BHILQ.js";
35
- import "./chunk-5FISWJ37.js";
34
+ } from "./chunk-NV4RXIQ7.js";
35
+ import "./chunk-RVFEDAUV.js";
36
36
  import "./chunk-XUHOIDKG.js";
37
37
  import "./chunk-X7MTZ4T2.js";
38
- import "./chunk-FVYXDXEV.js";
38
+ import "./chunk-Y6UPYWJS.js";
39
39
  import {
40
40
  resolveProject
41
- } from "./chunk-VIVBA6E6.js";
42
- import "./chunk-HMT2RPZU.js";
41
+ } from "./chunk-KFKZ3ISO.js";
42
+ import "./chunk-SLCFKB3Y.js";
43
43
  import "./chunk-FH7WODJH.js";
44
- import "./chunk-PJU63L6W.js";
45
- import "./chunk-P7THMINS.js";
44
+ import "./chunk-5WADG7PR.js";
45
+ import "./chunk-GZM2EFOE.js";
46
46
  import "./chunk-WPNE5NEP.js";
47
47
  import "./chunk-K2FLNJVB.js";
48
- import "./chunk-7UYBQ6NF.js";
49
- import "./chunk-UM2GRYM3.js";
48
+ import "./chunk-XGFHYAYN.js";
49
+ import "./chunk-YJXHMIZA.js";
50
50
  import "./chunk-QZ3AZTXI.js";
51
- import "./chunk-BFDJ63J5.js";
52
- import "./chunk-ZQQ3SEIE.js";
51
+ import "./chunk-DDIVWXN7.js";
52
+ import "./chunk-ZOA2SC4P.js";
53
53
  import "./chunk-G75ENCEZ.js";
54
54
  import "./chunk-EOVYQ3IG.js";
55
55
  import {
56
56
  resolveLocalBrowserGpuMode
57
- } from "./chunk-QRKLPWEX.js";
57
+ } from "./chunk-7SDCIWHQ.js";
58
58
  import "./chunk-442JNXRM.js";
59
- import "./chunk-2LBBHMKT.js";
59
+ import "./chunk-JEHFZQYT.js";
60
60
  import "./chunk-XT7X6QCP.js";
61
61
  import "./chunk-4YYJOFKS.js";
62
62
  import "./chunk-HVW7ABXD.js";
63
- import "./chunk-HW4AKJ5F.js";
64
- import "./chunk-CLOH4LIB.js";
65
- import "./chunk-TAMQYQGJ.js";
63
+ import "./chunk-AUBOF2PN.js";
64
+ import "./chunk-54QISXOC.js";
65
+ import "./chunk-I5KY7EZP.js";
66
66
  import "./chunk-AWDFDFI3.js";
67
67
  import "./chunk-P6LJ4Y32.js";
68
68
  import "./chunk-374QQGBQ.js";
69
69
  import {
70
70
  trackCheckReport,
71
71
  trackCommandFailure
72
- } from "./chunk-QFN7NVWM.js";
73
- import "./chunk-OSSHSIMD.js";
72
+ } from "./chunk-RG3QWWIE.js";
73
+ import "./chunk-XU5GGV6R.js";
74
74
  import "./chunk-VWG7OQKU.js";
75
75
  import "./chunk-GQJZORQP.js";
76
76
  import "./chunk-AMKC3AXA.js";
77
77
  import "./chunk-GMECXFAN.js";
78
+ import {
79
+ swallowedFlagUsageError
80
+ } from "./chunk-UPFUC4DB.js";
78
81
  import {
79
82
  defineCommand,
80
83
  parseArgs
@@ -90,12 +93,12 @@ import "./chunk-TJSTGSAW.js";
90
93
  import {
91
94
  extractMediaMetadata,
92
95
  findHdrAutoPromotion
93
- } from "./chunk-33RZPZ4K.js";
94
- import "./chunk-F26LCYRY.js";
96
+ } from "./chunk-5VMR4WBS.js";
97
+ import "./chunk-OUSLVRO4.js";
95
98
  import "./chunk-NE55C6S5.js";
96
99
  import "./chunk-USDEMXXL.js";
97
- import "./chunk-4M4EC7JX.js";
98
- import "./chunk-6TPZSTCL.js";
100
+ import "./chunk-3VYNNWVA.js";
101
+ import "./chunk-WJB7WI4J.js";
99
102
  import "./chunk-VC76R6W2.js";
100
103
  import "./chunk-YA62XGXS.js";
101
104
  import "./chunk-MQZVBHEY.js";
@@ -109,25 +112,25 @@ import "./chunk-TWWSYAKJ.js";
109
112
  import {
110
113
  lintProject,
111
114
  shouldBlockRender
112
- } from "./chunk-XONFUK3M.js";
115
+ } from "./chunk-IEIJRMLZ.js";
113
116
  import {
114
117
  resolveProjectRelativeSrc
115
118
  } from "./chunk-IWFLMU2N.js";
116
119
  import "./chunk-APDLWWFG.js";
117
120
  import "./chunk-PJ3HDUCY.js";
118
121
  import "./chunk-3RM2ETQT.js";
119
- import "./chunk-ZLW2V65P.js";
122
+ import "./chunk-BSQ7XANM.js";
120
123
  import "./chunk-SDYDNHEE.js";
121
124
  import "./chunk-2PSPARWP.js";
122
125
  import "./chunk-T42U2W2R.js";
123
126
  import {
124
127
  withMeta
125
- } from "./chunk-Y6QL2LGO.js";
128
+ } from "./chunk-P6WH6QTV.js";
126
129
  import "./chunk-K4WIOZFP.js";
127
130
  import "./chunk-XUXGIA7H.js";
128
131
  import "./chunk-WERLJGIC.js";
129
132
  import "./chunk-ISN5GRYI.js";
130
- import "./chunk-W35EKBS6.js";
133
+ import "./chunk-4OC7MQNB.js";
131
134
  import {
132
135
  normalizeErrorMessage
133
136
  } from "./chunk-KNU5COPB.js";
@@ -143,7 +146,7 @@ import { join, relative } from "path";
143
146
 
144
147
  // src/utils/hdrPromotion.ts
145
148
  async function bundleProjectHtml(projectDir) {
146
- const { bundleToSingleHtml } = await import("./compiler-TEXQWW6N.js");
149
+ const { bundleToSingleHtml } = await import("./compiler-JZ4GNFMG.js");
147
150
  return bundleToSingleHtml(projectDir);
148
151
  }
149
152
  async function collectBundledRenderMedia(html) {
@@ -435,7 +438,8 @@ async function collectGridSamples(driver, options, grid, motion) {
435
438
  issuesAtTime.push(...layoutIssues);
436
439
  collected.layoutStateSignatures.push({
437
440
  time,
438
- signature: await driver.collectLayoutGeometry()
441
+ signature: await driver.collectLayoutGeometry(),
442
+ clock: await driver.collectSeekClock()
439
443
  });
440
444
  collected.rotationSamples.push(...await driver.collectRotationSample(time));
441
445
  collected.indicatorFrames.push(await driver.collectOffPivotRotationSample(time));
@@ -491,15 +495,28 @@ var ZERO_LAYOUT_RECT = {
491
495
  width: 0,
492
496
  height: 0
493
497
  };
494
- function detectSweepStatic(duration, layoutStateSignatures, motionIssues, hasNoTimelineDeclaration) {
498
+ function detectSweepStatic(duration, samples, motionIssues, hasNoTimelineDeclaration) {
495
499
  if (hasNoTimelineDeclaration) return [];
496
500
  if (duration < SWEEP_STATIC_MIN_DURATION_SEC) return [];
497
- if (layoutStateSignatures.length < 2) return [];
501
+ if (samples.length < 2) return [];
498
502
  if (motionIssues.some((issue) => issue.code === "motion_frozen")) return [];
499
- if (allSame(layoutStateSignatures)) return [sweepStaticIssue("error")];
500
- if (allSame(layoutStateSignatures.map(seenPart))) return [sweepStaticIssue("warning")];
503
+ const signatures = samples.map((sample) => sample.signature);
504
+ if (allSame(signatures))
505
+ return [sweepStaticIssue(anAnimationIsStuck(samples) ? "error" : "still")];
506
+ if (allSame(signatures.map(seenPart))) return [sweepStaticIssue("audio")];
501
507
  return [];
502
508
  }
509
+ function anAnimationIsStuck(samples) {
510
+ const seenById = /* @__PURE__ */ new Map();
511
+ for (const sample of samples) {
512
+ for (const clock of new Map(sample.clock.map((clock2) => [clock2.id, clock2])).values()) {
513
+ seenById.set(clock.id, [...seenById.get(clock.id) ?? [], clock]);
514
+ }
515
+ }
516
+ return [...seenById.values()].some(
517
+ (seen) => seen.length > 1 && allSame(seen.map((clock) => clock.time)) && seen.every((clock) => !clock.done)
518
+ );
519
+ }
503
520
  var AUDIO_TIME_SEPARATOR = "";
504
521
  function seenPart(signature) {
505
522
  return signature.split(AUDIO_TIME_SEPARATOR)[0] ?? signature;
@@ -507,18 +524,24 @@ function seenPart(signature) {
507
524
  function allSame(values) {
508
525
  return values.every((value) => value === values[0]);
509
526
  }
510
- function sweepStaticIssue(severity) {
527
+ var STILL_FIX_HINT = "If the composition is meant to be still, add `data-no-timeline` to the element with `data-composition-id`. Otherwise confirm it seeks a paused GSAP/CSS timeline under `data-*` timing attributes rather than only autoplaying.";
528
+ var SWEEP_STATIC_MESSAGES = {
529
+ error: "Timeline did not advance under seek; every green verdict on this run is unreliable.",
530
+ still: "Nothing on screen moved under seek.",
531
+ audio: "Only the audio advanced under seek; nothing on screen moved."
532
+ };
533
+ function sweepStaticIssue(kind) {
511
534
  return {
512
535
  code: "sweep_static",
513
- severity,
536
+ severity: kind === "error" ? "error" : "warning",
514
537
  time: 0,
515
538
  selector: "[data-composition-id]",
516
539
  dataAttributes: {},
517
540
  sourceFile: "index.html",
518
541
  bbox: ZERO_BBOX,
519
542
  rect: ZERO_LAYOUT_RECT,
520
- message: severity === "error" ? "Timeline did not advance under seek; every green verdict on this run is unreliable." : "Only the audio advanced under seek; nothing on screen moved.",
521
- fixHint: "If the composition is meant to be still, add `data-no-timeline` to the element with `data-composition-id`. Otherwise confirm it seeks a paused GSAP/CSS timeline under `data-*` timing attributes rather than only autoplaying."
543
+ message: SWEEP_STATIC_MESSAGES[kind],
544
+ fixHint: kind === "error" ? "An animation on the page never moved under seek. Build it on the paused GSAP timeline registered in `window.__timelines[compositionId]`, or as a CSS animation, so the seek drives it." : STILL_FIX_HINT
522
545
  };
523
546
  }
524
547
  var ROTATION_MIN_SAMPLES = 3;
@@ -868,7 +891,7 @@ async function runAuditGrid(driver, options, motion) {
868
891
  const userPicked = new Set(grid.userPickedSamples);
869
892
  const sweepFindings = detectSweepStatic(
870
893
  grid.duration,
871
- collected.layoutStateSignatures.filter((sample) => !userPicked.has(sample.time)).map((sample) => sample.signature),
894
+ collected.layoutStateSignatures.filter((sample) => !userPicked.has(sample.time)),
872
895
  motionIssues,
873
896
  await driver.hasNoTimelineDeclaration()
874
897
  );
@@ -1269,7 +1292,7 @@ function resolveMotionSpec(projectDir) {
1269
1292
  };
1270
1293
  }
1271
1294
  async function runBrowserCheck(project, options, motion) {
1272
- const module = await import("./checkBrowser-NTGJGAEA.js");
1295
+ const module = await import("./checkBrowser-RNWNOMCZ.js");
1273
1296
  return module.runBrowserCheck(project, options, motion, runAuditGrid);
1274
1297
  }
1275
1298
  async function writeSnapshot(projectDir, index, time, pngBase64) {
@@ -1281,7 +1304,7 @@ async function writeSnapshot(projectDir, index, time, pngBase64) {
1281
1304
  return join("snapshots", filename);
1282
1305
  }
1283
1306
  async function captureFindingCrops(project, options, requests) {
1284
- const module = await import("./checkBrowser-NTGJGAEA.js");
1307
+ const module = await import("./checkBrowser-RNWNOMCZ.js");
1285
1308
  return module.captureFindingCrops(project, options, requests);
1286
1309
  }
1287
1310
  var DEFAULT_DEPENDENCIES2 = {
@@ -1392,7 +1415,7 @@ function createCheckCommand(dependencies = DEFAULT_COMMAND_DEPENDENCIES) {
1392
1415
  },
1393
1416
  args: CHECK_COMMAND_ARGS,
1394
1417
  async run({ rawArgs }) {
1395
- const args = parseArgs(normalizeFrameCheckRawArgs(rawArgs), CHECK_COMMAND_ARGS);
1418
+ const args = parseArgs(rawArgs, CHECK_COMMAND_ARGS);
1396
1419
  const asJson = args.json === true;
1397
1420
  try {
1398
1421
  const project = dependencies.resolveProject(args.dir);
@@ -1421,13 +1444,6 @@ function createCheckCommand(dependencies = DEFAULT_COMMAND_DEPENDENCIES) {
1421
1444
  }
1422
1445
  });
1423
1446
  }
1424
- function normalizeFrameCheckRawArgs(rawArgs) {
1425
- return rawArgs.map((arg, index) => {
1426
- if (arg !== "--frame-check") return arg;
1427
- const next = rawArgs[index + 1];
1428
- return next === void 0 || next.startsWith("-") ? "--frame-check=" : arg;
1429
- });
1430
- }
1431
1447
  function parseCheckOptions(args) {
1432
1448
  const maxTransitionSamples = positiveInteger(args["max-transition-samples"], 0);
1433
1449
  return {
@@ -1456,7 +1472,7 @@ function parseFrameCheck(value) {
1456
1472
  if (value === void 0 || value === null || value === false) return void 0;
1457
1473
  if (value === true || value === "") return {};
1458
1474
  if (typeof value !== "string") throw frameCheckError();
1459
- if (value.startsWith("-")) throw swallowedOptionError("frame-check", value);
1475
+ if (value.startsWith("-")) throw swallowedFlagUsageError("frame-check", value);
1460
1476
  const fields = parseFrameCheckFields(value);
1461
1477
  const severity = captionSeverity(fields.get("severity"), frameCheckError);
1462
1478
  const seek = captionSeeks(fields.get("seek"), frameCheckError);
@@ -1487,11 +1503,6 @@ function frameCheckError() {
1487
1503
  'Invalid --frame-check: use bare --frame-check or "severity=warning|error;seek=.25,.75;tol=4" (all fields optional)'
1488
1504
  );
1489
1505
  }
1490
- function swallowedOptionError(flag, value) {
1491
- return new Error(
1492
- `Invalid --${flag}: value "${value}" appears to have swallowed the next option; use --${flag}= or move --${flag} to the end`
1493
- );
1494
- }
1495
1506
  function parseLayout(value) {
1496
1507
  if (value === void 0 || value === null || value === false) return void 0;
1497
1508
  if (value === true || value === "") throw layoutError();
@@ -8,21 +8,21 @@ import {
8
8
  auditClipDurations,
9
9
  shouldIgnoreHttpError,
10
10
  shouldIgnoreRequestFailure
11
- } from "./chunk-POLR33RB.js";
11
+ } from "./chunk-NOPBBSLA.js";
12
12
  import {
13
13
  rectToBbox
14
14
  } from "./chunk-WBLXWOYK.js";
15
15
  import {
16
16
  ambiguousIssue,
17
17
  loadBrowserScript
18
- } from "./chunk-BT27OYYX.js";
18
+ } from "./chunk-A53CBD24.js";
19
19
  import {
20
20
  serveStaticProjectHtml
21
- } from "./chunk-5FISWJ37.js";
21
+ } from "./chunk-RVFEDAUV.js";
22
22
  import "./chunk-XUHOIDKG.js";
23
23
  import "./chunk-X7MTZ4T2.js";
24
- import "./chunk-FVYXDXEV.js";
25
- import "./chunk-VIVBA6E6.js";
24
+ import "./chunk-Y6UPYWJS.js";
25
+ import "./chunk-KFKZ3ISO.js";
26
26
  import {
27
27
  AUDIT_SEEK_OPTIONS,
28
28
  DEFAULT_ZOOM_PADDING_PX,
@@ -34,40 +34,40 @@ import {
34
34
  resolveCliChromeGpuMode,
35
35
  seekCompositionTimeline,
36
36
  waitForPreferredSeekTarget
37
- } from "./chunk-HMT2RPZU.js";
37
+ } from "./chunk-SLCFKB3Y.js";
38
38
  import "./chunk-FH7WODJH.js";
39
- import "./chunk-PJU63L6W.js";
40
- import "./chunk-P7THMINS.js";
39
+ import "./chunk-5WADG7PR.js";
40
+ import "./chunk-GZM2EFOE.js";
41
41
  import "./chunk-WPNE5NEP.js";
42
42
  import "./chunk-K2FLNJVB.js";
43
- import "./chunk-7UYBQ6NF.js";
44
- import "./chunk-UM2GRYM3.js";
43
+ import "./chunk-XGFHYAYN.js";
44
+ import "./chunk-YJXHMIZA.js";
45
45
  import "./chunk-QZ3AZTXI.js";
46
- import "./chunk-BFDJ63J5.js";
46
+ import "./chunk-DDIVWXN7.js";
47
47
  import {
48
48
  decideMediaProxyEligibility,
49
49
  proxyVariantFor,
50
50
  resolveProxy,
51
51
  scanProjectMediaCodecMap
52
- } from "./chunk-ZQQ3SEIE.js";
52
+ } from "./chunk-ZOA2SC4P.js";
53
53
  import "./chunk-G75ENCEZ.js";
54
54
  import "./chunk-EOVYQ3IG.js";
55
- import "./chunk-QRKLPWEX.js";
55
+ import "./chunk-7SDCIWHQ.js";
56
56
  import "./chunk-442JNXRM.js";
57
57
  import {
58
58
  resolveAutoProxy
59
- } from "./chunk-2LBBHMKT.js";
59
+ } from "./chunk-JEHFZQYT.js";
60
60
  import "./chunk-XT7X6QCP.js";
61
61
  import "./chunk-4YYJOFKS.js";
62
62
  import "./chunk-HVW7ABXD.js";
63
- import "./chunk-HW4AKJ5F.js";
64
- import "./chunk-CLOH4LIB.js";
65
- import "./chunk-TAMQYQGJ.js";
63
+ import "./chunk-AUBOF2PN.js";
64
+ import "./chunk-54QISXOC.js";
65
+ import "./chunk-I5KY7EZP.js";
66
66
  import "./chunk-AWDFDFI3.js";
67
67
  import "./chunk-P6LJ4Y32.js";
68
68
  import "./chunk-374QQGBQ.js";
69
- import "./chunk-QFN7NVWM.js";
70
- import "./chunk-OSSHSIMD.js";
69
+ import "./chunk-RG3QWWIE.js";
70
+ import "./chunk-XU5GGV6R.js";
71
71
  import "./chunk-VWG7OQKU.js";
72
72
  import "./chunk-GQJZORQP.js";
73
73
  import "./chunk-AMKC3AXA.js";
@@ -77,12 +77,12 @@ import "./chunk-54HJ63Q2.js";
77
77
  import "./chunk-PBN6GBJE.js";
78
78
  import "./chunk-KC5XXX3X.js";
79
79
  import "./chunk-TJSTGSAW.js";
80
- import "./chunk-33RZPZ4K.js";
81
- import "./chunk-F26LCYRY.js";
80
+ import "./chunk-5VMR4WBS.js";
81
+ import "./chunk-OUSLVRO4.js";
82
82
  import "./chunk-NE55C6S5.js";
83
83
  import "./chunk-USDEMXXL.js";
84
- import "./chunk-4M4EC7JX.js";
85
- import "./chunk-6TPZSTCL.js";
84
+ import "./chunk-3VYNNWVA.js";
85
+ import "./chunk-WJB7WI4J.js";
86
86
  import "./chunk-VC76R6W2.js";
87
87
  import "./chunk-YA62XGXS.js";
88
88
  import "./chunk-MQZVBHEY.js";
@@ -92,21 +92,21 @@ import "./chunk-T76PLPD6.js";
92
92
  import "./chunk-FXMKHHPO.js";
93
93
  import "./chunk-RQVDTPGD.js";
94
94
  import "./chunk-TWWSYAKJ.js";
95
- import "./chunk-XONFUK3M.js";
95
+ import "./chunk-IEIJRMLZ.js";
96
96
  import "./chunk-IWFLMU2N.js";
97
97
  import "./chunk-APDLWWFG.js";
98
98
  import "./chunk-PJ3HDUCY.js";
99
99
  import "./chunk-3RM2ETQT.js";
100
- import "./chunk-ZLW2V65P.js";
100
+ import "./chunk-BSQ7XANM.js";
101
101
  import "./chunk-SDYDNHEE.js";
102
102
  import "./chunk-2PSPARWP.js";
103
103
  import "./chunk-T42U2W2R.js";
104
- import "./chunk-Y6QL2LGO.js";
104
+ import "./chunk-P6WH6QTV.js";
105
105
  import "./chunk-K4WIOZFP.js";
106
106
  import "./chunk-XUXGIA7H.js";
107
107
  import "./chunk-WERLJGIC.js";
108
108
  import "./chunk-ISN5GRYI.js";
109
- import "./chunk-W35EKBS6.js";
109
+ import "./chunk-4OC7MQNB.js";
110
110
  import {
111
111
  normalizeErrorMessage
112
112
  } from "./chunk-KNU5COPB.js";
@@ -148,7 +148,7 @@ async function preResolveHostileMediaProxies(projectDir, html, autoProxyOverride
148
148
  );
149
149
  }
150
150
  async function runBrowserCheck(project, options, motion, runGrid) {
151
- const { bundleWithLocalizedFonts } = await import("./bundleWithLocalizedFonts-VH55VOAL.js");
151
+ const { bundleWithLocalizedFonts } = await import("./bundleWithLocalizedFonts-FWC7PE2D.js");
152
152
  const html = await bundleWithLocalizedFonts(project.dir);
153
153
  await preResolveHostileMediaProxies(project.dir, html, options.autoProxy);
154
154
  const server = await serveStaticProjectHtml(
@@ -175,7 +175,7 @@ async function runBrowserCheck(project, options, motion, runGrid) {
175
175
  await waitForPreferredSeekTarget(page);
176
176
  const rootAnchor = await resolveRootAnchor(page);
177
177
  const launchSettleMs = Date.now() - launchSettleStart;
178
- const { analyzeClipMediaFit } = await import("./src-JO5JOV7Y.js");
178
+ const { analyzeClipMediaFit } = await import("./src-VUJ2FUFK.js");
179
179
  for (const entry of await auditClipDurations(page, analyzeClipMediaFit, options.timeout)) {
180
180
  drafts.push({ code: "clip_media_fit", severity: entry.level, message: entry.text, time: 0 });
181
181
  }
@@ -198,7 +198,7 @@ async function runBrowserCheck(project, options, motion, runGrid) {
198
198
  }
199
199
  async function captureFindingCrops(project, options, requests) {
200
200
  if (requests.length === 0) return [];
201
- const { bundleWithLocalizedFonts } = await import("./bundleWithLocalizedFonts-VH55VOAL.js");
201
+ const { bundleWithLocalizedFonts } = await import("./bundleWithLocalizedFonts-FWC7PE2D.js");
202
202
  const html = await bundleWithLocalizedFonts(project.dir);
203
203
  const server = await serveStaticProjectHtml(
204
204
  project.dir,
@@ -396,6 +396,7 @@ function createPageDriver(page, setTime) {
396
396
  collectLayout: (time, tolerance, layout) => collectLayout(page, time, tolerance, layout),
397
397
  collectOverlap: (time) => collectOverlap(page, time),
398
398
  collectLayoutGeometry: () => collectLayoutGeometry(page),
399
+ collectSeekClock: () => collectSeekClock(page),
399
400
  collectRotationSample: (time) => collectRotationSample(page, time),
400
401
  collectOffPivotRotationSample: (time) => collectOffPivotRotationSample(page, time),
401
402
  collectGeometryCandidates: (time, request) => collectGeometryCandidates(page, time, request),
@@ -521,6 +522,55 @@ async function collectLayoutGeometry(page) {
521
522
  return typeof result === "string" ? result : "";
522
523
  });
523
524
  }
525
+ async function collectSeekClock(page) {
526
+ return page.evaluate(() => {
527
+ const callOrUndefined = (target, key, args = []) => {
528
+ try {
529
+ return Reflect.apply(Reflect.get(Object(target), key), target, args);
530
+ } catch {
531
+ return void 0;
532
+ }
533
+ };
534
+ const known = Reflect.get(
535
+ window,
536
+ "__hfSeekClocks"
537
+ ) ?? {
538
+ ids: /* @__PURE__ */ new WeakMap(),
539
+ next: 0
540
+ };
541
+ Reflect.set(window, "__hfSeekClocks", known);
542
+ const idOf = (target) => {
543
+ if (!known.ids.has(target)) known.ids.set(target, ++known.next);
544
+ return known.ids.get(target) ?? 0;
545
+ };
546
+ const clocks = [];
547
+ const timelines = Reflect.get(window, "__timelines");
548
+ const registered = typeof timelines === "object" && timelines ? Object.values(timelines) : [];
549
+ const gsapRoot = Reflect.get(Reflect.get(window, "gsap") ?? {}, "globalTimeline");
550
+ const children = callOrUndefined(gsapRoot, "getChildren", [false, true, true]);
551
+ for (const timeline of [...registered, ...Array.isArray(children) ? children : []]) {
552
+ const total = Number(
553
+ callOrUndefined(timeline, "totalDuration") ?? callOrUndefined(timeline, "duration")
554
+ );
555
+ if (typeof timeline !== "object" || !timeline || !(total > 0)) continue;
556
+ const time = Number(
557
+ callOrUndefined(timeline, "totalTime") ?? callOrUndefined(timeline, "time")
558
+ );
559
+ if (!Number.isFinite(time)) continue;
560
+ const progress = Number(callOrUndefined(timeline, "totalProgress") ?? time / total);
561
+ const done = callOrUndefined(timeline, "reversed") === true ? progress <= 0 : progress >= 1;
562
+ clocks.push({ id: idOf(timeline), time, done });
563
+ }
564
+ for (const animation of document.getAnimations?.() ?? []) {
565
+ if (typeof animation.currentTime !== "number") continue;
566
+ const time = animation.currentTime;
567
+ const end = Number(animation.effect?.getComputedTiming().endTime ?? Number.POSITIVE_INFINITY);
568
+ const atEnd = animation.playbackRate < 0 ? time <= 0 : time >= end;
569
+ clocks.push({ id: idOf(animation), time, done: animation.playState === "finished" || atEnd });
570
+ }
571
+ return clocks;
572
+ });
573
+ }
524
574
  async function evaluateSampler(page, globalName) {
525
575
  return page.evaluate((name) => {
526
576
  const sample = Reflect.get(window, name);
@@ -1071,6 +1121,7 @@ function urlPath(url) {
1071
1121
  export {
1072
1122
  captureFindingCrops,
1073
1123
  captureOverviewShot,
1124
+ collectSeekClock,
1074
1125
  keepBrokenImageAborts,
1075
1126
  preResolveHostileMediaProxies,
1076
1127
  runBrowserCheck
@@ -1278,7 +1278,7 @@ async function withFigmaErrors(command, fn) {
1278
1278
  } catch (err) {
1279
1279
  if (err instanceof Error) {
1280
1280
  try {
1281
- const { trackCommandFailure } = await import("./events-NIZBS6S7.js");
1281
+ const { trackCommandFailure } = await import("./events-BRRUDPPT.js");
1282
1282
  trackCommandFailure(
1283
1283
  command,
1284
1284
  err,
@@ -9,7 +9,7 @@ import {
9
9
  parseStrictFiniteTimingNumber,
10
10
  resolveNaturalMediaTimelineDuration,
11
11
  resolveTimedImageDurationSeconds
12
- } from "./chunk-6TPZSTCL.js";
12
+ } from "./chunk-WJB7WI4J.js";
13
13
  import {
14
14
  CANVAS_DIMENSIONS,
15
15
  isCompositionElement,
@@ -927,6 +927,16 @@ function renderFrameIdForRenderId(renderId) {
927
927
  return `${RENDER_FRAME_ID_PREFIX}${renderId}${RENDER_FRAME_ID_SUFFIX}`;
928
928
  }
929
929
 
930
+ // ../core/dist/utils/cssSelector.js
931
+ function queryByAttr(root, attr, value, tag) {
932
+ const selector = tag ? `${tag}[${attr}]` : `[${attr}]`;
933
+ for (const el of root.querySelectorAll(selector)) {
934
+ if (el.getAttribute(attr) === value)
935
+ return el;
936
+ }
937
+ return null;
938
+ }
939
+
930
940
  // ../core/dist/media/gif.js
931
941
  var BROWSER_MIN_DELAY_CENTISECONDS = 10;
932
942
  function normalizeDelayCentiseconds(delay) {
@@ -5553,6 +5563,7 @@ export {
5553
5563
  RENDER_FRAME_ID_PREFIX,
5554
5564
  RENDER_FRAME_ID_SUFFIX,
5555
5565
  renderFrameIdForRenderId,
5566
+ queryByAttr,
5556
5567
  parseAnimatedGifMetadata,
5557
5568
  gifClearsAfterLeavingFrameInPlace,
5558
5569
  clearGifFramesBeforeNext,