hyperframes 0.8.161 → 0.8.163

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 (154) hide show
  1. package/dist/{add-7U5TQGSQ.js → add-Y7BGO2MK.js} +11 -11
  2. package/dist/{animatedGifPrep-YAJTDXB7.js → animatedGifPrep-NUU6VMFL.js} +5 -5
  3. package/dist/api.js +11 -11
  4. package/dist/{asset-N3JO5LHY.js → asset-OONPCZS5.js} +2 -2
  5. package/dist/{assetCataloger-BIDQA34M.js → assetCataloger-YWJRJK23.js} +2 -2
  6. package/dist/{audio-QNPSENQR.js → audio-KPTXNHDC.js} +47 -25
  7. package/dist/{auth-HINUM4A7.js → auth-UKXSZ4WA.js} +1 -1
  8. package/dist/{autoUpdate-AAMND4XK.js → autoUpdate-4MRUONUQ.js} +2 -2
  9. package/dist/{backgroundChecks-FXIEHPND.js → backgroundChecks-X5M7Z6L7.js} +3 -3
  10. package/dist/backgroundChecksWorker.js +3 -3
  11. package/dist/{batchRender-C2JCG5EK.js → batchRender-GJ65EZ26.js} +3 -3
  12. package/dist/{beats-UZNREIRU.js → beats-EQNT7OZE.js} +4 -4
  13. package/dist/{benchmark-YM3QXPH6.js → benchmark-WXWALVZJ.js} +8 -8
  14. package/dist/{browser-SD3T2XMH.js → browser-ZSNFVRC3.js} +3 -3
  15. package/dist/{bundleWithLocalizedFonts-SLBVWQ7O.js → bundleWithLocalizedFonts-O3BXZLCD.js} +2 -2
  16. package/dist/{capture-GUO23PVN.js → capture-JFFYE7XM.js} +2 -2
  17. package/dist/{capture-M5ZAD3BI.js → capture-TKWJBFGC.js} +9 -9
  18. package/dist/{catalog-6PF7KZAZ.js → catalog-LK5MNUQY.js} +11 -11
  19. package/dist/{catch-up-5LTQTD3X.js → catch-up-ISTWIF6K.js} +4 -4
  20. package/dist/{check-NE2YXJR2.js → check-YVEBXKNY.js} +30 -30
  21. package/dist/{checkBrowser-XDTXDEYO.js → checkBrowser-OJAXYTRD.js} +28 -27
  22. package/dist/{chunk-VXVRPIJA.js → chunk-23IS5QVP.js} +69 -1
  23. package/dist/{chunk-B5FZ2CQM.js → chunk-2ALJMIFW.js} +1 -1
  24. package/dist/{chunk-KZPG4DXX.js → chunk-2XIPB4MP.js} +1 -1
  25. package/dist/{chunk-RTS7BGEC.js → chunk-3E3VMAAM.js} +1 -1
  26. package/dist/{chunk-MMV6IY6U.js → chunk-3KY7FUSS.js} +2 -2
  27. package/dist/{chunk-XTLV6UVP.js → chunk-3TKNBY6K.js} +2 -2
  28. package/dist/{chunk-LYIG2GZ5.js → chunk-42AER3PM.js} +1 -1
  29. package/dist/{chunk-AY2FEJDR.js → chunk-43H7XDO6.js} +2 -2
  30. package/dist/{chunk-B7RUGHBT.js → chunk-4LXWLCIX.js} +1 -1
  31. package/dist/{chunk-H4VXLZ6O.js → chunk-54E2ELUA.js} +9 -9
  32. package/dist/{chunk-4ID635FL.js → chunk-5K5YH6M7.js} +1 -1
  33. package/dist/{chunk-IYLHJV34.js → chunk-5UBZPG74.js} +1 -143
  34. package/dist/{chunk-GJQHHAAX.js → chunk-74H5SHQL.js} +3 -3
  35. package/dist/{chunk-PLEMSN3E.js → chunk-A356JY2J.js} +29 -19
  36. package/dist/{chunk-OMJA7JP6.js → chunk-AFPGUKMN.js} +4 -4
  37. package/dist/{chunk-RGYEL7QD.js → chunk-AXATVUCD.js} +3 -3
  38. package/dist/{chunk-GG37I7B3.js → chunk-BHGIBGUZ.js} +1 -1
  39. package/dist/{chunk-5YSHR4XC.js → chunk-CXVBPW5F.js} +6 -6
  40. package/dist/{chunk-GIPNECWL.js → chunk-D5PUMG2P.js} +1 -1
  41. package/dist/{chunk-D33YJZOH.js → chunk-DSXDYQQV.js} +1 -1
  42. package/dist/{chunk-PPF65XAF.js → chunk-GD7VU7CY.js} +1 -1
  43. package/dist/{chunk-ERTJPFCH.js → chunk-H3JGPRWA.js} +1 -1
  44. package/dist/{chunk-EVRUR7DW.js → chunk-H45RC6HN.js} +1 -1
  45. package/dist/{chunk-DJZEIVAP.js → chunk-H46R2BND.js} +1 -1
  46. package/dist/{chunk-HM4PLNTX.js → chunk-HQMWZNO2.js} +12 -1
  47. package/dist/chunk-J4L5TPLS.js +101 -0
  48. package/dist/{chunk-XWWYGXJ5.js → chunk-JEW5CCRU.js} +2 -2
  49. package/dist/{chunk-G5AZMSQP.js → chunk-JYR3YAAK.js} +1 -1
  50. package/dist/{chunk-CGOGEA62.js → chunk-LHETZ63N.js} +1 -1
  51. package/dist/{chunk-G642IIVK.js → chunk-LMHXUDSR.js} +1 -1
  52. package/dist/{chunk-SAS6XBY5.js → chunk-M4237QMQ.js} +1 -1
  53. package/dist/{chunk-WDUEIP22.js → chunk-NU4PDQ6G.js} +1 -1
  54. package/dist/{chunk-Q3TFX4OZ.js → chunk-NZ7K76Y2.js} +1 -1
  55. package/dist/{chunk-MP676E4B.js → chunk-O2CXBATN.js} +4 -3
  56. package/dist/{chunk-PBNV5V5G.js → chunk-OFD2XWIQ.js} +13 -2
  57. package/dist/{chunk-PYMYGIZ4.js → chunk-OGGPNDGO.js} +2 -2
  58. package/dist/{chunk-IL6C7T5X.js → chunk-OZUYK6IS.js} +1 -1
  59. package/dist/{chunk-N2NDDTYW.js → chunk-QGYAHDOR.js} +2 -2
  60. package/dist/{chunk-ON2HYNGB.js → chunk-QXAXCRK5.js} +6 -6
  61. package/dist/{chunk-2ZLYSXZC.js → chunk-R64V3KQN.js} +10 -9
  62. package/dist/{chunk-I6CVW5CA.js → chunk-SQN7N27A.js} +3 -3
  63. package/dist/chunk-TDPVEMBS.js +156 -0
  64. package/dist/{chunk-VYTGK5YA.js → chunk-TQMJKZS5.js} +18 -4
  65. package/dist/{chunk-P4QE7SSN.js → chunk-ULAB77ZO.js} +1 -1
  66. package/dist/{chunk-YU2QRNWN.js → chunk-UZOZ2W2E.js} +3 -2
  67. package/dist/{chunk-WNXVPPMV.js → chunk-VG3ZMY2H.js} +2 -2
  68. package/dist/{chunk-TXG6W4X4.js → chunk-WJVDUUH2.js} +2 -2
  69. package/dist/{chunk-PZH7FTRZ.js → chunk-WMXOKTGO.js} +7 -7
  70. package/dist/{chunk-7ZKEOQ5N.js → chunk-Z6P5OVCF.js} +1 -1
  71. package/dist/{chunk-SB5DX6AD.js → chunk-Z6VBXCYN.js} +2 -2
  72. package/dist/{chunk-P47XYVEQ.js → chunk-ZJO4SLHC.js} +1 -1
  73. package/dist/{chunk-AHNJMWMU.js → chunk-ZVOCFUPA.js} +9 -9
  74. package/dist/{clean-4Y4G3YV3.js → clean-PGEA3UPT.js} +11 -11
  75. package/dist/cli.js +53 -53
  76. package/dist/{cloud-BWXJB2B7.js → cloud-SAODZ2PK.js} +4 -4
  77. package/dist/{cloudrun-BIQXBUDO.js → cloudrun-RMBT2JQK.js} +3 -3
  78. package/dist/commands/layout-audit.browser.js +347 -20
  79. package/dist/{compare-OLLJBVNL.js → compare-R7X7LXCX.js} +22 -22
  80. package/dist/{compiler-57M6W5WY.js → compiler-RKH75FZH.js} +2 -2
  81. package/dist/{component-ULSAC45J.js → component-DTVCMTLX.js} +3 -3
  82. package/dist/{compositions-G2JTQBTJ.js → compositions-UXS2ISGS.js} +9 -9
  83. package/dist/{delete-BONV4XUI.js → delete-LIGHRH4L.js} +4 -3
  84. package/dist/{dist-4JFB3WAR.js → dist-P5OHBFEV.js} +2 -2
  85. package/dist/{doctor-EMLC4VZ4.js → doctor-6VR5JUWZ.js} +7 -7
  86. package/dist/{events-ZFGAA5UD.js → events-YP2MRCPP.js} +2 -2
  87. package/dist/{events-LF2J436R.js → events-ZQFIOH5Z.js} +3 -3
  88. package/dist/{feedback-WKCUQE6T.js → feedback-47UEIUOO.js} +7 -7
  89. package/dist/{figma-VJKG252Z.js → figma-ZTHHEDY5.js} +3 -3
  90. package/dist/fontLocalizeCli.js +7 -7
  91. package/dist/{get-OINAGI2B.js → get-EZGQNT7G.js} +4 -3
  92. package/dist/{gpuPolicy-VGE3I5J4.js → gpuPolicy-SYV7N237.js} +5 -5
  93. package/dist/{grade-compare-DY5VFXPK.js → grade-compare-SEFOAA4E.js} +22 -22
  94. package/dist/{help-HHB7JRZA.js → help-WIZONGVE.js} +1 -1
  95. package/dist/{history-D44JJBBC.js → history-PE45CSGA.js} +6 -6
  96. package/dist/hyperframe-runtime.js +23 -23
  97. package/dist/hyperframe.manifest.json +1 -1
  98. package/dist/hyperframe.runtime.iife.js +23 -23
  99. package/dist/hyperframes-player.global.js +1 -1
  100. package/dist/{info-2WZLISAR.js → info-WIRSMQKB.js} +7 -7
  101. package/dist/{init-UYZS2WXQ.js → init-N26RW4YN.js} +20 -20
  102. package/dist/{inspect-IEFCB4PT.js → inspect-XHQUASDV.js} +23 -23
  103. package/dist/{installer-T3STEB4U.js → installer-QWK7EA5M.js} +4 -4
  104. package/dist/{keyframes-FS43QHM2.js → keyframes-RNTYYHMK.js} +6 -6
  105. package/dist/{lambda-RAJA6ZNA.js → lambda-LQHGF3LK.js} +4 -4
  106. package/dist/{layout-AK2A7Q46.js → layout-YRCKPNAO.js} +23 -23
  107. package/dist/{lint-JRJUSZO7.js → lint-HLOZHJVM.js} +6 -6
  108. package/dist/{list-BKKGPT7E.js → list-X7NTQB32.js} +4 -3
  109. package/dist/{login-QJZTUDDO.js → login-S7PVNUEB.js} +4 -4
  110. package/dist/{media-treatment-473OM7G7.js → media-treatment-465Y6CWE.js} +8 -8
  111. package/dist/{models-OA4MXEYG.js → models-J2FZXHMD.js} +8 -8
  112. package/dist/{motionShot-C2YDYRNB.js → motionShot-K6OBEZ2N.js} +11 -11
  113. package/dist/{normalize-audio-M3KVTFTQ.js → normalize-audio-VODIXLAC.js} +4 -4
  114. package/dist/{open-363TDMEP.js → open-K5OZGYJ7.js} +4 -4
  115. package/dist/{parakeetRunner-DBLHMD5T.js → parakeetRunner-NDIU5PKO.js} +8 -8
  116. package/dist/{pipeline-FSY65OQ4.js → pipeline-UKGI44NN.js} +5 -5
  117. package/dist/{play-2UB33EGB.js → play-QOXKOZ6L.js} +16 -16
  118. package/dist/{present-F3ASSDJX.js → present-7CVCJIS3.js} +12 -12
  119. package/dist/{preview-EF76WIHK.js → preview-HX5F6RGT.js} +15 -15
  120. package/dist/{producer-C5V2A3YL.js → producer-66MQWVVQ.js} +1 -1
  121. package/dist/{projectConfig-X2IEHCSK.js → projectConfig-EVBNJKPS.js} +6 -6
  122. package/dist/{publication-JEANCWBW.js → publication-F6BOBZMI.js} +2 -2
  123. package/dist/{publish-VX5OH4ST.js → publish-6KTQDKL6.js} +8 -8
  124. package/dist/{remove-background-IXCISD26.js → remove-background-TJTKY3YM.js} +6 -6
  125. package/dist/{render-GUBYSVQD.js → render-TRU75TVB.js} +42 -29
  126. package/dist/{render-ISUT7Q3X.js → render-X4MWSR5L.js} +3 -3
  127. package/dist/{render-GL72Z2W2.js → render-XS22VQHC.js} +14 -89
  128. package/dist/{render-batch-2C6RUP3F.js → render-batch-VKFOIMV5.js} +3 -3
  129. package/dist/{resolver-KTNKZVIB.js → resolver-VGAM26OR.js} +4 -4
  130. package/dist/{sherpa-GFRG3TMM.js → sherpa-3OI5VMCY.js} +9 -7
  131. package/dist/skills/hyperframes-cli/references/lint-validate-inspect.md +1 -1
  132. package/dist/{skills-7XI4DHLN.js → skills-RKDR4AXV.js} +5 -5
  133. package/dist/{skillsUpdateCheck-34WOCMHV.js → skillsUpdateCheck-QWIERB7M.js} +3 -3
  134. package/dist/{snapshot-SGTO2OQ4.js → snapshot-SSSF334Y.js} +25 -25
  135. package/dist/{src-GPUDUKY6.js → src-LZXECBBQ.js} +4 -4
  136. package/dist/{src-IMCQRH4P.js → src-RQPKPFRO.js} +6 -6
  137. package/dist/{staticProjectServer-4CQ3KDQK.js → staticProjectServer-DMG2CER4.js} +12 -12
  138. package/dist/studio/assets/{hyperframes-player-C8VFb4NS.js → hyperframes-player-oCk9rjq9.js} +1 -1
  139. package/dist/studio/assets/{index-RZnZPb-B.js → index-BOQPXBQ0.js} +1 -1
  140. package/dist/studio/assets/{index-J8Bpbg6o.js → index-DK2wgdLx.js} +4 -4
  141. package/dist/studio/index.html +1 -1
  142. package/dist/{studio-api-RYCDLEOR.js → studio-api-KRPBPUYQ.js} +6 -6
  143. package/dist/{studioServer-VIIVGFZH.js → studioServer-KWNULEM4.js} +54 -41
  144. package/dist/{telemetry-YKVYLJSB.js → telemetry-4G6CD3X7.js} +3 -3
  145. package/dist/{timeline-LDRA7QZ3.js → timeline-TKPBJ4EP.js} +13 -13
  146. package/dist/{tokens-ZAOFRU55.js → tokens-TX7THSB7.js} +2 -2
  147. package/dist/{transcribe-CJXUHTAS.js → transcribe-7DBONX4C.js} +12 -12
  148. package/dist/{transcribe-FL6NGWHF.js → transcribe-HOLKYWY5.js} +6 -6
  149. package/dist/{updateCheck-TIRFQBSI.js → updateCheck-64D7B73Z.js} +2 -2
  150. package/dist/{upgrade-7R5G3MNO.js → upgrade-MXQDGGYO.js} +2 -2
  151. package/dist/{urlDownloader-KDJGLR2Y.js → urlDownloader-Z435W35E.js} +4 -4
  152. package/dist/{validate-VGEPWGQO.js → validate-5ZNGP5QO.js} +17 -17
  153. package/dist/{video-AHO4CDCK.js → video-62JJK3XL.js} +5 -5
  154. package/package.json +1 -1
@@ -21,10 +21,10 @@ import {
21
21
  emitWords,
22
22
  getPreparedWavDurationSeconds,
23
23
  prepareWav
24
- } from "./chunk-DJZEIVAP.js";
24
+ } from "./chunk-H46R2BND.js";
25
25
  import {
26
26
  stoppedByCancelSignal
27
- } from "./chunk-G642IIVK.js";
27
+ } from "./chunk-LMHXUDSR.js";
28
28
  import {
29
29
  PARAKEET_MODEL_LABEL,
30
30
  SHERPA_ERROR_PREFIX,
@@ -79,7 +79,7 @@ var PARAKEET_MODEL_FILES = [
79
79
  sha256: "d58544679ea4bc6ac563d1f545eb7d474bd6cfa467f0a6e2c1dc1c7d37e3c35d"
80
80
  }
81
81
  ];
82
- var decodeTimeoutMs = (audioSeconds) => Math.max(18e5, audioSeconds * 2e3);
82
+ var decodeTimeoutMs = (audioSeconds) => Math.min(2 ** 31 - 1, Math.max(18e5, Math.ceil(audioSeconds * 2e3)));
83
83
  var SUPPORTED_TARGETS = [
84
84
  "darwin-arm64",
85
85
  "darwin-x64",
@@ -381,6 +381,7 @@ async function transcribeWithSherpa(wavPath, dir, options) {
381
381
  export {
382
382
  SHERPA_RUNTIME_DIR,
383
383
  PARAKEET_MODEL_DIR,
384
+ decodeTimeoutMs,
384
385
  sherpaUnsupportedReason,
385
386
  sherpaRuntimeLoadError,
386
387
  sherpaPlatformPackage,
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-AWDFDFI3.js";
15
15
  import {
16
16
  isBlockedNetworkHost
17
- } from "./chunk-PLEMSN3E.js";
17
+ } from "./chunk-A356JY2J.js";
18
18
  import {
19
19
  DOMParser,
20
20
  parseHTML
@@ -376,7 +376,13 @@ async function validEmbeddedImages(references) {
376
376
 
377
377
  // src/capture/assetDownloader.ts
378
378
  function noDrops() {
379
- return { "size-floor": 0, "budget-exhausted": 0, "cap-reached": 0, unavailable: 0 };
379
+ return {
380
+ "size-floor": 0,
381
+ "size-ceiling": 0,
382
+ "budget-exhausted": 0,
383
+ "cap-reached": 0,
384
+ unavailable: 0
385
+ };
380
386
  }
381
387
  function mergeDrops(a, b) {
382
388
  const total = noDrops();
@@ -523,6 +529,7 @@ async function downloadAssets(tokens, outputDir, catalogedAssets, faviconLinks,
523
529
  ensureCaptureDirSync(outputDir, join(outputDir, "assets", "svgs"));
524
530
  const usedSvgNames = /* @__PURE__ */ new Set();
525
531
  const MAX_INLINE_SVGS = 30;
532
+ const MAX_INLINE_SVG_BYTES = 2 * 1024 * 1024;
526
533
  drops["cap-reached"] += Math.max(0, tokens.svgs.length - MAX_INLINE_SVGS);
527
534
  for (let i = 0; i < tokens.svgs.length && i < MAX_INLINE_SVGS; i++) {
528
535
  const svg = tokens.svgs[i];
@@ -531,6 +538,10 @@ async function downloadAssets(tokens, outputDir, catalogedAssets, faviconLinks,
531
538
  continue;
532
539
  }
533
540
  const svgFile = toStandaloneSvg(svg.outerHTML);
541
+ if (Buffer.byteLength(svgFile, "utf-8") > MAX_INLINE_SVG_BYTES) {
542
+ drops["size-ceiling"]++;
543
+ continue;
544
+ }
534
545
  const slug = svgContentHashSlug(svgFile, !!svg.isLogo);
535
546
  let finalSlug = slug;
536
547
  let suffix = 2;
@@ -20,7 +20,7 @@ import {
20
20
  typeDirPath,
21
21
  updateRecord,
22
22
  withFigmaErrors
23
- } from "./chunk-IL6C7T5X.js";
23
+ } from "./chunk-OZUYK6IS.js";
24
24
  import {
25
25
  defineCommand
26
26
  } from "./chunk-S3S4TGEH.js";
@@ -229,7 +229,7 @@ var asset_default = defineCommand({
229
229
  rendered > 0 ? `(${results.length} nodes, ${rendered} rendered in 1 figma request)` : `(${results.length} nodes, all reused from cache \u2014 no figma request)`
230
230
  );
231
231
  }
232
- const { trackFigmaImport } = await import("./telemetry-YKVYLJSB.js");
232
+ const { trackFigmaImport } = await import("./telemetry-4G6CD3X7.js");
233
233
  trackFigmaImport({
234
234
  phase: "asset",
235
235
  reused: results.every((r) => r.reused),
@@ -1278,7 +1278,7 @@ async function withFigmaErrors(command, fn) {
1278
1278
  } catch (err) {
1279
1279
  if (err instanceof Error) {
1280
1280
  try {
1281
- const { trackCommandFailure } = await import("./events-LF2J436R.js");
1281
+ const { trackCommandFailure } = await import("./events-ZQFIOH5Z.js");
1282
1282
  trackCommandFailure(
1283
1283
  command,
1284
1284
  err,
@@ -8,14 +8,14 @@ import {
8
8
  DEFAULT_REGISTRY_URL,
9
9
  fetchItemFile,
10
10
  validRegistryItem
11
- } from "./chunk-EVRUR7DW.js";
11
+ } from "./chunk-H45RC6HN.js";
12
12
  import {
13
13
  publishRegistryFile,
14
14
  registryTargetPath
15
15
  } from "./chunk-GMECXFAN.js";
16
16
  import {
17
17
  validateVariables
18
- } from "./chunk-Q3TFX4OZ.js";
18
+ } from "./chunk-NZ7K76Y2.js";
19
19
  import {
20
20
  realProjectRoot
21
21
  } from "./chunk-OFQWTKPW.js";
@@ -8,25 +8,25 @@ import {
8
8
  launchManagedBrowser,
9
9
  resolveManagedGpuMode,
10
10
  rethrowAfterBrowserCleanup
11
- } from "./chunk-B5FZ2CQM.js";
11
+ } from "./chunk-2ALJMIFW.js";
12
12
  import {
13
13
  resolveCompositionViewportFromHtml
14
14
  } from "./chunk-FH7WODJH.js";
15
15
  import {
16
16
  resolveDiagnosticNavigationTimeoutMs,
17
17
  windowsChromeCrashRemediation
18
- } from "./chunk-ERTJPFCH.js";
18
+ } from "./chunk-H3JGPRWA.js";
19
19
  import {
20
20
  resolveLocalBrowserGpuMode,
21
21
  resolveLocalWebGpu
22
- } from "./chunk-SB5DX6AD.js";
22
+ } from "./chunk-Z6VBXCYN.js";
23
23
  import {
24
24
  c
25
25
  } from "./chunk-ZTZA4UWZ.js";
26
26
  import {
27
27
  assertWebGpuAdapterAvailable,
28
28
  compositionRequiresWebGpu
29
- } from "./chunk-PLEMSN3E.js";
29
+ } from "./chunk-A356JY2J.js";
30
30
  import {
31
31
  normalizeErrorMessage
32
32
  } from "./chunk-KNU5COPB.js";
@@ -108,9 +108,9 @@ async function openSettledCompositionPage(html, url, options) {
108
108
  const { ensureBrowser, findSystemBrowser } = await import("./manager-HEUPD2YB.js");
109
109
  const browser = await ensureBrowser({ signal: options.signal });
110
110
  const puppeteer = await import("puppeteer-core");
111
- const { buildChromeArgs } = await import("./src-GPUDUKY6.js");
111
+ const { buildChromeArgs } = await import("./src-LZXECBBQ.js");
112
112
  const requestedGpuMode = options.browserGpuMode ?? resolveCliChromeGpuMode();
113
- const answer = (await import("./staticProjectServer-4CQ3KDQK.js")).inProcessAnswer(url);
113
+ const answer = (await import("./staticProjectServer-DMG2CER4.js")).inProcessAnswer(url);
114
114
  const requiresWebGpu = compositionRequiresWebGpu(html);
115
115
  let softwareWebGpu = false;
116
116
  const launch = async (executablePath) => {
@@ -16,7 +16,7 @@ import {
16
16
  EncoderInterruptedError,
17
17
  encoderFailureError,
18
18
  prepareAnimatedGifInputs
19
- } from "./chunk-MMV6IY6U.js";
19
+ } from "./chunk-3KY7FUSS.js";
20
20
  import {
21
21
  parseEncoderOptions
22
22
  } from "./chunk-KLIKCX6Q.js";
@@ -151,7 +151,7 @@ import {
151
151
  validateEngineConfigSnapshot,
152
152
  verifyDiskDrawElementSamples,
153
153
  writeCapturedFrame
154
- } from "./chunk-PLEMSN3E.js";
154
+ } from "./chunk-A356JY2J.js";
155
155
  import {
156
156
  assignBundledRuntimeCompositionIds,
157
157
  buildVariablesByCompScript,
@@ -164,7 +164,7 @@ import {
164
164
  isTemplateEntry,
165
165
  parsesAsScript,
166
166
  prepareFlattenedInnerRoot
167
- } from "./chunk-LYIG2GZ5.js";
167
+ } from "./chunk-42AER3PM.js";
168
168
  import {
169
169
  LOW_MEMORY_TOTAL_MB_THRESHOLD,
170
170
  getCgroupMemoryLimitMb,
@@ -188,7 +188,7 @@ import {
188
188
  resolveAbsoluteMediaStartSeconds,
189
189
  resolveAuthoredTimingWindow,
190
190
  toFps
191
- } from "./chunk-Q3TFX4OZ.js";
191
+ } from "./chunk-NZ7K76Y2.js";
192
192
  import {
193
193
  COMPOSITION_SOURCE_URL,
194
194
  HF_COLOR_GRADING_ATTR,
@@ -216,7 +216,7 @@ import {
216
216
  shouldClampResolvedMediaDuration,
217
217
  sourceTimeAt,
218
218
  styleElementsFor
219
- } from "./chunk-P47XYVEQ.js";
219
+ } from "./chunk-ZJO4SLHC.js";
220
220
  import {
221
221
  MAX_AUDIO_GAIN
222
222
  } from "./chunk-UJKQWGFF.js";
@@ -5399,7 +5399,7 @@ function placeAudio(audio, window2) {
5399
5399
  }
5400
5400
 
5401
5401
  // ../core/dist/generated/position-edits-render-inline.js
5402
- var POSITION_EDITS_RENDER_IIFE = '"use strict";(()=>{function T(){return globalThis}function P(e,t){if(typeof window>"u")return;let o=T(),r=o.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(s){}(o.__hfDebug||o.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${e} swallowed:`,t)}var x=null;function R(e,t){if(x)try{x({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(o){P("runtime.analytics.site1",o)}}var W="http://www.w3.org/1999/xhtml";function N(e){return e!=null&&e.nodeType===1}function k(e){return N(e)&&(e.namespaceURI===W||e.namespaceURI==="http://www.w3.org/2000/svg")}var w="data-hf-edit-base-x",y="data-hf-edit-base-y",m="data-hf-edit-original-translate",_=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},O=e=>{let t=[],o=0,r="";for(let s of e.trim())s==="("&&(o+=1),s===")"&&(o=Math.max(0,o-1)),/\\s/.test(s)&&o===0?(r&&t.push(r),r=""):r+=s;return r&&t.push(r),t},L=/^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$/,E=(e,t)=>L.test(e)&&L.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,V=(e,t,o)=>{if(!e||e==="none")return`${t} ${o}`;let[r,s,a]=O(e);if(r===void 0)return`${t} ${o}`;if(s===void 0)return`${E(r,t)} ${o}`;let i=a===void 0?"":` ${a}`;return`${E(r,t)} ${E(s,o)}${i}`},j=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},C=e=>{let t=e.style.getPropertyValue("translate").trim();if(t)return t==="none"?"":t;try{let o=e.ownerDocument.defaultView,r=o?o.getComputedStyle(e).getPropertyValue("translate").trim():"";return r==="none"?"":r}catch{return""}},b=new WeakMap;function G(e,t){let o=b.get(e);if(!t?.force&&o!==void 0&&e.style.getPropertyValue("translate")!==o){R("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=_(e.getAttribute("data-x"))-_(e.getAttribute(w)),s=_(e.getAttribute("data-y"))-_(e.getAttribute(y));e.hasAttribute(m)||e.setAttribute(m,C(e)),o===void 0&&j(e);let a=e.getAttribute(m)??"",i=V(a,`${r}px`,`${s}px`);e.style.setProperty("translate",i),b.set(e,e.style.getPropertyValue("translate"))}function S(e,t){let o=e.querySelectorAll(`[${m}]:not([${w}]):not([${y}])`);for(let a=0;a<o.length;a++){let i=o[a];if(i===void 0||!k(i))continue;let g=i.getAttribute(m)??"";g===""?i.style.removeProperty("translate"):i.style.setProperty("translate",g),i.removeAttribute(m),b.delete(i)}let r=e.querySelectorAll(`[${w}], [${y}]`),s=0;for(let a=0;a<r.length;a++){let i=r[a];i===void 0||!k(i)||(G(i,t),s+=1)}return s}var $="__hfPositionEditsSeekReapplyWrapped",D=new WeakSet,M=new WeakMap,H=new WeakMap;function F(e){let t=e,o=()=>{try{S(t.document)}catch{}},r=n=>typeof n=="function"&&(D.has(n)||!!n[$]),s=n=>{D.add(n);try{Object.defineProperty(n,$,{value:!0})}catch{}},a=n=>{if(typeof n!="function"||r(n))return n;let l=function(...u){let d=n.apply(this,u);return o(),d};return s(l),l},i=(n,l)=>{let u=M.get(n);if(u?.has(l))return!0;let d=Object.getOwnPropertyDescriptor(n,l);if(d?.configurable===!1){let c=n[l];return typeof c=="function"&&(n[l]=a(c),o()),!1}let p=n[l],f=d?.set;return Object.defineProperty(n,l,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>p,set:c=>{p=a(c),f?.call(n,c)}}),p=a(p),u??(u=new Set),u.add(l),M.set(n,u),o(),!0},g=(n,l)=>{let u=H.get(t),d=Object.getOwnPropertyDescriptor(t,n);if(!u?.has(n)){if(d?.configurable===!1){let c=t[n];return c?i(c,l):!1}let f=t[n];Object.defineProperty(t,n,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>f,set:c=>{f=c,f&&i(f,l)}}),u??(u=new Set),u.add(n),H.set(t,u)}let p=t[n];return p?i(p,l):!1},h=()=>{let n=g("__hf","seek"),l=g("__player","renderSeek");return n&&l};if(h())return;let v=120,A=t.setInterval(()=>{if(h()){t.clearInterval(A);return}v-=1,v<=0&&t.clearInterval(A)},50)}function I(){document.querySelector(`[${w}], [${y}]`)&&(S(document),F(window))}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",I,{once:!0}):I();})();\n';
5402
+ var POSITION_EDITS_RENDER_IIFE = '"use strict";(()=>{function T(){return globalThis}function P(e,t){if(typeof window>"u")return;let o=T(),r=o.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(s){}(o.__hfDebug||o.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${e} swallowed:`,t)}var x=null;function R(e,t){if(x)try{x({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(o){P("runtime.analytics.site1",o)}}var W="http://www.w3.org/1999/xhtml";function N(e){return e!=null&&e.nodeType===1}function k(e){return N(e)&&(e.namespaceURI===W||e.namespaceURI==="http://www.w3.org/2000/svg")}var w="data-hf-edit-base-x",y="data-hf-edit-base-y",m="data-hf-edit-original-translate",_=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},O=e=>{let t=[],o=0,r="";for(let s of e.trim())s==="("&&(o+=1),s===")"&&(o=Math.max(0,o-1)),/\\s/.test(s)&&o===0?(r&&t.push(r),r=""):r+=s;return r&&t.push(r),t},$=/^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$/,E=(e,t)=>$.test(e)&&$.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,C=(e,t,o)=>{if(!e||e==="none")return`${t} ${o}`;let[r,s,a]=O(e);if(r===void 0)return`${t} ${o}`;if(s===void 0)return`${E(r,t)} ${o}`;let i=a===void 0?"":` ${a}`;return`${E(r,t)} ${E(s,o)}${i}`},V=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},j=e=>{let t=e.style.getPropertyValue("translate").trim();if(t)return t==="none"?"":t;try{let o=e.ownerDocument.defaultView,r=o?o.getComputedStyle(e).getPropertyValue("translate").trim():"";return r==="none"?"":r}catch{return""}},b=new WeakMap;function B(e,t){let o=b.get(e);if(!t?.force&&o!==void 0&&e.style.getPropertyValue("translate")!==o){R("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=_(e.getAttribute("data-x"))-_(e.getAttribute(w)),s=_(e.getAttribute("data-y"))-_(e.getAttribute(y));e.hasAttribute(m)||e.setAttribute(m,j(e)),o===void 0&&V(e);let a=e.getAttribute(m)??"",i=C(a,`${r}px`,`${s}px`);e.style.setProperty("translate",i),b.set(e,e.style.getPropertyValue("translate"))}function S(e,t){let o=e.querySelectorAll(`[${m}]:not([${w}]):not([${y}])`);for(let a=0;a<o.length;a++){let i=o[a];if(i===void 0||!k(i))continue;let g=i.getAttribute(m)??"";g===""?i.style.removeProperty("translate"):i.style.setProperty("translate",g),i.removeAttribute(m),b.delete(i)}let r=e.querySelectorAll(`[${w}], [${y}]`),s=0;for(let a=0;a<r.length;a++){let i=r[a];i===void 0||!k(i)||(B(i,t),s+=1)}return s}var L="__hfPositionEditsSeekReapplyWrapped",D=new WeakSet,F=new WeakMap,M=new WeakMap;function H(e){let t=e,o=()=>{try{S(t.document)}catch{}},r=n=>typeof n=="function"&&(D.has(n)||!!n[L]),s=n=>{D.add(n);try{Object.defineProperty(n,L,{value:!0})}catch{}},a=n=>{if(typeof n!="function"||r(n))return n;let l=function(...u){let d=n.apply(this,u);return o(),d};return s(l),l},i=(n,l)=>{let u=F.get(n);if(u?.has(l))return!0;let d=Object.getOwnPropertyDescriptor(n,l);if(d?.configurable===!1){let c=n[l];return typeof c=="function"&&(n[l]=a(c),o()),!1}let p=n[l],f=d?.set;return Object.defineProperty(n,l,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>p,set:c=>{p=a(c),f?.call(n,c)}}),p=a(p),u??(u=new Set),u.add(l),F.set(n,u),o(),!0},g=(n,l)=>{let u=M.get(t),d=Object.getOwnPropertyDescriptor(t,n);if(!u?.has(n)){if(d?.configurable===!1){let c=t[n];return c?i(c,l):!1}let f=t[n];Object.defineProperty(t,n,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>f,set:c=>{f=c,f&&i(f,l)}}),u??(u=new Set),u.add(n),M.set(t,u)}let p=t[n];return p?i(p,l):!1},h=()=>{let n=g("__hf","seek"),l=g("__player","renderSeek");return n&&l};if(h())return;let v=120,A=t.setInterval(()=>{if(h()){t.clearInterval(A);return}v-=1,v<=0&&t.clearInterval(A)},50)}function I(){document.querySelector(`[${w}], [${y}]`)&&(S(document),H(window))}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",I,{once:!0}):I();})();\n';
5403
5403
  function getPositionEditsRenderScript() {
5404
5404
  return POSITION_EDITS_RENDER_IIFE;
5405
5405
  }
@@ -10047,7 +10047,8 @@ function formatSeconds(sec) {
10047
10047
  }
10048
10048
  function sanitizeProbeFailure(reason, paths) {
10049
10049
  const message = reason instanceof Error ? reason.message : String(reason);
10050
- return redactTelemetryString(redactKnownPaths(message, paths));
10050
+ const keepFfmpegsLastLineUncapped = Number.POSITIVE_INFINITY;
10051
+ return redactTelemetryString(redactKnownPaths(message, paths), keepFfmpegsLastLineUncapped);
10051
10052
  }
10052
10053
  async function padOrTrimAudioToVideoFrameCount(input) {
10053
10054
  const probeVideo = input.probeVideoFrameInfo ?? ((videoPath) => defaultProbeVideoFrameInfo(videoPath, input.signal));
@@ -14422,7 +14423,7 @@ function startServer(options = {}) {
14422
14423
  });
14423
14424
  async function shutdown(signal) {
14424
14425
  log.info(`Received ${signal}, shutting down`);
14425
- const { drainBrowserPool } = await import("./src-GPUDUKY6.js");
14426
+ const { drainBrowserPool } = await import("./src-LZXECBBQ.js");
14426
14427
  await drainBrowserPool().catch(() => {
14427
14428
  });
14428
14429
  const handle = await Promise.race([
@@ -15609,7 +15610,7 @@ async function buildLocalExecutionPlan(projectDir, config, executionPlanDir, opt
15609
15610
  if (probeResult.fileServer) closeFileServerSafely(probeResult.fileServer, "plan", log);
15610
15611
  if (probeResult.probeSession) {
15611
15612
  try {
15612
- const { closeCaptureSession: closeCaptureSession2 } = await import("./src-GPUDUKY6.js");
15613
+ const { closeCaptureSession: closeCaptureSession2 } = await import("./src-LZXECBBQ.js");
15613
15614
  await closeCaptureSession2(probeResult.probeSession);
15614
15615
  } catch (err) {
15615
15616
  log.warn("[plan] probe session close failed", {
@@ -32,21 +32,21 @@ import {
32
32
  import {
33
33
  getUpdateMeta,
34
34
  withMeta
35
- } from "./chunk-7ZKEOQ5N.js";
35
+ } from "./chunk-Z6P5OVCF.js";
36
36
  import {
37
37
  CONFIG_PATH,
38
38
  withFileLock
39
39
  } from "./chunk-XUXGIA7H.js";
40
40
  import {
41
41
  VERSION
42
- } from "./chunk-WNXVPPMV.js";
42
+ } from "./chunk-VG3ZMY2H.js";
43
43
  import {
44
44
  OPTIONAL_PACKAGES,
45
45
  installedOptionalPackageVersion
46
46
  } from "./chunk-3DKN5WKL.js";
47
47
  import {
48
48
  resolveExtractCacheDir
49
- } from "./chunk-PLEMSN3E.js";
49
+ } from "./chunk-A356JY2J.js";
50
50
  import {
51
51
  normalizeErrorMessage
52
52
  } from "./chunk-KNU5COPB.js";
@@ -0,0 +1,156 @@
1
+ import { createRequire as __hf_createRequire } from "node:module";
2
+ import { fileURLToPath as __hf_fileURLToPath } from "node:url";
3
+ import { dirname as __hf_dirname } from "node:path";
4
+ var require = __hf_createRequire(import.meta.url);
5
+ var __filename = __hf_fileURLToPath(import.meta.url);
6
+ var __dirname = __hf_dirname(__filename);
7
+ import {
8
+ HyperframesApiError,
9
+ HyperframesCloudClient
10
+ } from "./chunk-5UBZPG74.js";
11
+ import {
12
+ forceRefreshCredentials,
13
+ resolveCloudAuthHeaders,
14
+ resolveCloudBaseUrl
15
+ } from "./chunk-KMAAOHLO.js";
16
+ import {
17
+ errorBox
18
+ } from "./chunk-K2FLNJVB.js";
19
+ import {
20
+ failCommand
21
+ } from "./chunk-PBN6GBJE.js";
22
+
23
+ // src/cloud/poll.ts
24
+ var DEFAULT_POLL_INTERVAL_MS = 1e4;
25
+ var DEFAULT_MAX_WAIT_MS = 60 * 60 * 1e3;
26
+ var TERMINAL_STATUSES = /* @__PURE__ */ new Set(["completed", "failed"]);
27
+ var PollTimeoutError = class extends Error {
28
+ lastDetail;
29
+ constructor(lastDetail, elapsedMs) {
30
+ super(
31
+ `Render ${lastDetail.render_id} did not reach a terminal state within ${Math.round(elapsedMs / 1e3)}s`
32
+ );
33
+ this.name = "PollTimeoutError";
34
+ this.lastDetail = lastDetail;
35
+ }
36
+ };
37
+ function isTerminal(status) {
38
+ return TERMINAL_STATUSES.has(status);
39
+ }
40
+ async function pollUntilTerminal(client, renderId, options = {}) {
41
+ const intervalMs = options.intervalMs ?? DEFAULT_POLL_INTERVAL_MS;
42
+ const maxWaitMs = options.maxWaitMs ?? DEFAULT_MAX_WAIT_MS;
43
+ const now = options.now ?? (() => Date.now());
44
+ const sleep = options.sleep ?? defaultAbortableSleep(options.signal);
45
+ const started = now();
46
+ while (true) {
47
+ if (options.signal?.aborted) {
48
+ throw signalAbortError(options.signal);
49
+ }
50
+ const detail = await client.getRender({ render_id: renderId, signal: options.signal });
51
+ const elapsed = now() - started;
52
+ options.onTick?.(detail, elapsed);
53
+ if (isTerminal(detail.status)) {
54
+ return detail;
55
+ }
56
+ if (elapsed >= maxWaitMs) {
57
+ throw new PollTimeoutError(detail, elapsed);
58
+ }
59
+ await sleep(intervalMs);
60
+ }
61
+ }
62
+ function signalAbortError(signal) {
63
+ const reason = signal.reason;
64
+ return reason instanceof Error ? reason : new Error("Poll aborted");
65
+ }
66
+ function defaultAbortableSleep(signal) {
67
+ return (ms) => new Promise((resolve, reject) => {
68
+ const onAbort = () => {
69
+ clearTimeout(timer);
70
+ reject(signalAbortError(signal));
71
+ };
72
+ const timer = setTimeout(() => {
73
+ signal?.removeEventListener("abort", onAbort);
74
+ resolve();
75
+ }, ms);
76
+ signal?.addEventListener("abort", onAbort, { once: true });
77
+ });
78
+ }
79
+
80
+ // src/cloud/index.ts
81
+ async function createCloudClient() {
82
+ const client = new HyperframesCloudClient({
83
+ baseUrl: resolveCloudBaseUrl(),
84
+ getAuthHeaders: resolveCloudAuthHeaders
85
+ });
86
+ return wrapWith401Retry(client);
87
+ }
88
+ function wrapWith401Retry(client) {
89
+ return new Proxy(client, {
90
+ get(target, prop, receiver) {
91
+ const value = Reflect.get(target, prop, receiver);
92
+ if (typeof value !== "function") return value;
93
+ const original = value.bind(target);
94
+ return async (...args) => {
95
+ try {
96
+ return await original(...args);
97
+ } catch (err) {
98
+ if (err instanceof HyperframesApiError && err.status === 401) {
99
+ try {
100
+ await forceRefreshCredentials();
101
+ } catch {
102
+ throw err;
103
+ }
104
+ return await original(...args);
105
+ }
106
+ throw err;
107
+ }
108
+ };
109
+ }
110
+ });
111
+ }
112
+
113
+ // src/cloud/errors.ts
114
+ var ERROR_CODE_HINTS = {
115
+ hyperframes_project_too_large: "The zip exceeded the 200 MB limit. Run `hyperframes cloud render --dry-run`, then add only verified-unneeded paths to `.hyperframesignore` or pre-host required large media.",
116
+ hyperframes_render_not_found: "The render_id no longer exists \u2014 either soft-deleted or never created.",
117
+ invalid_parameter: "Check the listed parameter against `hyperframes cloud render --help` for the accepted values.",
118
+ authentication_failed: "Run `hyperframes auth status` to confirm your credential; `hyperframes auth login` to re-auth.",
119
+ rate_limit_exceeded: "Retry after the duration in the Retry-After header."
120
+ };
121
+ function reportApiError(stage, err, options = {}) {
122
+ const hints = { ...ERROR_CODE_HINTS, ...options.extraHints };
123
+ if (err instanceof HyperframesApiError) {
124
+ if (err.status === 404 && options.notFound) {
125
+ errorBox("Not found", options.notFound);
126
+ failCommand();
127
+ }
128
+ const hint = err.code ? hints[err.code] : void 0;
129
+ const title = `${stage} (HTTP ${err.status})`;
130
+ if (hint) {
131
+ errorBox(title, err.message, hint);
132
+ } else if (options.suggestion) {
133
+ errorBox(title, err.message, options.suggestion);
134
+ } else if (err.code) {
135
+ errorBox(title, err.message, `code: ${err.code}`);
136
+ } else {
137
+ errorBox(title, err.message);
138
+ }
139
+ failCommand();
140
+ }
141
+ if (err instanceof Error) {
142
+ errorBox(stage, err.message, options.suggestion);
143
+ failCommand();
144
+ }
145
+ errorBox(stage, String(err), options.suggestion);
146
+ failCommand();
147
+ }
148
+
149
+ export {
150
+ DEFAULT_POLL_INTERVAL_MS,
151
+ DEFAULT_MAX_WAIT_MS,
152
+ PollTimeoutError,
153
+ pollUntilTerminal,
154
+ createCloudClient,
155
+ reportApiError
156
+ };
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  updateNoticesSuppressed
9
- } from "./chunk-7ZKEOQ5N.js";
9
+ } from "./chunk-Z6P5OVCF.js";
10
10
  import {
11
11
  hostAnswers
12
12
  } from "./chunk-K4WIOZFP.js";
@@ -66,14 +66,28 @@ var FALLBACK_CORE_SKILLS = [
66
66
  "hyperframes-studio",
67
67
  "media-use"
68
68
  ];
69
+ var RUNTIME_DIRS = /* @__PURE__ */ new Set([
70
+ "__pycache__",
71
+ ".pytest_cache",
72
+ ".mypy_cache",
73
+ ".ruff_cache",
74
+ "node_modules"
75
+ ]);
76
+ var RUNTIME_FILES = /* @__PURE__ */ new Set([".DS_Store", "Thumbs.db"]);
77
+ var RUNTIME_FILE_SUFFIXES = [".pyc", ".pyo", ".swp", ".swo", "~"];
78
+ function isRuntimeFile(name) {
79
+ return RUNTIME_FILES.has(name) || RUNTIME_FILE_SUFFIXES.some((s) => name.endsWith(s));
80
+ }
69
81
  function listFilesSorted(dir) {
70
82
  const out = [];
71
83
  const walk = (d) => {
72
84
  for (const name of readdirSync(d)) {
73
- if (name === ".DS_Store") continue;
74
85
  const p = join(d, name);
75
- if (statSync(p).isDirectory()) walk(p);
76
- else out.push(p);
86
+ if (statSync(p).isDirectory()) {
87
+ if (!RUNTIME_DIRS.has(name)) walk(p);
88
+ } else if (!isRuntimeFile(name)) {
89
+ out.push(p);
90
+ }
77
91
  }
78
92
  };
79
93
  walk(dir);
@@ -7,7 +7,7 @@ var __dirname = __hf_dirname(__filename);
7
7
 
8
8
  // src/utils/producer.ts
9
9
  async function loadProducer() {
10
- return await import("./src-IMCQRH4P.js");
10
+ return await import("./src-RQPKPFRO.js");
11
11
  }
12
12
 
13
13
  export {
@@ -204,6 +204,7 @@ async function metadataRequestError(response, fallback) {
204
204
  return response.status === 401 ? new CredentialRejectedError(message) : new Error(message);
205
205
  }
206
206
  var LOGIN_EXPIRED = "Your login expired. Run hyperframes auth login, then publish again.";
207
+ var LOGIN_REQUIRED = "Publishing needs an account. Run hyperframes auth login to publish.";
207
208
  var LOGIN_CHANGED = "Your login changed during publish. Run publish again.";
208
209
  function rejectedCredentialMessage(credential) {
209
210
  const envVar = envCredentialVar(credential.source);
@@ -619,8 +620,8 @@ async function publishProjectArchive(projectDir, opts = {}) {
619
620
  throw new CredentialRejectedError("unclaimed publish");
620
621
  }
621
622
  } catch (error) {
622
- if (error instanceof CredentialRejectedError && credential) {
623
- throw new Error(rejectedCredentialMessage(credential));
623
+ if (error instanceof CredentialRejectedError) {
624
+ throw new Error(credential ? rejectedCredentialMessage(credential) : LOGIN_REQUIRED);
624
625
  }
625
626
  throw error;
626
627
  }
@@ -6,8 +6,8 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
 
8
8
  // src/version.ts
9
- var VERSION = true ? "0.8.161" : "0.0.0-dev";
10
- var PRODUCER_VERSION = true ? "0.8.161" : "0.0.0-dev";
9
+ var VERSION = true ? "0.8.163" : "0.0.0-dev";
10
+ var PRODUCER_VERSION = true ? "0.8.163" : "0.0.0-dev";
11
11
 
12
12
  export {
13
13
  VERSION,
@@ -7,10 +7,10 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  trackLintReport,
9
9
  trackLintRuleStreak
10
- } from "./chunk-HM4PLNTX.js";
10
+ } from "./chunk-HQMWZNO2.js";
11
11
  import {
12
12
  shouldTrack
13
- } from "./chunk-KZPG4DXX.js";
13
+ } from "./chunk-2XIPB4MP.js";
14
14
  import {
15
15
  LINT_RULE_COUNT,
16
16
  LINT_RULE_GROUP_COUNTS
@@ -7,29 +7,29 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  RegistryCompatibilityError,
9
9
  gateRegistryItemsCompatibility
10
- } from "./chunk-SAS6XBY5.js";
10
+ } from "./chunk-M4237QMQ.js";
11
11
  import {
12
12
  DEFAULT_PROJECT_CONFIG,
13
13
  createProjectConfig,
14
14
  loadProjectConfig,
15
15
  projectConfigPath,
16
16
  recordProjectRegistryItems
17
- } from "./chunk-GG37I7B3.js";
17
+ } from "./chunk-BHGIBGUZ.js";
18
18
  import {
19
19
  resolveItemWithDependencies,
20
20
  resolveItemsByTag
21
- } from "./chunk-D33YJZOH.js";
21
+ } from "./chunk-DSXDYQQV.js";
22
22
  import {
23
23
  InvalidVariableValuesError,
24
24
  prepareItem,
25
25
  publishItem
26
- } from "./chunk-N2NDDTYW.js";
26
+ } from "./chunk-QGYAHDOR.js";
27
27
  import {
28
28
  DEFAULT_REGISTRY_URL
29
- } from "./chunk-EVRUR7DW.js";
29
+ } from "./chunk-H45RC6HN.js";
30
30
  import {
31
31
  trackRegistryItemAdded
32
- } from "./chunk-HM4PLNTX.js";
32
+ } from "./chunk-HQMWZNO2.js";
33
33
  import {
34
34
  defineCommand
35
35
  } from "./chunk-S3S4TGEH.js";
@@ -41,7 +41,7 @@ import {
41
41
  } from "./chunk-ZTZA4UWZ.js";
42
42
  import {
43
43
  ITEM_TYPE_DIRS
44
- } from "./chunk-Q3TFX4OZ.js";
44
+ } from "./chunk-NZ7K76Y2.js";
45
45
  import {
46
46
  isProjectRootMissing,
47
47
  realpath
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-ISN5GRYI.js";
18
18
  import {
19
19
  VERSION
20
- } from "./chunk-WNXVPPMV.js";
20
+ } from "./chunk-VG3ZMY2H.js";
21
21
 
22
22
  // src/utils/updateCheck.ts
23
23
  import { existsSync, readFileSync } from "fs";
@@ -7,7 +7,7 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  resolveConfig,
9
9
  usesSoftwareWebGpu
10
- } from "./chunk-PLEMSN3E.js";
10
+ } from "./chunk-A356JY2J.js";
11
11
 
12
12
  // src/browser/gpuPolicy.ts
13
13
  function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCER_BROWSER_GPU_MODE) {
@@ -17,7 +17,7 @@ function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCE
17
17
  return "auto";
18
18
  }
19
19
  async function resolveCaptureBrowserGpuMode(requestedMode, chromePath, probeLifecycle) {
20
- const { resolveBrowserGpuMode } = await import("./src-GPUDUKY6.js");
20
+ const { resolveBrowserGpuMode } = await import("./src-LZXECBBQ.js");
21
21
  return resolveBrowserGpuMode(requestedMode, { chromePath, probeLifecycle });
22
22
  }
23
23
  function resolveLocalWebGpu(browserGpuMode, requiresWebGpu) {