@hyperframes/inspector 0.8.211 → 0.8.213

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/live.js CHANGED
@@ -1157,6 +1157,17 @@ function timelinePage(request) {
1157
1157
  function liveGenerationPage() {
1158
1158
  return window.__hfLiveInspection?.generation ?? null;
1159
1159
  }
1160
+ async function holdEveryScenePage(holder) {
1161
+ const hold = window.__hfHoldScenes;
1162
+ if (!hold) return [];
1163
+ const sceneOf = (el) => el.getAttribute("data-hf-scene") ?? "";
1164
+ const names = new Set(Array.from(document.querySelectorAll("[data-hf-scene]"), sceneOf));
1165
+ await hold([...names], holder);
1166
+ return Array.from(document.querySelectorAll("[data-hf-parked-scene]"), sceneOf);
1167
+ }
1168
+ async function releaseEveryScenePage(holder) {
1169
+ await window.__hfHoldScenes?.([], holder);
1170
+ }
1160
1171
 
1161
1172
  // src/timelineReport.ts
1162
1173
  var GROUPS_PER_PAGE = 60;
@@ -1508,6 +1519,18 @@ ${runtime()}`.replace(/<\/script/gi, "<\\/script");
1508
1519
  throw new Error("stale_preview: the preview reloaded; query again");
1509
1520
  await view.assertCurrent();
1510
1521
  }
1522
+ async function withEveryScene(runner, query) {
1523
+ const holder = `inspection:${randomUUID()}`;
1524
+ try {
1525
+ const parked = await runner.run(holdEveryScenePage, holder);
1526
+ if (parked.length)
1527
+ throw new Error(`scenes_not_mounted: the preview could not mount ${parked.join(", ")}`);
1528
+ return await query();
1529
+ } finally {
1530
+ await runner.run(releaseEveryScenePage, holder).catch(() => {
1531
+ });
1532
+ }
1533
+ }
1511
1534
  return {
1512
1535
  html: prepared,
1513
1536
  generation,
@@ -1520,21 +1543,24 @@ ${runtime()}`.replace(/<\/script/gi, "<\\/script");
1520
1543
  if (request.time != null) throw new Error("live_query_does_not_seek");
1521
1544
  assertGeneration(request.generation, generation);
1522
1545
  await current(runner);
1523
- return inspectComponents(runner, view, request, {
1524
- catalog,
1525
- reused: true,
1526
- start: performance.now()
1527
- });
1546
+ return withEveryScene(
1547
+ runner,
1548
+ () => inspectComponents(runner, view, request, {
1549
+ catalog,
1550
+ reused: true,
1551
+ start: performance.now()
1552
+ })
1553
+ );
1528
1554
  },
1529
1555
  async timeline(runner, request) {
1530
1556
  validateTimelineRequest(request);
1531
1557
  assertGeneration(request.generation, generation);
1532
1558
  await current(runner);
1533
- return inspectTimeline(runner, view, request, true);
1559
+ return withEveryScene(runner, () => inspectTimeline(runner, view, request, true));
1534
1560
  },
1535
1561
  async elementMap(runner) {
1536
1562
  await current(runner);
1537
- return inspectElementMap(runner, view);
1563
+ return withEveryScene(runner, () => inspectElementMap(runner, view));
1538
1564
  }
1539
1565
  };
1540
1566
  }