hyperframes 0.8.195 → 0.8.196

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 (173) hide show
  1. package/dist/{add-NL6XABRV.js → add-JC7CRYAY.js} +12 -12
  2. package/dist/{animatedGifPrep-JD4BBM2L.js → animatedGifPrep-5GSLZQUS.js} +6 -6
  3. package/dist/api.js +14 -14
  4. package/dist/{asset-LRRHLG4L.js → asset-MM3F46VS.js} +2 -2
  5. package/dist/{assetCataloger-D7KGO346.js → assetCataloger-G2ZIBRML.js} +6 -6
  6. package/dist/{audio-34CZM4HF.js → audio-TTZ4OR5A.js} +12 -12
  7. package/dist/{auth-FL5ZMOXB.js → auth-TFOUDLSS.js} +1 -1
  8. package/dist/{autoUpdate-FZTJFLIH.js → autoUpdate-EIHQFY7Y.js} +2 -2
  9. package/dist/{backgroundChecks-6ZKDCQET.js → backgroundChecks-SXRES7MW.js} +3 -3
  10. package/dist/backgroundChecksWorker.js +3 -3
  11. package/dist/{batchRender-KDZ4F4QT.js → batchRender-GH2HQQKN.js} +4 -4
  12. package/dist/{beats-7PK677VR.js → beats-VYH72TGV.js} +8 -8
  13. package/dist/{benchmark-LO36QH5D.js → benchmark-72KJLRAY.js} +9 -9
  14. package/dist/{browser-3F7NDHU2.js → browser-3O7SAXSC.js} +3 -3
  15. package/dist/{bundleWithLocalizedFonts-JL5J52L6.js → bundleWithLocalizedFonts-CJL3HHSF.js} +2 -2
  16. package/dist/{capture-DOP3ONNZ.js → capture-H33B5WVR.js} +9 -9
  17. package/dist/{capture-JOSZZYUW.js → capture-NQAJRPLR.js} +2 -2
  18. package/dist/{captureCompositionFrame-SWZ4GEJP.js → captureCompositionFrame-HPIRZNGK.js} +11 -11
  19. package/dist/{catalog-EZLHZMLM.js → catalog-KMNTCN55.js} +12 -12
  20. package/dist/{catch-up-6B7VY43I.js → catch-up-Q367WUGC.js} +4 -4
  21. package/dist/{check-QGELCBBF.js → check-NQIN7ZQW.js} +35 -35
  22. package/dist/{checkBrowser-A5C2AB4L.js → checkBrowser-IECG4M6A.js} +30 -30
  23. package/dist/{chunk-7G2LQM3J.js → chunk-3OKZJYA7.js} +26 -17
  24. package/dist/{chunk-GOOE33GV.js → chunk-3VI6DSO6.js} +1 -1
  25. package/dist/{chunk-ZOJHEN3C.js → chunk-4VOUQCY6.js} +1 -1
  26. package/dist/{chunk-B7Y2DGU6.js → chunk-5MPWOFWO.js} +1 -1
  27. package/dist/{chunk-SC6NILKD.js → chunk-62DVCRMX.js} +1 -1
  28. package/dist/{chunk-KJ6ZQL34.js → chunk-6RNGEUL3.js} +1 -1
  29. package/dist/{chunk-F4T7XYMF.js → chunk-DHSNTPEW.js} +1 -1
  30. package/dist/{chunk-RZUEXJRC.js → chunk-DMGXJRXV.js} +2 -2
  31. package/dist/{chunk-WUL5LPI2.js → chunk-DMMYNEAF.js} +1 -1
  32. package/dist/{chunk-3PYIQLPL.js → chunk-DTGW7DU3.js} +1 -1
  33. package/dist/{chunk-ST35C4K6.js → chunk-DY53XJ3P.js} +1 -1
  34. package/dist/{chunk-4R2NWLQL.js → chunk-E7NEF2SC.js} +1 -1
  35. package/dist/{chunk-ORZMO6NY.js → chunk-E7S6OJFP.js} +2 -2
  36. package/dist/{chunk-NOHH25WS.js → chunk-EWXXMXNE.js} +2 -2
  37. package/dist/{chunk-GKMRLES4.js → chunk-FHRZK527.js} +1 -1
  38. package/dist/{chunk-ROEW726S.js → chunk-FMTJ4I6I.js} +1 -1
  39. package/dist/{chunk-BBXZPDEA.js → chunk-GHNIESBY.js} +2 -2
  40. package/dist/{chunk-D6XDOYMB.js → chunk-I452OMM7.js} +1 -1
  41. package/dist/{chunk-CCZMCX3F.js → chunk-I7BLPFXV.js} +1 -1
  42. package/dist/{chunk-IZR7U27Z.js → chunk-IHGQEF3Z.js} +47 -16
  43. package/dist/{chunk-2HSRLKZR.js → chunk-IO5NBG26.js} +3 -3
  44. package/dist/{chunk-VNWX5GBF.js → chunk-IYSIQ4GX.js} +3 -2
  45. package/dist/{chunk-P5X5URNQ.js → chunk-JCBZI47W.js} +1 -1
  46. package/dist/{chunk-FWDDLW2H.js → chunk-JI7J3FTM.js} +2 -2
  47. package/dist/{chunk-OB4GJZTY.js → chunk-JL2PX5P2.js} +1 -1
  48. package/dist/{chunk-NKNRVPNV.js → chunk-KCFKFKCU.js} +2 -2
  49. package/dist/{chunk-7DFIVUOW.js → chunk-KLOMOKJC.js} +5 -5
  50. package/dist/{chunk-HTLCE7M2.js → chunk-L7UPBREN.js} +17 -17
  51. package/dist/{chunk-HT33OHQL.js → chunk-LP6SFIWQ.js} +1 -1
  52. package/dist/{chunk-GJG4CTXD.js → chunk-MK6FWMMF.js} +2 -2
  53. package/dist/chunk-MXT76SSV.js +3901 -0
  54. package/dist/{chunk-KVLGJJTE.js → chunk-MYVC3XTH.js} +5 -5
  55. package/dist/{chunk-W4SSWOOD.js → chunk-NCSX7WNM.js} +2 -2
  56. package/dist/{chunk-YUFECVHG.js → chunk-NTMKBXWW.js} +1 -1
  57. package/dist/{chunk-ES7KSCSO.js → chunk-PBHFZXYP.js} +9 -9
  58. package/dist/{chunk-OJNNKHAZ.js → chunk-PGDWNIOK.js} +7 -2
  59. package/dist/{chunk-E527A6RS.js → chunk-PTRDO7J4.js} +2 -2
  60. package/dist/{chunk-3OAFRLD3.js → chunk-QK2MZ2SF.js} +11 -8
  61. package/dist/{chunk-7PXVXRVX.js → chunk-QSJUDSIC.js} +9 -9
  62. package/dist/{chunk-2OYYNKJ4.js → chunk-QXPZGDTI.js} +1 -1
  63. package/dist/{chunk-W7GMPEY3.js → chunk-RASESH32.js} +10 -10
  64. package/dist/{chunk-XOUWCZHD.js → chunk-REOE2ZEO.js} +1 -1
  65. package/dist/{chunk-YFTO5YD7.js → chunk-REPDGLLY.js} +5 -5
  66. package/dist/{chunk-ZAVUASNT.js → chunk-RP7QRLSK.js} +1 -1
  67. package/dist/{chunk-SMROKE63.js → chunk-TGHMJIHK.js} +2 -2
  68. package/dist/{chunk-TE6VGYHQ.js → chunk-TR7CDEU7.js} +1 -1
  69. package/dist/{chunk-YSXCPSJ4.js → chunk-TWHNETZP.js} +3 -3
  70. package/dist/{chunk-IA7HZ4CM.js → chunk-UPPAKDU3.js} +3 -3
  71. package/dist/{chunk-2G6JZJAV.js → chunk-VAS2EQRM.js} +2 -2
  72. package/dist/{chunk-XC7SJ2UR.js → chunk-VFDLKZJZ.js} +3 -3
  73. package/dist/{chunk-E74JMKSK.js → chunk-VKFHSZYS.js} +2 -2
  74. package/dist/{chunk-CZNSLFYD.js → chunk-VLVQQJOX.js} +14 -7
  75. package/dist/{chunk-ZL6ZCLY6.js → chunk-W226NPSC.js} +1 -1
  76. package/dist/{chunk-HJINEUHY.js → chunk-WFHA6WC3.js} +2 -2
  77. package/dist/{chunk-6ORTRIDW.js → chunk-WJJ6TPC7.js} +3 -3
  78. package/dist/{chunk-L4BFXWHC.js → chunk-XJDMYIUI.js} +17 -17
  79. package/dist/{chunk-ELQ2QQC5.js → chunk-XLVUQGSA.js} +1 -1
  80. package/dist/{chunk-B7RJV74O.js → chunk-XOTUPVIF.js} +4 -0
  81. package/dist/{chunk-L2EBYFU7.js → chunk-XZE3IBMV.js} +1 -1
  82. package/dist/{chunk-RAACYYWX.js → chunk-YU22E6SG.js} +1 -1
  83. package/dist/{chunk-66Q27H72.js → chunk-Z43NJYG2.js} +2 -2
  84. package/dist/{chunk-7Y5RVQQ7.js → chunk-ZKIHZDNI.js} +3 -3
  85. package/dist/{chunk-636WBDXB.js → chunk-ZSREWHNW.js} +5 -5
  86. package/dist/{clean-PI4JLT6O.js → clean-HINDVP2J.js} +16 -16
  87. package/dist/cli.js +53 -53
  88. package/dist/{cloud-SQRY723M.js → cloud-TPFDYW6D.js} +4 -4
  89. package/dist/{cloudrun-VMPROR43.js → cloudrun-XI4YKOBA.js} +6 -6
  90. package/dist/{compare-EHX4APTP.js → compare-I7GD7WNG.js} +27 -27
  91. package/dist/{compiler-FZCJGGBF.js → compiler-K7SH7OZQ.js} +3 -3
  92. package/dist/{component-I75ZKJYH.js → component-FRH7UFTP.js} +3 -3
  93. package/dist/{compositions-YNYYUEQD.js → compositions-UQCJ7BG7.js} +10 -10
  94. package/dist/{delete-7BVTBKOC.js → delete-OTDM7JOD.js} +2 -2
  95. package/dist/{deploy-TUEEJP3W.js → deploy-L6JEPE2A.js} +1 -1
  96. package/dist/{deterministicFonts-RADD3BSX.js → deterministicFonts-RMA7GDJC.js} +2 -2
  97. package/dist/{dist-VVROHSP4.js → dist-FQBHBBKC.js} +3 -3
  98. package/dist/{doctor-53DSQFW4.js → doctor-RY44RTJD.js} +10 -10
  99. package/dist/{events-M6FIUDNQ.js → events-ALOHDCL3.js} +3 -3
  100. package/dist/{events-AD3U6E7I.js → events-JSL7JIXP.js} +2 -2
  101. package/dist/{feedback-7SQ7KKAR.js → feedback-FSICK4WO.js} +8 -8
  102. package/dist/{ffmpeg-3HSSPXS4.js → ffmpeg-FG7VOQTN.js} +6 -6
  103. package/dist/{figma-B5XII2BO.js → figma-CN2672XS.js} +3 -3
  104. package/dist/fontLocalizeCli.js +9 -9
  105. package/dist/{get-RZKNBIRD.js → get-C3OPJMWR.js} +2 -2
  106. package/dist/{gpuPolicy-77LOK3K6.js → gpuPolicy-AJX7YIAS.js} +6 -6
  107. package/dist/{grade-compare-K3YB3FQA.js → grade-compare-WQHSPAHD.js} +28 -28
  108. package/dist/{help-UM6INVL5.js → help-E3MX427C.js} +1 -1
  109. package/dist/{history-EWKPACWR.js → history-FYLXZMI4.js} +7 -7
  110. package/dist/hyperframe.manifest.json +1 -1
  111. package/dist/hyperframe.runtime.iife.js +1 -1
  112. package/dist/hyperframes-player.global.js +1 -1
  113. package/dist/{info-KY3MFTCY.js → info-OMF7O3KA.js} +8 -8
  114. package/dist/{init-LURF2PL5.js → init-K3GNFQLD.js} +26 -26
  115. package/dist/{inspect-46CZJM6P.js → inspect-GYOEV66Q.js} +28 -28
  116. package/dist/{installer-NGFX6INI.js → installer-6X4VLDTC.js} +5 -5
  117. package/dist/{keyframes-YCSK6POI.js → keyframes-IPXUT4QI.js} +6 -6
  118. package/dist/{lambda-5KXULI2S.js → lambda-ZGMXIDJV.js} +8 -8
  119. package/dist/{layout-WOLH24YE.js → layout-QVTB5SUJ.js} +28 -28
  120. package/dist/{lint-P3P2LX6S.js → lint-V2I27FUE.js} +6 -6
  121. package/dist/{list-RUYQWMF2.js → list-J5MFX5NA.js} +2 -2
  122. package/dist/{login-THBBWZAY.js → login-ZRCLBPMK.js} +4 -4
  123. package/dist/{manager-V34BMSAG.js → manager-GLJVKITP.js} +7 -7
  124. package/dist/{media-treatment-IMBLTYGV.js → media-treatment-HVGN5S4H.js} +12 -12
  125. package/dist/{models-3NW7HU72.js → models-4WEGIBNZ.js} +10 -10
  126. package/dist/{motionShot-VTTYZ6KW.js → motionShot-B3I4ZE73.js} +14 -14
  127. package/dist/{normalize-audio-ME3X7HBX.js → normalize-audio-QIERL4II.js} +6 -6
  128. package/dist/{open-GLGSJISM.js → open-ALXHG55R.js} +12 -12
  129. package/dist/{parakeetRunner-T3UGRZWC.js → parakeetRunner-ESAELH2V.js} +11 -11
  130. package/dist/{pipeline-IJXVEQCU.js → pipeline-QK6KHDQ3.js} +7 -7
  131. package/dist/{play-HFFGGAZH.js → play-XBIN4KMI.js} +19 -19
  132. package/dist/{preflight-QV6V3UO2.js → preflight-D6VLCMOJ.js} +7 -7
  133. package/dist/{present-TH34CTYY.js → present-DQ45WV7Q.js} +15 -15
  134. package/dist/{preview-R67EQGQP.js → preview-CIAZ646P.js} +17 -17
  135. package/dist/{producer-HWPFETDU.js → producer-T3FJ6HZE.js} +1 -1
  136. package/dist/{projectConfig-AO4V3RHS.js → projectConfig-WFGZJAYZ.js} +7 -7
  137. package/dist/{publication-BDQ3PXYG.js → publication-GWNKRVXZ.js} +3 -3
  138. package/dist/{publish-PXYTWSXN.js → publish-LIAAGUNA.js} +9 -9
  139. package/dist/{remove-background-BVDJPT3Z.js → remove-background-HRFJZJHF.js} +8 -8
  140. package/dist/{render-45YHWV6W.js → render-3C5LHQ3P.js} +6 -6
  141. package/dist/{render-5RQUYPIV.js → render-RWW4LGKJ.js} +28 -28
  142. package/dist/{render-5MZY4TAB.js → render-SMFKECFA.js} +14 -14
  143. package/dist/{render-batch-ZUTUBTHX.js → render-batch-7UH2F7N4.js} +6 -6
  144. package/dist/{resolver-FN2M3XVM.js → resolver-4ZFA36XZ.js} +5 -5
  145. package/dist/{sherpa-6KWNPRWB.js → sherpa-NRSAFFIL.js} +10 -10
  146. package/dist/skills/media-use/scripts/lib/recipe-store.mjs +1 -0
  147. package/dist/skills/media-use/scripts/lib/recipe-store.test.mjs +24 -0
  148. package/dist/skills/media-use/scripts/lib/svg-sanitize.mjs +2 -2
  149. package/dist/{skills-PWQCM2BT.js → skills-6ZUYEX75.js} +5 -5
  150. package/dist/{skillsUpdateCheck-EHV2G3JX.js → skillsUpdateCheck-G2NSDI6O.js} +3 -3
  151. package/dist/{snapshot-7Q24NFEI.js → snapshot-ZJBRKRHZ.js} +32 -32
  152. package/dist/{src-J43SXEHJ.js → src-CZHSSXXF.js} +8 -8
  153. package/dist/{src-OS2FRVZV.js → src-GIB5BUZZ.js} +5 -5
  154. package/dist/{staticProjectServer-YJWOQJF4.js → staticProjectServer-Q3BHJE7H.js} +16 -16
  155. package/dist/studio/assets/{hyperframes-player-DnIPEARk.js → hyperframes-player-DG3nZ1bE.js} +1 -1
  156. package/dist/studio/assets/{index-Dkt4c1MV.js → index-BS2__aBb.js} +4 -4
  157. package/dist/studio/assets/{index-CVppCm_X.js → index-C1r59TIq.js} +1 -1
  158. package/dist/studio/index.html +1 -1
  159. package/dist/{studio-api-CZBZ4D65.js → studio-api-QB4YAV5Q.js} +9 -9
  160. package/dist/{studioServer-U6EX5DSB.js → studioServer-O6T4J75T.js} +46 -46
  161. package/dist/{telemetry-VP4UWWO3.js → telemetry-IKTCBFN5.js} +3 -3
  162. package/dist/{timeline-LMSUKEG6.js → timeline-J2D5R53C.js} +17 -17
  163. package/dist/{tokens-FQ5AI5H4.js → tokens-2D2TFXGD.js} +2 -2
  164. package/dist/{transcribe-VAMXV7QS.js → transcribe-HGD5MUPC.js} +15 -15
  165. package/dist/{transcribe-DNQFPZ2S.js → transcribe-JX23YVIR.js} +9 -9
  166. package/dist/{updateCheck-TOU7VLZK.js → updateCheck-S56I5SDE.js} +2 -2
  167. package/dist/{upgrade-CJRMRR2S.js → upgrade-A4LUB5SH.js} +2 -2
  168. package/dist/{urlDownloader-GETNWEIT.js → urlDownloader-ENNZJ7EM.js} +5 -5
  169. package/dist/{validate-PRI2UTQS.js → validate-IGVFY5CJ.js} +22 -22
  170. package/dist/{video-VOCQA6AG.js → video-HFXVZURT.js} +6 -6
  171. package/dist/warmCheck.js +35 -35
  172. package/package.json +2 -2
  173. package/dist/chunk-ZQRD62QZ.js +0 -3901
@@ -15,42 +15,42 @@ import {
15
15
  import "./chunk-6BEFEWFB.js";
16
16
  import {
17
17
  findFFmpeg
18
- } from "./chunk-4R2NWLQL.js";
18
+ } from "./chunk-E7NEF2SC.js";
19
19
  import {
20
20
  serveStaticProjectHtml
21
- } from "./chunk-KVLGJJTE.js";
22
- import "./chunk-2G6JZJAV.js";
21
+ } from "./chunk-MYVC3XTH.js";
22
+ import "./chunk-VAS2EQRM.js";
23
23
  import "./chunk-X7MTZ4T2.js";
24
24
  import "./chunk-XUHOIDKG.js";
25
- import "./chunk-L4BFXWHC.js";
26
- import "./chunk-7Y5RVQQ7.js";
25
+ import "./chunk-XJDMYIUI.js";
26
+ import "./chunk-ZKIHZDNI.js";
27
27
  import "./chunk-6JR2XUEE.js";
28
- import "./chunk-2OYYNKJ4.js";
29
- import "./chunk-OJNNKHAZ.js";
30
- import "./chunk-GJG4CTXD.js";
28
+ import "./chunk-QXPZGDTI.js";
29
+ import "./chunk-PGDWNIOK.js";
30
+ import "./chunk-MK6FWMMF.js";
31
31
  import "./chunk-ALVXFXUG.js";
32
32
  import {
33
33
  openSettledCompositionPage,
34
34
  runFfmpegOnce
35
- } from "./chunk-ES7KSCSO.js";
36
- import "./chunk-WUL5LPI2.js";
35
+ } from "./chunk-PBHFZXYP.js";
36
+ import "./chunk-DMMYNEAF.js";
37
37
  import "./chunk-MOEGCMKI.js";
38
- import "./chunk-YSXCPSJ4.js";
38
+ import "./chunk-TWHNETZP.js";
39
39
  import "./chunk-DKPNNYBZ.js";
40
- import "./chunk-CCZMCX3F.js";
40
+ import "./chunk-I7BLPFXV.js";
41
41
  import "./chunk-K2FLNJVB.js";
42
42
  import "./chunk-EHSBBBR2.js";
43
- import "./chunk-GOOE33GV.js";
43
+ import "./chunk-3VI6DSO6.js";
44
44
  import "./chunk-442JNXRM.js";
45
- import "./chunk-BBXZPDEA.js";
46
- import "./chunk-RAACYYWX.js";
45
+ import "./chunk-GHNIESBY.js";
46
+ import "./chunk-YU22E6SG.js";
47
47
  import "./chunk-XT7X6QCP.js";
48
48
  import "./chunk-4YYJOFKS.js";
49
49
  import "./chunk-HVW7ABXD.js";
50
- import "./chunk-D6XDOYMB.js";
50
+ import "./chunk-I452OMM7.js";
51
51
  import "./chunk-JHOCK3DG.js";
52
- import "./chunk-W4SSWOOD.js";
53
- import "./chunk-HT33OHQL.js";
52
+ import "./chunk-NCSX7WNM.js";
53
+ import "./chunk-LP6SFIWQ.js";
54
54
  import "./chunk-AWDFDFI3.js";
55
55
  import "./chunk-P6LJ4Y32.js";
56
56
  import "./chunk-GMECXFAN.js";
@@ -58,8 +58,8 @@ import "./chunk-FLREUEHW.js";
58
58
  import "./chunk-EOVYQ3IG.js";
59
59
  import {
60
60
  trackCompareSheet
61
- } from "./chunk-ZL6ZCLY6.js";
62
- import "./chunk-KJ6ZQL34.js";
61
+ } from "./chunk-W226NPSC.js";
62
+ import "./chunk-6RNGEUL3.js";
63
63
  import "./chunk-VWG7OQKU.js";
64
64
  import {
65
65
  defineCommand
@@ -74,23 +74,23 @@ import {
74
74
  import "./chunk-KLIKCX6Q.js";
75
75
  import "./chunk-EVMY7IPL.js";
76
76
  import "./chunk-7FMUTGOH.js";
77
- import "./chunk-HJINEUHY.js";
77
+ import "./chunk-WFHA6WC3.js";
78
78
  import "./chunk-IZCW2NKT.js";
79
79
  import {
80
80
  gsapCdnDist
81
- } from "./chunk-E74JMKSK.js";
81
+ } from "./chunk-VKFHSZYS.js";
82
82
  import "./chunk-RQVDTPGD.js";
83
- import "./chunk-VNWX5GBF.js";
83
+ import "./chunk-IYSIQ4GX.js";
84
84
  import {
85
85
  HF_COLOR_GRADING_ATTR,
86
86
  isHfColorGradingActive,
87
87
  normalizeHfColorGrading,
88
88
  parseCubeLut,
89
89
  serializeHfColorGrading
90
- } from "./chunk-ZQRD62QZ.js";
90
+ } from "./chunk-MXT76SSV.js";
91
91
  import "./chunk-VC76R6W2.js";
92
92
  import "./chunk-X7HBSTCZ.js";
93
- import "./chunk-B7RJV74O.js";
93
+ import "./chunk-XOTUPVIF.js";
94
94
  import "./chunk-OFQWTKPW.js";
95
95
  import "./chunk-DPVXBVLL.js";
96
96
  import "./chunk-3GXQPCJC.js";
@@ -114,12 +114,12 @@ import "./chunk-RXATE6FZ.js";
114
114
  import "./chunk-W2LGJSEN.js";
115
115
  import {
116
116
  withMeta
117
- } from "./chunk-ELQ2QQC5.js";
117
+ } from "./chunk-XLVUQGSA.js";
118
118
  import "./chunk-K4WIOZFP.js";
119
119
  import "./chunk-6NLPPKBO.js";
120
120
  import "./chunk-WERLJGIC.js";
121
121
  import "./chunk-ISN5GRYI.js";
122
- import "./chunk-66Q27H72.js";
122
+ import "./chunk-Z43NJYG2.js";
123
123
  import {
124
124
  normalizeErrorMessage
125
125
  } from "./chunk-T2EUWCJE.js";
@@ -511,7 +511,7 @@ async function loadReferenceFrame(framePath) {
511
511
  };
512
512
  }
513
513
  async function captureGradeCompareSheet(projectDir, timeoutMs) {
514
- const { bundleToSingleHtml } = await import("./compiler-FZCJGGBF.js");
514
+ const { bundleToSingleHtml } = await import("./compiler-K7SH7OZQ.js");
515
515
  const html = await bundleToSingleHtml(projectDir);
516
516
  const server = await serveStaticProjectHtml(projectDir, html);
517
517
  const sheetPath = join(projectDir, "grade-compare.png");
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-ZTZA4UWZ.js";
13
13
  import {
14
14
  VERSION
15
- } from "./chunk-66Q27H72.js";
15
+ } from "./chunk-Z43NJYG2.js";
16
16
  import "./chunk-M2WBOQ2Q.js";
17
17
 
18
18
  // src/help.ts
@@ -12,15 +12,15 @@ import {
12
12
  withOwner,
13
13
  withReader,
14
14
  writeTurn
15
- } from "./chunk-SMROKE63.js";
15
+ } from "./chunk-TGHMJIHK.js";
16
16
  import "./chunk-X7MTZ4T2.js";
17
- import "./chunk-ZAVUASNT.js";
17
+ import "./chunk-RP7QRLSK.js";
18
18
  import {
19
19
  HistoryBusyError,
20
20
  HistoryIdError,
21
21
  HistoryRefusedError,
22
22
  START
23
- } from "./chunk-OJNNKHAZ.js";
23
+ } from "./chunk-PGDWNIOK.js";
24
24
  import "./chunk-ALVXFXUG.js";
25
25
  import "./chunk-K2FLNJVB.js";
26
26
  import {
@@ -29,8 +29,8 @@ import {
29
29
  import "./chunk-EOVYQ3IG.js";
30
30
  import {
31
31
  trackHistoryAction
32
- } from "./chunk-ZL6ZCLY6.js";
33
- import "./chunk-KJ6ZQL34.js";
32
+ } from "./chunk-W226NPSC.js";
33
+ import "./chunk-6RNGEUL3.js";
34
34
  import "./chunk-VWG7OQKU.js";
35
35
  import {
36
36
  defineCommand
@@ -49,12 +49,12 @@ import "./chunk-XT6MXC7A.js";
49
49
  import "./chunk-W2LGJSEN.js";
50
50
  import {
51
51
  withMeta
52
- } from "./chunk-ELQ2QQC5.js";
52
+ } from "./chunk-XLVUQGSA.js";
53
53
  import "./chunk-K4WIOZFP.js";
54
54
  import "./chunk-6NLPPKBO.js";
55
55
  import "./chunk-WERLJGIC.js";
56
56
  import "./chunk-ISN5GRYI.js";
57
- import "./chunk-66Q27H72.js";
57
+ import "./chunk-Z43NJYG2.js";
58
58
  import "./chunk-T2EUWCJE.js";
59
59
  import "./chunk-M2WBOQ2Q.js";
60
60
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": "0.1.0",
3
3
  "buildId": "dev",
4
- "sha256": "5325b9ad7580263b1e0a9ad0873c5a768b80a8807731148ebfe84ef585184902",
4
+ "sha256": "76ecb9a94777082e1cb85f468f089ade395649a08149ad8a6795fa3ff6062cc8",
5
5
  "artifacts": {
6
6
  "iife": "hyperframe.runtime.iife.js",
7
7
  "esm": "hyperframe.runtime.mjs"
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var kw=Object.create;var Jl=Object.defineProperty;var Lw=Object.getOwnPropertyDescriptor;var Nw=Object.getOwnPropertyNames;var Fw=Object.getPrototypeOf,Dw=Object.prototype.hasOwnProperty;var Iw=(e,t,n)=>t in e?Jl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Pw=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Nw(t))!Dw.call(e,o)&&o!==n&&Jl(e,o,{get:()=>t[o],enumerable:!(r=Lw(t,o))||r.enumerable});return e};var Ow=(e,t,n)=>(n=e!=null?kw(Fw(e)):{},Pw(t||!e||!e.__esModule?Jl(n,"default",{value:e,enumerable:!0}):n,e));var pe=(e,t,n)=>Iw(e,typeof t!="symbol"?t+"":t,n);var mb=ye((VB,Fc)=>{var de=String,fb=function(){return{isColorSupported:!1,reset:de,bold:de,dim:de,italic:de,underline:de,inverse:de,hidden:de,strikethrough:de,black:de,red:de,green:de,yellow:de,blue:de,magenta:de,cyan:de,white:de,gray:de,bgBlack:de,bgRed:de,bgGreen:de,bgYellow:de,bgBlue:de,bgMagenta:de,bgCyan:de,bgWhite:de,blackBright:de,redBright:de,greenBright:de,yellowBright:de,blueBright:de,magentaBright:de,cyanBright:de,whiteBright:de,bgBlackBright:de,bgRedBright:de,bgGreenBright:de,bgYellowBright:de,bgBlueBright:de,bgMagentaBright:de,bgCyanBright:de,bgWhiteBright:de}};Fc.exports=fb();Fc.exports.createColors=fb});var Dc=ye(()=>{});var gs=ye((zB,gb)=>{"use strict";var pb=mb(),hb=Dc(),ni=class e extends Error{constructor(t,n,r,o,i,a){super(t),this.name="CssSyntaxError",this.reason=t,i&&(this.file=i),o&&(this.source=o),a&&(this.plugin=a),typeof n<"u"&&typeof r<"u"&&(typeof n=="number"?(this.line=n,this.column=r):(this.line=n.line,this.column=n.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,e)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(t){if(!this.source)return"";let n=this.source;t==null&&(t=pb.isColorSupported);let r=d=>d,o=d=>d,i=d=>d;if(t){let{bold:d,gray:f,red:m}=pb.createColors(!0);o=p=>d(m(p)),r=p=>f(p),hb&&(i=p=>hb(p))}let a=n.split(/\r?\n/),l=Math.max(this.line-3,0),s=Math.min(this.line+2,a.length),c=String(s).length;return a.slice(l,s).map((d,f)=>{let m=l+1+f,p=" "+(" "+m).slice(-c)+" | ";if(m===this.line){if(d.length>160){let x=20,y=Math.max(0,this.column-x),v=Math.max(this.column+x,this.endColumn+x),E=d.slice(y,v),w=r(p.replace(/\d/g," "))+d.slice(0,Math.min(this.column-1,x-1)).replace(/[^\t]/g," ");return o(">")+r(p)+i(E)+`
1
+ "use strict";(()=>{var kw=Object.create;var Jl=Object.defineProperty;var Lw=Object.getOwnPropertyDescriptor;var Nw=Object.getOwnPropertyNames;var Fw=Object.getPrototypeOf,Dw=Object.prototype.hasOwnProperty;var Iw=(e,t,n)=>t in e?Jl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var ye=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}};var Pw=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Nw(t))!Dw.call(e,o)&&o!==n&&Jl(e,o,{get:()=>t[o],enumerable:!(r=Lw(t,o))||r.enumerable});return e};var Ow=(e,t,n)=>(n=e!=null?kw(Fw(e)):{},Pw(t||!e||!e.__esModule?Jl(n,"default",{value:e,enumerable:!0}):n,e));var pe=(e,t,n)=>Iw(e,typeof t!="symbol"?t+"":t,n);var mb=ye((VB,Fc)=>{var de=String,fb=function(){return{isColorSupported:!1,reset:de,bold:de,dim:de,italic:de,underline:de,inverse:de,hidden:de,strikethrough:de,black:de,red:de,green:de,yellow:de,blue:de,magenta:de,cyan:de,white:de,gray:de,bgBlack:de,bgRed:de,bgGreen:de,bgYellow:de,bgBlue:de,bgMagenta:de,bgCyan:de,bgWhite:de,blackBright:de,redBright:de,greenBright:de,yellowBright:de,blueBright:de,magentaBright:de,cyanBright:de,whiteBright:de,bgBlackBright:de,bgRedBright:de,bgGreenBright:de,bgYellowBright:de,bgBlueBright:de,bgMagentaBright:de,bgCyanBright:de,bgWhiteBright:de}};Fc.exports=fb();Fc.exports.createColors=fb});var Dc=ye(()=>{});var gs=ye((zB,gb)=>{"use strict";var pb=mb(),hb=Dc(),ni=class e extends Error{constructor(t,n,r,o,i,a){super(t),this.name="CssSyntaxError",this.reason=t,i&&(this.file=i),o&&(this.source=o),a&&(this.plugin=a),typeof n<"u"&&typeof r<"u"&&(typeof n=="number"?(this.line=n,this.column=r):(this.line=n.line,this.column=n.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,e)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(t){if(!this.source)return"";let n=this.source;t==null&&(t=pb.isColorSupported);let r=d=>d,o=d=>d,i=d=>d;if(t){let{bold:d,gray:f,red:m}=pb.createColors(!0);o=p=>d(m(p)),r=p=>f(p),hb&&(i=p=>hb(p))}let a=n.split(/\r?\n/),l=Math.max(this.line-3,0),s=Math.min(this.line+2,a.length),c=String(s).length;return a.slice(l,s).map((d,f)=>{let m=l+1+f,p=" "+(" "+m).slice(-c)+" | ";if(m===this.line){if(d.length>160){let x=20,y=Math.max(0,this.column-x),v=Math.max(this.column+x,this.endColumn+x),E=d.slice(y,v),w=r(p.replace(/\d/g," "))+d.slice(0,Math.min(this.column-1,x-1)).replace(/[^\t]/g," ");return o(">")+r(p)+i(E)+`
2
2
  `+w+o("^")}let b=r(p.replace(/\d/g," "))+d.slice(0,this.column-1).replace(/[^\t]/g," ");return o(">")+r(p)+i(d)+`
3
3
  `+b+o("^")}return" "+r(p)+i(d)}).join(`
4
4
  `)}toString(){let t=this.showSourceCode();return t&&(t=`
@@ -1,4 +1,4 @@
1
- "use strict";var HyperframesPlayer=(()=>{var ze=Object.defineProperty;var ri=Object.getOwnPropertyDescriptor;var oi=Object.getOwnPropertyNames;var ai=Object.prototype.hasOwnProperty;var si=(t,e)=>{for(var n in e)ze(t,n,{get:e[n],enumerable:!0})},ui=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of oi(e))!ai.call(t,r)&&r!==n&&ze(t,r,{get:()=>e[r],enumerable:!(i=ri(e,r))||i.enumerable});return t};var li=t=>ui(ze({},"__esModule",{value:!0}),t);var no={};si(no,{HyperframesPlayer:()=>Ge,SPEED_PRESETS:()=>ct,formatSpeed:()=>U,formatTime:()=>Le});var Pt=t=>t!==null&&Number.isFinite(t)&&t>0;function Se(t){let e=t.clipEndsSeconds.filter(i=>i===null).length;if(Pt(t.authoredDurationSeconds))return{seconds:t.authoredDurationSeconds,source:"authored",pendingClips:e};let n=t.clipEndsSeconds.filter(Pt);return n.length>0?{seconds:Math.max(...n),source:"derived",pendingClips:e}:{seconds:null,source:"unresolved",pendingClips:e,reason:e>0?"every clip's length is still pending":"no authored duration and no clip with a length"}}var di="http://www.w3.org/1999/xhtml";function Nt(t){return t!=null&&t.nodeType===1}function qe(t){return Nt(t)&&t.namespaceURI===di}function je(t,e){return qe(t)&&t.localName===e}function ci(t){return je(t,"video")}function mi(t){return je(t,"audio")}function I(t){return ci(t)||mi(t)}function Ye(t){return je(t,"img")}function Ee(t){if(t==null||t.trim()==="")return null;let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:null}function Te(t=document){let e=t.querySelector('[data-composition-id][data-root="true"]');return qe(e)?e:t.querySelector("[data-composition-id]")}var W=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),uo=Object.freeze([W.start,W.duration,W.trackIndex]),lo=Object.freeze([W.derivedEnd]),co=Object.freeze([W.derivedEnd,W.legacyTrack]);function Xe(t){if(t==null||t.trim()==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}var Lt=t=>{let e=Xe(t);return e!==null&&e>=0?e:null};function Ot(t){return Lt(t("data-playback-start"))??Lt(t("data-media-start"))??0}var Q=.1,ee=10;function Ke(t){return Number.isFinite(t)&&t>0?Math.max(Q,Math.min(ee,t)):1}function Ft(t,e=1){let n=Number.parseFloat(t("data-playback-rate")??"");return Ke(Number.isFinite(n)&&n>0?n:e)}function Je(t){let e=Xe(t("data-duration"));return e!==null&&e>0?e:null}function Vt(t,e){let n=Je(t);if(n!==null)return n;let i=Xe(t("data-end"));return i!==null?i-e:null}var pi=3;function Ze(t,e,n){return Number.isFinite(t)?Math.max(0,t-e)/Ke(n):null}function Qe(t){let{tag:e,authoredDurationSeconds:n,sourceDurationSeconds:i,mediaStartSeconds:r,playbackRate:o}=t;if(n!==null&&n>0)return{seconds:n,source:"authored"};if(e==="img")return{seconds:pi,source:"default"};if(i===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=Ze(i,r,o);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var Ht="data-fx-chain",po=Ht.slice(5);var te=(t="frequency",e="Frequency",n=1e3,i=20,r=2e4)=>({kind:"number",key:t,label:e,unit:"Hz",min:i,max:r,step:1,default:n,scale:"log",automatable:!0}),et=(t=.707,e="Bandwidth: higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:t,scale:"log",automatable:!0,hint:e}),Re=(t=-40,e=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:t,max:e,step:.1,default:n,automatable:!0}),Ut={kind:"enum",key:"poles",label:"Slope",options:[{value:"1",label:"6 dB/oct"},{value:"2",label:"12 dB/oct"}],default:"2",hint:"Two poles is the usual biquad; one pole is gentler."},Wt=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[Re(-60,12,0)],web:"gain-node"},{id:"peaking",label:"Peaking EQ",group:"filter",description:"Boost or cut a band, leaving everything either side alone.",params:[te("frequency","Frequency",1e3),Re(-40,40,0),et(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[te("frequency","Frequency",200,20,2e3),Re(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[te("frequency","Frequency",4e3,500,2e4),Re(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies: the usual fix for rumble on a voice.",params:[te("frequency","Cutoff",300,20,2e4),et(.707),Ut],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies, which darkens or muffles a track.",params:[te("frequency","Cutoff",8e3,100,2e4),et(.707),Ut],web:"biquad-lowpass"},{id:"compressor",label:"Compressor",group:"dynamics",description:"Pull loud parts down so the quiet ones can come up.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-60,max:0,step:.5,default:-24,hint:"Level above which the compressor starts working."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:4},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:2e3,step:.1,default:20,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:250,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83,hint:"1 is a hard corner; higher eases into it."},{kind:"number",key:"makeup",label:"Makeup",unit:"dB",min:0,max:36,step:.1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1,hint:"Below 1 blends the dry signal back in."}],web:"worklet-compressor"},{id:"limiter",label:"Limiter",group:"dynamics",description:"Peak limiter that follows the signal's level. It has no lookahead, so a fast peak or an inter-sample peak can pass the ceiling; use the true-peak limiter for a delivery limit.",params:[{kind:"number",key:"limit",label:"Ceiling",unit:"dB",min:-24,max:0,step:.1,default:-1},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.1,max:80,step:.1,default:5},{kind:"number",key:"release",label:"Release",unit:"ms",min:1,max:8e3,step:1,default:50,scale:"log"},{kind:"number",key:"level_out",label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0}],web:"worklet-limiter"},{id:"truepeak",label:"True-peak limiter",group:"dynamics",description:"Lookahead limiter that holds a 4x estimate of the inter-sample peak at a dBTP ceiling; full-band noise can land up to about 1.7 dB above it. Adds lookahead plus about 0.3 ms of latency.",params:[{kind:"number",key:"ceiling",label:"Ceiling",unit:"dBTP",min:-24,max:0,step:.1,default:-1,hint:"Target true peak, measured on a 4x oversampled signal. Dense full-band sound can end up to about 1.7 dB above it."},{kind:"number",key:"lookahead",label:"Lookahead",unit:"ms",min:.5,max:10,step:.1,default:3,hint:"How far ahead the gain starts falling. Longer is smoother and adds the same latency."},{kind:"number",key:"release",label:"Release",unit:"ms",min:10,max:2e3,step:1,default:80,scale:"log"}],web:"worklet-truepeak"},{id:"gate",label:"Noise Gate",group:"dynamics",description:"Silence the track when it drops below the threshold.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-80,max:0,step:.5,default:-35},{kind:"number",key:"range",label:"Range",unit:"dB",min:-80,max:0,step:.5,default:-24,hint:"How far down the gate pulls when closed."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:10},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:9e3,step:.1,default:1,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:100,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83}],web:"worklet-gate"},{id:"saturate",label:"Saturation",group:"nonlinear",description:"Soft-clip the waveform for warmth or outright distortion.",params:[{kind:"enum",key:"type",label:"Curve",options:[{value:"tanh",label:"Tanh"},{value:"atan",label:"Arctan"},{value:"cubic",label:"Cubic"},{value:"exp",label:"Exponential"},{value:"alg",label:"Algebraic"},{value:"quintic",label:"Quintic"},{value:"sin",label:"Sine"},{value:"erf",label:"Error function"},{value:"hard",label:"Hard clip"}],default:"tanh"},{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-40,max:0,step:.1,default:-6},{kind:"number",key:"output",automatable:!0,label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0},{kind:"number",key:"oversample",label:"Oversample",unit:"x",min:1,max:8,step:1,default:4,hint:"Higher costs more but keeps aliasing down."}],web:"waveshaper"},{id:"bitcrush",label:"Bitcrush",group:"nonlinear",description:"Drop bit depth and sample rate for a lo-fi, digital sound.",params:[{kind:"number",key:"bits",label:"Bit depth",unit:"bit",min:1,max:32,step:.1,default:8},{kind:"number",key:"samples",label:"Sample hold",unit:"x",min:1,max:250,step:1,default:1,hint:"Repeats each sample N times, a crude downsample."},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-bitcrush"},{id:"pitchshift",label:"Pitch shift",group:"time",description:"Shifts pitch up or down without changing playback speed. Adds ~50 ms of latency.",params:[{kind:"number",key:"semitones",label:"Semitones",unit:"st",min:-12,max:12,step:1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-pitchshift"},{id:"delay",label:"Delay",group:"time",description:"Repeating echoes behind the dry signal.",params:[{kind:"number",key:"time",automatable:!0,label:"Time",unit:"ms",min:1,max:5e3,step:1,default:250,scale:"log"},{kind:"number",key:"feedback",automatable:!0,label:"Feedback",unit:"",min:.01,max:.95,step:.01,default:.35},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.4}],web:"delay-feedback"},{id:"chorus",label:"Chorus",group:"time",description:"Detuned copies of the signal for width and thickness.",params:[{kind:"number",key:"delay",automatable:!0,label:"Delay",unit:"ms",min:1,max:100,step:.1,default:7},{kind:"number",key:"depth",automatable:!0,label:"Depth",unit:"ms",min:0,max:10,step:.01,default:2},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.01,max:10,step:.01,default:1},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.5}],web:"chorus-lfo"},{id:"phaser",label:"Phaser",group:"time",description:"Sweeping notches moving through the spectrum.",params:[{kind:"number",key:"in_gain",automatable:!0,label:"Input",unit:"",min:0,max:1,step:.01,default:.4},{kind:"number",key:"out_gain",automatable:!0,label:"Output",unit:"",min:0,max:2,step:.01,default:.74},{kind:"number",key:"delay",label:"Delay",unit:"ms",min:.1,max:5,step:.1,default:3},{kind:"number",key:"decay",label:"Decay",unit:"",min:0,max:.99,step:.01,default:.4},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.1,max:2,step:.01,default:.5},{kind:"enum",key:"type",label:"Waveform",options:[{value:"0",label:"Triangular"},{value:"1",label:"Sinusoidal"}],default:"0"}],web:"allpass-phaser"},{id:"reverb",label:"Reverb",group:"time",description:"Room tail. Both ends convolve the same generated impulse, so preview matches render.",params:[{kind:"number",key:"size",label:"Room size",unit:"",min:.05,max:1,step:.01,default:.7},{kind:"number",key:"damping",label:"Damping",unit:"",min:0,max:1,step:.01,default:.5,hint:"Higher rolls the top off the tail faster."},{kind:"number",key:"wet",automatable:!0,label:"Wet",unit:"",min:0,max:1,step:.01,default:.35},{kind:"number",key:"dry",automatable:!0,label:"Dry",unit:"",min:0,max:1,step:.01,default:.7}],web:"convolver"}],fo=new Map(Wt.map(t=>[t.id,t]));var ho=Wt.map(t=>t.id);function fi(t){return 10**(t/20)}var $t=fi(12);var nt="data-automation",To=nt.slice(5),tt=1,bi=512,D=class extends Error{constructor(e){super(e),this.name="AudioAutomationError"}},we="volume",xe="rate";function Gt(t){if(t===we)return{kind:"volume"};if(t===xe)return{kind:"rate"};let e=t.split(".");if(e.length===3&&e[0]==="fx"&&e[1]===gi){let r=e[2];return r?{kind:"preset",presetId:r}:null}if(e.length!==3||e[0]!=="fx")return null;let[,n,i]=e;return!n||!i?null:{kind:"fx",nodeId:n,param:i}}var gi="preset";var _i={min:0,max:$t,step:.01,unit:"",label:"Volume",scale:"linear",default:1};var yi={min:Q,max:ee,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function ne(t){if(typeof t=="number")return Number.isFinite(t)?t:null;if(typeof t=="string"&&t.trim()!==""){let e=Number(t);return Number.isFinite(e)?e:null}return null}function vi(t){let e=ne(t);return e===null||e===0?0:Math.min(1,Math.max(-1,e))}function zt(t,e){let n=ne(t),i=ne(e);if(n===null||i===null)return null;let r=s=>Math.min(.999,Math.max(.001,s)),o=r(n),a=r(i);return Math.abs(o-a)<1e-6?null:{x:o,y:a}}function Ai(t){let e=vi(t?.curve),n=zt(t?.viaX,t?.viaY);return{...e?{curve:e}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function Si(t,e){let n=ne(t?.t),i=ne(t?.v);if(n===null||i===null)return null;let r=e?Math.min(e.max,Math.max(e.min,i)):i;return{t:Math.max(0,n),v:r,...Ai(t)}}function Ei(t,e){let n=t.map(r=>Si(r,e)).filter(r=>r!==null).sort((r,o)=>r.t-o.t),i=[];for(let r of n)i.length>0&&i[i.length-1].t===r.t?i[i.length-1]=r:i.push(r);return i.slice(0,bi)}function Ti(t){let e=[];for(let n of t.lanes){if(!Gt(n.target))continue;let i=n.target===we?_i:n.target===xe?yi:null,r=Ei(n.points??[],i);r.length>0&&e.push({target:n.target,points:r})}return{version:tt,lanes:e}}function qt(t){let e;try{e=JSON.parse(t)}catch(r){throw new D(`Automation is not valid JSON: ${r.message}`)}if(typeof e!="object"||e===null)throw new D("Automation must be a JSON object.");let n=e;if(n.version!==tt)throw new D(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new D("Automation is missing a `lanes` array.");let i=n.lanes.map((r,o)=>{if(typeof r!="object"||r===null)throw new D(`Lane ${o} is not an object.`);let a=r;if(typeof a.target!="string"||!Gt(a.target))throw new D(`Lane ${o} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new D(`Lane ${o} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return Ti({version:tt,lanes:i})}function Ri(t,e){return e?Math.pow(t,Math.pow(2,2*e)):t}function wi(t,e){let n=t-.5,i=e-.5,r=.999,o=1e6,a=n>0?n/(r-t):n<0?-n/(t-(1-r)):0,s=i>0?i/(r-e):i<0?-i/(e-(1-r)):0,u=Math.min(o,Math.max(1,a,s));return{cx:t+n/u,cy:e+i/u,w:u}}function xi(t,e,n){let{cx:i,cy:r,w:o}=wi(e,n),a=2-2*o,s=t*a-1+2*o*i,u=-t*a-2*o*i,c=ki(s,u,t),m=1-c,b=m*m+2*o*c*m+c*c;return b>0?(2*o*r*c*m+c*c)/b:t}function ki(t,e,n){if(Math.abs(t)<1e-12)return Math.abs(e)<1e-12?n:-n/e;let i=Math.sqrt(Math.max(0,e*e-4*t*n)),r=(-e+i)/(2*t),o=(-e-i)/(2*t),a=s=>s>=-1e-9&&s<=1+1e-9;return a(r)?Math.min(1,Math.max(0,r)):a(o)?Math.min(1,Math.max(0,o)):n}function Mi(t,e){let n=zt(e.viaX,e.viaY);return n?xi(Math.min(1,Math.max(0,t)),n.x,n.y):Ri(t,e.curve)}function Ii(t,e,n,i){return i==="log"&&t>0&&e>0?Math.exp(Math.log(t)+(Math.log(e)-Math.log(t))*n):t+(e-t)*n}function ke(t,e,n="linear"){let i=t.points;if(i.length===0)return 0;let r=i[0];if(e<=r.t)return r.v;let o=i[i.length-1];if(e>=o.t)return o.v;let a=0,s=i.length-1;for(;s-a>1;){let b=a+s>>1;i[b].t<=e?a=b:s=b}let u=i[a],c=i[s],m=c.t-u.t;return m<=0?c.v:Ii(u.v,c.v,Mi((e-u.t)/m,u),n)}var Me=new Map,Di=64;function jt(t,e=we){let n=`${e}\0${t}`,i=Me.get(n);if(i!==void 0)return i;let r=null;try{r=qt(t).lanes.find(o=>o.target===e)??null}catch{r=null}return Me.size>Di&&Me.clear(),Me.set(n,r),r}var Yt=48,Xt=new WeakMap;function Ci(t){let e=t.points,n=e[0].v,i=e[e.length-1].v,r=[0],o=[0],a=u=>{let c=r[r.length-1];if(u<=c)return;let m=ke(t,c,"log");r.push(u),o.push(o[o.length-1]+(m+ke(t,u,"log"))/2*(u-c))},s=Math.max(0,e[0].t);a(s);for(let u=1;u<e.length;u+=1){let c=e[u-1].t,m=e[u].t;if(!(m<=0))for(let b=1;b<=Yt;b+=1)a(Math.max(c,0)+(m-c)*b/Yt)}return{ts:Float64Array.from(r),ss:Float64Array.from(o),firstRate:n,lastRate:i}}function Pi(t){let e=Xt.get(t);return e||(e=Ci(t),Xt.set(t,e)),e}function Ni(t){return typeof t!="number"&&t.points.length>0}function Li(t,e,n){let i=0,r=t.length-1;for(;r-i>1;){let o=i+r>>1;t[o]<=n?i=o:r=o}return e[i]+(e[r]-e[i])*(n-t[i])/(t[r]-t[i])}function it(t,e){if(typeof t=="number")return e/t;if(!Ni(t))return e;let{ts:n,ss:i,firstRate:r,lastRate:o}=Pi(t),a=n.length-1;return e<=0?e/r:e>=i[a]?n[a]+(e-i[a])/o:Li(i,n,e)}function Oi(t){return t?jt(t,xe):null}function Kt(t,e){return Oi(t)??e}var Do=[{id:"montage",label:"Montage",points:[[0,.9],[.15,.3],[.5,2.5],[.85,.3],[1,.9]]},{id:"hero",label:"Hero",points:[[0,1],[.25,1.6],[.5,.25],[.75,1.6],[1,1]]},{id:"bullet",label:"Bullet",points:[[0,3],[.4,3],[.5,.15],[.6,3],[1,3]]},{id:"jump-cut",label:"Jump cut",points:[[0,.5],[.24,.5],[.26,3],[.5,3],[.52,.5],[.74,.5],[.76,3],[1,3]]},{id:"flash-in",label:"Flash in",points:[[0,.3],[.6,.6],[1,5]]},{id:"flash-out",label:"Flash out",points:[[0,5],[.4,.6],[1,.3]]},{id:"ramp-in",label:"Ramp in",points:[[0,.5],[1,1]]},{id:"ramp-out",label:"Ramp out",points:[[0,1],[1,.5]]},{id:"slowmo-middle",label:"Slow-mo middle",points:[[0,1],[1/3,.35],[2/3,.35],[1,1]]}];var y=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),Po=Object.freeze([y.start,y.duration,y.trackIndex]),No=Object.freeze([y.derivedEnd]),Lo=Object.freeze([y.derivedEnd,y.legacyTrack]);function C(t){if(t==null||t.trim()==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}var Qt=/^[A-Za-z0-9_.:-]+$/;function en(t,e){let n=t.charCodeAt(e);return n>=48&&n<=57}function Jt(t,e){let n=e;for(;n>=0&&en(t,n);)n--;return n}function Fi(t,e){let n=e;for(;n>=0&&(t[n]??"").trim()==="";)n--;return n}function Vi(t){let e=t.length-1;if(!en(t,e))return null;let n=Jt(t,e);return t[n]==="."&&(n=Jt(t,n-1)),n+1}function Ui(t){let e=Vi(t);if(e==null)return null;let n=Fi(t,e-1),i=t[n];if(i!=="+"&&i!=="-")return null;let r=t.slice(0,n).trim();if(!Qt.test(r))return null;let o=Number(t.slice(e));return Number.isFinite(o)?{refId:r,operator:i,magnitude:o}:null}function ie(t){let e=(t??"").trim();if(!e)return null;let n=C(e);if(n!=null)return{kind:"absolute",value:n};if(Qt.test(e))return{kind:"reference",refId:e,offset:0};let i=Ui(e);return i?{kind:"reference",refId:i.refId,offset:i.operator==="-"?-i.magnitude:i.magnitude}:null}function w(t,e,n,i){t.push({code:e,attribute:n,value:i})}function Hi(t,e,n,i){if(e==null||e.trim()==="")return n.defaultStart===void 0?0:n.defaultStart;if(!t)return w(i,"invalid-start",y.start,e),null;if(t.kind==="absolute")return Math.max(0,t.value);let r=n.resolveReferenceEnd?.(t.refId);return r==null||!Number.isFinite(r)?(w(i,"unresolved-start-reference",y.start,e),null):Math.max(0,r+t.offset)}var Wi=1e-9;function $i(t,e){return Math.abs(t-e)<=Wi}function Bi(t,e,n){let i=C(t);if(i==null){w(n,"deprecated-end",y.derivedEnd,t),w(n,"invalid-end",y.derivedEnd,t);return}if(e==null){w(n,"deprecated-end",y.derivedEnd,t);return}$i(i,e)||(w(n,"deprecated-end",y.derivedEnd,t),w(n,"conflicting-end",y.derivedEnd,t))}function Gi(t,e,n){let i=C(t);return i==null||i<0?(w(n,"invalid-duration",y.duration,t),{duration:null,end:null,durationSource:"invalid"}):{duration:i,end:e==null?null:e+i,durationSource:"duration"}}function zi(t,e,n){w(n,"deprecated-end",y.derivedEnd,t);let i=C(t);return i==null?(w(n,"invalid-end",y.derivedEnd,t),{duration:null,end:null,durationSource:"invalid"}):e==null?{duration:null,end:i,durationSource:"legacy-end"}:i<e?(w(n,"end-before-start",y.derivedEnd,t),{duration:null,end:null,durationSource:"invalid"}):{duration:i-e,end:i,durationSource:"legacy-end"}}function qi(t,e,n){let i=t.getAttribute(y.duration),r=t.getAttribute(y.derivedEnd);if(i==null)return r==null?{duration:null,end:null,durationSource:"missing"}:zi(r,e,n);let o=Gi(i,e,n);return r!=null&&Bi(r,o.end,n),o}function Zt(t,e,n,i){let r=C(t);return r==null||!Number.isInteger(r)?(w(i,"invalid-track-index",e,t),{trackIndex:0,trackSource:"invalid"}):{trackIndex:r,trackSource:n}}function ji(t,e){let n=t.getAttribute(y.trackIndex),i=t.getAttribute(y.legacyTrack);if(n==null&&i==null)return{trackIndex:0,trackSource:"default"};if(n==null&&i!=null)return w(e,"deprecated-layer",y.legacyTrack,i),Zt(i,y.legacyTrack,"legacy-layer",e);let r=Zt(n??"",y.trackIndex,"track-index",e);if(i==null)return r;w(e,"deprecated-layer",y.legacyTrack,i);let o=C(i);return o!=null&&o!==r.trackIndex&&w(e,"conflicting-layer",y.legacyTrack,i),r}function rt(t,e={}){let n=[],i=t.getAttribute(y.start),r=ie(i),o=Hi(r,i,e,n),a=qi(t,o,n),s=ji(t,n);return{startExpression:r,start:o,...a,...s,diagnostics:n}}function P(t){return C(t)}function re(t){return Ft(e=>t.getAttribute(e),I(t)?t.defaultPlaybackRate:1)}function ot(t){return Kt(t.getAttribute("data-automation"),re(t))}function Ie(t){return Ot(e=>t.getAttribute(e))}function $(t,e){return Yi(e,Ie(t),ot(t))}function at(t){let e=Qe({tag:"video",authoredDurationSeconds:Je(n=>t.getAttribute(n)),sourceDurationSeconds:Number.isFinite(t.duration)?t.duration:null,mediaStartSeconds:Ie(t),playbackRate:re(t)});return e.source==="media"?$(t,t.duration):e.seconds}function De(t,e=0){return!Ye(t)||!t.hasAttribute("data-start")&&!t.hasAttribute("data-track-index")?null:Qe({tag:"img",authoredDurationSeconds:Vt(n=>t.getAttribute(n),e),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function Yi(t,e,n){return typeof n=="number"?Ze(t,e,n):Number.isFinite(t)?it(n,Math.max(0,t-e)):null}function tn(){return globalThis}function B(t,e){if(typeof window>"u")return;let n=tn(),i=n.__hf?.onSwallowed;if(i)try{i({label:t,error:e})}catch(r){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${t} swallowed:`,e)}var Xi=t=>t.paused?.()===!0?(t.startTime?.()??0)+(t.totalDuration?.()??0)/Math.abs(t.timeScale?.()||1):0;function oe(t){try{if(typeof t?.duration!="function")return null;let e=t.getChildren?.(!1,!1,!0),n=Array.isArray(e)?e:[],i=Math.max(Number(t.duration()),...n.map(Xi));return Number.isFinite(i)?i:null}catch(e){return B("runtime.timelineDuration",e),null}}var nn="data-hf-authored-duration",rn="data-hf-authored-end";function ae(t){if(t==null||typeof t=="string"&&t.trim()==="")return null;let e=typeof t=="number"?t:Number(t);return Number.isFinite(e)?e:null}function Ce(t){let e=ae(t.start);if(e==null)return null;let n=Math.max(0,e),i=ae(t.duration),r=ae(t.authoredDuration),o=i!=null&&i>0?i:r!=null&&r>0?r:null;if(o!=null)return{start:n,duration:o,end:n+o};let a=ae(t.end),s=ae(t.authoredEnd),u=a!=null&&a>n?a:s!=null&&s>n?s:null;return{start:n,duration:u==null?null:u-n,end:u}}var G=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),Ko=Object.freeze([G.start,G.duration,G.trackIndex]),Jo=Object.freeze([G.derivedEnd]),Zo=Object.freeze([G.derivedEnd,G.legacyTrack]);function Ki(t){if(t==null||t.trim()==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}var on=t=>{let e=Ki(t);return e!==null&&e>=0?e:null};function Ji(t){return on(t("data-playback-start"))??on(t("data-media-start"))??0}var an="data-hf-media-start-basis";function sn(t){return t?.trim().toLowerCase()==="global"?"global":"local"}function Zi(t){return sn(t.basis)==="global"?t.authoredStart:t.hostStart+t.authoredStart}function un(t){return dn(t)?Zi({authoredStart:t.authoredStart,hostStart:t.hostStart,basis:t.basis}):t.ordinaryStart()}function ln(t){return dn(t)&&sn(t.basis)==="global"}function dn(t){return!t.hasAutoStart&&t.authoredStart!=null&&t.hostStart!==0}function st(t){return Ji(e=>t.getAttribute(e))}function cn(t,e){return t-st(e)}function V(t){let e=t.timelineRegistry??{},n=t.includeAuthoredTimingAttrs??!1,i=t.documentRef??document,r=new WeakMap,o=new WeakMap,a=new Set,s=l=>(l.hasAttribute("data-composition-id")?l.parentElement:l)?.closest("[data-composition-id]")??null,u=(l,f)=>{let _=s(f);if(_){for(let k of _.querySelectorAll(`[id="${l}"]`))if(s(k)===_)return k}let R=i.getElementById(l);return R||(Array.from(i.querySelectorAll("[data-composition-id]")).find(k=>k.getAttribute("data-composition-id")===l)??null)},c=(l,f)=>n?l.getAttribute(f):null,m=l=>Ce({start:0,duration:l.getAttribute("data-duration"),authoredDuration:c(l,"data-hf-authored-duration")})?.duration??Ce({start:T(l,0),end:l.getAttribute("data-end"),authoredEnd:c(l,"data-hf-authored-end")})?.duration??null,b=l=>l!=null&&Number.isFinite(l)&&l>0?l:null,v=l=>{let f=l.getAttribute("data-composition-id");return f?b(oe(e[f])):null},g=l=>{let f=o.get(l);if(f!==void 0)return f;let _=m(l)??b(I(l)?$(l,l.duration):null)??b(De(l))??v(l);return o.set(l,_),_},A=l=>l.hasAttribute("data-composition-src")||l.hasAttribute("data-composition-id")||l.hasAttribute("data-composition-file"),h=l=>{let f=l.parentElement;return!f||!l.hasAttribute("data-composition-id")||ie(l.getAttribute("data-start"))?null:A(f)?f:null},E=(l,f)=>cn(T(l,f),h(l)??l),M=(l,f)=>{let _=l.hasAttribute("data-composition-id")?l.parentElement?.closest("[data-composition-id]"):l.closest("[data-composition-id]");return _?E(_,f):0},N=(l,f)=>{let _=ie(l.getAttribute("data-start"));if(!_){let Z=h(l);return Z?T(Z,f):f}if(_.kind==="absolute")return M(l,f)+Math.max(0,_.value);let R=u(_.refId,l);if(!R)return f;let k=T(R,0),_e=g(R)??0,ye=Math.min(0,M(l,0));return Math.max(ye,k+_e+_.offset)},T=(l,f)=>{let _=r.get(l);if(_!==void 0)return _??f;if(a.has(l))return f;a.add(l);try{let R=N(l,f);return r.set(l,R),R}finally{a.delete(l)}},L=l=>{let f=l.closest("[data-composition-id]");return{authoredStart:P(l.getAttribute("data-start")),hostStart:f?E(f,0):0,hasAutoStart:l.hasAttribute("data-hf-auto-start"),basis:l.getAttribute(an)}};return{resolveStartForElement:(l,f=0)=>T(l,Math.max(0,f)),resolveDurationForElement:l=>g(l),resolveMediaStartForElement:l=>{let f=L(l);return un({...f,ordinaryStart:()=>T(l,f.hostStart)})},resolveHostStartForElement:l=>M(l,0),resolveHostSlotsForElement:l=>{let f=[];for(let _=l.parentElement;_;_=_.parentElement){if(!A(_)||h(_)||st(_)<=0)continue;let R=T(_,0),k=m(_);f.push({start:R,end:k?R+k:1/0})}return f},isRootGlobalMediaStartForElement:l=>I(l)&&ln(L(l))}}function mn(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],injectedCompLinks:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}var pn=7200,ut=1/60,se=t=>t!==null&&t>ut?t:null;function Qi(t){return{width:Ee(t.getAttribute("data-width")),height:Ee(t.getAttribute("data-height"))}}function er(t,e){let n=[];for(let i of t.querySelectorAll("video[data-start], audio[data-start]")){let r=e.mediaStart(i);if(!Number.isFinite(r))continue;let o=e.mediaDuration(i);o==null||o<=ut||n.push(Math.max(0,r)+o)}return se(Se({authoredDurationSeconds:null,clipEndsSeconds:n}).seconds)}function tr(t,e){let n=[];for(let r of t.querySelectorAll("[data-composition-id][data-start]")){if(r.parentElement?.closest("[data-composition-id]")!==t)continue;let o=e.resolveStartForElement(r,0),a=e.resolveDurationForElement(r);!Number.isFinite(o)||a==null||a<=0||n.push(Math.max(0,o)+a)}let i=P(t.getAttribute("data-duration"));return se(Se({authoredDurationSeconds:null,clipEndsSeconds:[i,...n]}).seconds)}var nr=t=>t.hasAttribute("data-composition-id")||t.hasAttribute("data-composition-src");function ir(t,e,{unregisteredLottie:n}){let i=[];for(let o of t.querySelectorAll("[data-start]")){let a=e.resolveStartForElement(o,0);if(!Number.isFinite(a))continue;let s=e.resolveDurationForElement(o);s!=null?i.push(Math.max(0,a)+s):(I(o)||nr(o))&&i.push(null)}(n||t.querySelector("[data-lottie-src]"))&&i.push(null);let r=Se({authoredDurationSeconds:null,clipEndsSeconds:i});return r.pendingClips>0?{...r,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:r}function rr(t){if(t.declared!==null&&Number.isFinite(t.declared)&&t.declared>0)return t.declared;let e=se(t.timeline()),n=Math.max(0,...t.floors().map(u=>u??0)),i=Number.isFinite(t.fallback)&&t.fallback>ut?t.fallback:0,r=Math.max(n,i),a=e!==null&&e>=pn&&se(r)!==null?null:e,s;return a!==null?s=Math.max(a,r):se(n)!==null?s=r:i>0?s=i:s=t.derived(),s>0?s:0}function fn(t){let e=Te(t);if(!e)return null;let n=V({timelineRegistry:{},includeAuthoredTimingAttrs:!0,documentRef:t}),i=rr({declared:P(e.getAttribute("data-duration")),timeline:()=>null,floors:()=>[er(t,{mediaStart:n.resolveMediaStartForElement,mediaDuration:at}),tr(e,n)],fallback:0,derived:()=>ir(e,n,{unregisteredLottie:!1}).seconds??0});return{...Qi(e),fps:mn().canonicalFps,durationSeconds:i}}var Pe="hyperframes-studio-preview";var hn="data-hf-upcoming";var bn="__hfPreviewErrors";var gn="data-hf-autostamped";function _n(t){return t.hasRuntime||t.runtimeInjected?!1:!!(t.hasNestedCompositions||t.hasTimelines&&t.attempts>=5)}function z(t){return typeof t=="object"&&t!==null}function yn(t){return z(t)&&typeof t.getDuration=="function"}function vn(t){return z(t)&&typeof t.duration=="function"&&typeof t.time=="function"&&typeof t.seek=="function"&&typeof t.play=="function"&&typeof t.pause=="function"}var q="https://cdn.jsdelivr.net/npm/@hyperframes/core@0.8.195/dist/hyperframe.runtime.iife.js";function ue(t){if(t===null)return null;let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:null}function or(t){let e=t?.querySelector("[data-composition-id][data-width][data-height]")??t?.querySelector("[data-width][data-height]");if(!e)return null;let n=ue(e.getAttribute("data-width")),i=ue(e.getAttribute("data-height"));return n!==null&&i!==null?{width:n,height:i}:null}function ar(t){return Array.isArray(t)?t.find(e=>typeof e=="string"&&e.trim()!==""&&e!=="[object Event]")??null:null}var Ne=class{constructor(e,n){this._iframe=e;this._callbacks=n}_iframe;_callbacks;_interval=null;_runtimeInjected=!1;_runtimeScript=null;_failure=null;get failed(){return this._failure!==null&&this._failure.document===this._iframe.contentDocument}get runtimeInjected(){return this._runtimeInjected}start(){this.stop(),this._failure=null,this._runtimeInjected=!1;let e=0;this._interval=setInterval(()=>{e++;let n=null;try{n=this._poll(e)}catch(i){i instanceof DOMException&&i.name==="SecurityError"||(n={kind:"error",message:i instanceof Error?i.message:String(i)})}n??=this._deadlineOutcome(e),n&&(this.stop(),n.kind==="error"?(this._failure={document:this._iframe.contentDocument},this._callbacks.onError(n.message)):this._callbacks.onReady(n.result))},200)}_deadlineOutcome(e){return e<40||this._callbacks.hostOwnsDeadline?.()?null:{kind:"error",message:"Composition timeline not found after 8s"}}_poll(e){let n=this._iframe.contentWindow;if(!n)return null;let i=ar(Reflect.get(n,bn));if(i!==null)return{kind:"error",message:i};let r=this._iframe.contentDocument,o=Reflect.get(n,"__timelines"),a=this.hasRuntimeBridge(n);if(_n({hasRuntime:a,hasTimelines:z(o)&&Object.keys(o).length>0,hasNestedCompositions:!!r?.querySelector("[data-composition-src]"),runtimeInjected:this._runtimeInjected,attempts:e}))return this._injectRuntime(),null;if(this._runtimeInjected&&!a)return null;let s=this._resolveReadyResult(n,r);return s?{kind:"ready",result:s}:null}_resolveReadyResult(e,n){let i=this._resolvePlaybackDurationAdapter(e)??{kind:"document",getDuration:()=>0},r=i.getDuration();if(!Number.isFinite(r)||r<=0){if(i.kind==="direct-timeline")return null;r=n?fn(n)?.durationSeconds??0:0}return r<=0?null:{duration:r,adapter:{...i,getDuration:()=>r},compositionSize:or(n)}}stop(){this._runtimeScript&&(this._runtimeScript.onerror=null,this._runtimeScript=null),this.failed||(this._failure=null),this._interval!==null&&(clearInterval(this._interval),this._interval=null)}resolveDirectTimelineAdapter(){try{let e=this._iframe.contentWindow;return e?this._resolveDirectTimelineAdapterFromWindow(e):null}catch{return null}}resolveDirectTimelineAdapterFromWindow(e){return this._resolveDirectTimelineAdapterFromWindow(e)}hasRuntimeBridge(e){return z(Reflect.get(e,"__player"))}_injectRuntime(){this._runtimeInjected=!0;try{let e=this._iframe.contentDocument;if(!e)return;let n=e.createElement("script");n.src=this._callbacks.resolveRuntimeUrl?.()??q,this._runtimeScript=n,n.onerror=()=>{this._runtimeScript!==n||this._iframe.contentDocument!==e||(this.stop(),this._failure={document:e},this._callbacks.onError("HyperFrames runtime failed to load from "+n.src))},(e.head||e.documentElement).appendChild(n),this._callbacks.onRuntimeInjected?.()}catch{}}_resolveDirectTimelineAdapterFromWindow(e){if(this.hasRuntimeBridge(e))return null;let n=Reflect.get(e,"__timelines");if(!z(n))return null;let i=Object.keys(n);if(i.length===0)return null;let r=this._iframe.contentDocument?.querySelector("[data-composition-id]")?.getAttribute("data-composition-id"),o=r&&r in n?r:i[i.length-1],a=n[o];return vn(a)?a:null}_resolvePlaybackDurationAdapter(e){let n=Reflect.get(e,"__player");if(yn(n))return{kind:"runtime",getDuration:()=>n.getDuration()};let i=this._resolveDirectTimelineAdapterFromWindow(e);return i?{kind:"direct-timeline",timeline:i,getDuration:()=>i.duration()}:null}};var An=`
1
+ "use strict";var HyperframesPlayer=(()=>{var ze=Object.defineProperty;var ri=Object.getOwnPropertyDescriptor;var oi=Object.getOwnPropertyNames;var ai=Object.prototype.hasOwnProperty;var si=(t,e)=>{for(var n in e)ze(t,n,{get:e[n],enumerable:!0})},ui=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of oi(e))!ai.call(t,r)&&r!==n&&ze(t,r,{get:()=>e[r],enumerable:!(i=ri(e,r))||i.enumerable});return t};var li=t=>ui(ze({},"__esModule",{value:!0}),t);var no={};si(no,{HyperframesPlayer:()=>Ge,SPEED_PRESETS:()=>ct,formatSpeed:()=>U,formatTime:()=>Le});var Pt=t=>t!==null&&Number.isFinite(t)&&t>0;function Se(t){let e=t.clipEndsSeconds.filter(i=>i===null).length;if(Pt(t.authoredDurationSeconds))return{seconds:t.authoredDurationSeconds,source:"authored",pendingClips:e};let n=t.clipEndsSeconds.filter(Pt);return n.length>0?{seconds:Math.max(...n),source:"derived",pendingClips:e}:{seconds:null,source:"unresolved",pendingClips:e,reason:e>0?"every clip's length is still pending":"no authored duration and no clip with a length"}}var di="http://www.w3.org/1999/xhtml";function Nt(t){return t!=null&&t.nodeType===1}function qe(t){return Nt(t)&&t.namespaceURI===di}function je(t,e){return qe(t)&&t.localName===e}function ci(t){return je(t,"video")}function mi(t){return je(t,"audio")}function I(t){return ci(t)||mi(t)}function Ye(t){return je(t,"img")}function Ee(t){if(t==null||t.trim()==="")return null;let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:null}function Te(t=document){let e=t.querySelector('[data-composition-id][data-root="true"]');return qe(e)?e:t.querySelector("[data-composition-id]")}var W=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),uo=Object.freeze([W.start,W.duration,W.trackIndex]),lo=Object.freeze([W.derivedEnd]),co=Object.freeze([W.derivedEnd,W.legacyTrack]);function Xe(t){if(t==null||t.trim()==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}var Lt=t=>{let e=Xe(t);return e!==null&&e>=0?e:null};function Ot(t){return Lt(t("data-playback-start"))??Lt(t("data-media-start"))??0}var Q=.1,ee=10;function Ke(t){return Number.isFinite(t)&&t>0?Math.max(Q,Math.min(ee,t)):1}function Ft(t,e=1){let n=Number.parseFloat(t("data-playback-rate")??"");return Ke(Number.isFinite(n)&&n>0?n:e)}function Je(t){let e=Xe(t("data-duration"));return e!==null&&e>0?e:null}function Vt(t,e){let n=Je(t);if(n!==null)return n;let i=Xe(t("data-end"));return i!==null?i-e:null}var pi=3;function Ze(t,e,n){return Number.isFinite(t)?Math.max(0,t-e)/Ke(n):null}function Qe(t){let{tag:e,authoredDurationSeconds:n,sourceDurationSeconds:i,mediaStartSeconds:r,playbackRate:o}=t;if(n!==null&&n>0)return{seconds:n,source:"authored"};if(e==="img")return{seconds:pi,source:"default"};if(i===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=Ze(i,r,o);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var Ht="data-fx-chain",po=Ht.slice(5);var te=(t="frequency",e="Frequency",n=1e3,i=20,r=2e4)=>({kind:"number",key:t,label:e,unit:"Hz",min:i,max:r,step:1,default:n,scale:"log",automatable:!0}),et=(t=.707,e="Bandwidth: higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:t,scale:"log",automatable:!0,hint:e}),Re=(t=-40,e=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:t,max:e,step:.1,default:n,automatable:!0}),Ut={kind:"enum",key:"poles",label:"Slope",options:[{value:"1",label:"6 dB/oct"},{value:"2",label:"12 dB/oct"}],default:"2",hint:"Two poles is the usual biquad; one pole is gentler."},Wt=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[Re(-60,12,0)],web:"gain-node"},{id:"peaking",label:"Peaking EQ",group:"filter",description:"Boost or cut a band, leaving everything either side alone.",params:[te("frequency","Frequency",1e3),Re(-40,40,0),et(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[te("frequency","Frequency",200,20,2e3),Re(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[te("frequency","Frequency",4e3,500,2e4),Re(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies: the usual fix for rumble on a voice.",params:[te("frequency","Cutoff",300,20,2e4),et(.707),Ut],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies, which darkens or muffles a track.",params:[te("frequency","Cutoff",8e3,100,2e4),et(.707),Ut],web:"biquad-lowpass"},{id:"compressor",label:"Compressor",group:"dynamics",description:"Pull loud parts down so the quiet ones can come up.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-60,max:0,step:.5,default:-24,hint:"Level above which the compressor starts working."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:4},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:2e3,step:.1,default:20,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:250,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83,hint:"1 is a hard corner; higher eases into it."},{kind:"number",key:"makeup",label:"Makeup",unit:"dB",min:0,max:36,step:.1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1,hint:"Below 1 blends the dry signal back in."}],web:"worklet-compressor"},{id:"limiter",label:"Limiter",group:"dynamics",description:"Peak limiter that follows the signal's level. It has no lookahead, so a fast peak or an inter-sample peak can pass the ceiling; use the true-peak limiter for a delivery limit.",params:[{kind:"number",key:"limit",label:"Ceiling",unit:"dB",min:-24,max:0,step:.1,default:-1},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.1,max:80,step:.1,default:5},{kind:"number",key:"release",label:"Release",unit:"ms",min:1,max:8e3,step:1,default:50,scale:"log"},{kind:"number",key:"level_out",label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0}],web:"worklet-limiter"},{id:"truepeak",label:"True-peak limiter",group:"dynamics",description:"Lookahead limiter that holds a 4x estimate of the inter-sample peak at a dBTP ceiling; full-band noise can land up to about 1.7 dB above it. Adds lookahead plus about 0.3 ms of latency.",params:[{kind:"number",key:"ceiling",label:"Ceiling",unit:"dBTP",min:-24,max:0,step:.1,default:-1,hint:"Target true peak, measured on a 4x oversampled signal. Dense full-band sound can end up to about 1.7 dB above it."},{kind:"number",key:"lookahead",label:"Lookahead",unit:"ms",min:.5,max:10,step:.1,default:3,hint:"How far ahead the gain starts falling. Longer is smoother and adds the same latency."},{kind:"number",key:"release",label:"Release",unit:"ms",min:10,max:2e3,step:1,default:80,scale:"log"}],web:"worklet-truepeak"},{id:"gate",label:"Noise Gate",group:"dynamics",description:"Silence the track when it drops below the threshold.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-80,max:0,step:.5,default:-35},{kind:"number",key:"range",label:"Range",unit:"dB",min:-80,max:0,step:.5,default:-24,hint:"How far down the gate pulls when closed."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:10},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:9e3,step:.1,default:1,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:100,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83}],web:"worklet-gate"},{id:"saturate",label:"Saturation",group:"nonlinear",description:"Soft-clip the waveform for warmth or outright distortion.",params:[{kind:"enum",key:"type",label:"Curve",options:[{value:"tanh",label:"Tanh"},{value:"atan",label:"Arctan"},{value:"cubic",label:"Cubic"},{value:"exp",label:"Exponential"},{value:"alg",label:"Algebraic"},{value:"quintic",label:"Quintic"},{value:"sin",label:"Sine"},{value:"erf",label:"Error function"},{value:"hard",label:"Hard clip"}],default:"tanh"},{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-40,max:0,step:.1,default:-6},{kind:"number",key:"output",automatable:!0,label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0},{kind:"number",key:"oversample",label:"Oversample",unit:"x",min:1,max:8,step:1,default:4,hint:"Higher costs more but keeps aliasing down."}],web:"waveshaper"},{id:"bitcrush",label:"Bitcrush",group:"nonlinear",description:"Drop bit depth and sample rate for a lo-fi, digital sound.",params:[{kind:"number",key:"bits",label:"Bit depth",unit:"bit",min:1,max:32,step:.1,default:8},{kind:"number",key:"samples",label:"Sample hold",unit:"x",min:1,max:250,step:1,default:1,hint:"Repeats each sample N times, a crude downsample."},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-bitcrush"},{id:"pitchshift",label:"Pitch shift",group:"time",description:"Shifts pitch up or down without changing playback speed. Adds ~50 ms of latency.",params:[{kind:"number",key:"semitones",label:"Semitones",unit:"st",min:-12,max:12,step:1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-pitchshift"},{id:"delay",label:"Delay",group:"time",description:"Repeating echoes behind the dry signal.",params:[{kind:"number",key:"time",automatable:!0,label:"Time",unit:"ms",min:1,max:5e3,step:1,default:250,scale:"log"},{kind:"number",key:"feedback",automatable:!0,label:"Feedback",unit:"",min:.01,max:.95,step:.01,default:.35},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.4}],web:"delay-feedback"},{id:"chorus",label:"Chorus",group:"time",description:"Detuned copies of the signal for width and thickness.",params:[{kind:"number",key:"delay",automatable:!0,label:"Delay",unit:"ms",min:1,max:100,step:.1,default:7},{kind:"number",key:"depth",automatable:!0,label:"Depth",unit:"ms",min:0,max:10,step:.01,default:2},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.01,max:10,step:.01,default:1},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.5}],web:"chorus-lfo"},{id:"phaser",label:"Phaser",group:"time",description:"Sweeping notches moving through the spectrum.",params:[{kind:"number",key:"in_gain",automatable:!0,label:"Input",unit:"",min:0,max:1,step:.01,default:.4},{kind:"number",key:"out_gain",automatable:!0,label:"Output",unit:"",min:0,max:2,step:.01,default:.74},{kind:"number",key:"delay",label:"Delay",unit:"ms",min:.1,max:5,step:.1,default:3},{kind:"number",key:"decay",label:"Decay",unit:"",min:0,max:.99,step:.01,default:.4},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.1,max:2,step:.01,default:.5},{kind:"enum",key:"type",label:"Waveform",options:[{value:"0",label:"Triangular"},{value:"1",label:"Sinusoidal"}],default:"0"}],web:"allpass-phaser"},{id:"reverb",label:"Reverb",group:"time",description:"Room tail. Both ends convolve the same generated impulse, so preview matches render.",params:[{kind:"number",key:"size",label:"Room size",unit:"",min:.05,max:1,step:.01,default:.7},{kind:"number",key:"damping",label:"Damping",unit:"",min:0,max:1,step:.01,default:.5,hint:"Higher rolls the top off the tail faster."},{kind:"number",key:"wet",automatable:!0,label:"Wet",unit:"",min:0,max:1,step:.01,default:.35},{kind:"number",key:"dry",automatable:!0,label:"Dry",unit:"",min:0,max:1,step:.01,default:.7}],web:"convolver"}],fo=new Map(Wt.map(t=>[t.id,t]));var ho=Wt.map(t=>t.id);function fi(t){return 10**(t/20)}var $t=fi(12);var nt="data-automation",To=nt.slice(5),tt=1,bi=512,D=class extends Error{constructor(e){super(e),this.name="AudioAutomationError"}},we="volume",xe="rate";function Gt(t){if(t===we)return{kind:"volume"};if(t===xe)return{kind:"rate"};let e=t.split(".");if(e.length===3&&e[0]==="fx"&&e[1]===gi){let r=e[2];return r?{kind:"preset",presetId:r}:null}if(e.length!==3||e[0]!=="fx")return null;let[,n,i]=e;return!n||!i?null:{kind:"fx",nodeId:n,param:i}}var gi="preset";var _i={min:0,max:$t,step:.01,unit:"",label:"Volume",scale:"linear",default:1};var yi={min:Q,max:ee,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function ne(t){if(typeof t=="number")return Number.isFinite(t)?t:null;if(typeof t=="string"&&t.trim()!==""){let e=Number(t);return Number.isFinite(e)?e:null}return null}function vi(t){let e=ne(t);return e===null||e===0?0:Math.min(1,Math.max(-1,e))}function zt(t,e){let n=ne(t),i=ne(e);if(n===null||i===null)return null;let r=s=>Math.min(.999,Math.max(.001,s)),o=r(n),a=r(i);return Math.abs(o-a)<1e-6?null:{x:o,y:a}}function Ai(t){let e=vi(t?.curve),n=zt(t?.viaX,t?.viaY);return{...e?{curve:e}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function Si(t,e){let n=ne(t?.t),i=ne(t?.v);if(n===null||i===null)return null;let r=e?Math.min(e.max,Math.max(e.min,i)):i;return{t:Math.max(0,n),v:r,...Ai(t)}}function Ei(t,e){let n=t.map(r=>Si(r,e)).filter(r=>r!==null).sort((r,o)=>r.t-o.t),i=[];for(let r of n)i.length>0&&i[i.length-1].t===r.t?i[i.length-1]=r:i.push(r);return i.slice(0,bi)}function Ti(t){let e=[];for(let n of t.lanes){if(!Gt(n.target))continue;let i=n.target===we?_i:n.target===xe?yi:null,r=Ei(n.points??[],i);r.length>0&&e.push({target:n.target,points:r})}return{version:tt,lanes:e}}function qt(t){let e;try{e=JSON.parse(t)}catch(r){throw new D(`Automation is not valid JSON: ${r.message}`)}if(typeof e!="object"||e===null)throw new D("Automation must be a JSON object.");let n=e;if(n.version!==tt)throw new D(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new D("Automation is missing a `lanes` array.");let i=n.lanes.map((r,o)=>{if(typeof r!="object"||r===null)throw new D(`Lane ${o} is not an object.`);let a=r;if(typeof a.target!="string"||!Gt(a.target))throw new D(`Lane ${o} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new D(`Lane ${o} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return Ti({version:tt,lanes:i})}function Ri(t,e){return e?Math.pow(t,Math.pow(2,2*e)):t}function wi(t,e){let n=t-.5,i=e-.5,r=.999,o=1e6,a=n>0?n/(r-t):n<0?-n/(t-(1-r)):0,s=i>0?i/(r-e):i<0?-i/(e-(1-r)):0,u=Math.min(o,Math.max(1,a,s));return{cx:t+n/u,cy:e+i/u,w:u}}function xi(t,e,n){let{cx:i,cy:r,w:o}=wi(e,n),a=2-2*o,s=t*a-1+2*o*i,u=-t*a-2*o*i,c=ki(s,u,t),m=1-c,b=m*m+2*o*c*m+c*c;return b>0?(2*o*r*c*m+c*c)/b:t}function ki(t,e,n){if(Math.abs(t)<1e-12)return Math.abs(e)<1e-12?n:-n/e;let i=Math.sqrt(Math.max(0,e*e-4*t*n)),r=(-e+i)/(2*t),o=(-e-i)/(2*t),a=s=>s>=-1e-9&&s<=1+1e-9;return a(r)?Math.min(1,Math.max(0,r)):a(o)?Math.min(1,Math.max(0,o)):n}function Mi(t,e){let n=zt(e.viaX,e.viaY);return n?xi(Math.min(1,Math.max(0,t)),n.x,n.y):Ri(t,e.curve)}function Ii(t,e,n,i){return i==="log"&&t>0&&e>0?Math.exp(Math.log(t)+(Math.log(e)-Math.log(t))*n):t+(e-t)*n}function ke(t,e,n="linear"){let i=t.points;if(i.length===0)return 0;let r=i[0];if(e<=r.t)return r.v;let o=i[i.length-1];if(e>=o.t)return o.v;let a=0,s=i.length-1;for(;s-a>1;){let b=a+s>>1;i[b].t<=e?a=b:s=b}let u=i[a],c=i[s],m=c.t-u.t;return m<=0?c.v:Ii(u.v,c.v,Mi((e-u.t)/m,u),n)}var Me=new Map,Di=64;function jt(t,e=we){let n=`${e}\0${t}`,i=Me.get(n);if(i!==void 0)return i;let r=null;try{r=qt(t).lanes.find(o=>o.target===e)??null}catch{r=null}return Me.size>Di&&Me.clear(),Me.set(n,r),r}var Yt=48,Xt=new WeakMap;function Ci(t){let e=t.points,n=e[0].v,i=e[e.length-1].v,r=[0],o=[0],a=u=>{let c=r[r.length-1];if(u<=c)return;let m=ke(t,c,"log");r.push(u),o.push(o[o.length-1]+(m+ke(t,u,"log"))/2*(u-c))},s=Math.max(0,e[0].t);a(s);for(let u=1;u<e.length;u+=1){let c=e[u-1].t,m=e[u].t;if(!(m<=0))for(let b=1;b<=Yt;b+=1)a(Math.max(c,0)+(m-c)*b/Yt)}return{ts:Float64Array.from(r),ss:Float64Array.from(o),firstRate:n,lastRate:i}}function Pi(t){let e=Xt.get(t);return e||(e=Ci(t),Xt.set(t,e)),e}function Ni(t){return typeof t!="number"&&t.points.length>0}function Li(t,e,n){let i=0,r=t.length-1;for(;r-i>1;){let o=i+r>>1;t[o]<=n?i=o:r=o}return e[i]+(e[r]-e[i])*(n-t[i])/(t[r]-t[i])}function it(t,e){if(typeof t=="number")return e/t;if(!Ni(t))return e;let{ts:n,ss:i,firstRate:r,lastRate:o}=Pi(t),a=n.length-1;return e<=0?e/r:e>=i[a]?n[a]+(e-i[a])/o:Li(i,n,e)}function Oi(t){return t?jt(t,xe):null}function Kt(t,e){return Oi(t)??e}var Do=[{id:"montage",label:"Montage",points:[[0,.9],[.15,.3],[.5,2.5],[.85,.3],[1,.9]]},{id:"hero",label:"Hero",points:[[0,1],[.25,1.6],[.5,.25],[.75,1.6],[1,1]]},{id:"bullet",label:"Bullet",points:[[0,3],[.4,3],[.5,.15],[.6,3],[1,3]]},{id:"jump-cut",label:"Jump cut",points:[[0,.5],[.24,.5],[.26,3],[.5,3],[.52,.5],[.74,.5],[.76,3],[1,3]]},{id:"flash-in",label:"Flash in",points:[[0,.3],[.6,.6],[1,5]]},{id:"flash-out",label:"Flash out",points:[[0,5],[.4,.6],[1,.3]]},{id:"ramp-in",label:"Ramp in",points:[[0,.5],[1,1]]},{id:"ramp-out",label:"Ramp out",points:[[0,1],[1,.5]]},{id:"slowmo-middle",label:"Slow-mo middle",points:[[0,1],[1/3,.35],[2/3,.35],[1,1]]}];var y=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),Po=Object.freeze([y.start,y.duration,y.trackIndex]),No=Object.freeze([y.derivedEnd]),Lo=Object.freeze([y.derivedEnd,y.legacyTrack]);function C(t){if(t==null||t.trim()==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}var Qt=/^[A-Za-z0-9_.:-]+$/;function en(t,e){let n=t.charCodeAt(e);return n>=48&&n<=57}function Jt(t,e){let n=e;for(;n>=0&&en(t,n);)n--;return n}function Fi(t,e){let n=e;for(;n>=0&&(t[n]??"").trim()==="";)n--;return n}function Vi(t){let e=t.length-1;if(!en(t,e))return null;let n=Jt(t,e);return t[n]==="."&&(n=Jt(t,n-1)),n+1}function Ui(t){let e=Vi(t);if(e==null)return null;let n=Fi(t,e-1),i=t[n];if(i!=="+"&&i!=="-")return null;let r=t.slice(0,n).trim();if(!Qt.test(r))return null;let o=Number(t.slice(e));return Number.isFinite(o)?{refId:r,operator:i,magnitude:o}:null}function ie(t){let e=(t??"").trim();if(!e)return null;let n=C(e);if(n!=null)return{kind:"absolute",value:n};if(Qt.test(e))return{kind:"reference",refId:e,offset:0};let i=Ui(e);return i?{kind:"reference",refId:i.refId,offset:i.operator==="-"?-i.magnitude:i.magnitude}:null}function w(t,e,n,i){t.push({code:e,attribute:n,value:i})}function Hi(t,e,n,i){if(e==null||e.trim()==="")return n.defaultStart===void 0?0:n.defaultStart;if(!t)return w(i,"invalid-start",y.start,e),null;if(t.kind==="absolute")return Math.max(0,t.value);let r=n.resolveReferenceEnd?.(t.refId);return r==null||!Number.isFinite(r)?(w(i,"unresolved-start-reference",y.start,e),null):Math.max(0,r+t.offset)}var Wi=1e-9;function $i(t,e){return Math.abs(t-e)<=Wi}function Bi(t,e,n){let i=C(t);if(i==null){w(n,"deprecated-end",y.derivedEnd,t),w(n,"invalid-end",y.derivedEnd,t);return}if(e==null){w(n,"deprecated-end",y.derivedEnd,t);return}$i(i,e)||(w(n,"deprecated-end",y.derivedEnd,t),w(n,"conflicting-end",y.derivedEnd,t))}function Gi(t,e,n){let i=C(t);return i==null||i<0?(w(n,"invalid-duration",y.duration,t),{duration:null,end:null,durationSource:"invalid"}):{duration:i,end:e==null?null:e+i,durationSource:"duration"}}function zi(t,e,n){w(n,"deprecated-end",y.derivedEnd,t);let i=C(t);return i==null?(w(n,"invalid-end",y.derivedEnd,t),{duration:null,end:null,durationSource:"invalid"}):e==null?{duration:null,end:i,durationSource:"legacy-end"}:i<e?(w(n,"end-before-start",y.derivedEnd,t),{duration:null,end:null,durationSource:"invalid"}):{duration:i-e,end:i,durationSource:"legacy-end"}}function qi(t,e,n){let i=t.getAttribute(y.duration),r=t.getAttribute(y.derivedEnd);if(i==null)return r==null?{duration:null,end:null,durationSource:"missing"}:zi(r,e,n);let o=Gi(i,e,n);return r!=null&&Bi(r,o.end,n),o}function Zt(t,e,n,i){let r=C(t);return r==null||!Number.isInteger(r)?(w(i,"invalid-track-index",e,t),{trackIndex:0,trackSource:"invalid"}):{trackIndex:r,trackSource:n}}function ji(t,e){let n=t.getAttribute(y.trackIndex),i=t.getAttribute(y.legacyTrack);if(n==null&&i==null)return{trackIndex:0,trackSource:"default"};if(n==null&&i!=null)return w(e,"deprecated-layer",y.legacyTrack,i),Zt(i,y.legacyTrack,"legacy-layer",e);let r=Zt(n??"",y.trackIndex,"track-index",e);if(i==null)return r;w(e,"deprecated-layer",y.legacyTrack,i);let o=C(i);return o!=null&&o!==r.trackIndex&&w(e,"conflicting-layer",y.legacyTrack,i),r}function rt(t,e={}){let n=[],i=t.getAttribute(y.start),r=ie(i),o=Hi(r,i,e,n),a=qi(t,o,n),s=ji(t,n);return{startExpression:r,start:o,...a,...s,diagnostics:n}}function P(t){return C(t)}function re(t){return Ft(e=>t.getAttribute(e),I(t)?t.defaultPlaybackRate:1)}function ot(t){return Kt(t.getAttribute("data-automation"),re(t))}function Ie(t){return Ot(e=>t.getAttribute(e))}function $(t,e){return Yi(e,Ie(t),ot(t))}function at(t){let e=Qe({tag:"video",authoredDurationSeconds:Je(n=>t.getAttribute(n)),sourceDurationSeconds:Number.isFinite(t.duration)?t.duration:null,mediaStartSeconds:Ie(t),playbackRate:re(t)});return e.source==="media"?$(t,t.duration):e.seconds}function De(t,e=0){return!Ye(t)||!t.hasAttribute("data-start")&&!t.hasAttribute("data-track-index")?null:Qe({tag:"img",authoredDurationSeconds:Vt(n=>t.getAttribute(n),e),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function Yi(t,e,n){return typeof n=="number"?Ze(t,e,n):Number.isFinite(t)?it(n,Math.max(0,t-e)):null}function tn(){return globalThis}function B(t,e){if(typeof window>"u")return;let n=tn(),i=n.__hf?.onSwallowed;if(i)try{i({label:t,error:e})}catch(r){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${t} swallowed:`,e)}var Xi=t=>t.paused?.()===!0?(t.startTime?.()??0)+(t.totalDuration?.()??0)/Math.abs(t.timeScale?.()||1):0;function oe(t){try{if(typeof t?.duration!="function")return null;let e=t.getChildren?.(!1,!1,!0),n=Array.isArray(e)?e:[],i=Math.max(Number(t.duration()),...n.map(Xi));return Number.isFinite(i)?i:null}catch(e){return B("runtime.timelineDuration",e),null}}var nn="data-hf-authored-duration",rn="data-hf-authored-end";function ae(t){if(t==null||typeof t=="string"&&t.trim()==="")return null;let e=typeof t=="number"?t:Number(t);return Number.isFinite(e)?e:null}function Ce(t){let e=ae(t.start);if(e==null)return null;let n=Math.max(0,e),i=ae(t.duration),r=ae(t.authoredDuration),o=i!=null&&i>0?i:r!=null&&r>0?r:null;if(o!=null)return{start:n,duration:o,end:n+o};let a=ae(t.end),s=ae(t.authoredEnd),u=a!=null&&a>n?a:s!=null&&s>n?s:null;return{start:n,duration:u==null?null:u-n,end:u}}var G=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),Ko=Object.freeze([G.start,G.duration,G.trackIndex]),Jo=Object.freeze([G.derivedEnd]),Zo=Object.freeze([G.derivedEnd,G.legacyTrack]);function Ki(t){if(t==null||t.trim()==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}var on=t=>{let e=Ki(t);return e!==null&&e>=0?e:null};function Ji(t){return on(t("data-playback-start"))??on(t("data-media-start"))??0}var an="data-hf-media-start-basis";function sn(t){return t?.trim().toLowerCase()==="global"?"global":"local"}function Zi(t){return sn(t.basis)==="global"?t.authoredStart:t.hostStart+t.authoredStart}function un(t){return dn(t)?Zi({authoredStart:t.authoredStart,hostStart:t.hostStart,basis:t.basis}):t.ordinaryStart()}function ln(t){return dn(t)&&sn(t.basis)==="global"}function dn(t){return!t.hasAutoStart&&t.authoredStart!=null&&t.hostStart!==0}function st(t){return Ji(e=>t.getAttribute(e))}function cn(t,e){return t-st(e)}function V(t){let e=t.timelineRegistry??{},n=t.includeAuthoredTimingAttrs??!1,i=t.documentRef??document,r=new WeakMap,o=new WeakMap,a=new Set,s=l=>(l.hasAttribute("data-composition-id")?l.parentElement:l)?.closest("[data-composition-id]")??null,u=(l,f)=>{let _=s(f);if(_){for(let k of _.querySelectorAll(`[id="${l}"]`))if(s(k)===_)return k}let R=i.getElementById(l);return R||(Array.from(i.querySelectorAll("[data-composition-id]")).find(k=>k.getAttribute("data-composition-id")===l)??null)},c=(l,f)=>n?l.getAttribute(f):null,m=l=>Ce({start:0,duration:l.getAttribute("data-duration"),authoredDuration:c(l,"data-hf-authored-duration")})?.duration??Ce({start:T(l,0),end:l.getAttribute("data-end"),authoredEnd:c(l,"data-hf-authored-end")})?.duration??null,b=l=>l!=null&&Number.isFinite(l)&&l>0?l:null,v=l=>{let f=l.getAttribute("data-composition-id");return f?b(oe(e[f])):null},g=l=>{let f=o.get(l);if(f!==void 0)return f;let _=m(l)??b(I(l)?$(l,l.duration):null)??b(De(l))??v(l);return o.set(l,_),_},A=l=>l.hasAttribute("data-composition-src")||l.hasAttribute("data-composition-id")||l.hasAttribute("data-composition-file"),h=l=>{let f=l.parentElement;return!f||!l.hasAttribute("data-composition-id")||ie(l.getAttribute("data-start"))?null:A(f)?f:null},E=(l,f)=>cn(T(l,f),h(l)??l),M=(l,f)=>{let _=l.hasAttribute("data-composition-id")?l.parentElement?.closest("[data-composition-id]"):l.closest("[data-composition-id]");return _?E(_,f):0},N=(l,f)=>{let _=ie(l.getAttribute("data-start"));if(!_){let Z=h(l);return Z?T(Z,f):f}if(_.kind==="absolute")return M(l,f)+Math.max(0,_.value);let R=u(_.refId,l);if(!R)return f;let k=T(R,0),_e=g(R)??0,ye=Math.min(0,M(l,0));return Math.max(ye,k+_e+_.offset)},T=(l,f)=>{let _=r.get(l);if(_!==void 0)return _??f;if(a.has(l))return f;a.add(l);try{let R=N(l,f);return r.set(l,R),R}finally{a.delete(l)}},L=l=>{let f=l.closest("[data-composition-id]");return{authoredStart:P(l.getAttribute("data-start")),hostStart:f?E(f,0):0,hasAutoStart:l.hasAttribute("data-hf-auto-start"),basis:l.getAttribute(an)}};return{resolveStartForElement:(l,f=0)=>T(l,Math.max(0,f)),resolveDurationForElement:l=>g(l),resolveMediaStartForElement:l=>{let f=L(l);return un({...f,ordinaryStart:()=>T(l,f.hostStart)})},resolveHostStartForElement:l=>M(l,0),resolveHostSlotsForElement:l=>{let f=[];for(let _=l.parentElement;_;_=_.parentElement){if(!A(_)||h(_)||st(_)<=0)continue;let R=T(_,0),k=m(_);f.push({start:R,end:k?R+k:1/0})}return f},isRootGlobalMediaStartForElement:l=>I(l)&&ln(L(l))}}function mn(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],injectedCompLinks:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}var pn=7200,ut=1/60,se=t=>t!==null&&t>ut?t:null;function Qi(t){return{width:Ee(t.getAttribute("data-width")),height:Ee(t.getAttribute("data-height"))}}function er(t,e){let n=[];for(let i of t.querySelectorAll("video[data-start], audio[data-start]")){let r=e.mediaStart(i);if(!Number.isFinite(r))continue;let o=e.mediaDuration(i);o==null||o<=ut||n.push(Math.max(0,r)+o)}return se(Se({authoredDurationSeconds:null,clipEndsSeconds:n}).seconds)}function tr(t,e){let n=[];for(let r of t.querySelectorAll("[data-composition-id][data-start]")){if(r.parentElement?.closest("[data-composition-id]")!==t)continue;let o=e.resolveStartForElement(r,0),a=e.resolveDurationForElement(r);!Number.isFinite(o)||a==null||a<=0||n.push(Math.max(0,o)+a)}let i=P(t.getAttribute("data-duration"));return se(Se({authoredDurationSeconds:null,clipEndsSeconds:[i,...n]}).seconds)}var nr=t=>t.hasAttribute("data-composition-id")||t.hasAttribute("data-composition-src");function ir(t,e,{unregisteredLottie:n}){let i=[];for(let o of t.querySelectorAll("[data-start]")){let a=e.resolveStartForElement(o,0);if(!Number.isFinite(a))continue;let s=e.resolveDurationForElement(o);s!=null?i.push(Math.max(0,a)+s):(I(o)||nr(o))&&i.push(null)}(n||t.querySelector("[data-lottie-src]"))&&i.push(null);let r=Se({authoredDurationSeconds:null,clipEndsSeconds:i});return r.pendingClips>0?{...r,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:r}function rr(t){if(t.declared!==null&&Number.isFinite(t.declared)&&t.declared>0)return t.declared;let e=se(t.timeline()),n=Math.max(0,...t.floors().map(u=>u??0)),i=Number.isFinite(t.fallback)&&t.fallback>ut?t.fallback:0,r=Math.max(n,i),a=e!==null&&e>=pn&&se(r)!==null?null:e,s;return a!==null?s=Math.max(a,r):se(n)!==null?s=r:i>0?s=i:s=t.derived(),s>0?s:0}function fn(t){let e=Te(t);if(!e)return null;let n=V({timelineRegistry:{},includeAuthoredTimingAttrs:!0,documentRef:t}),i=rr({declared:P(e.getAttribute("data-duration")),timeline:()=>null,floors:()=>[er(t,{mediaStart:n.resolveMediaStartForElement,mediaDuration:at}),tr(e,n)],fallback:0,derived:()=>ir(e,n,{unregisteredLottie:!1}).seconds??0});return{...Qi(e),fps:mn().canonicalFps,durationSeconds:i}}var Pe="hyperframes-studio-preview";var hn="data-hf-upcoming";var bn="__hfPreviewErrors";var gn="data-hf-autostamped";function _n(t){return t.hasRuntime||t.runtimeInjected?!1:!!(t.hasNestedCompositions||t.hasTimelines&&t.attempts>=5)}function z(t){return typeof t=="object"&&t!==null}function yn(t){return z(t)&&typeof t.getDuration=="function"}function vn(t){return z(t)&&typeof t.duration=="function"&&typeof t.time=="function"&&typeof t.seek=="function"&&typeof t.play=="function"&&typeof t.pause=="function"}var q="https://cdn.jsdelivr.net/npm/@hyperframes/core@0.8.196/dist/hyperframe.runtime.iife.js";function ue(t){if(t===null)return null;let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:null}function or(t){let e=t?.querySelector("[data-composition-id][data-width][data-height]")??t?.querySelector("[data-width][data-height]");if(!e)return null;let n=ue(e.getAttribute("data-width")),i=ue(e.getAttribute("data-height"));return n!==null&&i!==null?{width:n,height:i}:null}function ar(t){return Array.isArray(t)?t.find(e=>typeof e=="string"&&e.trim()!==""&&e!=="[object Event]")??null:null}var Ne=class{constructor(e,n){this._iframe=e;this._callbacks=n}_iframe;_callbacks;_interval=null;_runtimeInjected=!1;_runtimeScript=null;_failure=null;get failed(){return this._failure!==null&&this._failure.document===this._iframe.contentDocument}get runtimeInjected(){return this._runtimeInjected}start(){this.stop(),this._failure=null,this._runtimeInjected=!1;let e=0;this._interval=setInterval(()=>{e++;let n=null;try{n=this._poll(e)}catch(i){i instanceof DOMException&&i.name==="SecurityError"||(n={kind:"error",message:i instanceof Error?i.message:String(i)})}n??=this._deadlineOutcome(e),n&&(this.stop(),n.kind==="error"?(this._failure={document:this._iframe.contentDocument},this._callbacks.onError(n.message)):this._callbacks.onReady(n.result))},200)}_deadlineOutcome(e){return e<40||this._callbacks.hostOwnsDeadline?.()?null:{kind:"error",message:"Composition timeline not found after 8s"}}_poll(e){let n=this._iframe.contentWindow;if(!n)return null;let i=ar(Reflect.get(n,bn));if(i!==null)return{kind:"error",message:i};let r=this._iframe.contentDocument,o=Reflect.get(n,"__timelines"),a=this.hasRuntimeBridge(n);if(_n({hasRuntime:a,hasTimelines:z(o)&&Object.keys(o).length>0,hasNestedCompositions:!!r?.querySelector("[data-composition-src]"),runtimeInjected:this._runtimeInjected,attempts:e}))return this._injectRuntime(),null;if(this._runtimeInjected&&!a)return null;let s=this._resolveReadyResult(n,r);return s?{kind:"ready",result:s}:null}_resolveReadyResult(e,n){let i=this._resolvePlaybackDurationAdapter(e)??{kind:"document",getDuration:()=>0},r=i.getDuration();if(!Number.isFinite(r)||r<=0){if(i.kind==="direct-timeline")return null;r=n?fn(n)?.durationSeconds??0:0}return r<=0?null:{duration:r,adapter:{...i,getDuration:()=>r},compositionSize:or(n)}}stop(){this._runtimeScript&&(this._runtimeScript.onerror=null,this._runtimeScript=null),this.failed||(this._failure=null),this._interval!==null&&(clearInterval(this._interval),this._interval=null)}resolveDirectTimelineAdapter(){try{let e=this._iframe.contentWindow;return e?this._resolveDirectTimelineAdapterFromWindow(e):null}catch{return null}}resolveDirectTimelineAdapterFromWindow(e){return this._resolveDirectTimelineAdapterFromWindow(e)}hasRuntimeBridge(e){return z(Reflect.get(e,"__player"))}_injectRuntime(){this._runtimeInjected=!0;try{let e=this._iframe.contentDocument;if(!e)return;let n=e.createElement("script");n.src=this._callbacks.resolveRuntimeUrl?.()??q,this._runtimeScript=n,n.onerror=()=>{this._runtimeScript!==n||this._iframe.contentDocument!==e||(this.stop(),this._failure={document:e},this._callbacks.onError("HyperFrames runtime failed to load from "+n.src))},(e.head||e.documentElement).appendChild(n),this._callbacks.onRuntimeInjected?.()}catch{}}_resolveDirectTimelineAdapterFromWindow(e){if(this.hasRuntimeBridge(e))return null;let n=Reflect.get(e,"__timelines");if(!z(n))return null;let i=Object.keys(n);if(i.length===0)return null;let r=this._iframe.contentDocument?.querySelector("[data-composition-id]")?.getAttribute("data-composition-id"),o=r&&r in n?r:i[i.length-1],a=n[o];return vn(a)?a:null}_resolvePlaybackDurationAdapter(e){let n=Reflect.get(e,"__player");if(yn(n))return{kind:"runtime",getDuration:()=>n.getDuration()};let i=this._resolveDirectTimelineAdapterFromWindow(e);return i?{kind:"direct-timeline",timeline:i,getDuration:()=>i.duration()}:null}};var An=`
2
2
  :host {
3
3
  display: block;
4
4
  position: relative;
@@ -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-ZAVUASNT.js";
9
+ } from "./chunk-RP7QRLSK.js";
10
10
  import {
11
11
  formatBytes,
12
12
  label
@@ -14,8 +14,8 @@ import {
14
14
  import {
15
15
  ensureDOMParser
16
16
  } from "./chunk-442JNXRM.js";
17
- import "./chunk-ZL6ZCLY6.js";
18
- import "./chunk-KJ6ZQL34.js";
17
+ import "./chunk-W226NPSC.js";
18
+ import "./chunk-6RNGEUL3.js";
19
19
  import "./chunk-VWG7OQKU.js";
20
20
  import {
21
21
  defineCommand
@@ -25,17 +25,17 @@ import "./chunk-JVBRJMOP.js";
25
25
  import {
26
26
  c
27
27
  } from "./chunk-ZTZA4UWZ.js";
28
- import "./chunk-E74JMKSK.js";
28
+ import "./chunk-VKFHSZYS.js";
29
29
  import "./chunk-RQVDTPGD.js";
30
30
  import {
31
31
  isHtmlElement
32
- } from "./chunk-ZQRD62QZ.js";
32
+ } from "./chunk-MXT76SSV.js";
33
33
  import "./chunk-VC76R6W2.js";
34
34
  import "./chunk-X7HBSTCZ.js";
35
35
  import {
36
36
  CANVAS_DIMENSIONS,
37
37
  parseHtml
38
- } from "./chunk-B7RJV74O.js";
38
+ } from "./chunk-XOTUPVIF.js";
39
39
  import "./chunk-OFQWTKPW.js";
40
40
  import "./chunk-DPVXBVLL.js";
41
41
  import "./chunk-634HSJ3J.js";
@@ -53,12 +53,12 @@ import "./chunk-RXATE6FZ.js";
53
53
  import "./chunk-W2LGJSEN.js";
54
54
  import {
55
55
  withMeta
56
- } from "./chunk-ELQ2QQC5.js";
56
+ } from "./chunk-XLVUQGSA.js";
57
57
  import "./chunk-K4WIOZFP.js";
58
58
  import "./chunk-6NLPPKBO.js";
59
59
  import "./chunk-WERLJGIC.js";
60
60
  import "./chunk-ISN5GRYI.js";
61
- import "./chunk-66Q27H72.js";
61
+ import "./chunk-Z43NJYG2.js";
62
62
  import "./chunk-T2EUWCJE.js";
63
63
  import "./chunk-M2WBOQ2Q.js";
64
64
 
@@ -6,24 +6,24 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  gateRegistryItemsCompatibility
9
- } from "./chunk-3PYIQLPL.js";
9
+ } from "./chunk-DTGW7DU3.js";
10
10
  import {
11
11
  copyDirSync
12
12
  } from "./chunk-CIWX5UKC.js";
13
13
  import {
14
14
  initialModelForLanguage
15
- } from "./chunk-2HSRLKZR.js";
16
- import "./chunk-P5X5URNQ.js";
15
+ } from "./chunk-IO5NBG26.js";
16
+ import "./chunk-JCBZI47W.js";
17
17
  import {
18
18
  DEFAULT_MODEL,
19
19
  hasFFmpeg
20
- } from "./chunk-F4T7XYMF.js";
20
+ } from "./chunk-DHSNTPEW.js";
21
21
  import "./chunk-WQ6ZXHFQ.js";
22
22
  import {
23
23
  findFFmpeg,
24
24
  findFFprobe,
25
25
  getFFmpegInstallHint
26
- } from "./chunk-4R2NWLQL.js";
26
+ } from "./chunk-E7NEF2SC.js";
27
27
  import {
28
28
  Ee,
29
29
  R,
@@ -43,19 +43,19 @@ import {
43
43
  listRegistryItems,
44
44
  loadAllItems,
45
45
  resolveItemWithDependencies
46
- } from "./chunk-D6XDOYMB.js";
46
+ } from "./chunk-I452OMM7.js";
47
47
  import "./chunk-JHOCK3DG.js";
48
48
  import {
49
49
  installItem
50
- } from "./chunk-W4SSWOOD.js";
51
- import "./chunk-HT33OHQL.js";
50
+ } from "./chunk-NCSX7WNM.js";
51
+ import "./chunk-LP6SFIWQ.js";
52
52
  import "./chunk-AWDFDFI3.js";
53
53
  import "./chunk-P6LJ4Y32.js";
54
54
  import "./chunk-GMECXFAN.js";
55
55
  import {
56
56
  trackInitTemplate
57
- } from "./chunk-ZL6ZCLY6.js";
58
- import "./chunk-KJ6ZQL34.js";
57
+ } from "./chunk-W226NPSC.js";
58
+ import "./chunk-6RNGEUL3.js";
59
59
  import "./chunk-VWG7OQKU.js";
60
60
  import {
61
61
  defineCommand,
@@ -70,12 +70,12 @@ import {
70
70
  c,
71
71
  isColorSupported
72
72
  } from "./chunk-ZTZA4UWZ.js";
73
- import "./chunk-HJINEUHY.js";
73
+ import "./chunk-WFHA6WC3.js";
74
74
  import "./chunk-IZCW2NKT.js";
75
- import "./chunk-E74JMKSK.js";
75
+ import "./chunk-VKFHSZYS.js";
76
76
  import "./chunk-RQVDTPGD.js";
77
- import "./chunk-VNWX5GBF.js";
78
- import "./chunk-ZQRD62QZ.js";
77
+ import "./chunk-IYSIQ4GX.js";
78
+ import "./chunk-MXT76SSV.js";
79
79
  import "./chunk-VC76R6W2.js";
80
80
  import "./chunk-X7HBSTCZ.js";
81
81
  import {
@@ -84,7 +84,7 @@ import {
84
84
  HTML_BODY_CSS_WIDTH_FIRST_RE,
85
85
  VIEWPORT_META_SIZE_RE,
86
86
  normalizeResolutionFlag
87
- } from "./chunk-B7RJV74O.js";
87
+ } from "./chunk-XOTUPVIF.js";
88
88
  import "./chunk-OFQWTKPW.js";
89
89
  import "./chunk-DPVXBVLL.js";
90
90
  import "./chunk-3GXQPCJC.js";
@@ -113,7 +113,7 @@ import "./chunk-WERLJGIC.js";
113
113
  import "./chunk-ISN5GRYI.js";
114
114
  import {
115
115
  VERSION
116
- } from "./chunk-66Q27H72.js";
116
+ } from "./chunk-Z43NJYG2.js";
117
117
  import "./chunk-T2EUWCJE.js";
118
118
  import "./chunk-UOFAE5RF.js";
119
119
  import {
@@ -703,7 +703,7 @@ async function scaffoldProject(destDir, name, templateId, media, tailwind = fals
703
703
  "utf-8"
704
704
  );
705
705
  if (!existsSync2(resolve(destDir, "hyperframes.json"))) {
706
- const { createProjectConfig, DEFAULT_PROJECT_CONFIG } = await import("./projectConfig-AO4V3RHS.js");
706
+ const { createProjectConfig, DEFAULT_PROJECT_CONFIG } = await import("./projectConfig-WFGZJAYZ.js");
707
707
  const { normalizeSkillSlug } = await import("./skill-ZHVLH7KX.js");
708
708
  const skill = normalizeSkillSlug(authoringSkill);
709
709
  createProjectConfig(
@@ -724,7 +724,7 @@ async function scaffoldProject(destDir, name, templateId, media, tailwind = fals
724
724
  }
725
725
  }
726
726
  async function keepSkillsCurrent(destDir) {
727
- const { updateSkills } = await import("./skills-PWQCM2BT.js");
727
+ const { updateSkills } = await import("./skills-6ZUYEX75.js");
728
728
  console.log();
729
729
  console.log(c.bold("Checking AI coding skills against GitHub..."));
730
730
  try {
@@ -920,17 +920,17 @@ var init_default = defineCommand({
920
920
  if (audioPath) {
921
921
  sourceFilePath2 = audioPath;
922
922
  copyFileSync(audioPath, resolve(destDir2, basename(audioPath)));
923
- const { getMediaDurationSeconds } = await import("./transcribe-DNQFPZ2S.js");
923
+ const { getMediaDurationSeconds } = await import("./transcribe-JX23YVIR.js");
924
924
  videoDuration2 = getMediaDurationSeconds(audioPath) ?? void 0;
925
925
  console.log(`Audio: ${basename(audioPath)}`);
926
926
  }
927
927
  if (sourceFilePath2 && !skipTranscribe) {
928
928
  try {
929
- const { ensureWhisper, ensureModel } = await import("./manager-V34BMSAG.js");
929
+ const { ensureWhisper, ensureModel } = await import("./manager-GLJVKITP.js");
930
930
  await ensureWhisper();
931
931
  await ensureModel(initialTranscriptionModel);
932
932
  console.log("Transcribing...");
933
- const { transcribe: runTranscribe } = await import("./transcribe-DNQFPZ2S.js");
933
+ const { transcribe: runTranscribe } = await import("./transcribe-JX23YVIR.js");
934
934
  const result = await runTranscribe(sourceFilePath2, destDir2, {
935
935
  model: modelFlag,
936
936
  language: languageFlag
@@ -1076,7 +1076,7 @@ var init_default = defineCommand({
1076
1076
  mkdirSync(destDir, { recursive: true });
1077
1077
  sourceFilePath = audioPath;
1078
1078
  copyFileSync(audioPath, resolve(destDir, basename(audioPath)));
1079
- const { getMediaDurationSeconds } = await import("./transcribe-DNQFPZ2S.js");
1079
+ const { getMediaDurationSeconds } = await import("./transcribe-JX23YVIR.js");
1080
1080
  videoDuration = getMediaDurationSeconds(audioPath) ?? void 0;
1081
1081
  R.info(`Audio copied to ${c.accent(basename(audioPath))}`);
1082
1082
  }
@@ -1086,7 +1086,7 @@ var init_default = defineCommand({
1086
1086
  initialValue: true
1087
1087
  });
1088
1088
  if (!q(transcribeChoice) && transcribeChoice) {
1089
- const { findWhisper } = await import("./manager-V34BMSAG.js");
1089
+ const { findWhisper } = await import("./manager-GLJVKITP.js");
1090
1090
  const needsInstall = findWhisper() === void 0;
1091
1091
  if (needsInstall) {
1092
1092
  R.info(c.dim("whisper-cpp not found \u2014 installing automatically..."));
@@ -1096,7 +1096,7 @@ var init_default = defineCommand({
1096
1096
  needsInstall ? "Installing whisper-cpp (this may take a moment)..." : "Preparing transcription..."
1097
1097
  );
1098
1098
  try {
1099
- const { ensureWhisper, ensureModel } = await import("./manager-V34BMSAG.js");
1099
+ const { ensureWhisper, ensureModel } = await import("./manager-GLJVKITP.js");
1100
1100
  await ensureWhisper({
1101
1101
  onProgress: (msg) => spin2.message(msg)
1102
1102
  });
@@ -1104,7 +1104,7 @@ var init_default = defineCommand({
1104
1104
  onProgress: (msg) => spin2.message(msg)
1105
1105
  });
1106
1106
  spin2.message("Transcribing audio...");
1107
- const { transcribe: runTranscribe } = await import("./transcribe-DNQFPZ2S.js");
1107
+ const { transcribe: runTranscribe } = await import("./transcribe-JX23YVIR.js");
1108
1108
  const transcribeResult = await runTranscribe(sourceFilePath, destDir, {
1109
1109
  model: modelFlag,
1110
1110
  language: languageFlag,
@@ -1182,7 +1182,7 @@ ${c.dim("Use --example blank for offline use.")}`
1182
1182
  }
1183
1183
  R.info("Opening studio preview...");
1184
1184
  try {
1185
- const previewCmd = await import("./preview-R67EQGQP.js").then((m) => m.default);
1185
+ const previewCmd = await import("./preview-CIAZ646P.js").then((m) => m.default);
1186
1186
  await runCommand(previewCmd, { rawArgs: [destDir] });
1187
1187
  } catch {
1188
1188
  }