hyperframes 0.8.89 → 0.8.90

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 (85) hide show
  1. package/dist/{add-JDX7VHMM.js → add-QCKUCHLO.js} +5 -5
  2. package/dist/{asset-ZQU3ZAHZ.js → asset-X5G7FLIA.js} +2 -2
  3. package/dist/{auth-ZI5X6SXG.js → auth-HUTOY6UC.js} +1 -1
  4. package/dist/{autoUpdate-BDREI4XN.js → autoUpdate-GVXUAVME.js} +2 -2
  5. package/dist/{backgroundChecks-52MY7SIC.js → backgroundChecks-DP64TQBS.js} +3 -3
  6. package/dist/backgroundChecksWorker.js +3 -3
  7. package/dist/{beats-77Z6UPMB.js → beats-2BAVXPN4.js} +4 -4
  8. package/dist/{benchmark-HR242B6Q.js → benchmark-AXEIQN5S.js} +5 -5
  9. package/dist/{browser-CLQNZB5J.js → browser-GOL5PWIJ.js} +3 -3
  10. package/dist/{catalog-OAJVYTXP.js → catalog-UDASP3IK.js} +5 -5
  11. package/dist/{check-AJB25CBI.js → check-IMDTJ2RH.js} +12 -12
  12. package/dist/{checkBrowser-RTZFBO62.js → checkBrowser-OCN4Z4FT.js} +10 -10
  13. package/dist/{chunk-CZXT2DRB.js → chunk-4HDAVJMN.js} +2 -2
  14. package/dist/{chunk-J4ZDN5N7.js → chunk-6QBQPTRJ.js} +2 -2
  15. package/dist/{chunk-Z4LBLZ3I.js → chunk-77SYQXQN.js} +2 -2
  16. package/dist/{chunk-RLKPZQKI.js → chunk-AAW5AF54.js} +2 -2
  17. package/dist/{chunk-MIYTJ6RX.js → chunk-CYG65ZCX.js} +12 -4
  18. package/dist/{chunk-LTCGOUKZ.js → chunk-DGPMOHUO.js} +3 -3
  19. package/dist/{chunk-6BPWGLCF.js → chunk-FPWCGP7T.js} +1 -1
  20. package/dist/{chunk-TQNLHVZB.js → chunk-GK6OCEV7.js} +2 -2
  21. package/dist/{chunk-C22UJWNH.js → chunk-GSWG25MG.js} +1 -1
  22. package/dist/{chunk-PKK6QWAQ.js → chunk-GVHRNT6C.js} +1 -1
  23. package/dist/{chunk-S2F6QM6J.js → chunk-KGDCJK72.js} +1 -1
  24. package/dist/{chunk-ELQAAO4F.js → chunk-KRXGOOP3.js} +1 -1
  25. package/dist/{chunk-XMDQQAIB.js → chunk-OV4CCBM3.js} +1 -1
  26. package/dist/{chunk-EAJNP7C7.js → chunk-PQ3I6CAC.js} +1 -1
  27. package/dist/{chunk-I7MD2PC7.js → chunk-TQGNT45W.js} +1 -1
  28. package/dist/{chunk-SAYNFMCN.js → chunk-U325D5ZG.js} +1 -1
  29. package/dist/{chunk-ROFOQAPQ.js → chunk-WRZG77MO.js} +3 -3
  30. package/dist/{chunk-BEZ5LKUM.js → chunk-YQ5SWLDS.js} +2 -2
  31. package/dist/{clean-YNSDX62K.js → clean-F7NNEFPY.js} +4 -4
  32. package/dist/cli.js +44 -44
  33. package/dist/{cloud-O6C6D2CC.js → cloud-GSFIMHVY.js} +4 -4
  34. package/dist/{compare-32ZYX7EU.js → compare-26UBKHZI.js} +7 -7
  35. package/dist/{component-OX6ODG5G.js → component-5QG3ILQS.js} +3 -3
  36. package/dist/{compositions-IAWH2EMO.js → compositions-IFRNCQ5G.js} +5 -5
  37. package/dist/{delete-4AGDWC2T.js → delete-Z2L6F346.js} +2 -2
  38. package/dist/{doctor-AH7IX5Z6.js → doctor-WLSP4XWV.js} +3 -3
  39. package/dist/{events-6M6FDQZZ.js → events-FERXZJ74.js} +3 -3
  40. package/dist/{events-CJRCDPWV.js → events-SFI5FAYU.js} +2 -2
  41. package/dist/{feedback-C6DJ6XKA.js → feedback-6ZIZEN2J.js} +4 -4
  42. package/dist/{figma-L5RHNGY7.js → figma-OKUQYGPU.js} +3 -3
  43. package/dist/fontLocalizeCli.js +1 -1
  44. package/dist/{get-TBBCYF5B.js → get-JFVMDJ4K.js} +2 -2
  45. package/dist/{grade-compare-FNPPD6UE.js → grade-compare-TGVT536U.js} +7 -7
  46. package/dist/{help-L4V4PV7C.js → help-JHJAEATI.js} +1 -1
  47. package/dist/{history-EEWE52BC.js → history-IKW2UMZJ.js} +6 -6
  48. package/dist/hyperframes-player.global.js +1 -1
  49. package/dist/{info-VQYR7VW6.js → info-GOMASHNG.js} +5 -5
  50. package/dist/{init-L5BK5HGZ.js → init-VHK4JK2I.js} +6 -6
  51. package/dist/{inspect-4DSMPUHN.js → inspect-NR4M3D3O.js} +9 -9
  52. package/dist/{keyframes-AXHMLOSU.js → keyframes-4Z6UHXTR.js} +6 -6
  53. package/dist/{layout-ZV23GQU6.js → layout-F5STB2UB.js} +9 -9
  54. package/dist/{lint-HZIRYUSA.js → lint-XIKDK5NE.js} +6 -6
  55. package/dist/{list-DLBDHWZ2.js → list-PV5AVDEA.js} +2 -2
  56. package/dist/{login-3PLQRQEP.js → login-4JVYU5EP.js} +4 -4
  57. package/dist/{media-treatment-7TZ7L7NU.js → media-treatment-DQWRIN3R.js} +5 -5
  58. package/dist/{motionShot-J2Q4CGMA.js → motionShot-F7PMQYSA.js} +1 -1
  59. package/dist/{normalize-audio-SX64JNLW.js → normalize-audio-AVLP7MKR.js} +4 -4
  60. package/dist/{play-VX2LSHXR.js → play-4GAAK5T4.js} +7 -7
  61. package/dist/{present-F2DPEKZU.js → present-WIRBZKR2.js} +7 -7
  62. package/dist/{preview-ARITZNNL.js → preview-NUQRYW6F.js} +5 -5
  63. package/dist/{render-FT4NTFKZ.js → render-LUZG33CD.js} +5 -5
  64. package/dist/{render-2VWTXUCT.js → render-MDIGXG66.js} +5 -5
  65. package/dist/{skills-KDD7E5CB.js → skills-YZOZUC2R.js} +5 -5
  66. package/dist/{skillsUpdateCheck-DXGEK4AH.js → skillsUpdateCheck-V2MIGABK.js} +3 -3
  67. package/dist/{snapshot-BSOD5KKR.js → snapshot-DEKOD4F6.js} +7 -7
  68. package/dist/{staticProjectServer-VPVGLNV2.js → staticProjectServer-JSX6RZC3.js} +3 -3
  69. package/dist/studio/assets/{hyperframes-player-CVoS7kv8.js → hyperframes-player-DDjER_ii.js} +1 -1
  70. package/dist/studio/assets/{index-D35-L_yn.js → index-5SFeUXP8.js} +1 -1
  71. package/dist/studio/assets/{index-BM8PwYby.js → index-BKE3_N4v.js} +111 -111
  72. package/dist/studio/assets/{index-DBub9qQY.js → index-CVsCxnlz.js} +1 -1
  73. package/dist/studio/index.html +1 -1
  74. package/dist/studio/index.js +51 -63
  75. package/dist/studio/index.js.map +1 -1
  76. package/dist/{studio-api-6YLFY6OJ.js → studio-api-JLNPQ3TO.js} +1 -1
  77. package/dist/{studioServer-2IK5LLRR.js → studioServer-ZCL433KM.js} +8 -5
  78. package/dist/{telemetry-6P5WHWYI.js → telemetry-RPKG2UZI.js} +3 -3
  79. package/dist/{timeline-QZ4Q2LED.js → timeline-DUIEKLUY.js} +6 -6
  80. package/dist/{tokens-VXZYKHFV.js → tokens-KPHKWWZ6.js} +2 -2
  81. package/dist/{transcribe-RQ6RHU2V.js → transcribe-TNYWMNAY.js} +3 -3
  82. package/dist/{updateCheck-RRWEIZY7.js → updateCheck-PBVAHMGC.js} +2 -2
  83. package/dist/{upgrade-LI5TVSQQ.js → upgrade-CFBD6XYU.js} +2 -2
  84. package/dist/{validate-I56RAOC6.js → validate-INYRDUJN.js} +6 -6
  85. package/package.json +1 -1
@@ -1 +1 @@
1
- import{g as P}from"./index-BM8PwYby.js";function j(c,d){for(var s=0;s<d.length;s++){const a=d[s];if(typeof a!="string"&&!Array.isArray(a)){for(const i in a)if(i!=="default"&&!(i in c)){const l=Object.getOwnPropertyDescriptor(a,i);l&&Object.defineProperty(c,i,l.get?l:{enumerable:!0,get:()=>a[i]})}}}return Object.freeze(Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}))}var v={},w;function k(){if(w)return v;w=1,Object.defineProperty(v,"__esModule",{value:!0}),v.default=d;var c=window.OfflineAudioContext||window.webkitOfflineAudioContext;function d(e){var r=a(e);return r.start(0),[i,y,O(e.sampleRate),s].reduce(function(t,o){return o(t)},r.buffer.getChannelData(0))}function s(e){return e.sort(function(r,t){return t.count-r.count}).splice(0,5)[0].tempo}function a(e){var r=e.length,t=e.numberOfChannels,o=e.sampleRate,n=new c(t,r,o),u=n.createBufferSource();u.buffer=e;var f=n.createBiquadFilter();return f.type="lowpass",u.connect(f),f.connect(n.destination),u}function i(e){for(var r=[],t=.9,o=.3,n=15;r.length<n&&t>=o;)r=l(e,t),t-=.05;if(r.length<n)throw new Error("Could not find enough samples for a reliable detection.");return r}function l(e,r){for(var t=[],o=0,n=e.length;o<n;o+=1)e[o]>r&&(t.push(o),o+=1e4);return t}function y(e){var r=[];return e.forEach(function(t,o){for(var n=function(x){var g=e[o+x]-t,_=r.some(function(h){if(h.interval===g)return h.count+=1});_||r.push({interval:g,count:1})},u=0;u<10;u+=1)n(u)}),r}function O(e){return function(r){var t=[];return r.forEach(function(o){if(o.interval!==0){for(var n=60/(o.interval/e);n<90;)n*=2;for(;n>180;)n/=2;n=Math.round(n);var u=t.some(function(f){if(f.tempo===n)return f.count+=o.count});u||t.push({tempo:n,count:o.count})}}),t}}return v}var p,b;function q(){return b||(b=1,p=k().default),p}var m=q();const A=P(m),D=j({__proto__:null,default:A},[m]);export{D as i};
1
+ import{g as P}from"./index-BKE3_N4v.js";function j(c,d){for(var s=0;s<d.length;s++){const a=d[s];if(typeof a!="string"&&!Array.isArray(a)){for(const i in a)if(i!=="default"&&!(i in c)){const l=Object.getOwnPropertyDescriptor(a,i);l&&Object.defineProperty(c,i,l.get?l:{enumerable:!0,get:()=>a[i]})}}}return Object.freeze(Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}))}var v={},w;function k(){if(w)return v;w=1,Object.defineProperty(v,"__esModule",{value:!0}),v.default=d;var c=window.OfflineAudioContext||window.webkitOfflineAudioContext;function d(e){var r=a(e);return r.start(0),[i,y,O(e.sampleRate),s].reduce(function(t,o){return o(t)},r.buffer.getChannelData(0))}function s(e){return e.sort(function(r,t){return t.count-r.count}).splice(0,5)[0].tempo}function a(e){var r=e.length,t=e.numberOfChannels,o=e.sampleRate,n=new c(t,r,o),u=n.createBufferSource();u.buffer=e;var f=n.createBiquadFilter();return f.type="lowpass",u.connect(f),f.connect(n.destination),u}function i(e){for(var r=[],t=.9,o=.3,n=15;r.length<n&&t>=o;)r=l(e,t),t-=.05;if(r.length<n)throw new Error("Could not find enough samples for a reliable detection.");return r}function l(e,r){for(var t=[],o=0,n=e.length;o<n;o+=1)e[o]>r&&(t.push(o),o+=1e4);return t}function y(e){var r=[];return e.forEach(function(t,o){for(var n=function(x){var g=e[o+x]-t,_=r.some(function(h){if(h.interval===g)return h.count+=1});_||r.push({interval:g,count:1})},u=0;u<10;u+=1)n(u)}),r}function O(e){return function(r){var t=[];return r.forEach(function(o){if(o.interval!==0){for(var n=60/(o.interval/e);n<90;)n*=2;for(;n>180;)n/=2;n=Math.round(n);var u=t.some(function(f){if(f.tempo===n)return f.count+=o.count});u||t.push({tempo:n,count:o.count})}}),t}}return v}var p,b;function q(){return b||(b=1,p=k().default),p}var m=q();const A=P(m),D=j({__proto__:null,default:A},[m]);export{D as i};
@@ -5,7 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
6
6
  <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
7
7
  <title>HyperFrames Studio</title>
8
- <script type="module" crossorigin src="/assets/index-BM8PwYby.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-BKE3_N4v.js"></script>
9
9
  <link rel="stylesheet" crossorigin href="/assets/index-Dx79V1Se.css">
10
10
  </head>
11
11
  <body>
@@ -25709,6 +25709,26 @@ function onPreviewContentReplaced(iframe, onReplaced) {
25709
25709
  iframe.removeEventListener(SCENES_SWAPPED, onReplaced);
25710
25710
  };
25711
25711
  }
25712
+ function markScenesStale(iframe, files) {
25713
+ const doc = iframe?.contentDocument;
25714
+ const meta = doc?.querySelector('meta[name="hf-scene-parts"]');
25715
+ if (!doc || !meta) return;
25716
+ let parts;
25717
+ try {
25718
+ parts = JSON.parse(meta.content);
25719
+ } catch {
25720
+ return;
25721
+ }
25722
+ for (const file of files) {
25723
+ const hosts = doc.querySelectorAll(`[data-composition-file="${CSS.escape(file)}"]`);
25724
+ if (hosts.length === 0 && file.endsWith(".html")) parts.shared = "";
25725
+ for (const host of hosts) {
25726
+ const scene = host.closest("[data-hf-scene]")?.getAttribute("data-hf-scene");
25727
+ if (scene && scene in parts.scenes) parts.scenes[scene] = "";
25728
+ }
25729
+ }
25730
+ meta.content = JSON.stringify(parts);
25731
+ }
25712
25732
  function sceneSwapFor(iframe) {
25713
25733
  const win = iframe.contentWindow;
25714
25734
  const swap = win?.__hfSwapScenes;
@@ -29406,24 +29426,6 @@ function resolvePreviewLocalPointer(iframe, doc, win, clientX, clientY) {
29406
29426
  viewport: { width: rootWidth, height: rootHeight }
29407
29427
  };
29408
29428
  }
29409
- var POINTER_EVENTS_OVERRIDE_ID = "__hf_studio_pointer_events_override__";
29410
- function forcePointerEventsAuto(doc) {
29411
- try {
29412
- const style = doc.createElement("style");
29413
- style.id = POINTER_EVENTS_OVERRIDE_ID;
29414
- style.textContent = "* { pointer-events: auto !important; }";
29415
- doc.head.appendChild(style);
29416
- return style;
29417
- } catch {
29418
- return null;
29419
- }
29420
- }
29421
- function removePointerEventsOverride(style) {
29422
- try {
29423
- style?.remove();
29424
- } catch {
29425
- }
29426
- }
29427
29429
  var pointerEventsInheritanceFallbackByDocument = /* @__PURE__ */ new WeakMap();
29428
29430
  function needsPointerEventsInheritanceFallback(doc, win) {
29429
29431
  const cached5 = pointerEventsInheritanceFallbackByDocument.get(doc);
@@ -29520,30 +29522,21 @@ function getPreviewTargetFromPointer(iframe, clientX, clientY, activeComposition
29520
29522
  if (!doc || !win) return null;
29521
29523
  const localPointer = resolvePreviewLocalPointer(iframe, doc, win, clientX, clientY);
29522
29524
  if (!localPointer) return null;
29523
- let overrideStyle = forcePointerEventsAuto(doc);
29524
- try {
29525
- if (typeof doc.elementsFromPoint === "function") {
29526
- const elements = doc.elementsFromPoint(localPointer.x, localPointer.y);
29527
- removePointerEventsOverride(overrideStyle);
29528
- overrideStyle = null;
29529
- const candidates = filterAuthorInteractiveTargets(elements, activeCompositionPath);
29530
- const visualTarget = candidates.find((el) => !isFullBleedTarget(el, localPointer.viewport)) ?? null;
29531
- if (visualTarget) return visualTarget;
29532
- }
29533
- removePointerEventsOverride(overrideStyle);
29534
- overrideStyle = null;
29535
- const groupHit = findGroupAtPoint(doc, localPointer.x, localPointer.y);
29536
- if (groupHit && !hasAuthorPointerEventsNone(groupHit) && getDomLayerPatchTarget(groupHit, activeCompositionPath))
29537
- return groupHit;
29538
- const fallback = getEventTargetElement(doc.elementFromPoint(localPointer.x, localPointer.y));
29539
- if (!fallback || !getDomLayerPatchTarget(fallback, activeCompositionPath)) return null;
29540
- if (hasAuthorPointerEventsNone(fallback)) return null;
29541
- if (!isElementComputedVisible(fallback)) return null;
29542
- if (isFullBleedTarget(fallback, localPointer.viewport)) return null;
29543
- return fallback;
29544
- } finally {
29545
- removePointerEventsOverride(overrideStyle);
29546
- }
29525
+ if (typeof doc.elementsFromPoint === "function") {
29526
+ const elements = doc.elementsFromPoint(localPointer.x, localPointer.y);
29527
+ const candidates = filterAuthorInteractiveTargets(elements, activeCompositionPath);
29528
+ const visualTarget = candidates.find((el) => !isFullBleedTarget(el, localPointer.viewport)) ?? null;
29529
+ if (visualTarget) return visualTarget;
29530
+ }
29531
+ const groupHit = findGroupAtPoint(doc, localPointer.x, localPointer.y);
29532
+ if (groupHit && !hasAuthorPointerEventsNone(groupHit) && getDomLayerPatchTarget(groupHit, activeCompositionPath))
29533
+ return groupHit;
29534
+ const fallback = getEventTargetElement(doc.elementFromPoint(localPointer.x, localPointer.y));
29535
+ if (!fallback || !getDomLayerPatchTarget(fallback, activeCompositionPath)) return null;
29536
+ if (hasAuthorPointerEventsNone(fallback)) return null;
29537
+ if (!isElementComputedVisible(fallback)) return null;
29538
+ if (isFullBleedTarget(fallback, localPointer.viewport)) return null;
29539
+ return fallback;
29547
29540
  }
29548
29541
  function getAllPreviewTargetsFromPointer(iframe, clientX, clientY, activeCompositionPath) {
29549
29542
  let doc = null;
@@ -29557,27 +29550,18 @@ function getAllPreviewTargetsFromPointer(iframe, clientX, clientY, activeComposi
29557
29550
  if (!doc || !win) return [];
29558
29551
  const localPointer = resolvePreviewLocalPointer(iframe, doc, win, clientX, clientY);
29559
29552
  if (!localPointer) return [];
29560
- let overrideStyle = forcePointerEventsAuto(doc);
29561
- try {
29562
- if (typeof doc.elementsFromPoint === "function") {
29563
- const elements = doc.elementsFromPoint(localPointer.x, localPointer.y);
29564
- removePointerEventsOverride(overrideStyle);
29565
- overrideStyle = null;
29566
- return filterAuthorInteractiveTargets(elements, activeCompositionPath).filter(
29567
- (el) => !isFullBleedTarget(el, localPointer.viewport)
29568
- );
29569
- }
29570
- const fallback = getEventTargetElement(doc.elementFromPoint(localPointer.x, localPointer.y));
29571
- if (!fallback || !getDomLayerPatchTarget(fallback, activeCompositionPath)) return [];
29572
- removePointerEventsOverride(overrideStyle);
29573
- overrideStyle = null;
29574
- if (hasAuthorPointerEventsNone(fallback)) return [];
29575
- if (!isElementComputedVisible(fallback)) return [];
29576
- if (isFullBleedTarget(fallback, localPointer.viewport)) return [];
29577
- return [fallback];
29578
- } finally {
29579
- removePointerEventsOverride(overrideStyle);
29553
+ if (typeof doc.elementsFromPoint === "function") {
29554
+ const elements = doc.elementsFromPoint(localPointer.x, localPointer.y);
29555
+ return filterAuthorInteractiveTargets(elements, activeCompositionPath).filter(
29556
+ (el) => !isFullBleedTarget(el, localPointer.viewport)
29557
+ );
29580
29558
  }
29559
+ const fallback = getEventTargetElement(doc.elementFromPoint(localPointer.x, localPointer.y));
29560
+ if (!fallback || !getDomLayerPatchTarget(fallback, activeCompositionPath)) return [];
29561
+ if (hasAuthorPointerEventsNone(fallback)) return [];
29562
+ if (!isElementComputedVisible(fallback)) return [];
29563
+ if (isFullBleedTarget(fallback, localPointer.viewport)) return [];
29564
+ return [fallback];
29581
29565
  }
29582
29566
  function objectLike(value) {
29583
29567
  return value && (typeof value === "object" || typeof value === "function") ? value : null;
@@ -68577,9 +68561,13 @@ function hasAmbiguousGsapScriptChange(previous, restored) {
68577
68561
  if (previousScripts.length <= 1 && restoredScripts.length <= 1) return false;
68578
68562
  return previousScripts.length !== restoredScripts.length || previousScripts.some((script, index) => script !== restoredScripts[index]);
68579
68563
  }
68580
- function applyUndoRestoreToPreview(iframe, activeCompPath, files, currentTime, reloadPreview) {
68564
+ function applyUndoRestoreToPreview(iframe, activeCompPath, files, currentTime, reload) {
68581
68565
  const activeDocPath = activeCompPath ?? "index.html";
68582
68566
  const paths = files ? Object.keys(files) : [];
68567
+ const reloadPreview = () => {
68568
+ markScenesStale(iframe, paths);
68569
+ reload();
68570
+ };
68583
68571
  if (!iframe || !files || paths.length !== 1 || paths[0] !== activeDocPath) {
68584
68572
  reloadPreview();
68585
68573
  return "full";