hyperframes 0.8.160 → 0.8.162

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 (103) hide show
  1. package/dist/{add-OGBTJCU4.js → add-UW7GCPQF.js} +5 -5
  2. package/dist/{asset-DKQFFGPP.js → asset-TWBPYQOL.js} +2 -2
  3. package/dist/audio-DJIE4YLH.js +1153 -0
  4. package/dist/{auth-AQMRAFXN.js → auth-VTCEZYBT.js} +1 -1
  5. package/dist/{autoUpdate-NFQB7V2X.js → autoUpdate-JA3SV472.js} +2 -2
  6. package/dist/{backgroundChecks-7JKE2FIU.js → backgroundChecks-J3WJDPQJ.js} +3 -3
  7. package/dist/backgroundChecksWorker.js +3 -3
  8. package/dist/beats-QVJVXZV5.js +239 -0
  9. package/dist/{benchmark-RRU67WEY.js → benchmark-WNBAKOXS.js} +5 -5
  10. package/dist/{browser-K4TP4ZM2.js → browser-VJOTRIXL.js} +3 -3
  11. package/dist/{capture-T2TBROMS.js → capture-GUO23PVN.js} +1 -1
  12. package/dist/{catalog-IMIHQ4KX.js → catalog-SAC4GFIN.js} +5 -5
  13. package/dist/{catch-up-UY5MJWOG.js → catch-up-T5RIRFJF.js} +4 -4
  14. package/dist/{check-6NAJSJHQ.js → check-IRETF27J.js} +18 -18
  15. package/dist/{checkBrowser-JWNQFYTY.js → checkBrowser-5IXR4QCK.js} +14 -14
  16. package/dist/{chunk-VZ6LCTOZ.js → chunk-3LQEZ4EI.js} +1 -1
  17. package/dist/{chunk-TU2CQJO3.js → chunk-3NSVHCOH.js} +2 -2
  18. package/dist/{chunk-D2WGLWIK.js → chunk-5K34RPE5.js} +2 -2
  19. package/dist/{chunk-IYLHJV34.js → chunk-5UBZPG74.js} +1 -143
  20. package/dist/{chunk-VD7WQYTO.js → chunk-5YSHR4XC.js} +5 -5
  21. package/dist/{chunk-D46G5IQH.js → chunk-AAUK5GDI.js} +7 -7
  22. package/dist/{chunk-GOASXWDD.js → chunk-FF5TAEPT.js} +1 -1
  23. package/dist/chunk-FFJ5TDRD.js +1181 -0
  24. package/dist/{chunk-PINFPWRV.js → chunk-GIPNECWL.js} +12 -10
  25. package/dist/{chunk-KWRBEDJI.js → chunk-GNFWKGSQ.js} +2 -2
  26. package/dist/{chunk-4VYNMVMC.js → chunk-GS5EXZBV.js} +4 -4
  27. package/dist/chunk-J4L5TPLS.js +101 -0
  28. package/dist/{chunk-V2FQQILJ.js → chunk-JJYFRAI4.js} +1 -1
  29. package/dist/{chunk-IGTGLGML.js → chunk-KAKBRDU4.js} +2 -2
  30. package/dist/{chunk-TTFDAWCS.js → chunk-KIJO75L4.js} +1 -1
  31. package/dist/{chunk-3XPVZLAR.js → chunk-NQR5SBXX.js} +1 -1
  32. package/dist/{chunk-6MCASYIS.js → chunk-ON2HYNGB.js} +4 -4
  33. package/dist/{chunk-GOTCGKX6.js → chunk-RGYEL7QD.js} +1 -1
  34. package/dist/{chunk-7OFNPEKR.js → chunk-S6OLD4SL.js} +2 -2
  35. package/dist/{chunk-FRGYHRP6.js → chunk-T5BG7PYZ.js} +1 -1
  36. package/dist/{chunk-MYGXKD7A.js → chunk-T65MIV36.js} +2 -2
  37. package/dist/chunk-TDPVEMBS.js +156 -0
  38. package/dist/{chunk-SHVDJON6.js → chunk-XWWYGXJ5.js} +1 -1
  39. package/dist/{chunk-37LNY2EC.js → chunk-YJKUE3LV.js} +1 -1
  40. package/dist/{chunk-KRE55WLI.js → chunk-YLBV2PXM.js} +1 -1
  41. package/dist/{chunk-ICZVCVD3.js → chunk-ZEWX3GHP.js} +1 -1
  42. package/dist/{clean-RRE6PMKZ.js → clean-WB62QULT.js} +6 -6
  43. package/dist/cli.js +49 -49
  44. package/dist/{cloud-OIR6K7TS.js → cloud-E5WB4DWZ.js} +4 -4
  45. package/dist/{compare-E57W737I.js → compare-GHFVHZ5A.js} +11 -11
  46. package/dist/{component-I2O4AX56.js → component-ZGCC3MHX.js} +3 -3
  47. package/dist/{compositions-B6NKZHIN.js → compositions-THPEDDIX.js} +5 -5
  48. package/dist/{delete-DTUNBC6K.js → delete-6FWT7DZX.js} +4 -3
  49. package/dist/{doctor-SCNB73Z3.js → doctor-RDGDOUC4.js} +3 -3
  50. package/dist/{events-6LQNRKHZ.js → events-CU6FDXHC.js} +3 -3
  51. package/dist/{events-Q37UJL36.js → events-VHXICDA2.js} +2 -2
  52. package/dist/{feedback-FOEBE2OW.js → feedback-PUPN6EKP.js} +5 -5
  53. package/dist/{figma-54MRTBKH.js → figma-ZKWBF7QH.js} +3 -3
  54. package/dist/fontLocalizeCli.js +1 -1
  55. package/dist/{get-EPGHM2SA.js → get-JHIBQRPM.js} +4 -3
  56. package/dist/{grade-compare-LOJWX6SK.js → grade-compare-GPLUXDPW.js} +11 -11
  57. package/dist/{help-6FPZI3WP.js → help-GO6RGM37.js} +1 -1
  58. package/dist/{history-GRXSUA5R.js → history-RUTC4SH5.js} +6 -6
  59. package/dist/hyperframes-player.global.js +1 -1
  60. package/dist/{info-LV7DFCLD.js → info-773VXW37.js} +5 -5
  61. package/dist/{init-3J7BSAC3.js → init-YXSIRYZI.js} +6 -6
  62. package/dist/{inspect-5RON554C.js → inspect-L4RRJEAA.js} +13 -13
  63. package/dist/{keyframes-KHXTHI5C.js → keyframes-P5IOQ6AM.js} +6 -6
  64. package/dist/{layout-DVWWT2TR.js → layout-OH2VTN5E.js} +13 -13
  65. package/dist/{lint-Q5WFB5ST.js → lint-YEEPVE6Q.js} +6 -6
  66. package/dist/{list-RFEUTW6N.js → list-QURRZTVN.js} +4 -3
  67. package/dist/{login-WBHWA4M2.js → login-DFT4L5YY.js} +4 -4
  68. package/dist/{media-treatment-WRHVNWLS.js → media-treatment-ERQ2PBIN.js} +6 -6
  69. package/dist/{motionShot-BZLRN3SS.js → motionShot-C2YDYRNB.js} +5 -5
  70. package/dist/{normalize-audio-4YXE3RIF.js → normalize-audio-R23VODOA.js} +4 -4
  71. package/dist/{open-MCGYEFML.js → open-GEOB4L3S.js} +4 -4
  72. package/dist/{play-WXOV3BD7.js → play-BYUS37GA.js} +9 -9
  73. package/dist/{present-RVG4J6CJ.js → present-BZLRNHDY.js} +9 -9
  74. package/dist/{preview-PDUQR2JQ.js → preview-TXML6PQ7.js} +5 -5
  75. package/dist/publish-VX5OH4ST.js +1 -1
  76. package/dist/{render-5BGU3FXU.js → render-57SXH6NS.js} +7 -7
  77. package/dist/{render-JNJVFBFF.js → render-JTY7XQFQ.js} +11 -86
  78. package/dist/skills/hyperframes-cli/references/beats.md +2 -6
  79. package/dist/{skills-LKJA27ZN.js → skills-2LBVMKVY.js} +5 -5
  80. package/dist/{skillsUpdateCheck-RFZJKZC4.js → skillsUpdateCheck-5DRXL565.js} +3 -3
  81. package/dist/{snapshot-EOYA4MLG.js → snapshot-V2L77FCF.js} +13 -13
  82. package/dist/{staticProjectServer-S3NK3V4S.js → staticProjectServer-4CQ3KDQK.js} +5 -5
  83. package/dist/studio/assets/{hyperframes-player-CXL23NEv.js → hyperframes-player-CAclPB6q.js} +1 -1
  84. package/dist/studio/assets/{index-D7BvLHtZ.js → index-B82aOvgB.js} +118 -118
  85. package/dist/studio/assets/{index-CejKvBNw.js → index-DCwGKghK.js} +1 -1
  86. package/dist/studio/index.html +1 -1
  87. package/dist/{studio-api-YM5HLXUS.js → studio-api-RYCDLEOR.js} +3 -3
  88. package/dist/{studioServer-CEXJK5TC.js → studioServer-B7H7EQ4U.js} +9 -9
  89. package/dist/{telemetry-7AWYECPL.js → telemetry-WVHWY3DU.js} +3 -3
  90. package/dist/{timeline-G7H373XX.js → timeline-EDXJ5L45.js} +8 -8
  91. package/dist/{tokens-GYH7NXXA.js → tokens-UNJONAXT.js} +2 -2
  92. package/dist/{transcribe-CIC7WAT5.js → transcribe-VX7ZE2IZ.js} +3 -3
  93. package/dist/{updateCheck-MQ44KGUR.js → updateCheck-NLH5E44Q.js} +2 -2
  94. package/dist/{upgrade-OL47SID3.js → upgrade-RGQJA2B4.js} +2 -2
  95. package/dist/{validate-TDCH6X3C.js → validate-4AN4PDV7.js} +11 -11
  96. package/package.json +2 -3
  97. package/dist/audio-GK4OVVTH.js +0 -2086
  98. package/dist/beat-analyzer.global.js +0 -341
  99. package/dist/beats-C3ZSK2R2.js +0 -322
  100. package/dist/lib-TPG2ZMAX.js +0 -128
  101. package/dist/studio/assets/index-Bl_xrA5T.js +0 -1
  102. /package/dist/{capture-ZPRK3TOZ.js → capture-M5ZAD3BI.js} +0 -0
  103. /package/dist/{lambda-4KCSMIM6.js → lambda-RAJA6ZNA.js} +0 -0
@@ -11,11 +11,11 @@ import {
11
11
  import {
12
12
  resolveProject,
13
13
  resolveProjectOrThrow
14
- } from "./chunk-37LNY2EC.js";
14
+ } from "./chunk-YJKUE3LV.js";
15
15
  import "./chunk-K2FLNJVB.js";
16
16
  import "./chunk-DCAI5DBR.js";
17
- import "./chunk-KRE55WLI.js";
18
- import "./chunk-ICZVCVD3.js";
17
+ import "./chunk-YLBV2PXM.js";
18
+ import "./chunk-ZEWX3GHP.js";
19
19
  import "./chunk-VWG7OQKU.js";
20
20
  import "./chunk-QWQ6GQTI.js";
21
21
  import {
@@ -32,7 +32,7 @@ import "./chunk-K4WIOZFP.js";
32
32
  import "./chunk-XUXGIA7H.js";
33
33
  import "./chunk-WERLJGIC.js";
34
34
  import "./chunk-ISN5GRYI.js";
35
- import "./chunk-TU2CQJO3.js";
35
+ import "./chunk-3NSVHCOH.js";
36
36
  import "./chunk-EOVYQ3IG.js";
37
37
  import "./chunk-XT6MXC7A.js";
38
38
  import "./chunk-JYVGYKXG.js";
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-LFGJWOVA.js";
12
12
  import {
13
13
  resolveProject
14
- } from "./chunk-37LNY2EC.js";
14
+ } from "./chunk-YJKUE3LV.js";
15
15
  import "./chunk-K2FLNJVB.js";
16
16
  import "./chunk-X7MTZ4T2.js";
17
17
  import {
@@ -22,15 +22,15 @@ import {
22
22
  resolvePlayerPath,
23
23
  resolveRuntimePath,
24
24
  revalidatedResponse
25
- } from "./chunk-SHVDJON6.js";
25
+ } from "./chunk-XWWYGXJ5.js";
26
26
  import {
27
27
  injectMediaCodecMapIntoHtml
28
- } from "./chunk-VD7WQYTO.js";
29
- import "./chunk-PINFPWRV.js";
28
+ } from "./chunk-5YSHR4XC.js";
29
+ import "./chunk-GIPNECWL.js";
30
+ import "./chunk-6JR2XUEE.js";
30
31
  import {
31
32
  requestSubPath
32
33
  } from "./chunk-C6TPGUWD.js";
33
- import "./chunk-6JR2XUEE.js";
34
34
  import {
35
35
  PROXY_VARIANT_CONFIG,
36
36
  ProxyCapacityError,
@@ -57,8 +57,8 @@ import "./chunk-AWDFDFI3.js";
57
57
  import "./chunk-P6LJ4Y32.js";
58
58
  import "./chunk-GMECXFAN.js";
59
59
  import "./chunk-5CS4T6C6.js";
60
- import "./chunk-KRE55WLI.js";
61
- import "./chunk-ICZVCVD3.js";
60
+ import "./chunk-YLBV2PXM.js";
61
+ import "./chunk-ZEWX3GHP.js";
62
62
  import "./chunk-VWG7OQKU.js";
63
63
  import "./chunk-QWQ6GQTI.js";
64
64
  import {
@@ -83,7 +83,7 @@ import "./chunk-K4WIOZFP.js";
83
83
  import "./chunk-XUXGIA7H.js";
84
84
  import "./chunk-WERLJGIC.js";
85
85
  import "./chunk-ISN5GRYI.js";
86
- import "./chunk-TU2CQJO3.js";
86
+ import "./chunk-3NSVHCOH.js";
87
87
  import "./chunk-EOVYQ3IG.js";
88
88
  import "./chunk-XT6MXC7A.js";
89
89
  import "./chunk-LYIG2GZ5.js";
@@ -252,7 +252,7 @@ var play_default = defineCommand({
252
252
  }
253
253
  });
254
254
  async function registerCompositionRoute(app, project, autoProxy) {
255
- const { isSafePath } = await import("./studio-api-YM5HLXUS.js");
255
+ const { isSafePath } = await import("./studio-api-RYCDLEOR.js");
256
256
  app.get("/composition/*", async (ctx) => {
257
257
  const reqPath = requestSubPath(ctx.req.url, "composition");
258
258
  const filePath = resolve(project.dir, reqPath);
@@ -11,26 +11,26 @@ import {
11
11
  } from "./chunk-LFGJWOVA.js";
12
12
  import {
13
13
  resolveProject
14
- } from "./chunk-37LNY2EC.js";
14
+ } from "./chunk-YJKUE3LV.js";
15
15
  import "./chunk-K2FLNJVB.js";
16
16
  import {
17
17
  assetContentType,
18
18
  listenOnFreePort,
19
19
  resolvePlayerPath,
20
20
  resolveSlideshowPath
21
- } from "./chunk-SHVDJON6.js";
22
- import "./chunk-VD7WQYTO.js";
23
- import "./chunk-PINFPWRV.js";
21
+ } from "./chunk-XWWYGXJ5.js";
22
+ import "./chunk-5YSHR4XC.js";
23
+ import "./chunk-GIPNECWL.js";
24
+ import "./chunk-6JR2XUEE.js";
24
25
  import {
25
26
  requestSubPath
26
27
  } from "./chunk-C6TPGUWD.js";
27
- import "./chunk-6JR2XUEE.js";
28
28
  import "./chunk-4ID635FL.js";
29
29
  import "./chunk-JGYHWVXQ.js";
30
30
  import "./chunk-FFDC5OWV.js";
31
31
  import "./chunk-5CS4T6C6.js";
32
- import "./chunk-KRE55WLI.js";
33
- import "./chunk-ICZVCVD3.js";
32
+ import "./chunk-YLBV2PXM.js";
33
+ import "./chunk-ZEWX3GHP.js";
34
34
  import "./chunk-VWG7OQKU.js";
35
35
  import "./chunk-QWQ6GQTI.js";
36
36
  import {
@@ -55,7 +55,7 @@ import "./chunk-K4WIOZFP.js";
55
55
  import "./chunk-XUXGIA7H.js";
56
56
  import "./chunk-WERLJGIC.js";
57
57
  import "./chunk-ISN5GRYI.js";
58
- import "./chunk-TU2CQJO3.js";
58
+ import "./chunk-3NSVHCOH.js";
59
59
  import "./chunk-EOVYQ3IG.js";
60
60
  import "./chunk-XT6MXC7A.js";
61
61
  import "./chunk-LYIG2GZ5.js";
@@ -342,7 +342,7 @@ function escHtml(value) {
342
342
  return value.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
343
343
  }
344
344
  async function registerPresentCompositionRoute(app, project) {
345
- const { isSafePath } = await import("./studio-api-YM5HLXUS.js");
345
+ const { isSafePath } = await import("./studio-api-RYCDLEOR.js");
346
346
  app.get("/composition/*", (ctx) => {
347
347
  const reqPath = requestSubPath(ctx.req.url, "composition");
348
348
  const filePath = resolve(project.dir, reqPath);
@@ -18,7 +18,7 @@ import {
18
18
  import {
19
19
  resolveProject,
20
20
  resolveProjectOrThrow
21
- } from "./chunk-37LNY2EC.js";
21
+ } from "./chunk-YJKUE3LV.js";
22
22
  import "./chunk-K2FLNJVB.js";
23
23
  import "./chunk-DCAI5DBR.js";
24
24
  import {
@@ -44,8 +44,8 @@ import "./chunk-EVRUR7DW.js";
44
44
  import "./chunk-AWDFDFI3.js";
45
45
  import "./chunk-P6LJ4Y32.js";
46
46
  import "./chunk-GMECXFAN.js";
47
- import "./chunk-KRE55WLI.js";
48
- import "./chunk-ICZVCVD3.js";
47
+ import "./chunk-YLBV2PXM.js";
48
+ import "./chunk-ZEWX3GHP.js";
49
49
  import "./chunk-VWG7OQKU.js";
50
50
  import "./chunk-QWQ6GQTI.js";
51
51
  import {
@@ -70,7 +70,7 @@ import "./chunk-WERLJGIC.js";
70
70
  import {
71
71
  isDevMode
72
72
  } from "./chunk-ISN5GRYI.js";
73
- import "./chunk-TU2CQJO3.js";
73
+ import "./chunk-3NSVHCOH.js";
74
74
  import "./chunk-EOVYQ3IG.js";
75
75
  import {
76
76
  buildNpxCommand
@@ -1701,7 +1701,7 @@ async function runLocalStudioMode(dir, options) {
1701
1701
  return waitForStudioChildClose(child);
1702
1702
  }
1703
1703
  async function runEmbeddedMode(dir, startPort, options) {
1704
- const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-CEXJK5TC.js");
1704
+ const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-B7H7EQ4U.js");
1705
1705
  const pName = options?.projectName ?? basename(dir);
1706
1706
  const studioBundle = resolveStudioBundle();
1707
1707
  if (!options?.json) ge(c.bold("hyperframes preview"));
@@ -15,8 +15,8 @@ import {
15
15
  writeTeamProject,
16
16
  zipPublishFileMap
17
17
  } from "./chunk-YU2QRNWN.js";
18
- import "./chunk-KMAAOHLO.js";
19
18
  import "./chunk-YJDB4FLT.js";
19
+ import "./chunk-KMAAOHLO.js";
20
20
  import {
21
21
  envCredentialVar
22
22
  } from "./chunk-NAMGMP3R.js";
@@ -6,11 +6,11 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  maybePromptRenderFeedback
9
- } from "./chunk-D2WGLWIK.js";
9
+ } from "./chunk-5K34RPE5.js";
10
10
  import {
11
11
  captureArtifactRevision
12
- } from "./chunk-GOASXWDD.js";
13
- import "./chunk-V2FQQILJ.js";
12
+ } from "./chunk-FF5TAEPT.js";
13
+ import "./chunk-JJYFRAI4.js";
14
14
  import "./chunk-X7MTZ4T2.js";
15
15
  import {
16
16
  reportVariableIssues,
@@ -41,7 +41,7 @@ import {
41
41
  } from "./chunk-EDUBJPGL.js";
42
42
  import {
43
43
  resolveProject
44
- } from "./chunk-37LNY2EC.js";
44
+ } from "./chunk-YJKUE3LV.js";
45
45
  import {
46
46
  errorBox,
47
47
  formatBytes,
@@ -82,8 +82,8 @@ import {
82
82
  trackRenderError,
83
83
  trackRenderObservation,
84
84
  trackRenderPreflightRejected
85
- } from "./chunk-KRE55WLI.js";
86
- import "./chunk-ICZVCVD3.js";
85
+ } from "./chunk-YLBV2PXM.js";
86
+ import "./chunk-ZEWX3GHP.js";
87
87
  import "./chunk-VWG7OQKU.js";
88
88
  import {
89
89
  bytesToMb
@@ -124,7 +124,7 @@ import {
124
124
  } from "./chunk-ISN5GRYI.js";
125
125
  import {
126
126
  VERSION
127
- } from "./chunk-TU2CQJO3.js";
127
+ } from "./chunk-3NSVHCOH.js";
128
128
  import "./chunk-EOVYQ3IG.js";
129
129
  import {
130
130
  createRenderCancellationScope
@@ -15,18 +15,21 @@ import {
15
15
  import {
16
16
  DEFAULT_MAX_WAIT_MS,
17
17
  DEFAULT_POLL_INTERVAL_MS,
18
- HyperframesApiError,
19
18
  PollTimeoutError,
20
19
  createCloudClient,
21
20
  pollUntilTerminal,
22
21
  reportApiError
23
- } from "./chunk-IYLHJV34.js";
22
+ } from "./chunk-TDPVEMBS.js";
23
+ import {
24
+ uploadZipViaDirectUpload
25
+ } from "./chunk-J4L5TPLS.js";
26
+ import "./chunk-5UBZPG74.js";
24
27
  import {
25
28
  buildPublishFileMap,
26
29
  zipPublishFileMap
27
30
  } from "./chunk-YU2QRNWN.js";
28
- import "./chunk-KMAAOHLO.js";
29
31
  import "./chunk-YJDB4FLT.js";
32
+ import "./chunk-KMAAOHLO.js";
30
33
  import "./chunk-NAMGMP3R.js";
31
34
  import {
32
35
  reportVariableIssues,
@@ -35,15 +38,15 @@ import {
35
38
  } from "./chunk-B7RUGHBT.js";
36
39
  import {
37
40
  resolveProject
38
- } from "./chunk-37LNY2EC.js";
41
+ } from "./chunk-YJKUE3LV.js";
39
42
  import {
40
43
  errorBox,
41
44
  formatBytes,
42
45
  formatDuration
43
46
  } from "./chunk-K2FLNJVB.js";
44
47
  import "./chunk-442JNXRM.js";
45
- import "./chunk-KRE55WLI.js";
46
- import "./chunk-ICZVCVD3.js";
48
+ import "./chunk-YLBV2PXM.js";
49
+ import "./chunk-ZEWX3GHP.js";
47
50
  import "./chunk-VWG7OQKU.js";
48
51
  import "./chunk-QWQ6GQTI.js";
49
52
  import {
@@ -58,12 +61,12 @@ import {
58
61
  } from "./chunk-ZTZA4UWZ.js";
59
62
  import {
60
63
  withMeta
61
- } from "./chunk-FRGYHRP6.js";
64
+ } from "./chunk-T5BG7PYZ.js";
62
65
  import "./chunk-K4WIOZFP.js";
63
66
  import "./chunk-XUXGIA7H.js";
64
67
  import "./chunk-WERLJGIC.js";
65
68
  import "./chunk-ISN5GRYI.js";
66
- import "./chunk-TU2CQJO3.js";
69
+ import "./chunk-3NSVHCOH.js";
67
70
  import {
68
71
  downloadToFile
69
72
  } from "./chunk-BXCMXMJQ.js";
@@ -136,84 +139,6 @@ function detectAspectRatioFromHtmlString(html) {
136
139
  return { kind: "no-match", width, height, ratio };
137
140
  }
138
141
 
139
- // src/cloud/upload.ts
140
- import { createHash } from "crypto";
141
- var COMPLETE_MAX_RETRIES = 5;
142
- var COMPLETE_RETRY_BASE_MS = 500;
143
- var CONTENT_TYPE_ZIP = "application/zip";
144
- function sha256Hex(bytes) {
145
- return createHash("sha256").update(bytes).digest("hex");
146
- }
147
- function sleep(ms) {
148
- return new Promise((r) => setTimeout(r, ms));
149
- }
150
- function normalizeUploadHeaders(raw) {
151
- const out = {};
152
- for (const [k, v] of Object.entries(raw ?? {})) {
153
- if (typeof v === "string") out[k] = v;
154
- else if (typeof v === "number" || typeof v === "boolean") out[k] = String(v);
155
- }
156
- return out;
157
- }
158
- async function putBytesToPresignedUrl(fetchImpl, uploadUrl, uploadHeaders, bytes) {
159
- const headers = {
160
- "content-type": CONTENT_TYPE_ZIP,
161
- ...normalizeUploadHeaders(uploadHeaders)
162
- };
163
- const res = await fetchImpl(uploadUrl, {
164
- method: "PUT",
165
- headers,
166
- body: bytes
167
- });
168
- if (!res.ok) {
169
- const detail = await res.text().catch(() => "");
170
- throw new Error(
171
- `Direct upload PUT failed: ${res.status} ${res.statusText}${detail ? ` \u2014 ${detail.slice(0, 300)}` : ""}`
172
- );
173
- }
174
- }
175
- async function completeWithRetry(client, asset_id, checksum_sha256) {
176
- let lastErr;
177
- for (let attempt = 0; attempt < COMPLETE_MAX_RETRIES; attempt++) {
178
- try {
179
- return await client.completeAssetUpload({
180
- asset_id,
181
- body: { checksum_sha256 }
182
- });
183
- } catch (err) {
184
- const retryable = err instanceof HyperframesApiError && err.status === 409;
185
- if (!retryable || attempt === COMPLETE_MAX_RETRIES - 1) {
186
- throw err;
187
- }
188
- lastErr = err;
189
- await sleep(COMPLETE_RETRY_BASE_MS * (attempt + 1));
190
- }
191
- }
192
- throw lastErr ?? new Error("completeAssetUpload retries exhausted");
193
- }
194
- async function uploadZipViaDirectUpload(opts) {
195
- const start = Date.now();
196
- const { bytes, filename, idempotencyKey } = opts;
197
- const size_bytes = bytes.byteLength;
198
- const checksum_sha256 = sha256Hex(bytes);
199
- const fetchImpl = opts.fetchImpl ?? fetch;
200
- opts.onProgress?.({ phase: "initialize" });
201
- const initialize = await opts.client.createAssetUpload({
202
- body: { filename, content_type: CONTENT_TYPE_ZIP, size_bytes, checksum_sha256 },
203
- idempotencyKey
204
- });
205
- opts.onProgress?.({ phase: "upload", percent: 0 });
206
- await putBytesToPresignedUrl(fetchImpl, initialize.upload_url, initialize.upload_headers, bytes);
207
- opts.onProgress?.({ phase: "upload", percent: 100 });
208
- opts.onProgress?.({ phase: "complete" });
209
- const completed = await completeWithRetry(opts.client, initialize.asset_id, checksum_sha256);
210
- return {
211
- asset_id: completed.asset_id,
212
- size_bytes,
213
- duration_ms: Date.now() - start
214
- };
215
- }
216
-
217
142
  // src/commands/cloud/render.ts
218
143
  import { isAbsolute, relative, resolve as resolvePath } from "path";
219
144
  import { existsSync } from "fs";
@@ -8,12 +8,8 @@ npx hyperframes beats ./my-video
8
8
  npx hyperframes beats ./my-video --json
9
9
  ```
10
10
 
11
- The project must contain a local music `<audio>` source. Mark it with `data-timeline-role="music"`; an id containing `music`, `bgm`, or `soundtrack` is also recognized. The command analyzes that file in headless Chrome and writes `beats/<audio-relative-path>.json`.
11
+ The project must contain a local music `<audio>` source. Mark it with `data-timeline-role="music"`; an id containing `music`, `bgm`, or `soundtrack` is also recognized. The command decodes that file with ffmpeg, tracks its beats, and writes `beats/<audio-relative-path>.json`.
12
12
 
13
- If no beats are detected, the command fails and writes nothing. If Chrome is unavailable, run:
14
-
15
- ```bash
16
- npx hyperframes browser ensure
17
- ```
13
+ If the track has no steady beat, the command fails and writes nothing. If ffmpeg is missing, run `npx hyperframes doctor`.
18
14
 
19
15
  For a complete beat-synced video, route through `/music-to-video`. That workflow owns a different audio-driven pipeline and its `audiomap.json`; do not replace its analyzer with this Studio utility.
@@ -6,8 +6,8 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  trackSkillsInstallSkipped
9
- } from "./chunk-KRE55WLI.js";
10
- import "./chunk-ICZVCVD3.js";
9
+ } from "./chunk-YLBV2PXM.js";
10
+ import "./chunk-ZEWX3GHP.js";
11
11
  import {
12
12
  diag
13
13
  } from "./chunk-VWG7OQKU.js";
@@ -35,15 +35,15 @@ import {
35
35
  isCoreSkill,
36
36
  presentSkills,
37
37
  pruneOrphanedLockEntries
38
- } from "./chunk-TTFDAWCS.js";
38
+ } from "./chunk-KIJO75L4.js";
39
39
  import {
40
40
  withMeta
41
- } from "./chunk-FRGYHRP6.js";
41
+ } from "./chunk-T5BG7PYZ.js";
42
42
  import "./chunk-K4WIOZFP.js";
43
43
  import "./chunk-XUXGIA7H.js";
44
44
  import "./chunk-WERLJGIC.js";
45
45
  import "./chunk-ISN5GRYI.js";
46
- import "./chunk-TU2CQJO3.js";
46
+ import "./chunk-3NSVHCOH.js";
47
47
  import {
48
48
  buildNpxCommand
49
49
  } from "./chunk-6BEFEWFB.js";
@@ -9,13 +9,13 @@ import {
9
9
  printSkillsUpdateNotice,
10
10
  refreshSkillsCache,
11
11
  skillsCheckDue
12
- } from "./chunk-TTFDAWCS.js";
13
- import "./chunk-FRGYHRP6.js";
12
+ } from "./chunk-KIJO75L4.js";
13
+ import "./chunk-T5BG7PYZ.js";
14
14
  import "./chunk-K4WIOZFP.js";
15
15
  import "./chunk-XUXGIA7H.js";
16
16
  import "./chunk-WERLJGIC.js";
17
17
  import "./chunk-ISN5GRYI.js";
18
- import "./chunk-TU2CQJO3.js";
18
+ import "./chunk-3NSVHCOH.js";
19
19
  import "./chunk-KNU5COPB.js";
20
20
  import "./chunk-M2WBOQ2Q.js";
21
21
  export {
@@ -17,8 +17,8 @@ import {
17
17
  } from "./chunk-57GN6KWT.js";
18
18
  import {
19
19
  captureArtifactRevision
20
- } from "./chunk-GOASXWDD.js";
21
- import "./chunk-V2FQQILJ.js";
20
+ } from "./chunk-FF5TAEPT.js";
21
+ import "./chunk-JJYFRAI4.js";
22
22
  import "./chunk-X7MTZ4T2.js";
23
23
  import {
24
24
  DEFAULT_ZOOM_SCALE,
@@ -28,9 +28,9 @@ import {
28
28
  resolveCropRegion,
29
29
  runFfmpegOnce,
30
30
  seekCompositionTimeline
31
- } from "./chunk-6MCASYIS.js";
32
- import "./chunk-FH7WODJH.js";
31
+ } from "./chunk-ON2HYNGB.js";
33
32
  import "./chunk-B5FZ2CQM.js";
33
+ import "./chunk-FH7WODJH.js";
34
34
  import "./chunk-ERTJPFCH.js";
35
35
  import "./chunk-WPNE5NEP.js";
36
36
  import {
@@ -38,23 +38,23 @@ import {
38
38
  } from "./chunk-6CSYCFQV.js";
39
39
  import {
40
40
  resolveProject
41
- } from "./chunk-37LNY2EC.js";
41
+ } from "./chunk-YJKUE3LV.js";
42
42
  import "./chunk-K2FLNJVB.js";
43
43
  import {
44
44
  serveStaticProjectHtml
45
- } from "./chunk-GOTCGKX6.js";
45
+ } from "./chunk-RGYEL7QD.js";
46
46
  import "./chunk-X7MTZ4T2.js";
47
- import "./chunk-SHVDJON6.js";
47
+ import "./chunk-XWWYGXJ5.js";
48
48
  import "./chunk-DQBY7FRR.js";
49
49
  import {
50
50
  resolveLocalBrowserGpuMode
51
51
  } from "./chunk-SB5DX6AD.js";
52
52
  import "./chunk-442JNXRM.js";
53
53
  import "./chunk-XUHOIDKG.js";
54
- import "./chunk-VD7WQYTO.js";
55
- import "./chunk-PINFPWRV.js";
56
- import "./chunk-C6TPGUWD.js";
54
+ import "./chunk-5YSHR4XC.js";
55
+ import "./chunk-GIPNECWL.js";
57
56
  import "./chunk-6JR2XUEE.js";
57
+ import "./chunk-C6TPGUWD.js";
58
58
  import "./chunk-4ID635FL.js";
59
59
  import {
60
60
  artifactDirectory,
@@ -75,8 +75,8 @@ import "./chunk-AWDFDFI3.js";
75
75
  import "./chunk-P6LJ4Y32.js";
76
76
  import "./chunk-GMECXFAN.js";
77
77
  import "./chunk-5CS4T6C6.js";
78
- import "./chunk-KRE55WLI.js";
79
- import "./chunk-ICZVCVD3.js";
78
+ import "./chunk-YLBV2PXM.js";
79
+ import "./chunk-ZEWX3GHP.js";
80
80
  import "./chunk-VWG7OQKU.js";
81
81
  import "./chunk-QWQ6GQTI.js";
82
82
  import {
@@ -100,7 +100,7 @@ import "./chunk-K4WIOZFP.js";
100
100
  import "./chunk-XUXGIA7H.js";
101
101
  import "./chunk-WERLJGIC.js";
102
102
  import "./chunk-ISN5GRYI.js";
103
- import "./chunk-TU2CQJO3.js";
103
+ import "./chunk-3NSVHCOH.js";
104
104
  import {
105
105
  loadOptionalPackage
106
106
  } from "./chunk-3DKN5WKL.js";
@@ -7,14 +7,14 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  inProcessAnswer,
9
9
  serveStaticProjectHtml
10
- } from "./chunk-GOTCGKX6.js";
10
+ } from "./chunk-RGYEL7QD.js";
11
11
  import "./chunk-X7MTZ4T2.js";
12
- import "./chunk-SHVDJON6.js";
12
+ import "./chunk-XWWYGXJ5.js";
13
13
  import "./chunk-XUHOIDKG.js";
14
- import "./chunk-VD7WQYTO.js";
15
- import "./chunk-PINFPWRV.js";
16
- import "./chunk-C6TPGUWD.js";
14
+ import "./chunk-5YSHR4XC.js";
15
+ import "./chunk-GIPNECWL.js";
17
16
  import "./chunk-6JR2XUEE.js";
17
+ import "./chunk-C6TPGUWD.js";
18
18
  import "./chunk-4ID635FL.js";
19
19
  import "./chunk-JGYHWVXQ.js";
20
20
  import "./chunk-FFDC5OWV.js";
@@ -1,4 +1,4 @@
1
- var xe=Object.defineProperty;var Ie=(r,i,e)=>i in r?xe(r,i,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[i]=e;var l=(r,i,e)=>Ie(r,typeof i!="symbol"?i+"":i,e);import{S as Oe,r as Ne,a as fe,i as Fe,b as w,c as _e,p as Ve,d as Ue,e as He,f as We,s as ze,g as ge,F as ye}from"./index-D7BvLHtZ.js";function $e(r){return r.hasRuntime||r.runtimeInjected?!1:!!(r.hasNestedCompositions||r.hasTimelines&&r.attempts>=5)}function x(r){return typeof r=="object"&&r!==null}function je(r){return x(r)&&typeof r.getDuration=="function"}function Be(r){return x(r)&&typeof r.duration=="function"&&typeof r.time=="function"&&typeof r.seek=="function"&&typeof r.play=="function"&&typeof r.pause=="function"}function qe(r){if(!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/.test(r))throw new Error(`Invalid HyperFrames runtime version: ${r}`);return`https://cdn.jsdelivr.net/npm/@hyperframes/core@${r}/dist/hyperframe.runtime.iife.js`}const W=typeof __HYPERFRAMES_RUNTIME_CDN_URL__=="string"?__HYPERFRAMES_RUNTIME_CDN_URL__:qe("0.0.0-dev");function $(r){if(r===null)return null;const i=Number.parseInt(r,10);return Number.isFinite(i)&&i>0?i:null}function Ge(r){const i=(r==null?void 0:r.querySelector("[data-composition-id][data-width][data-height]"))??(r==null?void 0:r.querySelector("[data-width][data-height]"));if(!i)return null;const e=$(i.getAttribute("data-width")),t=$(i.getAttribute("data-height"));return e!==null&&t!==null?{width:e,height:t}:null}function Ye(r){return Array.isArray(r)?r.find(i=>typeof i=="string"&&i.trim()!==""&&i!=="[object Event]")??null:null}class Xe{constructor(i,e){l(this,"_interval",null);l(this,"_runtimeInjected",!1);l(this,"_runtimeScript",null);l(this,"_failure",null);this._iframe=i,this._callbacks=e}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 i=0;this._interval=setInterval(()=>{i++;let e=null;try{e=this._poll(i)}catch(t){t instanceof DOMException&&t.name==="SecurityError"||(e={kind:"error",message:t instanceof Error?t.message:String(t)})}if(e){this.stop(),e.kind==="error"?(this._failure={document:this._iframe.contentDocument},this._callbacks.onError(e.message)):this._callbacks.onReady(e.result);return}i>=40&&(this.stop(),this._failure={document:this._iframe.contentDocument},this._callbacks.onError("Composition timeline not found after 8s"))},200)}_poll(i){const e=this._iframe.contentWindow;if(!e)return null;const t=Ye(Reflect.get(e,Oe));if(t!==null)return{kind:"error",message:t};const s=this._iframe.contentDocument,n=Reflect.get(e,"__timelines"),o=this.hasRuntimeBridge(e);if($e({hasRuntime:o,hasTimelines:x(n)&&Object.keys(n).length>0,hasNestedCompositions:!!(s!=null&&s.querySelector("[data-composition-src]")),runtimeInjected:this._runtimeInjected,attempts:i}))return this._injectRuntime(),null;if(this._runtimeInjected&&!o)return null;const a=this._resolveReadyResult(e,s);return a?{kind:"ready",result:a}:null}_resolveReadyResult(i,e){var n;const t=this._resolvePlaybackDurationAdapter(i)??{kind:"document",getDuration:()=>0};let s=t.getDuration();if(!Number.isFinite(s)||s<=0){if(t.kind==="direct-timeline")return null;s=e?((n=Ne(e))==null?void 0:n.durationSeconds)??0:0}return s<=0?null:{duration:s,adapter:{...t,getDuration:()=>s},compositionSize:Ge(e)}}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{const i=this._iframe.contentWindow;return i?this._resolveDirectTimelineAdapterFromWindow(i):null}catch{return null}}resolveDirectTimelineAdapterFromWindow(i){return this._resolveDirectTimelineAdapterFromWindow(i)}hasRuntimeBridge(i){return x(Reflect.get(i,"__player"))}_injectRuntime(){var i,e,t,s;this._runtimeInjected=!0;try{const n=this._iframe.contentDocument;if(!n)return;const o=n.createElement("script");o.src=((e=(i=this._callbacks).resolveRuntimeUrl)==null?void 0:e.call(i))??W,this._runtimeScript=o,o.onerror=()=>{this._runtimeScript!==o||this._iframe.contentDocument!==n||(this.stop(),this._failure={document:n},this._callbacks.onError("HyperFrames runtime failed to load from "+o.src))},(n.head||n.documentElement).appendChild(o),(s=(t=this._callbacks).onRuntimeInjected)==null||s.call(t)}catch{}}_resolveDirectTimelineAdapterFromWindow(i){var a,c;if(this.hasRuntimeBridge(i))return null;const e=Reflect.get(i,"__timelines");if(!x(e))return null;const t=Object.keys(e);if(t.length===0)return null;const s=(c=(a=this._iframe.contentDocument)==null?void 0:a.querySelector("[data-composition-id]"))==null?void 0:c.getAttribute("data-composition-id"),n=s&&s in e?s:t[t.length-1],o=e[n];return Be(o)?o:null}_resolvePlaybackDurationAdapter(i){const e=Reflect.get(i,"__player");if(je(e))return{kind:"runtime",getDuration:()=>e.getDuration()};const t=this._resolveDirectTimelineAdapterFromWindow(i);return t?{kind:"direct-timeline",timeline:t,getDuration:()=>t.duration()}:null}}const Ze=`
1
+ var xe=Object.defineProperty;var Ie=(r,i,e)=>i in r?xe(r,i,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[i]=e;var l=(r,i,e)=>Ie(r,typeof i!="symbol"?i+"":i,e);import{S as Oe,r as Ne,a as fe,i as Fe,b as w,c as _e,p as Ve,d as Ue,e as He,f as We,s as ze,g as ge,F as ye}from"./index-B82aOvgB.js";function $e(r){return r.hasRuntime||r.runtimeInjected?!1:!!(r.hasNestedCompositions||r.hasTimelines&&r.attempts>=5)}function x(r){return typeof r=="object"&&r!==null}function je(r){return x(r)&&typeof r.getDuration=="function"}function Be(r){return x(r)&&typeof r.duration=="function"&&typeof r.time=="function"&&typeof r.seek=="function"&&typeof r.play=="function"&&typeof r.pause=="function"}function qe(r){if(!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/.test(r))throw new Error(`Invalid HyperFrames runtime version: ${r}`);return`https://cdn.jsdelivr.net/npm/@hyperframes/core@${r}/dist/hyperframe.runtime.iife.js`}const W=typeof __HYPERFRAMES_RUNTIME_CDN_URL__=="string"?__HYPERFRAMES_RUNTIME_CDN_URL__:qe("0.0.0-dev");function $(r){if(r===null)return null;const i=Number.parseInt(r,10);return Number.isFinite(i)&&i>0?i:null}function Ge(r){const i=(r==null?void 0:r.querySelector("[data-composition-id][data-width][data-height]"))??(r==null?void 0:r.querySelector("[data-width][data-height]"));if(!i)return null;const e=$(i.getAttribute("data-width")),t=$(i.getAttribute("data-height"));return e!==null&&t!==null?{width:e,height:t}:null}function Ye(r){return Array.isArray(r)?r.find(i=>typeof i=="string"&&i.trim()!==""&&i!=="[object Event]")??null:null}class Xe{constructor(i,e){l(this,"_interval",null);l(this,"_runtimeInjected",!1);l(this,"_runtimeScript",null);l(this,"_failure",null);this._iframe=i,this._callbacks=e}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 i=0;this._interval=setInterval(()=>{i++;let e=null;try{e=this._poll(i)}catch(t){t instanceof DOMException&&t.name==="SecurityError"||(e={kind:"error",message:t instanceof Error?t.message:String(t)})}if(e){this.stop(),e.kind==="error"?(this._failure={document:this._iframe.contentDocument},this._callbacks.onError(e.message)):this._callbacks.onReady(e.result);return}i>=40&&(this.stop(),this._failure={document:this._iframe.contentDocument},this._callbacks.onError("Composition timeline not found after 8s"))},200)}_poll(i){const e=this._iframe.contentWindow;if(!e)return null;const t=Ye(Reflect.get(e,Oe));if(t!==null)return{kind:"error",message:t};const s=this._iframe.contentDocument,n=Reflect.get(e,"__timelines"),o=this.hasRuntimeBridge(e);if($e({hasRuntime:o,hasTimelines:x(n)&&Object.keys(n).length>0,hasNestedCompositions:!!(s!=null&&s.querySelector("[data-composition-src]")),runtimeInjected:this._runtimeInjected,attempts:i}))return this._injectRuntime(),null;if(this._runtimeInjected&&!o)return null;const a=this._resolveReadyResult(e,s);return a?{kind:"ready",result:a}:null}_resolveReadyResult(i,e){var n;const t=this._resolvePlaybackDurationAdapter(i)??{kind:"document",getDuration:()=>0};let s=t.getDuration();if(!Number.isFinite(s)||s<=0){if(t.kind==="direct-timeline")return null;s=e?((n=Ne(e))==null?void 0:n.durationSeconds)??0:0}return s<=0?null:{duration:s,adapter:{...t,getDuration:()=>s},compositionSize:Ge(e)}}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{const i=this._iframe.contentWindow;return i?this._resolveDirectTimelineAdapterFromWindow(i):null}catch{return null}}resolveDirectTimelineAdapterFromWindow(i){return this._resolveDirectTimelineAdapterFromWindow(i)}hasRuntimeBridge(i){return x(Reflect.get(i,"__player"))}_injectRuntime(){var i,e,t,s;this._runtimeInjected=!0;try{const n=this._iframe.contentDocument;if(!n)return;const o=n.createElement("script");o.src=((e=(i=this._callbacks).resolveRuntimeUrl)==null?void 0:e.call(i))??W,this._runtimeScript=o,o.onerror=()=>{this._runtimeScript!==o||this._iframe.contentDocument!==n||(this.stop(),this._failure={document:n},this._callbacks.onError("HyperFrames runtime failed to load from "+o.src))},(n.head||n.documentElement).appendChild(o),(s=(t=this._callbacks).onRuntimeInjected)==null||s.call(t)}catch{}}_resolveDirectTimelineAdapterFromWindow(i){var a,c;if(this.hasRuntimeBridge(i))return null;const e=Reflect.get(i,"__timelines");if(!x(e))return null;const t=Object.keys(e);if(t.length===0)return null;const s=(c=(a=this._iframe.contentDocument)==null?void 0:a.querySelector("[data-composition-id]"))==null?void 0:c.getAttribute("data-composition-id"),n=s&&s in e?s:t[t.length-1],o=e[n];return Be(o)?o:null}_resolvePlaybackDurationAdapter(i){const e=Reflect.get(i,"__player");if(je(e))return{kind:"runtime",getDuration:()=>e.getDuration()};const t=this._resolveDirectTimelineAdapterFromWindow(i);return t?{kind:"direct-timeline",timeline:t,getDuration:()=>t.duration()}:null}}const Ze=`
2
2
  :host {
3
3
  display: block;
4
4
  position: relative;