hyperframes 0.7.40 → 0.7.41

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.
package/dist/cli.js CHANGED
@@ -50,7 +50,7 @@ var VERSION;
50
50
  var init_version = __esm({
51
51
  "src/version.ts"() {
52
52
  "use strict";
53
- VERSION = true ? "0.7.40" : "0.0.0-dev";
53
+ VERSION = true ? "0.7.41" : "0.0.0-dev";
54
54
  }
55
55
  });
56
56
 
@@ -60966,6 +60966,23 @@ async function removeDomLayerMask(page, _extraHideIds) {
60966
60966
  }
60967
60967
  );
60968
60968
  }
60969
+ async function ensureRenderFrameSiblings(page) {
60970
+ await page.evaluate(() => {
60971
+ for (const video of Array.from(
60972
+ document.querySelectorAll("video[data-start]")
60973
+ )) {
60974
+ const next = video.nextElementSibling;
60975
+ if (next !== null && next.classList.contains("__render_frame__")) continue;
60976
+ const img = document.createElement("img");
60977
+ img.classList.add("__render_frame__");
60978
+ img.id = `__render_frame_${video.id}__`;
60979
+ img.style.pointerEvents = "none";
60980
+ img.style.position = "absolute";
60981
+ img.style.visibility = "hidden";
60982
+ video.parentNode?.insertBefore(img, video.nextSibling);
60983
+ }
60984
+ });
60985
+ }
60969
60986
  async function injectVideoFramesBatch(page, updates) {
60970
60987
  if (updates.length === 0) return [];
60971
60988
  return await page.evaluate(
@@ -63205,6 +63222,7 @@ async function initializeSession(session) {
63205
63222
  await recordSessionInitTelemetry(session, initStart);
63206
63223
  await initDrawElementOrTransparentBackground(session, page, logInitPhase);
63207
63224
  await armStaticDedup(session, session.page, logInitPhase);
63225
+ await ensureRenderFrameSiblings(session.page);
63208
63226
  session.isInitialized = true;
63209
63227
  return;
63210
63228
  }
@@ -63296,14 +63314,19 @@ async function initializeSession(session) {
63296
63314
  }
63297
63315
  await recordSessionInitTelemetry(session, initStart);
63298
63316
  warmupState.running = false;
63299
- if (lockWarmupTicks) {
63300
- await warmupLoopPromise.catch(() => {
63301
- });
63302
- }
63317
+ await warmupLoopPromise.catch(() => {
63318
+ });
63303
63319
  const baseTickCount = lockWarmupTicks ? LOCKED_WARMUP_TICKS : warmupState.ticks;
63304
63320
  session.beginFrameTimeTicks = (baseTickCount + 10) * session.beginFrameIntervalMs;
63305
63321
  await initDrawElementOrTransparentBackground(session, page, logInitPhase);
63306
63322
  await armStaticDedup(session, session.page, logInitPhase);
63323
+ await ensureRenderFrameSiblings(page);
63324
+ const commitCdp = await getCdpSession(page);
63325
+ await commitCdp.send("HeadlessExperimental.beginFrame", {
63326
+ frameTimeTicks: session.beginFrameTimeTicks - 6 * session.beginFrameIntervalMs,
63327
+ interval: session.beginFrameIntervalMs,
63328
+ noDisplayUpdates: false
63329
+ });
63307
63330
  session.isInitialized = true;
63308
63331
  }
63309
63332
  async function captureFrameErrorDiagnostics(session, frameIndex, time, error) {
@@ -1,4 +1,4 @@
1
- import{n as Qi}from"./index-B2Utv-2b.js";/*!
1
+ import{n as Qi}from"./index-DRrNf6k_.js";/*!
2
2
  * Copyright (c) 2026-present, Vanilagy and contributors
3
3
  *
4
4
  * This Source Code Form is subject to the terms of the Mozilla Public