hyperframes 0.8.137 → 0.8.138

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 (167) hide show
  1. package/dist/{add-RUYRFHHN.js → add-IZQPSHT5.js} +15 -15
  2. package/dist/{animatedGifPrep-VMLA2P45.js → animatedGifPrep-MQF3GRFW.js} +6 -6
  3. package/dist/appHistory-TH3TL6N6.js +31 -0
  4. package/dist/{asset-DHOG5RFW.js → asset-RNZX4ISG.js} +2 -2
  5. package/dist/{assetCataloger-7XIMSAPT.js → assetCataloger-5YRUY3PJ.js} +2 -2
  6. package/dist/{auth-FUBCZVUH.js → auth-LUELYGJ4.js} +2 -2
  7. package/dist/{autoUpdate-LHVP2DWF.js → autoUpdate-ECMQWUU5.js} +2 -2
  8. package/dist/{backgroundChecks-JO3KP5QE.js → backgroundChecks-PBEJMSA3.js} +3 -3
  9. package/dist/backgroundChecksWorker.js +3 -3
  10. package/dist/{batchRender-PBCQ3R2Y.js → batchRender-2GXKBPFQ.js} +3 -3
  11. package/dist/{beats-AF7C54FH.js → beats-AAAZVDOY.js} +14 -14
  12. package/dist/{benchmark-QST66S5G.js → benchmark-EI767IB4.js} +12 -12
  13. package/dist/{browser-NBKY3N66.js → browser-KAA2VXYH.js} +9 -9
  14. package/dist/{bundleWithLocalizedFonts-ZYZHO7IV.js → bundleWithLocalizedFonts-MWDYAPGB.js} +2 -2
  15. package/dist/{capture-6GM7SIH5.js → capture-IRRHK6BT.js} +2 -2
  16. package/dist/{capture-MGC5AO5D.js → capture-VYT5NQQI.js} +13 -13
  17. package/dist/{catalog-IT2TP2YE.js → catalog-FYTZ2ET6.js} +21 -21
  18. package/dist/catch-up-XH3OAKQR.js +123 -0
  19. package/dist/{check-HNTSVBUV.js → check-MUMIOK5K.js} +38 -38
  20. package/dist/{checkBrowser-XH446M7L.js → checkBrowser-LKSZFOU6.js} +36 -36
  21. package/dist/{chunk-XT5P4QMO.js → chunk-3DKN5WKL.js} +31 -11
  22. package/dist/{chunk-DRYF6HV2.js → chunk-3F6YLT72.js} +11 -11
  23. package/dist/{chunk-ZBAC7334.js → chunk-5K33TNUJ.js} +2 -2
  24. package/dist/{chunk-OUKLD6D2.js → chunk-7OLMGFDN.js} +3 -3
  25. package/dist/{chunk-TTBOUHWT.js → chunk-7Y5SMPRV.js} +3 -3
  26. package/dist/{chunk-FAID56IK.js → chunk-APMG37MX.js} +1 -1
  27. package/dist/{chunk-MOBLZWAK.js → chunk-ASPTQ6DT.js} +1 -1
  28. package/dist/chunk-DCAI5DBR.js +218 -0
  29. package/dist/{chunk-E6WZHX7J.js → chunk-DJMXTKKK.js} +1 -1
  30. package/dist/{chunk-5ORPW6RH.js → chunk-DXHYACUC.js} +3 -3
  31. package/dist/{chunk-GULOKZLI.js → chunk-EDUBJPGL.js} +14 -9
  32. package/dist/{chunk-MBSFY6Y5.js → chunk-FSSMOTMS.js} +1 -1
  33. package/dist/{chunk-6XCIGLRQ.js → chunk-GJGVYREG.js} +57 -224
  34. package/dist/{chunk-WFNNUWFN.js → chunk-GNHJ4ONK.js} +2 -2
  35. package/dist/{chunk-GR7YLWXS.js → chunk-HUZYBV2Z.js} +1 -1
  36. package/dist/{chunk-BVOGEPHM.js → chunk-HXXX6N2G.js} +2 -2
  37. package/dist/{chunk-GYVUR4XC.js → chunk-I3BRUEKD.js} +1 -1
  38. package/dist/{chunk-VYGC4AJL.js → chunk-IC5L6L7K.js} +1 -1
  39. package/dist/{chunk-4LBBWEEH.js → chunk-IRYC5BRO.js} +4 -4
  40. package/dist/{chunk-JVJQL42J.js → chunk-JCRJBB4E.js} +9 -9
  41. package/dist/{chunk-7MF7FTFV.js → chunk-JOUVZO7M.js} +1 -1
  42. package/dist/{chunk-4HWOEWMH.js → chunk-KBUUCAIZ.js} +5 -5
  43. package/dist/{chunk-NSLSFVFN.js → chunk-KRLYIT22.js} +1 -1
  44. package/dist/{chunk-J6BHZVM3.js → chunk-L5E5ZN6G.js} +1 -1
  45. package/dist/{chunk-OEJQAXS3.js → chunk-MIOBYUXT.js} +1 -1
  46. package/dist/{chunk-N4Y4KZFV.js → chunk-MKVKVMUH.js} +7 -7
  47. package/dist/{chunk-6IEDWKFR.js → chunk-OBC75KXL.js} +1 -1
  48. package/dist/{chunk-HUV6BP7O.js → chunk-P5WDMFBB.js} +405 -205
  49. package/dist/{chunk-WYX6L7AV.js → chunk-P75OFLZN.js} +2 -2
  50. package/dist/{chunk-ZBKSKJ37.js → chunk-PHRWQQOJ.js} +1 -1
  51. package/dist/{chunk-YDCEBBEL.js → chunk-PHXBLIKK.js} +10 -10
  52. package/dist/{chunk-DKYXU4F4.js → chunk-QPOK6I32.js} +2 -2
  53. package/dist/{chunk-LSLJIVWV.js → chunk-R6C6URKB.js} +3 -3
  54. package/dist/{chunk-VU7RRQNA.js → chunk-RH5VML6E.js} +12 -12
  55. package/dist/{chunk-SCCJUPPX.js → chunk-RLNB3JCY.js} +1 -1
  56. package/dist/{chunk-R2MFCLGW.js → chunk-SDRKEYZV.js} +5 -5
  57. package/dist/{chunk-E2C5SLHT.js → chunk-SIMYRD5P.js} +1 -1
  58. package/dist/{chunk-VDQCNWQI.js → chunk-STA43FMY.js} +1 -1
  59. package/dist/{chunk-SMGQFCBC.js → chunk-SZITAGRK.js} +1 -1
  60. package/dist/chunk-UINDCCO7.js +3742 -0
  61. package/dist/{chunk-ADXD2HP4.js → chunk-UUMK6VME.js} +1 -1
  62. package/dist/{chunk-X2GKNLHE.js → chunk-VR5UQWGV.js} +3 -3
  63. package/dist/{chunk-J4AOOISS.js → chunk-W3KQCJVP.js} +217 -6
  64. package/dist/{chunk-WTGGSKAJ.js → chunk-WH6PRFNX.js} +3 -3
  65. package/dist/{chunk-7LAWNKVY.js → chunk-XQODEVF3.js} +1 -1
  66. package/dist/{chunk-RQLZL5KC.js → chunk-YGXLBX3N.js} +1 -1
  67. package/dist/{chunk-2DQ356HE.js → chunk-YNBXJWSD.js} +1 -1
  68. package/dist/{clean-OWDWVJBN.js → clean-LZPDOAV4.js} +21 -21
  69. package/dist/cli.js +62 -52
  70. package/dist/{cloud-S3MPN5VF.js → cloud-RVAH5NNL.js} +4 -4
  71. package/dist/{cloudrun-TLB7DEIN.js → cloudrun-NFGM6TRT.js} +3 -3
  72. package/dist/{compare-YRR6E22F.js → compare-S3M5OAL2.js} +29 -29
  73. package/dist/{compiler-ENHZ73DN.js → compiler-SZ4GTYFB.js} +3 -3
  74. package/dist/{component-EIJRLMDN.js → component-PR2WZTQ4.js} +3 -3
  75. package/dist/{compositions-5CBYWP55.js → compositions-6RYXH2UA.js} +11 -11
  76. package/dist/{delete-3U5L6XFA.js → delete-EO7C3LQ6.js} +3 -3
  77. package/dist/{deterministicFonts-U2EXY2KQ.js → deterministicFonts-GTITFRSJ.js} +2 -2
  78. package/dist/{dist-QS5WEGBE.js → dist-OJTEVNJR.js} +1 -1
  79. package/dist/{dist-7Y5HTID7.js → dist-RVC3JTID.js} +2 -2
  80. package/dist/{doctor-IZQZRMWC.js → doctor-UTCCMN32.js} +12 -12
  81. package/dist/{events-6BYBCUBA.js → events-RCGWL4LI.js} +9 -9
  82. package/dist/{events-BYDKYSIJ.js → events-RE3OR6KY.js} +8 -8
  83. package/dist/{feedback-I4YN55BC.js → feedback-V7C64JIR.js} +12 -12
  84. package/dist/{figma-A3FAM3JT.js → figma-26LOX5PV.js} +3 -3
  85. package/dist/fontLocalizeCli.js +10 -10
  86. package/dist/{get-PIFWLOAB.js → get-E2K2JRTV.js} +3 -3
  87. package/dist/{gpuPolicy-26BEFD3H.js → gpuPolicy-Z3PQN6ZK.js} +6 -6
  88. package/dist/{grade-compare-H2OKE5QQ.js → grade-compare-OTZDU463.js} +26 -26
  89. package/dist/{help-AXK7X72W.js → help-IRSQLNI5.js} +3 -2
  90. package/dist/{history-KUS6IXSL.js → history-G44U6762.js} +18 -18
  91. package/dist/hyperframe-runtime.js +64 -182
  92. package/dist/hyperframe.manifest.json +1 -1
  93. package/dist/hyperframe.runtime.iife.js +64 -182
  94. package/dist/hyperframes-player.global.js +1 -1
  95. package/dist/{info-DRASLTTJ.js → info-KXQ2TAHX.js} +11 -11
  96. package/dist/{init-3BZKVTW5.js → init-7SXMLHJE.js} +22 -22
  97. package/dist/{inspect-ROKMT5V7.js → inspect-7JTINR25.js} +27 -27
  98. package/dist/{installer-ERYE2UVI.js → installer-RH4E6WXT.js} +4 -4
  99. package/dist/{keyframes-PXGT4QQ5.js → keyframes-PIV573S6.js} +12 -12
  100. package/dist/{lambda-EQAPNZDT.js → lambda-GO5HAA4S.js} +4 -4
  101. package/dist/{layout-PMFNU7NB.js → layout-N2736OO3.js} +27 -27
  102. package/dist/{lint-G26WF3YE.js → lint-WUXZ5WWZ.js} +14 -14
  103. package/dist/{lintProject-EPVG2EFE.js → lintProject-ANMPLBIT.js} +1 -1
  104. package/dist/{list-WIPSPI6M.js → list-QF7AMX5F.js} +3 -3
  105. package/dist/{login-3CPZGZKC.js → login-6RGSXHQJ.js} +4 -4
  106. package/dist/{media-treatment-MGAQ5DQJ.js → media-treatment-T4KDEDYW.js} +14 -14
  107. package/dist/{models-QHS7P3NJ.js → models-6JMNK3XI.js} +18 -11
  108. package/dist/{motionShot-OLA4DIP7.js → motionShot-74WM7KF6.js} +12 -12
  109. package/dist/{normalize-audio-PAPIKX2Y.js → normalize-audio-ZZU36ZMD.js} +14 -14
  110. package/dist/{open-D5INI7M6.js → open-G523K45B.js} +20 -13
  111. package/dist/{pipeline-IWP6BVSS.js → pipeline-AKDGCWRE.js} +8 -8
  112. package/dist/{play-O2WTUH6O.js → play-SHIGXVON.js} +30 -30
  113. package/dist/{preflight-EUCDEHR5.js → preflight-6ERLORWK.js} +7 -7
  114. package/dist/{present-YDJZIRYD.js → present-QOYYNZCE.js} +19 -19
  115. package/dist/{preview-AS6S5EKV.js → preview-KUXTDJL3.js} +26 -24
  116. package/dist/{producer-S77FHAAG.js → producer-CH33JXHK.js} +1 -1
  117. package/dist/{projectConfig-6XCGW6KX.js → projectConfig-NKIPRWAE.js} +6 -6
  118. package/dist/{publication-E46VH7XO.js → publication-4RBVVR5Z.js} +2 -2
  119. package/dist/{publish-GQXWU7NF.js → publish-OLHR4Z4U.js} +12 -11
  120. package/dist/{remove-background-JPPYOSD2.js → remove-background-NPKZSIPY.js} +9 -9
  121. package/dist/{render-IPOSWART.js → render-GYYGWYQC.js} +17 -17
  122. package/dist/{render-HQJEYV6Q.js → render-P4NWFUS7.js} +29 -27
  123. package/dist/{render-XC3O77AK.js → render-UOKPAJNH.js} +3 -3
  124. package/dist/{render-batch-FX5TZDGW.js → render-batch-ZDG3EXSD.js} +3 -3
  125. package/dist/{renderCancellation-66SZW2VF.js → renderCancellation-QYQLWHZY.js} +6 -6
  126. package/dist/renderSetupWorker.js +1 -1
  127. package/dist/{resolver-JU3VRG4K.js → resolver-CWH3VVB7.js} +4 -4
  128. package/dist/{sherpa-I5YSMJNV.js → sherpa-WEQE23S5.js} +112 -43
  129. package/dist/sherpaWorker.js +3 -7
  130. package/dist/skills/hyperframes/SKILL.md +2 -0
  131. package/dist/skills/hyperframes-cli/SKILL.md +1 -1
  132. package/dist/{skills-SLCG4D3C.js → skills-BVONI6TC.js} +14 -14
  133. package/dist/{skillsUpdateCheck-KJBSMNG3.js → skillsUpdateCheck-KKDPTFM7.js} +3 -3
  134. package/dist/{snapshot-WOPONARS.js → snapshot-PWZFJEDR.js} +36 -36
  135. package/dist/{src-EDXJKFXO.js → src-HH4C5GZV.js} +9 -9
  136. package/dist/{src-A7PS67DT.js → src-YO7MAWGD.js} +5 -5
  137. package/dist/{staticProjectServer-XUCQPVTF.js → staticProjectServer-PR5INXSA.js} +14 -14
  138. package/dist/{status-Z23IJMWJ.js → status-AK67DTED.js} +6 -6
  139. package/dist/studio/assets/{hyperframes-player-D_Mh6hbx.js → hyperframes-player-B30apksz.js} +1 -1
  140. package/dist/studio/assets/{index-B3lJsA-e.js → index-BdjA0CLD.js} +137 -137
  141. package/dist/studio/assets/{index-CC_E-Cbl.css → index-CVd4O6eH.css} +1 -1
  142. package/dist/studio/assets/{index-CHEctGzc.js → index-DIJuIBwI.js} +1 -1
  143. package/dist/studio/assets/{index-rtccfg9b.js → index-DXVvWfQG.js} +1 -1
  144. package/dist/studio/index.html +2 -2
  145. package/dist/studio/index.js +21 -30
  146. package/dist/studio/index.js.map +1 -1
  147. package/dist/studio/styles.css +1 -1
  148. package/dist/{studio-api-SAZ65ULH.js → studio-api-NFJMFAB7.js} +11 -11
  149. package/dist/{studioServer-525NV45Z.js → studioServer-TQZVCIEL.js} +51 -50
  150. package/dist/{system-SXBUUXBG.js → system-ZWIBWWE6.js} +6 -6
  151. package/dist/{telemetry-MUWYEQ42.js → telemetry-63L2ORO3.js} +9 -9
  152. package/dist/templates/_shared/AGENTS.md +2 -0
  153. package/dist/templates/_shared/CLAUDE.md +2 -0
  154. package/dist/{timeline-BUCFPNP6.js → timeline-QKZQL5DJ.js} +18 -18
  155. package/dist/{tokens-OOJBPXYD.js → tokens-ELK62U4A.js} +2 -2
  156. package/dist/{transcribe-JAADNKL7.js → transcribe-OSK7HEOJ.js} +7 -7
  157. package/dist/{transcribe-GCVTFFIF.js → transcribe-VKSXTM7K.js} +12 -12
  158. package/dist/{tts-XGVL5UHX.js → tts-FU35O6YB.js} +1 -1
  159. package/dist/{updateCheck-AVUIJNVC.js → updateCheck-PM4FEI7P.js} +2 -2
  160. package/dist/{upgrade-DV6IVILG.js → upgrade-G635QCNO.js} +2 -2
  161. package/dist/{urlDownloader-N7LDOVHK.js → urlDownloader-MVYQTP73.js} +5 -5
  162. package/dist/{validate-22IQFLYH.js → validate-AZTMI3HR.js} +16 -16
  163. package/dist/{video-22M7YBQT.js → video-H56FK33V.js} +6 -6
  164. package/package.json +1 -1
  165. package/dist/chunk-P7GAS5DG.js +0 -3742
  166. package/dist/{chunk-WJFCDDP7.js → chunk-R4QIE6UY.js} +3 -3
  167. package/dist/{synthesize-4RPDY46T.js → synthesize-77PTU6C5.js} +4 -4
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-TVCRUG2S.js";
14
14
  import {
15
15
  getFreeDiskMb
16
- } from "./chunk-OEJQAXS3.js";
16
+ } from "./chunk-MIOBYUXT.js";
17
17
  import {
18
18
  ensureBrowser,
19
19
  findBrowser
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-ZTZA4UWZ.js";
13
13
  import {
14
14
  getSystemMeta
15
- } from "./chunk-OEJQAXS3.js";
15
+ } from "./chunk-MIOBYUXT.js";
16
16
  import {
17
17
  getInvocationId
18
18
  } from "./chunk-54HJ63Q2.js";
@@ -23,7 +23,7 @@ import {
23
23
  evaluateCanary,
24
24
  findCanary,
25
25
  parseCanaryOverride
26
- } from "./chunk-SCCJUPPX.js";
26
+ } from "./chunk-RLNB3JCY.js";
27
27
  import {
28
28
  hostAnswers
29
29
  } from "./chunk-K4WIOZFP.js";
@@ -37,7 +37,7 @@ import {
37
37
  } from "./chunk-XUXGIA7H.js";
38
38
  import {
39
39
  VERSION
40
- } from "./chunk-WYX6L7AV.js";
40
+ } from "./chunk-P75OFLZN.js";
41
41
 
42
42
  // src/telemetry/transport.ts
43
43
  import { spawn } from "child_process";
@@ -4,11 +4,14 @@ import { dirname as __hf_dirname } from "node:path";
4
4
  var require = __hf_createRequire(import.meta.url);
5
5
  var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
+ import {
8
+ STUDIO_MANUAL_EDITS_PATH
9
+ } from "./chunk-KC5XXX3X.js";
7
10
  import {
8
11
  firstFrameColourArgs,
9
12
  hdrToSdrToneMapFilter,
10
13
  parseFirstFrameColour
11
- } from "./chunk-SCCJUPPX.js";
14
+ } from "./chunk-RLNB3JCY.js";
12
15
  import {
13
16
  mkdirWithinProject,
14
17
  realProjectRoot,
@@ -21,7 +24,7 @@ import {
21
24
  isUnresolvedAssetPlaceholder,
22
25
  maskNonScannableRanges,
23
26
  resolveLocalAssetCandidates
24
- } from "./chunk-VDQCNWQI.js";
27
+ } from "./chunk-STA43FMY.js";
25
28
  import {
26
29
  findFfBinary
27
30
  } from "./chunk-PJ3HDUCY.js";
@@ -29,9 +32,200 @@ import {
29
32
  rewriteAssetPath
30
33
  } from "./chunk-TQFG7HTI.js";
31
34
 
32
- // ../studio-server/dist/chunk-TTWLTYSQ.js
35
+ // ../studio-server/dist/chunk-4ETS2LXI.js
36
+ var STUDIO_MOTION_PATH = ".hyperframes/studio-motion.json";
37
+ function hasStudioMotionEntries(manifestContent) {
38
+ try {
39
+ const parsed = JSON.parse(manifestContent);
40
+ return Array.isArray(parsed.motions) && parsed.motions.length > 0;
41
+ } catch {
42
+ return false;
43
+ }
44
+ }
45
+ function createStudioMotionRenderBodyScript(manifestContent, options = {}) {
46
+ if (!manifestContent.trim() || !hasStudioMotionEntries(manifestContent)) return null;
47
+ return `(${studioMotionRenderRuntime.toString()})(${JSON.stringify(manifestContent)}, ${JSON.stringify(options.activeCompositionPath ?? null)});`;
48
+ }
49
+ function studioMotionRenderRuntime(manifestContent, activeCompositionPath) {
50
+ const STUDIO_MOTION_TIMELINE_ID = "studio-motion";
51
+ const STUDIO_MOTION_ATTR = "data-hf-studio-motion";
52
+ const ORIGINAL_TRANSFORM_ATTR = "data-hf-studio-motion-original-transform";
53
+ const ORIGINAL_OPACITY_ATTR = "data-hf-studio-motion-original-opacity";
54
+ const ORIGINAL_VISIBILITY_ATTR = "data-hf-studio-motion-original-visibility";
55
+ const objectRecord = (value) => value && typeof value === "object" ? value : null;
56
+ const finiteNumber = (value) => typeof value === "number" && Number.isFinite(value) ? value : null;
57
+ const runtimeWindow = window;
58
+ const parseMotionValues = (value) => {
59
+ const record = objectRecord(value);
60
+ if (!record) return null;
61
+ const parsed = {};
62
+ for (const key of ["x", "y", "scale", "rotation", "opacity", "autoAlpha"]) {
63
+ const next = finiteNumber(record[key]);
64
+ if (next != null) parsed[key] = next;
65
+ }
66
+ return Object.keys(parsed).length > 0 ? parsed : null;
67
+ };
68
+ const parseCustomEase = (value) => {
69
+ const record = objectRecord(value);
70
+ if (!record) return null;
71
+ const id = typeof record.id === "string" ? record.id.trim() : "";
72
+ const data = typeof record.data === "string" ? record.data.trim() : "";
73
+ if (!id || !data) return null;
74
+ return { id, data };
75
+ };
76
+ const parsedManifest = (() => {
77
+ try {
78
+ return objectRecord(JSON.parse(manifestContent));
79
+ } catch {
80
+ return null;
81
+ }
82
+ })();
83
+ const manifestMotions = Array.isArray(parsedManifest?.motions) ? parsedManifest.motions : [];
84
+ const sourceFileForElement = (element) => {
85
+ let current = element;
86
+ while (current) {
87
+ const sourceFile = current.getAttribute("data-composition-file") ?? current.getAttribute("data-composition-src");
88
+ if (sourceFile) return sourceFile;
89
+ current = current.parentElement;
90
+ }
91
+ return activeCompositionPath ?? "index.html";
92
+ };
93
+ const elementMatchesSourceFile = (element, sourceFile) => sourceFileForElement(element) === sourceFile;
94
+ const isHTMLElement = (element) => element instanceof HTMLElement;
95
+ const querySelectorCandidates = (selector) => {
96
+ const className = selector.match(/^\.([A-Za-z0-9_-]+)$/)?.[1];
97
+ if (className) {
98
+ return Array.from(document.getElementsByTagName("*")).filter(
99
+ (element) => isHTMLElement(element) && element.classList.contains(className)
100
+ );
101
+ }
102
+ if (/^[A-Za-z][A-Za-z0-9-]*$/.test(selector)) {
103
+ return Array.from(document.getElementsByTagName(selector)).filter(isHTMLElement);
104
+ }
105
+ return Array.from(document.querySelectorAll(selector)).filter(isHTMLElement);
106
+ };
107
+ const resolveTarget = (targetRecord) => {
108
+ const sourceFile = typeof targetRecord.sourceFile === "string" ? targetRecord.sourceFile : "";
109
+ if (!sourceFile) return null;
110
+ const id = typeof targetRecord.id === "string" ? targetRecord.id : "";
111
+ if (id) {
112
+ const byId = document.getElementById(id);
113
+ if (isHTMLElement(byId) && elementMatchesSourceFile(byId, sourceFile)) return byId;
114
+ }
115
+ const selector = typeof targetRecord.selector === "string" ? targetRecord.selector : "";
116
+ if (!selector) return null;
117
+ try {
118
+ const selectorIndex = Math.max(0, Math.floor(finiteNumber(targetRecord.selectorIndex) ?? 0));
119
+ return querySelectorCandidates(selector).filter(
120
+ (element) => elementMatchesSourceFile(element, sourceFile)
121
+ )[selectorIndex] ?? null;
122
+ } catch {
123
+ return null;
124
+ }
125
+ };
126
+ const restoreElement = (element) => {
127
+ runtimeWindow.gsap?.set?.(element, { clearProps: "transform,opacity,visibility" });
128
+ element.style.transform = element.getAttribute(ORIGINAL_TRANSFORM_ATTR) ?? "";
129
+ element.style.opacity = element.getAttribute(ORIGINAL_OPACITY_ATTR) ?? "";
130
+ element.style.visibility = element.getAttribute(ORIGINAL_VISIBILITY_ATTR) ?? "";
131
+ element.removeAttribute(STUDIO_MOTION_ATTR);
132
+ element.removeAttribute(ORIGINAL_TRANSFORM_ATTR);
133
+ element.removeAttribute(ORIGINAL_OPACITY_ATTR);
134
+ element.removeAttribute(ORIGINAL_VISIBILITY_ATTR);
135
+ };
136
+ const restoreStudioMotionElements = () => {
137
+ for (const element of Array.from(document.querySelectorAll(`[${STUDIO_MOTION_ATTR}]`))) {
138
+ if (isHTMLElement(element)) restoreElement(element);
139
+ }
140
+ };
141
+ const readCurrentTime = () => {
142
+ try {
143
+ const playerTime = runtimeWindow.__player?.getTime?.();
144
+ if (typeof playerTime === "number" && Number.isFinite(playerTime)) {
145
+ return Math.max(0, playerTime);
146
+ }
147
+ } catch {
148
+ }
149
+ try {
150
+ const timelineTime = runtimeWindow.__timeline?.time?.();
151
+ if (typeof timelineTime === "number" && Number.isFinite(timelineTime)) {
152
+ return Math.max(0, timelineTime);
153
+ }
154
+ } catch {
155
+ }
156
+ return 0;
157
+ };
158
+ const resolveEase = (motion) => {
159
+ const fallback = typeof motion.ease === "string" && motion.ease.trim() ? motion.ease.trim() : "none";
160
+ const customEase = parseCustomEase(motion.customEase);
161
+ const customEasePlugin = runtimeWindow.CustomEase;
162
+ if (!customEase || typeof customEasePlugin?.create !== "function") return fallback;
163
+ try {
164
+ runtimeWindow.gsap?.registerPlugin?.(customEasePlugin);
165
+ customEasePlugin.create(customEase.id, customEase.data);
166
+ return customEase.id;
167
+ } catch {
168
+ return fallback;
169
+ }
170
+ };
171
+ const applyManifest = () => {
172
+ runtimeWindow.__timelines = runtimeWindow.__timelines ?? {};
173
+ runtimeWindow.__timelines[STUDIO_MOTION_TIMELINE_ID]?.kill?.();
174
+ delete runtimeWindow.__timelines[STUDIO_MOTION_TIMELINE_ID];
175
+ restoreStudioMotionElements();
176
+ const gsap = runtimeWindow.gsap;
177
+ if (!gsap?.timeline || manifestMotions.length === 0) return 0;
178
+ const timeline = gsap.timeline({ paused: true, defaults: { overwrite: "auto" } });
179
+ let applied = 0;
180
+ for (const motionValue of manifestMotions) {
181
+ const motion = objectRecord(motionValue);
182
+ if (!motion || motion.kind !== "gsap-motion") continue;
183
+ const targetRecord = objectRecord(motion.target);
184
+ if (!targetRecord) continue;
185
+ const target = resolveTarget(targetRecord);
186
+ if (!target || typeof timeline.fromTo !== "function") continue;
187
+ const start = finiteNumber(motion.start);
188
+ const duration = finiteNumber(motion.duration);
189
+ if (start == null || duration == null || start < 0 || duration <= 0) continue;
190
+ const from = parseMotionValues(motion.from);
191
+ const to = parseMotionValues(motion.to);
192
+ if (!from || !to) continue;
193
+ if (!target.hasAttribute(STUDIO_MOTION_ATTR)) {
194
+ target.setAttribute(ORIGINAL_TRANSFORM_ATTR, target.style.transform);
195
+ target.setAttribute(ORIGINAL_OPACITY_ATTR, target.style.opacity);
196
+ target.setAttribute(ORIGINAL_VISIBILITY_ATTR, target.style.visibility);
197
+ }
198
+ target.setAttribute(STUDIO_MOTION_ATTR, "true");
199
+ timeline.fromTo(
200
+ target,
201
+ from,
202
+ { ...to, duration, ease: resolveEase(motion), overwrite: "auto", immediateRender: false },
203
+ start
204
+ );
205
+ applied += 1;
206
+ }
207
+ if (applied === 0) {
208
+ timeline.kill?.();
209
+ return 0;
210
+ }
211
+ runtimeWindow.__timelines[STUDIO_MOTION_TIMELINE_ID] = timeline;
212
+ timeline.pause?.();
213
+ const currentTime = readCurrentTime();
214
+ if (typeof timeline.totalTime === "function") timeline.totalTime(currentTime, false);
215
+ else timeline.time?.(currentTime);
216
+ return applied;
217
+ };
218
+ runtimeWindow.__hfStudioMotionApply = applyManifest;
219
+ applyManifest();
220
+ }
221
+
222
+ // ../studio-server/dist/chunk-DTKK7TKL.js
33
223
  import { basename, dirname, isAbsolute, join, relative, sep } from "path";
34
224
  import { readdirSync } from "fs";
225
+ function resolveWithinProject2(base, relativePath) {
226
+ const resolved = resolveWithinProject(base, relativePath);
227
+ return resolved && !isPrivateProjectFile(base, resolved) ? resolved : null;
228
+ }
35
229
  function realFilePath(filePath) {
36
230
  try {
37
231
  return realpath(filePath);
@@ -40,8 +234,20 @@ function realFilePath(filePath) {
40
234
  return dir === filePath ? filePath : join(realFilePath(dir), basename(filePath));
41
235
  }
42
236
  }
237
+ var STUDIO_FILES = /* @__PURE__ */ new Set([STUDIO_MOTION_PATH, STUDIO_MANUAL_EDITS_PATH]);
238
+ var STUDIO_FOLDERS = [".hyperframes/prepared-assets", ".hyperframes/requests"];
239
+ function isPrivateProjectPath(relPath) {
240
+ const path = relPath.toLowerCase();
241
+ return (path === ".hyperframes" || path.startsWith(".hyperframes/")) && !STUDIO_FILES.has(path) && !STUDIO_FOLDERS.some((folder) => path === folder || path.startsWith(`${folder}/`));
242
+ }
243
+ function isPrivateProjectFile(projectDir, filePath) {
244
+ const rel = (from, to) => relative(from, to).split(sep).join("/");
245
+ return [rel(projectDir, filePath), rel(realFilePath(projectDir), realFilePath(filePath))].some(
246
+ isPrivateProjectPath
247
+ );
248
+ }
43
249
  function pinWithinProject(base, relativePath) {
44
- const checked = resolveWithinProject(base, relativePath);
250
+ const checked = resolveWithinProject2(base, relativePath);
45
251
  if (!checked) return null;
46
252
  const inside = relative(realFilePath(base), realFilePath(checked));
47
253
  const escapes = inside === ".." || inside.startsWith(`..${sep}`) || isAbsolute(inside);
@@ -84,7 +290,7 @@ function walkDir(dir, prefix = "") {
84
290
  return files;
85
291
  }
86
292
 
87
- // ../studio-server/dist/chunk-I3DRHG52.js
293
+ // ../studio-server/dist/chunk-74JVVCWL.js
88
294
  import { existsSync, statSync } from "fs";
89
295
  import { relative as relative2, resolve, sep as sep2 } from "path";
90
296
  import { execFile } from "child_process";
@@ -390,7 +596,7 @@ async function scanProjectMediaCodecMap(projectDir, htmlSources, options = {}) {
390
596
  return map;
391
597
  }
392
598
 
393
- // ../studio-server/dist/chunk-YOBWV2CY.js
599
+ // ../studio-server/dist/chunk-6RFZWPPN.js
394
600
  import { spawn } from "child_process";
395
601
  import { createHash, randomUUID } from "crypto";
396
602
  import { existsSync as existsSync2, renameSync, statSync as statSync2, unlinkSync as unlinkSync2, utimesSync } from "fs";
@@ -830,7 +1036,12 @@ async function resolveProxy(projectDir, absoluteSourcePath, variant = "h264") {
830
1036
  }
831
1037
 
832
1038
  export {
1039
+ STUDIO_MOTION_PATH,
1040
+ createStudioMotionRenderBodyScript,
1041
+ resolveWithinProject2 as resolveWithinProject,
833
1042
  realFilePath,
1043
+ isPrivateProjectPath,
1044
+ isPrivateProjectFile,
834
1045
  pinWithinProject,
835
1046
  isInHiddenOrVendorDir,
836
1047
  walkDir,
@@ -8,16 +8,16 @@ import {
8
8
  flush,
9
9
  shouldTrack,
10
10
  trackEvent
11
- } from "./chunk-X2GKNLHE.js";
11
+ } from "./chunk-VR5UQWGV.js";
12
12
  import {
13
13
  getPowerState
14
- } from "./chunk-OEJQAXS3.js";
14
+ } from "./chunk-MIOBYUXT.js";
15
15
  import {
16
16
  CliRuntimeError
17
17
  } from "./chunk-PBN6GBJE.js";
18
18
  import {
19
19
  redactTelemetryString
20
- } from "./chunk-SCCJUPPX.js";
20
+ } from "./chunk-RLNB3JCY.js";
21
21
  import {
22
22
  readConfig
23
23
  } from "./chunk-XUXGIA7H.js";
@@ -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-6BYBCUBA.js");
1281
+ const { trackCommandFailure } = await import("./events-RCGWL4LI.js");
1282
1282
  trackCommandFailure(
1283
1283
  command,
1284
1284
  err,
@@ -8,7 +8,7 @@ import {
8
8
  DEFAULT_REGISTRY_URL,
9
9
  fetchItemManifest,
10
10
  fetchRegistryManifest
11
- } from "./chunk-NSLSFVFN.js";
11
+ } from "./chunk-KRLYIT22.js";
12
12
 
13
13
  // src/registry/resolver.ts
14
14
  function defaultWarn(message) {
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-ISN5GRYI.js";
18
18
  import {
19
19
  VERSION
20
- } from "./chunk-WYX6L7AV.js";
20
+ } from "./chunk-P75OFLZN.js";
21
21
 
22
22
  // src/utils/updateCheck.ts
23
23
  import { existsSync, readFileSync } from "fs";
@@ -6,34 +6,36 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  redactHome
9
- } from "./chunk-JVJQL42J.js";
9
+ } from "./chunk-JCRJBB4E.js";
10
10
  import "./chunk-Z27A7NUB.js";
11
11
  import "./chunk-5ETJX6WM.js";
12
12
  import {
13
13
  loadProducer
14
- } from "./chunk-MBSFY6Y5.js";
14
+ } from "./chunk-FSSMOTMS.js";
15
+ import "./chunk-3DKN5WKL.js";
16
+ import {
17
+ formatBytes
18
+ } from "./chunk-IHFUKJOR.js";
15
19
  import {
16
20
  DEFAULT_HISTORY_ROOT,
17
21
  listProjectHistories,
18
22
  pruneGoneProjectHistories
19
- } from "./chunk-6XCIGLRQ.js";
20
- import "./chunk-LSLJIVWV.js";
21
- import "./chunk-EOVYQ3IG.js";
22
- import "./chunk-MOBLZWAK.js";
23
+ } from "./chunk-GJGVYREG.js";
24
+ import "./chunk-R6C6URKB.js";
25
+ import "./chunk-ASPTQ6DT.js";
23
26
  import {
24
27
  CACHE_DIR_NAME,
25
28
  cleanupProxyCache
26
- } from "./chunk-J4AOOISS.js";
27
- import {
28
- formatBytes
29
- } from "./chunk-IHFUKJOR.js";
30
- import "./chunk-ADXD2HP4.js";
29
+ } from "./chunk-W3KQCJVP.js";
30
+ import "./chunk-EOVYQ3IG.js";
31
+ import "./chunk-UUMK6VME.js";
32
+ import "./chunk-6BEFEWFB.js";
31
33
  import "./chunk-TVCRUG2S.js";
32
34
  import "./chunk-374QQGBQ.js";
33
35
  import {
34
36
  c
35
37
  } from "./chunk-ZTZA4UWZ.js";
36
- import "./chunk-OEJQAXS3.js";
38
+ import "./chunk-MIOBYUXT.js";
37
39
  import "./chunk-AMKC3AXA.js";
38
40
  import {
39
41
  defineCommand
@@ -48,18 +50,18 @@ import {
48
50
  directorySizeBytes,
49
51
  gcExtractionCache,
50
52
  resolveExtractCacheDir
51
- } from "./chunk-TTBOUHWT.js";
52
- import "./chunk-SCCJUPPX.js";
53
+ } from "./chunk-7Y5SMPRV.js";
54
+ import "./chunk-RLNB3JCY.js";
53
55
  import "./chunk-OZUQF4NB.js";
54
56
  import "./chunk-DPVXBVLL.js";
55
- import "./chunk-HUV6BP7O.js";
56
- import "./chunk-P7GAS5DG.js";
57
+ import "./chunk-P5WDMFBB.js";
58
+ import "./chunk-UINDCCO7.js";
57
59
  import "./chunk-VC76R6W2.js";
58
60
  import "./chunk-OFQWTKPW.js";
59
61
  import "./chunk-4PFZPP2N.js";
60
62
  import "./chunk-LCSMOLGX.js";
61
63
  import "./chunk-TWWSYAKJ.js";
62
- import "./chunk-VDQCNWQI.js";
64
+ import "./chunk-STA43FMY.js";
63
65
  import "./chunk-HBBJFK6I.js";
64
66
  import "./chunk-PJ3HDUCY.js";
65
67
  import "./chunk-TQFG7HTI.js";
@@ -67,15 +69,13 @@ import "./chunk-GK4AIFIH.js";
67
69
  import "./chunk-2PSPARWP.js";
68
70
  import {
69
71
  withMeta
70
- } from "./chunk-2DQ356HE.js";
72
+ } from "./chunk-YNBXJWSD.js";
71
73
  import "./chunk-K4WIOZFP.js";
72
74
  import "./chunk-XUXGIA7H.js";
73
75
  import "./chunk-WERLJGIC.js";
74
76
  import "./chunk-ISN5GRYI.js";
75
- import "./chunk-WYX6L7AV.js";
77
+ import "./chunk-P75OFLZN.js";
76
78
  import "./chunk-KNU5COPB.js";
77
- import "./chunk-XT5P4QMO.js";
78
- import "./chunk-6BEFEWFB.js";
79
79
  import "./chunk-3GXQPCJC.js";
80
80
  import "./chunk-RQVDTPGD.js";
81
81
  import "./chunk-PMRBLBUP.js";
package/dist/cli.js CHANGED
@@ -34,7 +34,7 @@ import {
34
34
  } from "./chunk-ISN5GRYI.js";
35
35
  import {
36
36
  VERSION
37
- } from "./chunk-WYX6L7AV.js";
37
+ } from "./chunk-P75OFLZN.js";
38
38
  import "./chunk-M2WBOQ2Q.js";
39
39
 
40
40
  // src/cli.ts
@@ -181,7 +181,7 @@ function wrapCommand(cmd, path) {
181
181
  }
182
182
  async function reportCommandFailure(command2, err) {
183
183
  try {
184
- const { trackCommandFailure } = await import("./events-6BYBCUBA.js");
184
+ const { trackCommandFailure } = await import("./events-RCGWL4LI.js");
185
185
  trackCommandFailure(command2, err);
186
186
  } catch {
187
187
  }
@@ -253,53 +253,54 @@ async function assertStudioWorkspaceBuilt() {
253
253
  });
254
254
  }
255
255
  var commandLoaders = {
256
- init: () => import("./init-3BZKVTW5.js").then((m) => m.default),
257
- add: () => import("./add-RUYRFHHN.js").then((m) => m.default),
258
- catalog: () => import("./catalog-IT2TP2YE.js").then((m) => m.default),
256
+ init: () => import("./init-7SXMLHJE.js").then((m) => m.default),
257
+ add: () => import("./add-IZQPSHT5.js").then((m) => m.default),
258
+ catalog: () => import("./catalog-FYTZ2ET6.js").then((m) => m.default),
259
259
  "media-use": () => import("./media-use-4XXGABIL.js").then((m) => m.default),
260
- play: () => import("./play-O2WTUH6O.js").then((m) => m.default),
261
- present: () => import("./present-YDJZIRYD.js").then((m) => m.default),
262
- preview: () => assertStudioWorkspaceBuilt().then(() => import("./preview-AS6S5EKV.js").then((m) => m.default)),
263
- publish: () => import("./publish-GQXWU7NF.js").then((m) => m.default),
264
- open: () => import("./open-D5INI7M6.js").then((m) => m.default),
265
- render: () => import("./render-HQJEYV6Q.js").then((m) => m.default),
266
- lint: () => import("./lint-G26WF3YE.js").then((m) => m.default),
267
- check: () => import("./check-HNTSVBUV.js").then((m) => m.default),
268
- beats: () => import("./beats-AF7C54FH.js").then((m) => m.default),
269
- "normalize-audio": () => import("./normalize-audio-PAPIKX2Y.js").then((m) => m.default),
270
- inspect: () => import("./inspect-ROKMT5V7.js").then((m) => m.default),
271
- keyframes: () => import("./keyframes-PXGT4QQ5.js").then((m) => m.default),
272
- layout: () => import("./layout-PMFNU7NB.js").then((m) => m.default),
273
- info: () => import("./info-DRASLTTJ.js").then((m) => m.default),
274
- compositions: () => import("./compositions-5CBYWP55.js").then((m) => m.default),
275
- timeline: () => import("./timeline-BUCFPNP6.js").then((m) => m.default),
276
- history: () => import("./history-KUS6IXSL.js").then((m) => m.default),
277
- benchmark: () => import("./benchmark-QST66S5G.js").then((m) => m.default),
278
- browser: () => import("./browser-NBKY3N66.js").then((m) => m.default),
279
- "remove-background": () => import("./remove-background-JPPYOSD2.js").then((m) => m.default),
280
- transcribe: () => import("./transcribe-GCVTFFIF.js").then((m) => m.default),
260
+ play: () => import("./play-SHIGXVON.js").then((m) => m.default),
261
+ present: () => import("./present-QOYYNZCE.js").then((m) => m.default),
262
+ preview: () => assertStudioWorkspaceBuilt().then(() => import("./preview-KUXTDJL3.js").then((m) => m.default)),
263
+ publish: () => import("./publish-OLHR4Z4U.js").then((m) => m.default),
264
+ open: () => import("./open-G523K45B.js").then((m) => m.default),
265
+ "catch-up": () => import("./catch-up-XH3OAKQR.js").then((m) => m.default),
266
+ render: () => import("./render-P4NWFUS7.js").then((m) => m.default),
267
+ lint: () => import("./lint-WUXZ5WWZ.js").then((m) => m.default),
268
+ check: () => import("./check-MUMIOK5K.js").then((m) => m.default),
269
+ beats: () => import("./beats-AAAZVDOY.js").then((m) => m.default),
270
+ "normalize-audio": () => import("./normalize-audio-ZZU36ZMD.js").then((m) => m.default),
271
+ inspect: () => import("./inspect-7JTINR25.js").then((m) => m.default),
272
+ keyframes: () => import("./keyframes-PIV573S6.js").then((m) => m.default),
273
+ layout: () => import("./layout-N2736OO3.js").then((m) => m.default),
274
+ info: () => import("./info-KXQ2TAHX.js").then((m) => m.default),
275
+ compositions: () => import("./compositions-6RYXH2UA.js").then((m) => m.default),
276
+ timeline: () => import("./timeline-QKZQL5DJ.js").then((m) => m.default),
277
+ history: () => import("./history-G44U6762.js").then((m) => m.default),
278
+ benchmark: () => import("./benchmark-EI767IB4.js").then((m) => m.default),
279
+ browser: () => import("./browser-KAA2VXYH.js").then((m) => m.default),
280
+ "remove-background": () => import("./remove-background-NPKZSIPY.js").then((m) => m.default),
281
+ transcribe: () => import("./transcribe-VKSXTM7K.js").then((m) => m.default),
281
282
  usage: () => import("./usage-EC3KFUIJ.js").then((m) => m.default),
282
- models: () => import("./models-QHS7P3NJ.js").then((m) => m.default),
283
- tts: () => import("./tts-XGVL5UHX.js").then((m) => m.default),
283
+ models: () => import("./models-6JMNK3XI.js").then((m) => m.default),
284
+ tts: () => import("./tts-FU35O6YB.js").then((m) => m.default),
284
285
  docs: () => import("./docs-QAPJEGLS.js").then((m) => m.default),
285
- doctor: () => import("./doctor-IZQZRMWC.js").then((m) => m.default),
286
- clean: () => import("./clean-OWDWVJBN.js").then((m) => m.default),
287
- upgrade: () => import("./upgrade-DV6IVILG.js").then((m) => m.default),
288
- skills: () => import("./skills-SLCG4D3C.js").then((m) => m.default),
289
- feedback: () => import("./feedback-I4YN55BC.js").then((m) => m.default),
286
+ doctor: () => import("./doctor-UTCCMN32.js").then((m) => m.default),
287
+ clean: () => import("./clean-LZPDOAV4.js").then((m) => m.default),
288
+ upgrade: () => import("./upgrade-G635QCNO.js").then((m) => m.default),
289
+ skills: () => import("./skills-BVONI6TC.js").then((m) => m.default),
290
+ feedback: () => import("./feedback-V7C64JIR.js").then((m) => m.default),
290
291
  telemetry: () => import("./telemetry-2YC4SGQU.js").then((m) => m.default),
291
- events: () => import("./events-BYDKYSIJ.js").then((m) => m.default),
292
- validate: () => import("./validate-22IQFLYH.js").then((m) => m.default),
293
- snapshot: () => import("./snapshot-WOPONARS.js").then((m) => m.default),
294
- "media-treatment": () => import("./media-treatment-MGAQ5DQJ.js").then((m) => m.mediaTreatmentCommand),
295
- "grade-compare": () => import("./grade-compare-H2OKE5QQ.js").then((m) => m.default),
296
- compare: () => import("./compare-YRR6E22F.js").then((m) => m.default),
297
- capture: () => import("./capture-6GM7SIH5.js").then((m) => m.default),
298
- lambda: () => import("./lambda-EQAPNZDT.js").then((m) => m.default),
299
- cloudrun: () => import("./cloudrun-TLB7DEIN.js").then((m) => m.default),
300
- cloud: () => import("./cloud-S3MPN5VF.js").then((m) => m.default),
301
- auth: () => import("./auth-FUBCZVUH.js").then((m) => m.default),
302
- figma: () => import("./figma-A3FAM3JT.js").then((m) => m.default)
292
+ events: () => import("./events-RE3OR6KY.js").then((m) => m.default),
293
+ validate: () => import("./validate-AZTMI3HR.js").then((m) => m.default),
294
+ snapshot: () => import("./snapshot-PWZFJEDR.js").then((m) => m.default),
295
+ "media-treatment": () => import("./media-treatment-T4KDEDYW.js").then((m) => m.mediaTreatmentCommand),
296
+ "grade-compare": () => import("./grade-compare-OTZDU463.js").then((m) => m.default),
297
+ compare: () => import("./compare-S3M5OAL2.js").then((m) => m.default),
298
+ capture: () => import("./capture-IRRHK6BT.js").then((m) => m.default),
299
+ lambda: () => import("./lambda-GO5HAA4S.js").then((m) => m.default),
300
+ cloudrun: () => import("./cloudrun-NFGM6TRT.js").then((m) => m.default),
301
+ cloud: () => import("./cloud-RVAH5NNL.js").then((m) => m.default),
302
+ auth: () => import("./auth-LUELYGJ4.js").then((m) => m.default),
303
+ figma: () => import("./figma-26LOX5PV.js").then((m) => m.default)
303
304
  };
304
305
  var subCommands = Object.fromEntries(
305
306
  Object.entries(commandLoaders).map(([name, load]) => [name, trackCommandFailures(load)])
@@ -323,7 +324,7 @@ var _printStalePinNotice;
323
324
  var _printSkillsUpdateNotice;
324
325
  var telemetryReady = Promise.resolve();
325
326
  if (!isHelp && command !== "telemetry" && command !== "events" && command !== "usage" && command !== "unknown") {
326
- telemetryReady = import("./telemetry-MUWYEQ42.js").then((mod) => {
327
+ telemetryReady = import("./telemetry-63L2ORO3.js").then((mod) => {
327
328
  _flushSync = mod.flushSync;
328
329
  _trackCliError = mod.trackCliError;
329
330
  _trackCommandResult = mod.trackCommandResult;
@@ -333,23 +334,30 @@ if (!isHelp && command !== "telemetry" && command !== "events" && command !== "u
333
334
  });
334
335
  }
335
336
  if (!isHelp && !hasJsonFlag && command !== "upgrade" && command !== "events" && command !== "telemetry" && command !== "skills" && command !== "usage") {
336
- import("./autoUpdate-LHVP2DWF.js").then((mod) => mod.reportCompletedUpdate()).catch(() => {
337
+ import("./autoUpdate-ECMQWUU5.js").then((mod) => mod.reportCompletedUpdate()).catch(() => {
337
338
  });
338
- import("./updateCheck-AVUIJNVC.js").then(async (mod) => {
339
+ import("./updateCheck-PM4FEI7P.js").then(async (mod) => {
339
340
  _printUpdateNotice = mod.printUpdateNotice;
340
341
  _printStalePinNotice = mod.printStalePinNotice;
341
342
  const result = mod.cachedUpdateCheck();
342
343
  if (result.updateAvailable) {
343
- const auto = await import("./autoUpdate-LHVP2DWF.js").catch(() => null);
344
+ const auto = await import("./autoUpdate-ECMQWUU5.js").catch(() => null);
344
345
  auto?.scheduleBackgroundInstall(result.latest, result.current);
345
346
  }
346
347
  }).catch(() => {
347
348
  });
348
- import("./skillsUpdateCheck-KJBSMNG3.js").then((mod) => {
349
+ import("./skillsUpdateCheck-KKDPTFM7.js").then((mod) => {
349
350
  _printSkillsUpdateNotice = mod.printSkillsUpdateNotice;
350
351
  }).catch(() => {
351
352
  });
352
- import("./backgroundChecks-JO3KP5QE.js").then((mod) => mod.launchBackgroundChecks()).catch(() => {
353
+ import("./backgroundChecks-PBEJMSA3.js").then((mod) => mod.launchBackgroundChecks()).catch(() => {
354
+ });
355
+ }
356
+ var _appHistoryNotice = null;
357
+ if (!isHelp && !["unknown", "catch-up", "events", "telemetry"].includes(command)) {
358
+ import("./appHistory-TH3TL6N6.js").then((mod) => {
359
+ _appHistoryNotice = mod.appHistoryNotice(process.cwd(), process.argv.slice(3));
360
+ }).catch(() => {
353
361
  });
354
362
  }
355
363
  var commandStart = Date.now();
@@ -374,6 +382,8 @@ async function finalizeCli(result) {
374
382
  _printStalePinNotice?.();
375
383
  _printSkillsUpdateNotice?.();
376
384
  }
385
+ if (_appHistoryNotice) process.stderr.write(`\u25C7 ${_appHistoryNotice}
386
+ `);
377
387
  process.exitCode = exitCode;
378
388
  }
379
389
  registerRootExitRequester((exitCode) => {
@@ -458,7 +468,7 @@ process.on("unhandledRejection", (reason) => {
458
468
  emitCliErrorEvent("unhandled_rejection", error);
459
469
  });
460
470
  async function showUsage(cmd, parent) {
461
- const { showUsage: impl } = await import("./help-AXK7X72W.js");
471
+ const { showUsage: impl } = await import("./help-IRSQLNI5.js");
462
472
  return impl(cmd, parent);
463
473
  }
464
474
  async function showRequestedUsage() {
@@ -55,10 +55,10 @@ ${c.bold("AUTH:")}
55
55
  var cloud_default = defineCommand({
56
56
  meta: { name: "cloud", description: "Render HyperFrames compositions on the HeyGen cloud" },
57
57
  subCommands: {
58
- render: () => import("./render-IPOSWART.js").then((m) => m.default),
59
- list: () => import("./list-WIPSPI6M.js").then((m) => m.default),
60
- get: () => import("./get-PIFWLOAB.js").then((m) => m.default),
61
- delete: () => import("./delete-3U5L6XFA.js").then((m) => m.default)
58
+ render: () => import("./render-GYYGWYQC.js").then((m) => m.default),
59
+ list: () => import("./list-QF7AMX5F.js").then((m) => m.default),
60
+ get: () => import("./get-E2K2JRTV.js").then((m) => m.default),
61
+ delete: () => import("./delete-EO7C3LQ6.js").then((m) => m.default)
62
62
  },
63
63
  async run({ args }) {
64
64
  if (!args._?.[0]) console.log(HELP);