hyperframes 0.8.128 → 0.8.130

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 (148) hide show
  1. package/dist/{add-DI4T5YLH.js → add-EG4BS3Y2.js} +14 -14
  2. package/dist/{animatedGifPrep-TSK322QL.js → animatedGifPrep-P2T6YM7Z.js} +5 -5
  3. package/dist/{asset-CFW5RUI3.js → asset-CNRJBQAG.js} +2 -2
  4. package/dist/{assetCataloger-MDMKZM4O.js → assetCataloger-VBLPHX24.js} +2 -2
  5. package/dist/{auth-7GR2JYK4.js → auth-AHURQHTW.js} +2 -2
  6. package/dist/{autoUpdate-VPEWPSH6.js → autoUpdate-YIZ62GF4.js} +2 -2
  7. package/dist/{backgroundChecks-XU7Y6JEZ.js → backgroundChecks-4PGQ2T6X.js} +3 -3
  8. package/dist/backgroundChecksWorker.js +3 -3
  9. package/dist/{batchRender-HIRFZIUO.js → batchRender-FT7AP7XH.js} +3 -3
  10. package/dist/{beats-6EJDWT63.js → beats-RX3UQQLF.js} +11 -11
  11. package/dist/{benchmark-F7U6WZGQ.js → benchmark-DO575NEV.js} +11 -11
  12. package/dist/{browser-3ECFI3DA.js → browser-LPAJCNK3.js} +8 -8
  13. package/dist/{bundleWithLocalizedFonts-OVFXAXV3.js → bundleWithLocalizedFonts-5QOPOB5D.js} +2 -2
  14. package/dist/{capture-YH5MUSL7.js → capture-RLZA6EMR.js} +8 -8
  15. package/dist/{capture-AC5TRHS5.js → capture-SZZ4IYJK.js} +2 -2
  16. package/dist/{catalog-TRZAPAXM.js → catalog-2PDRPIPT.js} +14 -14
  17. package/dist/{check-HP7N4TPB.js → check-UDV73HIA.js} +30 -30
  18. package/dist/{checkBrowser-BHLSXZ3V.js → checkBrowser-WSBDLDHA.js} +29 -29
  19. package/dist/{chunk-YRKBFZDQ.js → chunk-2YN64IN5.js} +1 -1
  20. package/dist/{chunk-CF6QQ6CL.js → chunk-3OFOPRZ4.js} +7 -7
  21. package/dist/{chunk-LGTAOCIM.js → chunk-3ZP5DXE7.js} +1 -1
  22. package/dist/{chunk-AQUXI6ZL.js → chunk-4FN7JTG4.js} +5 -5
  23. package/dist/{chunk-ZT4WM4B6.js → chunk-4MCANCGW.js} +9 -9
  24. package/dist/{chunk-A7VIBZLC.js → chunk-6CTIGJY7.js} +1 -1
  25. package/dist/{chunk-4AH73ZQW.js → chunk-6M76Y4M4.js} +1 -1
  26. package/dist/{chunk-JDNYDR3Y.js → chunk-74AXGCJH.js} +1 -1
  27. package/dist/{chunk-6RGOHYPP.js → chunk-7HG4BFIN.js} +1 -1
  28. package/dist/{chunk-FN7KZDH7.js → chunk-7JZ4FXP2.js} +1 -1
  29. package/dist/{chunk-OESXJGYM.js → chunk-7UEZ6GR6.js} +1 -1
  30. package/dist/{chunk-KC5COKLP.js → chunk-A2Z4Z4VL.js} +1 -1
  31. package/dist/{chunk-L5IFUB5G.js → chunk-BO53XQF2.js} +2 -2
  32. package/dist/{chunk-H5TVAQAK.js → chunk-CC6G5E3Z.js} +4 -4
  33. package/dist/{chunk-BELUXCL4.js → chunk-CFKU7HTK.js} +1 -1
  34. package/dist/{chunk-LRDOFHS5.js → chunk-CWPVM2QV.js} +2 -2
  35. package/dist/{chunk-KUZTSKD2.js → chunk-EX7GVMH3.js} +1 -1
  36. package/dist/{chunk-Q767NO4V.js → chunk-F4ZYGDLS.js} +3 -3
  37. package/dist/{chunk-QPRIMML2.js → chunk-FCSIGXXP.js} +1 -1
  38. package/dist/{chunk-4DGJUQFZ.js → chunk-HRUGC23L.js} +1 -1
  39. package/dist/chunk-HWKCIWQT.js +3578 -0
  40. package/dist/{chunk-4IZNC32H.js → chunk-IUZFXWSV.js} +1 -1
  41. package/dist/{chunk-WULYBA5Y.js → chunk-JNVJEJ34.js} +3 -3
  42. package/dist/{chunk-COD4GMYB.js → chunk-K2EQN4VU.js} +1 -1
  43. package/dist/{chunk-77EJSKGP.js → chunk-K2FTXJYH.js} +2 -2
  44. package/dist/{chunk-2CACHG7K.js → chunk-KBJUXVOJ.js} +3 -3
  45. package/dist/{chunk-BK2KLAYO.js → chunk-KESS47ZU.js} +2 -2
  46. package/dist/{chunk-UROSVQOH.js → chunk-LHSR3M4M.js} +2 -2
  47. package/dist/{chunk-6F63NYFZ.js → chunk-LYNI3FOL.js} +1 -1
  48. package/dist/{chunk-56P5SEOM.js → chunk-MWB3ZIFM.js} +1 -1
  49. package/dist/{chunk-34C66AH5.js → chunk-Q7IU7MOR.js} +2 -2
  50. package/dist/{chunk-BE6X3G5C.js → chunk-QC4FJVLM.js} +1 -1
  51. package/dist/{chunk-BW773MMX.js → chunk-RMHUQGRK.js} +2 -2
  52. package/dist/{chunk-5NZVDRRZ.js → chunk-S7NPLFWV.js} +88 -16
  53. package/dist/{chunk-RLK4ARFU.js → chunk-TCLGPL65.js} +1 -1
  54. package/dist/{chunk-3PDQ4PS2.js → chunk-UEZXMWG3.js} +2 -2
  55. package/dist/{chunk-4QJQOVN4.js → chunk-XS4EJSKU.js} +1 -1
  56. package/dist/{chunk-VKBSHU24.js → chunk-YQZNILVH.js} +5 -5
  57. package/dist/{chunk-WVU5CJXG.js → chunk-Z6B37SNM.js} +1 -1
  58. package/dist/{chunk-VQME2GRN.js → chunk-ZAHYGGS5.js} +9 -9
  59. package/dist/{chunk-QFQET76X.js → chunk-ZMXUQLI2.js} +7 -7
  60. package/dist/{chunk-72WHJNAR.js → chunk-ZRI22UOE.js} +2 -2
  61. package/dist/{chunk-IKSUSTJT.js → chunk-ZRZERNPI.js} +1 -1
  62. package/dist/{clean-6Q36AWQL.js → clean-N45LQDLR.js} +14 -14
  63. package/dist/cli.js +51 -51
  64. package/dist/{cloud-GQ5UHZZN.js → cloud-2GLYUVZH.js} +4 -4
  65. package/dist/{cloudrun-JD7H36SS.js → cloudrun-AJUTHUEA.js} +3 -3
  66. package/dist/{compare-YONA7IFI.js → compare-OTEUWIWF.js} +24 -24
  67. package/dist/{compiler-GNV7YQRO.js → compiler-QO36EXLS.js} +2 -2
  68. package/dist/{component-BXHWGVG4.js → component-XJ76J3RX.js} +3 -3
  69. package/dist/{compositions-XC7Y2FPL.js → compositions-B23537CZ.js} +10 -10
  70. package/dist/{delete-73UVP2DH.js → delete-OQWJXDAI.js} +2 -2
  71. package/dist/{dist-NDHKRZTY.js → dist-S3PJNPXQ.js} +2 -2
  72. package/dist/{doctor-J76TZOKL.js → doctor-Z3ERPQ6X.js} +9 -9
  73. package/dist/{events-FB2W7SMV.js → events-OR6DQQJO.js} +8 -8
  74. package/dist/{events-I3JMSDHY.js → events-R36YQVLB.js} +7 -7
  75. package/dist/{feedback-WSIA7ROU.js → feedback-NDL57UR2.js} +9 -9
  76. package/dist/{figma-YOJEBRSS.js → figma-QAZYZQRI.js} +3 -3
  77. package/dist/fontLocalizeCli.js +7 -7
  78. package/dist/{get-DXEKFVNL.js → get-YJGP4HXM.js} +2 -2
  79. package/dist/{gpuPolicy-IGXJ6JGL.js → gpuPolicy-2ZUZE5D6.js} +5 -5
  80. package/dist/{grade-compare-PXBFW53F.js → grade-compare-7LJH5VST.js} +24 -24
  81. package/dist/{help-Z6TEXIAO.js → help-4BX7QPZ5.js} +1 -1
  82. package/dist/{history-EFWP3CMR.js → history-4FRTQG54.js} +14 -14
  83. package/dist/hyperframe-runtime.js +30 -30
  84. package/dist/hyperframe.manifest.json +1 -1
  85. package/dist/hyperframe.runtime.iife.js +30 -30
  86. package/dist/hyperframes-player.global.js +3 -3
  87. package/dist/{info-AQ2ZLWSB.js → info-HEZBRV3F.js} +10 -10
  88. package/dist/{init-6ZEBBSR5.js → init-VTYXFB5Z.js} +21 -21
  89. package/dist/{inspect-EUOV4DGL.js → inspect-GKRXLN2D.js} +25 -25
  90. package/dist/{installer-WI6EKOWS.js → installer-K6O5WF44.js} +4 -4
  91. package/dist/{keyframes-U6LVMYGO.js → keyframes-3XCKVMWD.js} +11 -11
  92. package/dist/{lambda-F6SI24C7.js → lambda-D7UMN4DJ.js} +4 -4
  93. package/dist/{layout-VQRYMZRP.js → layout-JFTXMAIC.js} +25 -25
  94. package/dist/{lint-EBHMQRKO.js → lint-R7JD7VPD.js} +11 -11
  95. package/dist/{list-EUOXTLX6.js → list-HEJGMWMO.js} +2 -2
  96. package/dist/{login-OXGFQNHT.js → login-OQF7KGEY.js} +4 -4
  97. package/dist/{media-treatment-TVCTGGDO.js → media-treatment-GBI52RCD.js} +11 -11
  98. package/dist/{models-XNX7UHKU.js → models-C4E4IWJD.js} +6 -6
  99. package/dist/{motionShot-JXQIO5VJ.js → motionShot-S4MIGMT5.js} +11 -11
  100. package/dist/{normalize-audio-L5LTPJIR.js → normalize-audio-QRRCZW7V.js} +10 -10
  101. package/dist/{open-BON6TWUG.js → open-4ZGWLTI2.js} +9 -9
  102. package/dist/{pipeline-NID4HZDH.js → pipeline-TNGWUZQC.js} +5 -5
  103. package/dist/{play-GH43JSBS.js → play-O33STFLP.js} +19 -19
  104. package/dist/{preflight-VSZD4AND.js → preflight-SMNV6RW2.js} +6 -6
  105. package/dist/{present-7PTSYTYU.js → present-3TWVFCHC.js} +15 -15
  106. package/dist/{preview-X2WVPV66.js → preview-O2W2SC5F.js} +16 -16
  107. package/dist/{producer-TLATG6GZ.js → producer-ECLEN5RP.js} +1 -1
  108. package/dist/{projectConfig-KKPSSHER.js → projectConfig-HYJMJ5BY.js} +6 -6
  109. package/dist/{publication-6BFZTAYA.js → publication-HQ5Y3KBM.js} +2 -2
  110. package/dist/{publish-ZDRTAWEH.js → publish-VHDYQASC.js} +7 -7
  111. package/dist/{remove-background-OZ4OR3B2.js → remove-background-W2YX2NVH.js} +6 -6
  112. package/dist/{render-U3BRPPSW.js → render-AO5VX3YI.js} +3 -3
  113. package/dist/{render-ZTIEKMAN.js → render-MAWQJX2W.js} +20 -20
  114. package/dist/{render-ZH5ZCLWA.js → render-S4GJXMFQ.js} +11 -11
  115. package/dist/{render-batch-3JALVFQN.js → render-batch-YH7CTWNY.js} +3 -3
  116. package/dist/{renderCancellation-NHRJYSHT.js → renderCancellation-JPIHE47X.js} +5 -5
  117. package/dist/{resolver-Z2T2GU2O.js → resolver-IZ647GBZ.js} +4 -4
  118. package/dist/{sherpa-DRIVXEAC.js → sherpa-KKLNW6U2.js} +6 -6
  119. package/dist/{skills-XLN4DLZP.js → skills-LNZPPT6U.js} +10 -10
  120. package/dist/{skillsUpdateCheck-CDL66I4W.js → skillsUpdateCheck-R5J4XA7I.js} +3 -3
  121. package/dist/{snapshot-63YZCABA.js → snapshot-LNQE2GW2.js} +25 -25
  122. package/dist/{src-3Q2T2TAT.js → src-6YQBJGWR.js} +6 -6
  123. package/dist/{src-3M44XVWE.js → src-PVYUYV3M.js} +4 -4
  124. package/dist/{staticProjectServer-F563BICS.js → staticProjectServer-7EU666GS.js} +13 -13
  125. package/dist/{status-HPLBWFSU.js → status-YM52BQ6S.js} +5 -5
  126. package/dist/studio/assets/{hyperframes-player-CKCx0CFA.js → hyperframes-player-Cm1Cj3TU.js} +1 -1
  127. package/dist/studio/assets/{index-CwS08gWW.js → index--Z5JgizA.js} +1 -1
  128. package/dist/studio/assets/{index-CF31Pq1E.js → index-DAp0QmWa.js} +1 -1
  129. package/dist/studio/assets/{index-ClLzyuwb.js → index-DDsV6l9T.js} +191 -191
  130. package/dist/studio/index.d.ts +61 -1
  131. package/dist/studio/index.html +1 -1
  132. package/dist/studio/index.js +227 -55
  133. package/dist/studio/index.js.map +1 -1
  134. package/dist/{studio-api-PH5PMXQW.js → studio-api-PNQZRPX5.js} +7 -7
  135. package/dist/{studioServer-4CEIYT2G.js → studioServer-SHKVERJG.js} +44 -38
  136. package/dist/{system-G6PL23LG.js → system-EZYZNUFD.js} +5 -5
  137. package/dist/{telemetry-ILX6SWZM.js → telemetry-WPARNWWQ.js} +8 -8
  138. package/dist/{timeline-3K3WNFPP.js → timeline-HBRVSLRL.js} +14 -14
  139. package/dist/{tokens-GKA5I6SX.js → tokens-EFOMYJ44.js} +2 -2
  140. package/dist/{transcribe-P76R64RU.js → transcribe-BNSJRR4M.js} +6 -6
  141. package/dist/{transcribe-ZZSCMKNC.js → transcribe-NOKOGH6D.js} +11 -11
  142. package/dist/{updateCheck-QBLDWYDK.js → updateCheck-YDLXVJPC.js} +2 -2
  143. package/dist/{upgrade-RDBANWHF.js → upgrade-H5E6LW2O.js} +2 -2
  144. package/dist/{urlDownloader-VVG2YURO.js → urlDownloader-H6WRI2UE.js} +4 -4
  145. package/dist/{validate-55V46LZZ.js → validate-C3HGQB3M.js} +15 -15
  146. package/dist/{video-S2W6UQ4H.js → video-FGSGKRSV.js} +5 -5
  147. package/package.json +1 -1
  148. package/dist/chunk-AQIS2UNW.js +0 -3578
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-AMKC3AXA.js";
10
10
  import {
11
11
  getSystemTotalMb
12
- } from "./chunk-77EJSKGP.js";
12
+ } from "./chunk-K2FTXJYH.js";
13
13
 
14
14
  // src/telemetry/system.ts
15
15
  import { cpus, freemem, platform as platform2, release as release2 } from "os";
@@ -8,16 +8,16 @@ import {
8
8
  flush,
9
9
  shouldTrack,
10
10
  trackEvent
11
- } from "./chunk-Q767NO4V.js";
11
+ } from "./chunk-F4ZYGDLS.js";
12
12
  import {
13
13
  getPowerState
14
- } from "./chunk-4IZNC32H.js";
14
+ } from "./chunk-IUZFXWSV.js";
15
15
  import {
16
16
  CliRuntimeError
17
17
  } from "./chunk-PBN6GBJE.js";
18
18
  import {
19
19
  redactTelemetryString
20
- } from "./chunk-YRKBFZDQ.js";
20
+ } from "./chunk-2YN64IN5.js";
21
21
  import {
22
22
  readConfig
23
23
  } from "./chunk-XUXGIA7H.js";
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  stoppedByCancelSignal
9
- } from "./chunk-FN7KZDH7.js";
9
+ } from "./chunk-7JZ4FXP2.js";
10
10
  import {
11
11
  DEFAULT_MODEL,
12
12
  ensureModel,
@@ -22,7 +22,7 @@ import {
22
22
  renderFrameIdForRenderId,
23
23
  resolveAuthoredTimingWindow,
24
24
  toFps
25
- } from "./chunk-YRKBFZDQ.js";
25
+ } from "./chunk-2YN64IN5.js";
26
26
  import {
27
27
  AUDIO_GROUP_RENDER_ID_ATTR,
28
28
  COLOR_GRADING_SOURCE_HIDDEN_ATTR,
@@ -52,7 +52,7 @@ import {
52
52
  shiftRateLane,
53
53
  sourceTimeAt,
54
54
  timeAtSourceTime
55
- } from "./chunk-AQIS2UNW.js";
55
+ } from "./chunk-HWKCIWQT.js";
56
56
  import {
57
57
  chromeMajorCeiling,
58
58
  exceedsChromeCeiling
@@ -7,7 +7,7 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  getMimeType,
9
9
  injectMediaCodecMapIntoHtml
10
- } from "./chunk-5NZVDRRZ.js";
10
+ } from "./chunk-S7NPLFWV.js";
11
11
  import {
12
12
  PROXY_VARIANT_CONFIG,
13
13
  ProxyCapacityError,
@@ -18,10 +18,10 @@ import {
18
18
  recordProxyRequest,
19
19
  resolveProxy,
20
20
  resolveProxyVariantRequest
21
- } from "./chunk-RLK4ARFU.js";
21
+ } from "./chunk-TCLGPL65.js";
22
22
  import {
23
23
  resolveAutoProxy
24
- } from "./chunk-BELUXCL4.js";
24
+ } from "./chunk-CFKU7HTK.js";
25
25
 
26
26
  // src/utils/staticProjectServer.ts
27
27
  import { createServer } from "http";
@@ -7,10 +7,10 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  trackLintReport,
9
9
  trackLintRuleStreak
10
- } from "./chunk-WULYBA5Y.js";
10
+ } from "./chunk-JNVJEJ34.js";
11
11
  import {
12
12
  shouldTrack
13
- } from "./chunk-Q767NO4V.js";
13
+ } from "./chunk-F4ZYGDLS.js";
14
14
  import {
15
15
  LINT_RULE_COUNT,
16
16
  LINT_RULE_GROUP_COUNTS
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  DEFAULT_VP9_CPU_USED,
18
18
  renderProvenanceArgs
19
- } from "./chunk-77EJSKGP.js";
19
+ } from "./chunk-K2FTXJYH.js";
20
20
  import {
21
21
  loadOptionalPackage
22
22
  } from "./chunk-XT5P4QMO.js";
@@ -202,7 +202,7 @@ function inferInputKind(inputPath) {
202
202
  }
203
203
  async function probeMedia(inputPath) {
204
204
  const isImage = inferInputKind(inputPath) === "image";
205
- const engine = await import("./src-3M44XVWE.js");
205
+ const engine = await import("./src-PVYUYV3M.js");
206
206
  const meta = await engine.extractMediaMetadata(inputPath);
207
207
  if (isImage) {
208
208
  return { width: meta.width, height: meta.height, fps: 0, frameCount: 1 };
@@ -8,7 +8,7 @@ import {
8
8
  DEFAULT_REGISTRY_URL,
9
9
  fetchItemManifest,
10
10
  fetchRegistryManifest
11
- } from "./chunk-KC5COKLP.js";
11
+ } from "./chunk-A2Z4Z4VL.js";
12
12
 
13
13
  // src/registry/resolver.ts
14
14
  function defaultWarn(message) {
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-AWDFDFI3.js";
15
15
  import {
16
16
  isBlockedNetworkHost
17
- } from "./chunk-77EJSKGP.js";
17
+ } from "./chunk-K2FTXJYH.js";
18
18
  import {
19
19
  DOMParser,
20
20
  parseHTML
@@ -8,10 +8,10 @@ import {
8
8
  DEFAULT_VP9_CPU_USED,
9
9
  isHttpUrl,
10
10
  runFfmpeg
11
- } from "./chunk-77EJSKGP.js";
11
+ } from "./chunk-K2FTXJYH.js";
12
12
  import {
13
13
  parseAnimatedGifMetadata
14
- } from "./chunk-YRKBFZDQ.js";
14
+ } from "./chunk-2YN64IN5.js";
15
15
  import {
16
16
  parseHTML
17
17
  } from "./chunk-GK4AIFIH.js";
@@ -8,7 +8,7 @@ import {
8
8
  MAX_AUDIO_GAIN_DB,
9
9
  formatAudioGain,
10
10
  isAudibleVideoElement
11
- } from "./chunk-AQIS2UNW.js";
11
+ } from "./chunk-HWKCIWQT.js";
12
12
  import {
13
13
  findFfBinary
14
14
  } from "./chunk-PJ3HDUCY.js";
@@ -8,7 +8,7 @@ import {
8
8
  isAllowedHtmlAttribute,
9
9
  isSafeAttributeValue,
10
10
  sanitizeRichTextChildren
11
- } from "./chunk-YRKBFZDQ.js";
11
+ } from "./chunk-2YN64IN5.js";
12
12
  import {
13
13
  removeElementWithGsapCascade
14
14
  } from "./chunk-AVUUN2XD.js";
@@ -17,7 +17,7 @@ import {
17
17
  ensureHfIds,
18
18
  mintHfId,
19
19
  walkCompositionDescendants
20
- } from "./chunk-WVU5CJXG.js";
20
+ } from "./chunk-Z6B37SNM.js";
21
21
  import {
22
22
  require_dist
23
23
  } from "./chunk-ZJUKFZ2P.js";
@@ -21,7 +21,7 @@ import {
21
21
  splitElementInHtml,
22
22
  unwrapElementsFromHtml,
23
23
  wrapElementsInHtml
24
- } from "./chunk-BW773MMX.js";
24
+ } from "./chunk-RMHUQGRK.js";
25
25
  import {
26
26
  atomicTempPath,
27
27
  createFileAtomically,
@@ -34,7 +34,7 @@ import {
34
34
  measureAudio,
35
35
  requiredFfmpeg,
36
36
  resolveLocalAudioPath
37
- } from "./chunk-BE6X3G5C.js";
37
+ } from "./chunk-QC4FJVLM.js";
38
38
  import {
39
39
  PROXY_PARAMS_VERSION,
40
40
  PROXY_PENDING_RETRY_AFTER_SECONDS,
@@ -60,7 +60,7 @@ import {
60
60
  shouldPrewarmProxy,
61
61
  waitForProxy,
62
62
  walkDir
63
- } from "./chunk-RLK4ARFU.js";
63
+ } from "./chunk-TCLGPL65.js";
64
64
  import {
65
65
  findTimelineScript,
66
66
  parseGsapScriptAcorn
@@ -81,7 +81,7 @@ import {
81
81
  motionPathPluginUrl,
82
82
  parseFps,
83
83
  sameInstant
84
- } from "./chunk-YRKBFZDQ.js";
84
+ } from "./chunk-2YN64IN5.js";
85
85
  import {
86
86
  MagicString,
87
87
  VALID_CANVAS_RESOLUTIONS,
@@ -92,7 +92,7 @@ import {
92
92
  addScenePartsManifest,
93
93
  deferScriptsUntilFonts,
94
94
  ensureHfIds
95
- } from "./chunk-WVU5CJXG.js";
95
+ } from "./chunk-Z6B37SNM.js";
96
96
  import {
97
97
  RUNTIME_BOOTSTRAP_ATTR,
98
98
  findStartTags,
@@ -104,7 +104,7 @@ import {
104
104
  resolveRateSpec,
105
105
  sourceTimeAt,
106
106
  stripEmbeddedRuntimeScripts
107
- } from "./chunk-AQIS2UNW.js";
107
+ } from "./chunk-HWKCIWQT.js";
108
108
  import {
109
109
  ProjectRootMissingError,
110
110
  folderGone,
@@ -222,7 +222,7 @@ function stampFileHfIds(filePath) {
222
222
  }
223
223
  }
224
224
 
225
- // ../studio-server/dist/chunk-NU64EXIH.js
225
+ // ../studio-server/dist/chunk-36F5I56K.js
226
226
  import { randomUUID as randomUUID6 } from "crypto";
227
227
  import { mkdir as mkdir2, readdir as readdir3, rm as rm3, rmdir, writeFile } from "fs/promises";
228
228
  import {
@@ -906,13 +906,16 @@ function saveRecord(file, log, record) {
906
906
  closeSync2(fd);
907
907
  }
908
908
  }
909
+ function baselineRecord(log) {
910
+ return {
911
+ type: "baseline",
912
+ files: Object.fromEntries(log.baseline),
913
+ ...log.keepsLedger && { keepsLedger: true }
914
+ };
915
+ }
909
916
  function writeLog(file, log) {
910
917
  const records = [
911
- {
912
- type: "baseline",
913
- files: Object.fromEntries(log.baseline),
914
- ...log.keepsLedger && { keepsLedger: true }
915
- },
918
+ baselineRecord(log),
916
919
  ...log.entries.map((entry) => ({ type: "entry", entry })),
917
920
  ...[...log.pins].map((id) => ({ type: "pin", id, pinned: true }))
918
921
  ];
@@ -1007,6 +1010,7 @@ function withoutHiddenPaths(log) {
1007
1010
  return log;
1008
1011
  }
1009
1012
  var historyFiles = (dir) => listProjectFiles(dir).filter((file) => isHistoryPath(file.path));
1013
+ var COPY_LATER_ABOVE_BYTES = 1024 ** 2;
1010
1014
  var sameWho = (a, b) => a.kind === b.kind && a.name === b.name;
1011
1015
  function splitAt(change, at, kept) {
1012
1016
  if (at === change.after) return [change, null];
@@ -1088,6 +1092,7 @@ var Engine = class {
1088
1092
  outside = null;
1089
1093
  /** A coalescing claim, open until another key, its idle timer, an operation, a window, or another write. */
1090
1094
  claimed = null;
1095
+ adopting = /* @__PURE__ */ new Map();
1091
1096
  /** Per path and hash an API write left, the hash of the bytes it replaced, until walked or written past. */
1092
1097
  overwritten = /* @__PURE__ */ new Map();
1093
1098
  stopHearing;
@@ -1158,6 +1163,9 @@ var Engine = class {
1158
1163
  const cached = cache.get(path);
1159
1164
  this.tracked.set(path, { hash, stat: cached?.hash === hash ? cached.stat : "" });
1160
1165
  }
1166
+ const left = this.readAdopting();
1167
+ const unadopted = (file) => left.has(file.path) && !this.tracked.has(file.path);
1168
+ this.adoptMediaInBackground(historyFiles(this.dir).filter(unadopted), this.now());
1161
1169
  this.reopenClosedWindow();
1162
1170
  await this.settleAll();
1163
1171
  }
@@ -1210,7 +1218,8 @@ var Engine = class {
1210
1218
  }
1211
1219
  async firstOpen() {
1212
1220
  const sweptAt = this.now();
1213
- for (const file of historyFiles(this.dir)) {
1221
+ const files = historyFiles(this.dir);
1222
+ for (const file of files.filter((file2) => file2.size <= COPY_LATER_ABOVE_BYTES)) {
1214
1223
  const hash = await this.storeIfPresent(file.path);
1215
1224
  if (this.whereFolder() !== "here") throw this.replaced();
1216
1225
  if (hash !== null) this.tracked.set(file.path, { hash, stat: statKey(file, sweptAt) });
@@ -1219,6 +1228,50 @@ var Engine = class {
1219
1228
  this.log.keepsLedger = true;
1220
1229
  this.persistLog();
1221
1230
  this.saveStatCache();
1231
+ this.adoptMediaInBackground(
1232
+ files.filter((file) => file.size > COPY_LATER_ABOVE_BYTES),
1233
+ sweptAt
1234
+ );
1235
+ }
1236
+ adoptMediaInBackground(files, sweptAt) {
1237
+ let copied = Promise.resolve();
1238
+ for (const file of files) {
1239
+ copied = copied.then(() => this.adopt(file, sweptAt));
1240
+ this.adopting.set(file.path, copied);
1241
+ }
1242
+ this.saveAdopting();
1243
+ }
1244
+ saveAdopting() {
1245
+ const file = join5(this.home, "adopting.json");
1246
+ if (!this.adopting.size) return rmSync2(file, { force: true });
1247
+ mkdirSync4(this.home, { recursive: true });
1248
+ replaceFileAtomically(file, JSON.stringify([...this.adopting.keys()]), 420);
1249
+ }
1250
+ async adopt(file, sweptAt) {
1251
+ try {
1252
+ if (this.whereFolder() !== "here") return;
1253
+ const stored = await this.storeIfPresent(file.path);
1254
+ await this.queue(async () => {
1255
+ await this.recordAdopted(file, sweptAt, stored);
1256
+ this.adopting.delete(file.path);
1257
+ this.saveAdopting();
1258
+ });
1259
+ } catch (error) {
1260
+ if (!(error instanceof HistoryClosedError)) this.options.onError?.(error);
1261
+ }
1262
+ }
1263
+ async recordAdopted(file, sweptAt, stored) {
1264
+ if (stored === null || this.whereFolder() !== "here") return;
1265
+ const hash = this.blobs.has(stored) ? stored : await this.storeIfPresent(file.path);
1266
+ if (hash === null) return;
1267
+ const change = { path: file.path, before: null, after: hash };
1268
+ const found = this.overwrittenBy(change, void 0, /* @__PURE__ */ new Set());
1269
+ const start = found && this.blobs.has(found) ? found : hash;
1270
+ this.tracked.set(file.path, { hash, stat: statKey(file, sweptAt) });
1271
+ this.log.baseline.set(file.path, start);
1272
+ if (start !== hash) addChange(this.outsideGroup(), file.path, start, hash);
1273
+ this.persistLog(baselineRecord(this.log));
1274
+ this.saveStatCache();
1222
1275
  }
1223
1276
  manifest() {
1224
1277
  return new Map([...this.tracked].map(([path, file]) => [path, file.hash]));
@@ -1231,6 +1284,15 @@ var Engine = class {
1231
1284
  return /* @__PURE__ */ new Map();
1232
1285
  }
1233
1286
  }
1287
+ readAdopting() {
1288
+ try {
1289
+ return new Set(
1290
+ JSON.parse(readFileSync6(join5(this.home, "adopting.json"), "utf-8"))
1291
+ );
1292
+ } catch {
1293
+ return /* @__PURE__ */ new Set();
1294
+ }
1295
+ }
1234
1296
  saveStatCache() {
1235
1297
  const files = JSON.stringify(Object.fromEntries(this.tracked));
1236
1298
  mkdirSync4(this.home, { recursive: true });
@@ -1244,7 +1306,7 @@ var Engine = class {
1244
1306
  if (this.whereFolder() !== "here") return;
1245
1307
  const sweptAt = this.now();
1246
1308
  const changedAt = (file) => Math.min(sweptAt, Math.max(file.mtimeMs, file.ctimeMs));
1247
- const seen = historyFiles(this.dir);
1309
+ const seen = historyFiles(this.dir).filter((file) => !this.adopting.has(file.path));
1248
1310
  const heard = new Map(this.overwritten);
1249
1311
  const present = new Set(seen.map((file) => file.path));
1250
1312
  const removed = [...this.tracked.keys()].filter((path) => !present.has(path)).map((path) => {
@@ -1708,7 +1770,10 @@ var Engine = class {
1708
1770
  return {
1709
1771
  projectId: this.projectId,
1710
1772
  beginWindow: (who, label, options = {}) => this.beginWindow(who, label, options.idleMs ?? this.options.maxGroupMs ?? 3e4),
1711
- claim: (who, label, paths, options = {}) => this.queue(() => this.claimNow(who, label, paths, options)),
1773
+ claim: async (who, label, paths, options = {}) => {
1774
+ await Promise.all(paths.map((path) => this.adopting.get(this.logPath(path))));
1775
+ return this.queue(() => this.claimNow(who, label, paths, options));
1776
+ },
1712
1777
  noteChange: (path) => {
1713
1778
  if (!this.closed) this.noteChange(path);
1714
1779
  },
@@ -1774,6 +1839,7 @@ var Engine = class {
1774
1839
  flush: () => this.queue(() => this.settleAll()),
1775
1840
  replacedAtPath: () => this.whereFolder() === "replaced",
1776
1841
  close: () => this.closing ??= (async () => {
1842
+ await Promise.all(this.adopting.values());
1777
1843
  if (this.notedTimer) clearTimeout(this.notedTimer);
1778
1844
  this.stopHearing?.();
1779
1845
  const settled = this.queue(() => this.settleAll());
@@ -6665,7 +6731,7 @@ async function prepareGsapMutationScript(c, res, firstMutation) {
6665
6731
  let block = extractGsapScriptBlock(html);
6666
6732
  if (!block && (firstMutation.type === "add" || firstMutation.type === "add-with-keyframes")) {
6667
6733
  const compId = html.match(/data-composition-id="([^"]+)"/)?.[1] ?? "main";
6668
- const { GSAP_CDN } = await import("./dist-NDHKRZTY.js");
6734
+ const { GSAP_CDN } = await import("./dist-S3PJNPXQ.js");
6669
6735
  const bootstrap = [
6670
6736
  `<script src="${GSAP_CDN}"></script>`,
6671
6737
  "<script>",
@@ -11130,6 +11196,12 @@ function createStudioApi(adapter) {
11130
11196
  const project = await Promise.resolve().then(() => adapter.resolveProject(c.req.param("id"))).catch(() => null);
11131
11197
  if (project) adapter.invalidateProjectSignature?.(project.dir);
11132
11198
  });
11199
+ api.use("/projects/:id/*", async function openHistorySoNoWriteBecomesItsBaseline(c, next) {
11200
+ if (c.req.method !== "GET" && c.req.method !== "HEAD" && adapter.history) {
11201
+ await Promise.resolve().then(() => adapter.resolveProject(c.req.param("id"))).then((project) => project && adapter.history?.(project)).catch(() => null);
11202
+ }
11203
+ await next();
11204
+ });
11133
11205
  registerProjectRoutes(api, adapter);
11134
11206
  registerFileRoutes(api, adapter);
11135
11207
  registerPreviewRoutes(api, adapter);
@@ -8,7 +8,7 @@ import {
8
8
  firstFrameColourArgs,
9
9
  hdrToSdrToneMapFilter,
10
10
  parseFirstFrameColour
11
- } from "./chunk-YRKBFZDQ.js";
11
+ } from "./chunk-2YN64IN5.js";
12
12
  import {
13
13
  mkdirWithinProject,
14
14
  realProjectRoot,
@@ -6,10 +6,10 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  getMimeType
9
- } from "./chunk-5NZVDRRZ.js";
9
+ } from "./chunk-S7NPLFWV.js";
10
10
  import {
11
11
  injectTagsAtHeadStart
12
- } from "./chunk-AQIS2UNW.js";
12
+ } from "./chunk-HWKCIWQT.js";
13
13
 
14
14
  // src/utils/compositionServer.ts
15
15
  import { createHash } from "crypto";
@@ -13,7 +13,7 @@ function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCE
13
13
  return "auto";
14
14
  }
15
15
  async function resolveCaptureBrowserGpuMode(requestedMode, chromePath) {
16
- const { resolveBrowserGpuMode } = await import("./src-3M44XVWE.js");
16
+ const { resolveBrowserGpuMode } = await import("./src-PVYUYV3M.js");
17
17
  return resolveBrowserGpuMode(requestedMode, { chromePath });
18
18
  }
19
19
 
@@ -10,21 +10,21 @@ import {
10
10
  import {
11
11
  launchManagedBrowser,
12
12
  resolveManagedGpuMode
13
- } from "./chunk-6RGOHYPP.js";
13
+ } from "./chunk-7HG4BFIN.js";
14
14
  import {
15
15
  resolveDiagnosticNavigationTimeoutMs,
16
16
  windowsChromeCrashRemediation
17
- } from "./chunk-4DGJUQFZ.js";
17
+ } from "./chunk-HRUGC23L.js";
18
18
  import {
19
19
  resolveLocalBrowserGpuMode
20
- } from "./chunk-4QJQOVN4.js";
20
+ } from "./chunk-XS4EJSKU.js";
21
21
  import {
22
22
  c
23
23
  } from "./chunk-ZTZA4UWZ.js";
24
24
  import {
25
25
  assertWebGpuAdapterAvailable,
26
26
  compositionRequiresWebGpu
27
- } from "./chunk-77EJSKGP.js";
27
+ } from "./chunk-K2FTXJYH.js";
28
28
  import {
29
29
  normalizeErrorMessage
30
30
  } from "./chunk-KNU5COPB.js";
@@ -103,7 +103,7 @@ async function openSettledCompositionPage(html, url, options) {
103
103
  const { ensureBrowser, findSystemBrowser } = await import("./manager-CT3D67CG.js");
104
104
  const browser = await ensureBrowser();
105
105
  const puppeteer = await import("puppeteer-core");
106
- const { buildChromeArgs } = await import("./src-3M44XVWE.js");
106
+ const { buildChromeArgs } = await import("./src-PVYUYV3M.js");
107
107
  const requestedGpuMode = options.browserGpuMode ?? resolveCliChromeGpuMode();
108
108
  const requiresWebGpu = compositionRequiresWebGpu(html);
109
109
  const launch = async (executablePath) => {
@@ -22,7 +22,7 @@ import {
22
22
  shouldClampResolvedMediaDuration,
23
23
  stripEmbeddedRuntimeScripts,
24
24
  warnUnknownEnumValues
25
- } from "./chunk-AQIS2UNW.js";
25
+ } from "./chunk-HWKCIWQT.js";
26
26
  import {
27
27
  cssVariableName
28
28
  } from "./chunk-VC76R6W2.js";
@@ -6,24 +6,24 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  serveStaticProjectHtml
9
- } from "./chunk-2CACHG7K.js";
9
+ } from "./chunk-KBJUXVOJ.js";
10
10
  import {
11
11
  AUDIT_SEEK_OPTIONS,
12
12
  installPageFunctionGuard,
13
13
  seekCompositionTimeline,
14
14
  waitForCompositionFonts,
15
15
  waitForRuntimeReady
16
- } from "./chunk-VKBSHU24.js";
16
+ } from "./chunk-YQZNILVH.js";
17
17
  import {
18
18
  launchManagedBrowser,
19
19
  resolveManagedGpuMode
20
- } from "./chunk-6RGOHYPP.js";
20
+ } from "./chunk-7HG4BFIN.js";
21
21
  import {
22
22
  resolveDiagnosticNavigationTimeoutMs
23
- } from "./chunk-4DGJUQFZ.js";
23
+ } from "./chunk-HRUGC23L.js";
24
24
  import {
25
25
  resolveProject
26
- } from "./chunk-JDNYDR3Y.js";
26
+ } from "./chunk-74AXGCJH.js";
27
27
  import {
28
28
  c
29
29
  } from "./chunk-ZTZA4UWZ.js";
@@ -37,7 +37,7 @@ import {
37
37
  import {
38
38
  printDeprecationNotice,
39
39
  withMeta
40
- } from "./chunk-OESXJGYM.js";
40
+ } from "./chunk-7UEZ6GR6.js";
41
41
  import {
42
42
  normalizeErrorMessage
43
43
  } from "./chunk-KNU5COPB.js";
@@ -670,7 +670,7 @@ async function collectTweenBoundaries(page) {
670
670
  });
671
671
  }
672
672
  async function bundleProjectHtml(projectDir) {
673
- const { bundleToSingleHtml } = await import("./compiler-GNV7YQRO.js");
673
+ const { bundleToSingleHtml } = await import("./compiler-QO36EXLS.js");
674
674
  return bundleToSingleHtml(projectDir);
675
675
  }
676
676
  async function alignViewportToComposition(page, url) {
@@ -692,8 +692,8 @@ async function alignViewportToComposition(page, url) {
692
692
  async function runLayoutAudit(projectDir, opts) {
693
693
  const { ensureBrowser } = await import("./manager-CT3D67CG.js");
694
694
  const puppeteer = await import("puppeteer-core");
695
- const { buildChromeArgs } = await import("./src-3M44XVWE.js");
696
- const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalBrowserGpuMode } = await import("./gpuPolicy-IGXJ6JGL.js");
695
+ const { buildChromeArgs } = await import("./src-PVYUYV3M.js");
696
+ const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalBrowserGpuMode } = await import("./gpuPolicy-2ZUZE5D6.js");
697
697
  const html = await bundleProjectHtml(projectDir);
698
698
  const server = await serveStaticProjectHtml(
699
699
  projectDir,
@@ -16,7 +16,7 @@ import {
16
16
  EncoderInterruptedError,
17
17
  encoderFailureError,
18
18
  prepareAnimatedGifInputs
19
- } from "./chunk-34C66AH5.js";
19
+ } from "./chunk-Q7IU7MOR.js";
20
20
  import {
21
21
  createStudioPositionSeekReapplyScript
22
22
  } from "./chunk-KC5XXX3X.js";
@@ -144,7 +144,7 @@ import {
144
144
  validateEngineConfigSnapshot,
145
145
  verifyDiskDrawElementSamples,
146
146
  writeCapturedFrame
147
- } from "./chunk-77EJSKGP.js";
147
+ } from "./chunk-K2FTXJYH.js";
148
148
  import {
149
149
  HF_VFX_ATTR,
150
150
  MEDIA_START_BASIS_ATTR,
@@ -162,7 +162,7 @@ import {
162
162
  resolveAbsoluteMediaStartSeconds,
163
163
  resolveAuthoredTimingWindow,
164
164
  toFps
165
- } from "./chunk-YRKBFZDQ.js";
165
+ } from "./chunk-2YN64IN5.js";
166
166
  import {
167
167
  CANVAS_DIMENSIONS,
168
168
  HTML_BODY_CSS_HEIGHT_FIRST_RE,
@@ -187,7 +187,7 @@ import {
187
187
  inlineSubCompositions,
188
188
  prepareFlattenedInnerRoot,
189
189
  styleElementsFor
190
- } from "./chunk-WVU5CJXG.js";
190
+ } from "./chunk-Z6B37SNM.js";
191
191
  import {
192
192
  HF_COLOR_GRADING_ATTR,
193
193
  MAX_AUDIO_GAIN,
@@ -209,7 +209,7 @@ import {
209
209
  resolveNaturalMediaTimelineDurationFromValues,
210
210
  shouldClampResolvedMediaDuration,
211
211
  sourceTimeAt
212
- } from "./chunk-AQIS2UNW.js";
212
+ } from "./chunk-HWKCIWQT.js";
213
213
  import {
214
214
  chromeMajorCeiling
215
215
  } from "./chunk-TWWSYAKJ.js";
@@ -14196,7 +14196,7 @@ function startServer(options = {}) {
14196
14196
  });
14197
14197
  async function shutdown(signal) {
14198
14198
  log.info(`Received ${signal}, shutting down`);
14199
- const { drainBrowserPool } = await import("./src-3M44XVWE.js");
14199
+ const { drainBrowserPool } = await import("./src-PVYUYV3M.js");
14200
14200
  await drainBrowserPool().catch(() => {
14201
14201
  });
14202
14202
  const handle = await Promise.race([
@@ -15319,7 +15319,7 @@ async function buildLocalExecutionPlan(projectDir, config, executionPlanDir, opt
15319
15319
  if (probeResult.fileServer) closeFileServerSafely(probeResult.fileServer, "plan", log);
15320
15320
  if (probeResult.probeSession) {
15321
15321
  try {
15322
- const { closeCaptureSession: closeCaptureSession2 } = await import("./src-3M44XVWE.js");
15322
+ const { closeCaptureSession: closeCaptureSession2 } = await import("./src-PVYUYV3M.js");
15323
15323
  await closeCaptureSession2(probeResult.probeSession);
15324
15324
  } catch (err) {
15325
15325
  log.warn("[plan] probe session close failed", {
@@ -20,7 +20,7 @@ import {
20
20
  typeDirPath,
21
21
  updateRecord,
22
22
  withFigmaErrors
23
- } from "./chunk-IKSUSTJT.js";
23
+ } from "./chunk-ZRZERNPI.js";
24
24
  import {
25
25
  defineCommand
26
26
  } from "./chunk-S3S4TGEH.js";
@@ -221,7 +221,7 @@ var asset_default = defineCommand({
221
221
  rendered > 0 ? `(${results.length} nodes, ${rendered} rendered in 1 figma request)` : `(${results.length} nodes, all reused from cache \u2014 no figma request)`
222
222
  );
223
223
  }
224
- const { trackFigmaImport } = await import("./telemetry-ILX6SWZM.js");
224
+ const { trackFigmaImport } = await import("./telemetry-WPARNWWQ.js");
225
225
  trackFigmaImport({
226
226
  phase: "asset",
227
227
  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-FB2W7SMV.js");
1281
+ const { trackCommandFailure } = await import("./events-OR6DQQJO.js");
1282
1282
  trackCommandFailure(
1283
1283
  command,
1284
1284
  err,