one 1.2.65 → 1.2.66

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.
@@ -40,6 +40,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
40
40
  var dragOffset = { x: 0, y: 0 };
41
41
  var panelPos = { x: 20, y: 20 };
42
42
  var snappedEdge = { h: null, v: null };
43
+ var removalObserver = null;
43
44
 
44
45
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
45
46
 
@@ -258,6 +259,32 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
258
259
  setupSpotlight();
259
260
  setupPanel();
260
261
  setupKeyboard();
262
+ setupRemovalObserver();
263
+ }
264
+
265
+ // watch for React hydration removing our element and re-create it
266
+ function setupRemovalObserver() {
267
+ if (removalObserver) return;
268
+ removalObserver = new MutationObserver(function(mutations) {
269
+ for (var i = 0; i < mutations.length; i++) {
270
+ var mutation = mutations[i];
271
+ if (mutation.type === 'childList') {
272
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
273
+ var node = mutation.removedNodes[j];
274
+ if (node === host) {
275
+ // our element was removed (likely by React hydration), re-create it
276
+ host = null;
277
+ shadow = null;
278
+ spotlight = null;
279
+ panel = null;
280
+ setTimeout(createHost, 0);
281
+ return;
282
+ }
283
+ }
284
+ }
285
+ }
286
+ });
287
+ removalObserver.observe(document.body, { childList: true });
261
288
  }
262
289
 
263
290
  function setupSpotlight() {
@@ -377,7 +404,10 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
377
404
  });
378
405
  }
379
406
 
407
+ var keyboardSetup = false;
380
408
  function setupKeyboard() {
409
+ if (keyboardSetup) return;
410
+ keyboardSetup = true;
381
411
  document.addEventListener('keydown', function(e) {
382
412
  if (e.altKey && e.code === 'Space') {
383
413
  e.preventDefault();
@@ -392,14 +422,14 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
392
422
  showPanel();
393
423
  }
394
424
  } else if (e.code === 'Escape') {
395
- if (spotlight.classList.contains('visible')) hideSpotlight();
396
- else if (panel.classList.contains('visible')) hidePanel();
425
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
426
+ else if (panel && panel.classList.contains('visible')) hidePanel();
397
427
  }
398
428
  });
399
429
  }
400
430
 
401
431
  function toggleSpotlight() {
402
- if (spotlight.classList.contains('visible')) hideSpotlight();
432
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
403
433
  else showSpotlight();
404
434
  }
405
435
 
@@ -588,8 +618,21 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
588
618
  return html;
589
619
  }
590
620
 
591
- // Initialize
592
- createHost();
621
+ // Initialize after React hydration completes
622
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
623
+ function initAfterHydration() {
624
+ if (typeof requestIdleCallback !== 'undefined') {
625
+ requestIdleCallback(createHost, { timeout: 3000 });
626
+ } else {
627
+ setTimeout(createHost, 100);
628
+ }
629
+ }
630
+
631
+ if (document.readyState === 'complete') {
632
+ initAfterHydration();
633
+ } else {
634
+ window.addEventListener('load', initAfterHydration);
635
+ }
593
636
 
594
637
  // Listen for events
595
638
  window.addEventListener('one-loader-timing', function() {
@@ -637,6 +680,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
637
680
  var holdTimer = null;
638
681
  var holdDelay = 500;
639
682
  var mousePos = { x: 0, y: 0 };
683
+ var removalObserver = null;
640
684
 
641
685
  function createHost() {
642
686
  if (host) return;
@@ -677,6 +721,31 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
677
721
  document.body.appendChild(host);
678
722
  overlay = shadow.querySelector('.overlay');
679
723
  tag = shadow.querySelector('.tag');
724
+ setupRemovalObserver();
725
+ }
726
+
727
+ // watch for React hydration removing our element and re-create it
728
+ function setupRemovalObserver() {
729
+ if (removalObserver) return;
730
+ removalObserver = new MutationObserver(function(mutations) {
731
+ for (var i = 0; i < mutations.length; i++) {
732
+ var mutation = mutations[i];
733
+ if (mutation.type === 'childList') {
734
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
735
+ var node = mutation.removedNodes[j];
736
+ if (node === host) {
737
+ host = null;
738
+ shadow = null;
739
+ overlay = null;
740
+ tag = null;
741
+ // don't auto-recreate - will be created on next hover
742
+ return;
743
+ }
744
+ }
745
+ }
746
+ }
747
+ });
748
+ removalObserver.observe(document.body, { childList: true });
680
749
  }
681
750
 
682
751
  function hideOverlay() {
@@ -30,6 +30,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
30
30
  var dragOffset = { x: 0, y: 0 };
31
31
  var panelPos = { x: 20, y: 20 };
32
32
  var snappedEdge = { h: null, v: null };
33
+ var removalObserver = null;
33
34
 
34
35
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
35
36
 
@@ -248,6 +249,32 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
248
249
  setupSpotlight();
249
250
  setupPanel();
250
251
  setupKeyboard();
252
+ setupRemovalObserver();
253
+ }
254
+
255
+ // watch for React hydration removing our element and re-create it
256
+ function setupRemovalObserver() {
257
+ if (removalObserver) return;
258
+ removalObserver = new MutationObserver(function(mutations) {
259
+ for (var i = 0; i < mutations.length; i++) {
260
+ var mutation = mutations[i];
261
+ if (mutation.type === 'childList') {
262
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
263
+ var node = mutation.removedNodes[j];
264
+ if (node === host) {
265
+ // our element was removed (likely by React hydration), re-create it
266
+ host = null;
267
+ shadow = null;
268
+ spotlight = null;
269
+ panel = null;
270
+ setTimeout(createHost, 0);
271
+ return;
272
+ }
273
+ }
274
+ }
275
+ }
276
+ });
277
+ removalObserver.observe(document.body, { childList: true });
251
278
  }
252
279
 
253
280
  function setupSpotlight() {
@@ -367,7 +394,10 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
367
394
  });
368
395
  }
369
396
 
397
+ var keyboardSetup = false;
370
398
  function setupKeyboard() {
399
+ if (keyboardSetup) return;
400
+ keyboardSetup = true;
371
401
  document.addEventListener('keydown', function(e) {
372
402
  if (e.altKey && e.code === 'Space') {
373
403
  e.preventDefault();
@@ -382,14 +412,14 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
382
412
  showPanel();
383
413
  }
384
414
  } else if (e.code === 'Escape') {
385
- if (spotlight.classList.contains('visible')) hideSpotlight();
386
- else if (panel.classList.contains('visible')) hidePanel();
415
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
416
+ else if (panel && panel.classList.contains('visible')) hidePanel();
387
417
  }
388
418
  });
389
419
  }
390
420
 
391
421
  function toggleSpotlight() {
392
- if (spotlight.classList.contains('visible')) hideSpotlight();
422
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
393
423
  else showSpotlight();
394
424
  }
395
425
 
@@ -578,8 +608,21 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
578
608
  return html;
579
609
  }
580
610
 
581
- // Initialize
582
- createHost();
611
+ // Initialize after React hydration completes
612
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
613
+ function initAfterHydration() {
614
+ if (typeof requestIdleCallback !== 'undefined') {
615
+ requestIdleCallback(createHost, { timeout: 3000 });
616
+ } else {
617
+ setTimeout(createHost, 100);
618
+ }
619
+ }
620
+
621
+ if (document.readyState === 'complete') {
622
+ initAfterHydration();
623
+ } else {
624
+ window.addEventListener('load', initAfterHydration);
625
+ }
583
626
 
584
627
  // Listen for events
585
628
  window.addEventListener('one-loader-timing', function() {
@@ -626,6 +669,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
626
669
  var holdTimer = null;
627
670
  var holdDelay = 500;
628
671
  var mousePos = { x: 0, y: 0 };
672
+ var removalObserver = null;
629
673
 
630
674
  function createHost() {
631
675
  if (host) return;
@@ -666,6 +710,31 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
666
710
  document.body.appendChild(host);
667
711
  overlay = shadow.querySelector('.overlay');
668
712
  tag = shadow.querySelector('.tag');
713
+ setupRemovalObserver();
714
+ }
715
+
716
+ // watch for React hydration removing our element and re-create it
717
+ function setupRemovalObserver() {
718
+ if (removalObserver) return;
719
+ removalObserver = new MutationObserver(function(mutations) {
720
+ for (var i = 0; i < mutations.length; i++) {
721
+ var mutation = mutations[i];
722
+ if (mutation.type === 'childList') {
723
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
724
+ var node = mutation.removedNodes[j];
725
+ if (node === host) {
726
+ host = null;
727
+ shadow = null;
728
+ overlay = null;
729
+ tag = null;
730
+ // don't auto-recreate - will be created on next hover
731
+ return;
732
+ }
733
+ }
734
+ }
735
+ }
736
+ });
737
+ removalObserver.observe(document.body, { childList: true });
669
738
  }
670
739
 
671
740
  function hideOverlay() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/vite/DevHead.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,uBAAqC,yBAqyB/B;AAlyBN,MAAM,mBACJ,qVAGI,oBACJ,yeAGI,uBACJ,qKAII,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAylBtB,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsLzB,SAAS,UAAU;AAIxB,SAAI,QAAQ,IAAI,aAAa,gBAEzB,4EACE;AAAA,gDAAC,UAAK,KAAI,WAAU,MAAM,uCAAsB,IAAG,SAAQ;AAAA,IAC3D;AAAA,MAAC;AAAA;AAAA,QACC,KAAI;AAAA,QACJ,MAAM;AAAA,QACN,gBAAY;AAAA,QACZ,0BAAwB;AAAA;AAAA,IAC1B;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,iBAAiB;AAAA;AAAA,IACtD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IACvD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,qBAAqB;AAAA;AAAA,IAC1D;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,oBAAoB;AAAA;AAAA,IACzD;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,wBAAwB;AAAA;AAAA,IAC7D;AAAA,KACF,IAGG;AACT;",
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,uBAAqC,yBA02B/B;AAv2BN,MAAM,mBACJ,qVAGI,oBACJ,yeAGI,uBACJ,qKAII,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAooBtB,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgNzB,SAAS,UAAU;AAIxB,SAAI,QAAQ,IAAI,aAAa,gBAEzB,4EACE;AAAA,gDAAC,UAAK,KAAI,WAAU,MAAM,uCAAsB,IAAG,SAAQ;AAAA,IAC3D;AAAA,MAAC;AAAA;AAAA,QACC,KAAI;AAAA,QACJ,MAAM;AAAA,QACN,gBAAY;AAAA,QACZ,0BAAwB;AAAA;AAAA,IAC1B;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,iBAAiB;AAAA;AAAA,IACtD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IACvD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,qBAAqB;AAAA;AAAA,IAC1D;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,oBAAoB;AAAA;AAAA,IACzD;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,wBAAwB;AAAA;AAAA,IAC7D;AAAA,KACF,IAGG;AACT;",
5
5
  "names": []
6
6
  }
@@ -42,6 +42,7 @@ var import_jsx_runtime = require("react/jsx-runtime"),
42
42
  var dragOffset = { x: 0, y: 0 };
43
43
  var panelPos = { x: 20, y: 20 };
44
44
  var snappedEdge = { h: null, v: null };
45
+ var removalObserver = null;
45
46
 
46
47
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
47
48
 
@@ -260,6 +261,32 @@ var import_jsx_runtime = require("react/jsx-runtime"),
260
261
  setupSpotlight();
261
262
  setupPanel();
262
263
  setupKeyboard();
264
+ setupRemovalObserver();
265
+ }
266
+
267
+ // watch for React hydration removing our element and re-create it
268
+ function setupRemovalObserver() {
269
+ if (removalObserver) return;
270
+ removalObserver = new MutationObserver(function(mutations) {
271
+ for (var i = 0; i < mutations.length; i++) {
272
+ var mutation = mutations[i];
273
+ if (mutation.type === 'childList') {
274
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
275
+ var node = mutation.removedNodes[j];
276
+ if (node === host) {
277
+ // our element was removed (likely by React hydration), re-create it
278
+ host = null;
279
+ shadow = null;
280
+ spotlight = null;
281
+ panel = null;
282
+ setTimeout(createHost, 0);
283
+ return;
284
+ }
285
+ }
286
+ }
287
+ }
288
+ });
289
+ removalObserver.observe(document.body, { childList: true });
263
290
  }
264
291
 
265
292
  function setupSpotlight() {
@@ -379,7 +406,10 @@ var import_jsx_runtime = require("react/jsx-runtime"),
379
406
  });
380
407
  }
381
408
 
409
+ var keyboardSetup = false;
382
410
  function setupKeyboard() {
411
+ if (keyboardSetup) return;
412
+ keyboardSetup = true;
383
413
  document.addEventListener('keydown', function(e) {
384
414
  if (e.altKey && e.code === 'Space') {
385
415
  e.preventDefault();
@@ -394,14 +424,14 @@ var import_jsx_runtime = require("react/jsx-runtime"),
394
424
  showPanel();
395
425
  }
396
426
  } else if (e.code === 'Escape') {
397
- if (spotlight.classList.contains('visible')) hideSpotlight();
398
- else if (panel.classList.contains('visible')) hidePanel();
427
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
428
+ else if (panel && panel.classList.contains('visible')) hidePanel();
399
429
  }
400
430
  });
401
431
  }
402
432
 
403
433
  function toggleSpotlight() {
404
- if (spotlight.classList.contains('visible')) hideSpotlight();
434
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
405
435
  else showSpotlight();
406
436
  }
407
437
 
@@ -590,8 +620,21 @@ var import_jsx_runtime = require("react/jsx-runtime"),
590
620
  return html;
591
621
  }
592
622
 
593
- // Initialize
594
- createHost();
623
+ // Initialize after React hydration completes
624
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
625
+ function initAfterHydration() {
626
+ if (typeof requestIdleCallback !== 'undefined') {
627
+ requestIdleCallback(createHost, { timeout: 3000 });
628
+ } else {
629
+ setTimeout(createHost, 100);
630
+ }
631
+ }
632
+
633
+ if (document.readyState === 'complete') {
634
+ initAfterHydration();
635
+ } else {
636
+ window.addEventListener('load', initAfterHydration);
637
+ }
595
638
 
596
639
  // Listen for events
597
640
  window.addEventListener('one-loader-timing', function() {
@@ -639,6 +682,7 @@ var import_jsx_runtime = require("react/jsx-runtime"),
639
682
  var holdTimer = null;
640
683
  var holdDelay = 500;
641
684
  var mousePos = { x: 0, y: 0 };
685
+ var removalObserver = null;
642
686
 
643
687
  function createHost() {
644
688
  if (host) return;
@@ -679,6 +723,31 @@ var import_jsx_runtime = require("react/jsx-runtime"),
679
723
  document.body.appendChild(host);
680
724
  overlay = shadow.querySelector('.overlay');
681
725
  tag = shadow.querySelector('.tag');
726
+ setupRemovalObserver();
727
+ }
728
+
729
+ // watch for React hydration removing our element and re-create it
730
+ function setupRemovalObserver() {
731
+ if (removalObserver) return;
732
+ removalObserver = new MutationObserver(function(mutations) {
733
+ for (var i = 0; i < mutations.length; i++) {
734
+ var mutation = mutations[i];
735
+ if (mutation.type === 'childList') {
736
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
737
+ var node = mutation.removedNodes[j];
738
+ if (node === host) {
739
+ host = null;
740
+ shadow = null;
741
+ overlay = null;
742
+ tag = null;
743
+ // don't auto-recreate - will be created on next hover
744
+ return;
745
+ }
746
+ }
747
+ }
748
+ }
749
+ });
750
+ removalObserver.observe(document.body, { childList: true });
682
751
  }
683
752
 
684
753
  function hideOverlay() {
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DevHead_exports","__export","DevHead","module","exports","import_jsx_runtime","require","import_constants","ROUTE_HMR_SCRIPT","LOADER_HMR_SCRIPT","REACT_REFRESH_SCRIPT","ONE_DEVTOOLS_SCRIPT","SOURCE_INSPECTOR_SCRIPT"],"sources":["../../../src/vite/DevHead.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,eAAA;AAAAC,QAAA,CAAAD,eAAA;EAAAE,OAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAT,YAAqC,CAAAK,eAAA;AAGrC,IAAAK,kBAAM,GACJC,OAAA;EAAAC,gBAAA,GAAAD,OAAA;EAAAE,gBAAA,sVAIA;EAAAC,iBAAA,0eAIA;EAAAC,oBAAA,sKAI0B;EAAAC,mBAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAylBtBC,uBAAA,GAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsLzB,SAASV,QAAA,EAAU;EAIxB,OAAI;AAGE","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DevHead_exports","__export","DevHead","module","exports","import_jsx_runtime","require","import_constants","ROUTE_HMR_SCRIPT","LOADER_HMR_SCRIPT","REACT_REFRESH_SCRIPT","ONE_DEVTOOLS_SCRIPT","SOURCE_INSPECTOR_SCRIPT"],"sources":["../../../src/vite/DevHead.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,eAAA;AAAAC,QAAA,CAAAD,eAAA;EAAAE,OAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAT,YAAqC,CAAAK,eAAA;AAGrC,IAAAK,kBAAM,GACJC,OAAA;EAAAC,gBAAA,GAAAD,OAAA;EAAAE,gBAAA,sVAIA;EAAAC,iBAAA,0eAIA;EAAAC,oBAAA,sKAI0B;EAAAC,mBAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAooBtBC,uBAAA,GAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgNzB,SAASV,QAAA,EAAU;EAIxB,OAAI;AAGE","ignoreList":[]}
@@ -12,6 +12,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
12
12
  var dragOffset = { x: 0, y: 0 };
13
13
  var panelPos = { x: 20, y: 20 };
14
14
  var snappedEdge = { h: null, v: null };
15
+ var removalObserver = null;
15
16
 
16
17
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
17
18
 
@@ -230,6 +231,32 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
230
231
  setupSpotlight();
231
232
  setupPanel();
232
233
  setupKeyboard();
234
+ setupRemovalObserver();
235
+ }
236
+
237
+ // watch for React hydration removing our element and re-create it
238
+ function setupRemovalObserver() {
239
+ if (removalObserver) return;
240
+ removalObserver = new MutationObserver(function(mutations) {
241
+ for (var i = 0; i < mutations.length; i++) {
242
+ var mutation = mutations[i];
243
+ if (mutation.type === 'childList') {
244
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
245
+ var node = mutation.removedNodes[j];
246
+ if (node === host) {
247
+ // our element was removed (likely by React hydration), re-create it
248
+ host = null;
249
+ shadow = null;
250
+ spotlight = null;
251
+ panel = null;
252
+ setTimeout(createHost, 0);
253
+ return;
254
+ }
255
+ }
256
+ }
257
+ }
258
+ });
259
+ removalObserver.observe(document.body, { childList: true });
233
260
  }
234
261
 
235
262
  function setupSpotlight() {
@@ -349,7 +376,10 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
349
376
  });
350
377
  }
351
378
 
379
+ var keyboardSetup = false;
352
380
  function setupKeyboard() {
381
+ if (keyboardSetup) return;
382
+ keyboardSetup = true;
353
383
  document.addEventListener('keydown', function(e) {
354
384
  if (e.altKey && e.code === 'Space') {
355
385
  e.preventDefault();
@@ -364,14 +394,14 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
364
394
  showPanel();
365
395
  }
366
396
  } else if (e.code === 'Escape') {
367
- if (spotlight.classList.contains('visible')) hideSpotlight();
368
- else if (panel.classList.contains('visible')) hidePanel();
397
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
398
+ else if (panel && panel.classList.contains('visible')) hidePanel();
369
399
  }
370
400
  });
371
401
  }
372
402
 
373
403
  function toggleSpotlight() {
374
- if (spotlight.classList.contains('visible')) hideSpotlight();
404
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
375
405
  else showSpotlight();
376
406
  }
377
407
 
@@ -560,8 +590,21 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
560
590
  return html;
561
591
  }
562
592
 
563
- // Initialize
564
- createHost();
593
+ // Initialize after React hydration completes
594
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
595
+ function initAfterHydration() {
596
+ if (typeof requestIdleCallback !== 'undefined') {
597
+ requestIdleCallback(createHost, { timeout: 3000 });
598
+ } else {
599
+ setTimeout(createHost, 100);
600
+ }
601
+ }
602
+
603
+ if (document.readyState === 'complete') {
604
+ initAfterHydration();
605
+ } else {
606
+ window.addEventListener('load', initAfterHydration);
607
+ }
565
608
 
566
609
  // Listen for events
567
610
  window.addEventListener('one-loader-timing', function() {
@@ -608,6 +651,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
608
651
  var holdTimer = null;
609
652
  var holdDelay = 500;
610
653
  var mousePos = { x: 0, y: 0 };
654
+ var removalObserver = null;
611
655
 
612
656
  function createHost() {
613
657
  if (host) return;
@@ -648,6 +692,31 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
648
692
  document.body.appendChild(host);
649
693
  overlay = shadow.querySelector('.overlay');
650
694
  tag = shadow.querySelector('.tag');
695
+ setupRemovalObserver();
696
+ }
697
+
698
+ // watch for React hydration removing our element and re-create it
699
+ function setupRemovalObserver() {
700
+ if (removalObserver) return;
701
+ removalObserver = new MutationObserver(function(mutations) {
702
+ for (var i = 0; i < mutations.length; i++) {
703
+ var mutation = mutations[i];
704
+ if (mutation.type === 'childList') {
705
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
706
+ var node = mutation.removedNodes[j];
707
+ if (node === host) {
708
+ host = null;
709
+ shadow = null;
710
+ overlay = null;
711
+ tag = null;
712
+ // don't auto-recreate - will be created on next hover
713
+ return;
714
+ }
715
+ }
716
+ }
717
+ }
718
+ });
719
+ removalObserver.observe(document.body, { childList: true });
651
720
  }
652
721
 
653
722
  function hideOverlay() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/vite/DevHead.tsx"],
4
- "mappings": "AACA,SAAS,4BAA4B;AAqyB/B,mBACE,KADF;AAlyBN,MAAM,mBACJ,qVAGI,oBACJ,yeAGI,uBACJ,qKAII,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAylBtB,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsLzB,SAAS,UAAU;AAIxB,SAAI,QAAQ,IAAI,aAAa,gBAEzB,iCACE;AAAA,wBAAC,UAAK,KAAI,WAAU,MAAM,sBAAsB,IAAG,SAAQ;AAAA,IAC3D;AAAA,MAAC;AAAA;AAAA,QACC,KAAI;AAAA,QACJ,MAAM;AAAA,QACN,gBAAY;AAAA,QACZ,0BAAwB;AAAA;AAAA,IAC1B;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,iBAAiB;AAAA;AAAA,IACtD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IACvD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,qBAAqB;AAAA;AAAA,IAC1D;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,oBAAoB;AAAA;AAAA,IACzD;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,wBAAwB;AAAA;AAAA,IAC7D;AAAA,KACF,IAGG;AACT;",
4
+ "mappings": "AACA,SAAS,4BAA4B;AA02B/B,mBACE,KADF;AAv2BN,MAAM,mBACJ,qVAGI,oBACJ,yeAGI,uBACJ,qKAII,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAooBtB,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgNzB,SAAS,UAAU;AAIxB,SAAI,QAAQ,IAAI,aAAa,gBAEzB,iCACE;AAAA,wBAAC,UAAK,KAAI,WAAU,MAAM,sBAAsB,IAAG,SAAQ;AAAA,IAC3D;AAAA,MAAC;AAAA;AAAA,QACC,KAAI;AAAA,QACJ,MAAM;AAAA,QACN,gBAAY;AAAA,QACZ,0BAAwB;AAAA;AAAA,IAC1B;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,iBAAiB;AAAA;AAAA,IACtD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IACvD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,qBAAqB;AAAA;AAAA,IAC1D;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,oBAAoB;AAAA;AAAA,IACzD;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,0BAAwB;AAAA,QACxB,yBAAyB,EAAE,QAAQ,wBAAwB;AAAA;AAAA,IAC7D;AAAA,KACF,IAGG;AACT;",
5
5
  "names": []
6
6
  }
@@ -15,6 +15,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
15
15
  var dragOffset = { x: 0, y: 0 };
16
16
  var panelPos = { x: 20, y: 20 };
17
17
  var snappedEdge = { h: null, v: null };
18
+ var removalObserver = null;
18
19
 
19
20
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
20
21
 
@@ -233,6 +234,32 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
233
234
  setupSpotlight();
234
235
  setupPanel();
235
236
  setupKeyboard();
237
+ setupRemovalObserver();
238
+ }
239
+
240
+ // watch for React hydration removing our element and re-create it
241
+ function setupRemovalObserver() {
242
+ if (removalObserver) return;
243
+ removalObserver = new MutationObserver(function(mutations) {
244
+ for (var i = 0; i < mutations.length; i++) {
245
+ var mutation = mutations[i];
246
+ if (mutation.type === 'childList') {
247
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
248
+ var node = mutation.removedNodes[j];
249
+ if (node === host) {
250
+ // our element was removed (likely by React hydration), re-create it
251
+ host = null;
252
+ shadow = null;
253
+ spotlight = null;
254
+ panel = null;
255
+ setTimeout(createHost, 0);
256
+ return;
257
+ }
258
+ }
259
+ }
260
+ }
261
+ });
262
+ removalObserver.observe(document.body, { childList: true });
236
263
  }
237
264
 
238
265
  function setupSpotlight() {
@@ -352,7 +379,10 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
352
379
  });
353
380
  }
354
381
 
382
+ var keyboardSetup = false;
355
383
  function setupKeyboard() {
384
+ if (keyboardSetup) return;
385
+ keyboardSetup = true;
356
386
  document.addEventListener('keydown', function(e) {
357
387
  if (e.altKey && e.code === 'Space') {
358
388
  e.preventDefault();
@@ -367,14 +397,14 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
367
397
  showPanel();
368
398
  }
369
399
  } else if (e.code === 'Escape') {
370
- if (spotlight.classList.contains('visible')) hideSpotlight();
371
- else if (panel.classList.contains('visible')) hidePanel();
400
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
401
+ else if (panel && panel.classList.contains('visible')) hidePanel();
372
402
  }
373
403
  });
374
404
  }
375
405
 
376
406
  function toggleSpotlight() {
377
- if (spotlight.classList.contains('visible')) hideSpotlight();
407
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
378
408
  else showSpotlight();
379
409
  }
380
410
 
@@ -563,8 +593,21 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
563
593
  return html;
564
594
  }
565
595
 
566
- // Initialize
567
- createHost();
596
+ // Initialize after React hydration completes
597
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
598
+ function initAfterHydration() {
599
+ if (typeof requestIdleCallback !== 'undefined') {
600
+ requestIdleCallback(createHost, { timeout: 3000 });
601
+ } else {
602
+ setTimeout(createHost, 100);
603
+ }
604
+ }
605
+
606
+ if (document.readyState === 'complete') {
607
+ initAfterHydration();
608
+ } else {
609
+ window.addEventListener('load', initAfterHydration);
610
+ }
568
611
 
569
612
  // Listen for events
570
613
  window.addEventListener('one-loader-timing', function() {
@@ -612,6 +655,7 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
612
655
  var holdTimer = null;
613
656
  var holdDelay = 500;
614
657
  var mousePos = { x: 0, y: 0 };
658
+ var removalObserver = null;
615
659
 
616
660
  function createHost() {
617
661
  if (host) return;
@@ -652,6 +696,31 @@ const ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; cons
652
696
  document.body.appendChild(host);
653
697
  overlay = shadow.querySelector('.overlay');
654
698
  tag = shadow.querySelector('.tag');
699
+ setupRemovalObserver();
700
+ }
701
+
702
+ // watch for React hydration removing our element and re-create it
703
+ function setupRemovalObserver() {
704
+ if (removalObserver) return;
705
+ removalObserver = new MutationObserver(function(mutations) {
706
+ for (var i = 0; i < mutations.length; i++) {
707
+ var mutation = mutations[i];
708
+ if (mutation.type === 'childList') {
709
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
710
+ var node = mutation.removedNodes[j];
711
+ if (node === host) {
712
+ host = null;
713
+ shadow = null;
714
+ overlay = null;
715
+ tag = null;
716
+ // don't auto-recreate - will be created on next hover
717
+ return;
718
+ }
719
+ }
720
+ }
721
+ }
722
+ });
723
+ removalObserver.observe(document.body, { childList: true });
655
724
  }
656
725
 
657
726
  function hideOverlay() {
@@ -1 +1 @@
1
- {"version":3,"names":["VIRTUAL_SSR_CSS_HREF","Fragment","jsx","jsxs","ROUTE_HMR_SCRIPT","LOADER_HMR_SCRIPT","REACT_REFRESH_SCRIPT","ONE_DEVTOOLS_SCRIPT","SOURCE_INSPECTOR_SCRIPT","DevHead","process","env","NODE_ENV","children","rel","href","as","suppressHydrationWarning","type","dangerouslySetInnerHTML","__html"],"sources":["../../../src/vite/DevHead.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,oBAAA,QAA4B;AAqyB/B,SAAAC,QAAA,EACEC,GAAA,EADFC,IAAA;AAlyBN,MAAMC,gBAAA,GACJ;EAGIC,iBAAA,GACJ;EAGIC,oBAAA,GACJ;EAIIC,mBAAA,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAylBtBC,uBAAA,GAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsLzB,SAASC,QAAA,EAAU;EAIxB,OAAIC,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,gBAEzB,eAAAT,IAAA,CAAAF,QAAA;IACEY,QAAA,kBAAAX,GAAA,CAAC;MAAKY,GAAA,EAAI;MAAUC,IAAA,EAAMf,oBAAA;MAAsBgB,EAAA,EAAG;IAAA,CAAQ,GAC3D,eAAAd,GAAA,CAAC;MACCY,GAAA,EAAI;MACJC,IAAA,EAAMf,oBAAA;MACN,gBAAY;MACZiB,wBAAA,EAAwB;IAAA,CAC1B,GACA,eAAAf,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQhB;MAAiB;IAAA,CACtD,GACA,eAAAF,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQf;MAAkB;IAAA,CACvD,GACA,eAAAH,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQd;MAAqB;IAAA,CAC1D,GAEA,eAAAJ,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQb;MAAoB;IAAA,CACzD,GAEA,eAAAL,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQZ;MAAwB;IAAA,CAC7D;EAAA,CACF,IAGG;AACT","ignoreList":[]}
1
+ {"version":3,"names":["VIRTUAL_SSR_CSS_HREF","Fragment","jsx","jsxs","ROUTE_HMR_SCRIPT","LOADER_HMR_SCRIPT","REACT_REFRESH_SCRIPT","ONE_DEVTOOLS_SCRIPT","SOURCE_INSPECTOR_SCRIPT","DevHead","process","env","NODE_ENV","children","rel","href","as","suppressHydrationWarning","type","dangerouslySetInnerHTML","__html"],"sources":["../../../src/vite/DevHead.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,oBAAA,QAA4B;AA02B/B,SAAAC,QAAA,EACEC,GAAA,EADFC,IAAA;AAv2BN,MAAMC,gBAAA,GACJ;EAGIC,iBAAA,GACJ;EAGIC,oBAAA,GACJ;EAIIC,mBAAA,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAooBtBC,uBAAA,GAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgNzB,SAASC,QAAA,EAAU;EAIxB,OAAIC,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,gBAEzB,eAAAT,IAAA,CAAAF,QAAA;IACEY,QAAA,kBAAAX,GAAA,CAAC;MAAKY,GAAA,EAAI;MAAUC,IAAA,EAAMf,oBAAA;MAAsBgB,EAAA,EAAG;IAAA,CAAQ,GAC3D,eAAAd,GAAA,CAAC;MACCY,GAAA,EAAI;MACJC,IAAA,EAAMf,oBAAA;MACN,gBAAY;MACZiB,wBAAA,EAAwB;IAAA,CAC1B,GACA,eAAAf,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQhB;MAAiB;IAAA,CACtD,GACA,eAAAF,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQf;MAAkB;IAAA,CACvD,GACA,eAAAH,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQd;MAAqB;IAAA,CAC1D,GAEA,eAAAJ,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQb;MAAoB;IAAA,CACzD,GAEA,eAAAL,GAAA,CAAC;MACCgB,IAAA,EAAK;MACLD,wBAAA,EAAwB;MACxBE,uBAAA,EAAyB;QAAEC,MAAA,EAAQZ;MAAwB;IAAA,CAC7D;EAAA,CACF,IAGG;AACT","ignoreList":[]}
@@ -15,6 +15,7 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
15
15
  var dragOffset = { x: 0, y: 0 };
16
16
  var panelPos = { x: 20, y: 20 };
17
17
  var snappedEdge = { h: null, v: null };
18
+ var removalObserver = null;
18
19
 
19
20
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
20
21
 
@@ -233,6 +234,32 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
233
234
  setupSpotlight();
234
235
  setupPanel();
235
236
  setupKeyboard();
237
+ setupRemovalObserver();
238
+ }
239
+
240
+ // watch for React hydration removing our element and re-create it
241
+ function setupRemovalObserver() {
242
+ if (removalObserver) return;
243
+ removalObserver = new MutationObserver(function(mutations) {
244
+ for (var i = 0; i < mutations.length; i++) {
245
+ var mutation = mutations[i];
246
+ if (mutation.type === 'childList') {
247
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
248
+ var node = mutation.removedNodes[j];
249
+ if (node === host) {
250
+ // our element was removed (likely by React hydration), re-create it
251
+ host = null;
252
+ shadow = null;
253
+ spotlight = null;
254
+ panel = null;
255
+ setTimeout(createHost, 0);
256
+ return;
257
+ }
258
+ }
259
+ }
260
+ }
261
+ });
262
+ removalObserver.observe(document.body, { childList: true });
236
263
  }
237
264
 
238
265
  function setupSpotlight() {
@@ -352,7 +379,10 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
352
379
  });
353
380
  }
354
381
 
382
+ var keyboardSetup = false;
355
383
  function setupKeyboard() {
384
+ if (keyboardSetup) return;
385
+ keyboardSetup = true;
356
386
  document.addEventListener('keydown', function(e) {
357
387
  if (e.altKey && e.code === 'Space') {
358
388
  e.preventDefault();
@@ -367,14 +397,14 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
367
397
  showPanel();
368
398
  }
369
399
  } else if (e.code === 'Escape') {
370
- if (spotlight.classList.contains('visible')) hideSpotlight();
371
- else if (panel.classList.contains('visible')) hidePanel();
400
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
401
+ else if (panel && panel.classList.contains('visible')) hidePanel();
372
402
  }
373
403
  });
374
404
  }
375
405
 
376
406
  function toggleSpotlight() {
377
- if (spotlight.classList.contains('visible')) hideSpotlight();
407
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
378
408
  else showSpotlight();
379
409
  }
380
410
 
@@ -563,8 +593,21 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
563
593
  return html;
564
594
  }
565
595
 
566
- // Initialize
567
- createHost();
596
+ // Initialize after React hydration completes
597
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
598
+ function initAfterHydration() {
599
+ if (typeof requestIdleCallback !== 'undefined') {
600
+ requestIdleCallback(createHost, { timeout: 3000 });
601
+ } else {
602
+ setTimeout(createHost, 100);
603
+ }
604
+ }
605
+
606
+ if (document.readyState === 'complete') {
607
+ initAfterHydration();
608
+ } else {
609
+ window.addEventListener('load', initAfterHydration);
610
+ }
568
611
 
569
612
  // Listen for events
570
613
  window.addEventListener('one-loader-timing', function() {
@@ -612,6 +655,7 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
612
655
  var holdTimer = null;
613
656
  var holdDelay = 500;
614
657
  var mousePos = { x: 0, y: 0 };
658
+ var removalObserver = null;
615
659
 
616
660
  function createHost() {
617
661
  if (host) return;
@@ -652,6 +696,31 @@ var ROUTE_HMR_SCRIPT = 'import { createHotContext } from "/@vite/client"; const
652
696
  document.body.appendChild(host);
653
697
  overlay = shadow.querySelector('.overlay');
654
698
  tag = shadow.querySelector('.tag');
699
+ setupRemovalObserver();
700
+ }
701
+
702
+ // watch for React hydration removing our element and re-create it
703
+ function setupRemovalObserver() {
704
+ if (removalObserver) return;
705
+ removalObserver = new MutationObserver(function(mutations) {
706
+ for (var i = 0; i < mutations.length; i++) {
707
+ var mutation = mutations[i];
708
+ if (mutation.type === 'childList') {
709
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
710
+ var node = mutation.removedNodes[j];
711
+ if (node === host) {
712
+ host = null;
713
+ shadow = null;
714
+ overlay = null;
715
+ tag = null;
716
+ // don't auto-recreate - will be created on next hover
717
+ return;
718
+ }
719
+ }
720
+ }
721
+ }
722
+ });
723
+ removalObserver.observe(document.body, { childList: true });
655
724
  }
656
725
 
657
726
  function hideOverlay() {
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","VIRTUAL_SSR_CSS_HREF","ROUTE_HMR_SCRIPT","LOADER_HMR_SCRIPT","REACT_REFRESH_SCRIPT","ONE_DEVTOOLS_SCRIPT","SOURCE_INSPECTOR_SCRIPT","DevHead"],"sources":["../../../src/vite/DevHead.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAA4BC,QAAA,IAAAC,SAAA;AAqyB/B,SAAAC,oBAAA;AAlyBN,IAAAC,gBAAM,sVACJ;EAAAC,iBAGI,0eACJ;EAAAC,oBAGI,sKACJ;EAAAC,mBAII;AAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAylBtBC,uBAAA,GAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsLzB,SAASC,QAAA,EAAU;EAIxB,OAAI;AAGE;AAA2D,SAC3DA,OAAC","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","VIRTUAL_SSR_CSS_HREF","ROUTE_HMR_SCRIPT","LOADER_HMR_SCRIPT","REACT_REFRESH_SCRIPT","ONE_DEVTOOLS_SCRIPT","SOURCE_INSPECTOR_SCRIPT","DevHead"],"sources":["../../../src/vite/DevHead.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAA4BC,QAAA,IAAAC,SAAA;AA02B/B,SAAAC,oBAAA;AAv2BN,IAAAC,gBAAM,sVACJ;EAAAC,iBAGI,0eACJ;EAAAC,oBAGI,sKACJ;EAAAC,mBAII;AAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAooBtBC,uBAAA,GAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgNzB,SAASC,QAAA,EAAU;EAIxB,OAAI;AAGE;AAA2D,SAC3DA,OAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "1.2.65",
3
+ "version": "1.2.66",
4
4
  "license": "BSD-3-Clause",
5
5
  "sideEffects": [
6
6
  "setup.mjs",
@@ -139,17 +139,17 @@
139
139
  "@react-navigation/routers": "~7.5.1",
140
140
  "@swc/core": "^1.14.0",
141
141
  "@ungap/structured-clone": "^1.2.0",
142
- "@vxrn/color-scheme": "1.2.65",
143
- "@vxrn/compiler": "1.2.65",
144
- "@vxrn/resolve": "1.2.65",
145
- "@vxrn/tslib-lite": "1.2.65",
146
- "@vxrn/use-isomorphic-layout-effect": "1.2.65",
147
- "@vxrn/vite-plugin-metro": "1.2.65",
142
+ "@vxrn/color-scheme": "1.2.66",
143
+ "@vxrn/compiler": "1.2.66",
144
+ "@vxrn/resolve": "1.2.66",
145
+ "@vxrn/tslib-lite": "1.2.66",
146
+ "@vxrn/use-isomorphic-layout-effect": "1.2.66",
147
+ "@vxrn/vite-plugin-metro": "1.2.66",
148
148
  "babel-dead-code-elimination": "1.0.10",
149
149
  "babel-plugin-module-resolver": "^5.0.2",
150
150
  "citty": "^0.1.6",
151
151
  "core-js": "^3.38.1",
152
- "create-vxrn": "1.2.65",
152
+ "create-vxrn": "1.2.66",
153
153
  "escape-string-regexp": "^5.0.0",
154
154
  "expo-linking": "~8.0.8",
155
155
  "expo-modules-core": "~3.0.24",
@@ -177,7 +177,7 @@
177
177
  "vite": "^7.1.12",
178
178
  "vite-plugin-barrel": "^0.4.1",
179
179
  "vite-tsconfig-paths": "^5.1.4",
180
- "vxrn": "1.2.65",
180
+ "vxrn": "1.2.66",
181
181
  "ws": "^8.18.0",
182
182
  "xxhashjs": "^0.2.2"
183
183
  },
@@ -27,6 +27,7 @@ const ONE_DEVTOOLS_SCRIPT = `
27
27
  var dragOffset = { x: 0, y: 0 };
28
28
  var panelPos = { x: 20, y: 20 };
29
29
  var snappedEdge = { h: null, v: null };
30
+ var removalObserver = null;
30
31
 
31
32
  var LOGO_SVG = '<svg width="24" height="24" viewBox="0 0 100 100"><circle cx="50" cy="50" r="48" fill="#FCD34D" stroke="#222" stroke-width="2"/><circle cx="50" cy="35" r="16" fill="white"/><text x="50" y="41" text-anchor="middle" font-family="system-ui" font-size="16" font-weight="bold" fill="#222">1</text></svg>';
32
33
 
@@ -245,6 +246,32 @@ const ONE_DEVTOOLS_SCRIPT = `
245
246
  setupSpotlight();
246
247
  setupPanel();
247
248
  setupKeyboard();
249
+ setupRemovalObserver();
250
+ }
251
+
252
+ // watch for React hydration removing our element and re-create it
253
+ function setupRemovalObserver() {
254
+ if (removalObserver) return;
255
+ removalObserver = new MutationObserver(function(mutations) {
256
+ for (var i = 0; i < mutations.length; i++) {
257
+ var mutation = mutations[i];
258
+ if (mutation.type === 'childList') {
259
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
260
+ var node = mutation.removedNodes[j];
261
+ if (node === host) {
262
+ // our element was removed (likely by React hydration), re-create it
263
+ host = null;
264
+ shadow = null;
265
+ spotlight = null;
266
+ panel = null;
267
+ setTimeout(createHost, 0);
268
+ return;
269
+ }
270
+ }
271
+ }
272
+ }
273
+ });
274
+ removalObserver.observe(document.body, { childList: true });
248
275
  }
249
276
 
250
277
  function setupSpotlight() {
@@ -364,7 +391,10 @@ const ONE_DEVTOOLS_SCRIPT = `
364
391
  });
365
392
  }
366
393
 
394
+ var keyboardSetup = false;
367
395
  function setupKeyboard() {
396
+ if (keyboardSetup) return;
397
+ keyboardSetup = true;
368
398
  document.addEventListener('keydown', function(e) {
369
399
  if (e.altKey && e.code === 'Space') {
370
400
  e.preventDefault();
@@ -379,14 +409,14 @@ const ONE_DEVTOOLS_SCRIPT = `
379
409
  showPanel();
380
410
  }
381
411
  } else if (e.code === 'Escape') {
382
- if (spotlight.classList.contains('visible')) hideSpotlight();
383
- else if (panel.classList.contains('visible')) hidePanel();
412
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
413
+ else if (panel && panel.classList.contains('visible')) hidePanel();
384
414
  }
385
415
  });
386
416
  }
387
417
 
388
418
  function toggleSpotlight() {
389
- if (spotlight.classList.contains('visible')) hideSpotlight();
419
+ if (spotlight && spotlight.classList.contains('visible')) hideSpotlight();
390
420
  else showSpotlight();
391
421
  }
392
422
 
@@ -575,8 +605,21 @@ const ONE_DEVTOOLS_SCRIPT = `
575
605
  return html;
576
606
  }
577
607
 
578
- // Initialize
579
- createHost();
608
+ // Initialize after React hydration completes
609
+ // use requestIdleCallback to wait for the browser to be idle (after hydration)
610
+ function initAfterHydration() {
611
+ if (typeof requestIdleCallback !== 'undefined') {
612
+ requestIdleCallback(createHost, { timeout: 3000 });
613
+ } else {
614
+ setTimeout(createHost, 100);
615
+ }
616
+ }
617
+
618
+ if (document.readyState === 'complete') {
619
+ initAfterHydration();
620
+ } else {
621
+ window.addEventListener('load', initAfterHydration);
622
+ }
580
623
 
581
624
  // Listen for events
582
625
  window.addEventListener('one-loader-timing', function() {
@@ -627,6 +670,7 @@ const SOURCE_INSPECTOR_SCRIPT = `
627
670
  var holdTimer = null;
628
671
  var holdDelay = 500;
629
672
  var mousePos = { x: 0, y: 0 };
673
+ var removalObserver = null;
630
674
 
631
675
  function createHost() {
632
676
  if (host) return;
@@ -667,6 +711,31 @@ const SOURCE_INSPECTOR_SCRIPT = `
667
711
  document.body.appendChild(host);
668
712
  overlay = shadow.querySelector('.overlay');
669
713
  tag = shadow.querySelector('.tag');
714
+ setupRemovalObserver();
715
+ }
716
+
717
+ // watch for React hydration removing our element and re-create it
718
+ function setupRemovalObserver() {
719
+ if (removalObserver) return;
720
+ removalObserver = new MutationObserver(function(mutations) {
721
+ for (var i = 0; i < mutations.length; i++) {
722
+ var mutation = mutations[i];
723
+ if (mutation.type === 'childList') {
724
+ for (var j = 0; j < mutation.removedNodes.length; j++) {
725
+ var node = mutation.removedNodes[j];
726
+ if (node === host) {
727
+ host = null;
728
+ shadow = null;
729
+ overlay = null;
730
+ tag = null;
731
+ // don't auto-recreate - will be created on next hover
732
+ return;
733
+ }
734
+ }
735
+ }
736
+ }
737
+ });
738
+ removalObserver.observe(document.body, { childList: true });
670
739
  }
671
740
 
672
741
  function hideOverlay() {
@@ -1 +1 @@
1
- {"version":3,"file":"DevHead.d.ts","sourceRoot":"","sources":["../../src/vite/DevHead.tsx"],"names":[],"mappings":"AAgyBA,wBAAgB,OAAO,mDA6CtB"}
1
+ {"version":3,"file":"DevHead.d.ts","sourceRoot":"","sources":["../../src/vite/DevHead.tsx"],"names":[],"mappings":"AAq2BA,wBAAgB,OAAO,mDA6CtB"}