|
10 | 10 | import HTMLRenderer from "$src/browser_panel/HTMLRenderer.svelte" |
11 | 11 | import StripedHtmlTag from "$src/components/StripedHtmlTag.svelte" |
12 | 12 | import { getTurboFrames, getTurboCables, getTurboStreams, clearTurboStreams, getTurboPermanentElements, getTurboTemporaryElements, getTurboConfig } from "../../State.svelte.js" |
13 | | - import { debounce, handleKeyboardNavigation } from "$utils/utils.js" |
14 | | - import { panelPostMessage, addHighlightOverlay, addHighlightOverlayByPath, hideHighlightOverlay } from "../../messaging.js" |
| 13 | + import { debounce, handleKeyboardNavigation, selectorByUUID } from "$utils/utils.js" |
| 14 | + import { panelPostMessage, addHighlightOverlay, hideHighlightOverlay } from "../../messaging.js" |
15 | 15 | import { HOTWIRE_DEV_TOOLS_PANEL_SOURCE, PANEL_TO_BACKEND_MESSAGES } from "$lib/constants.js" |
16 | 16 | import { getDevtoolInstance } from "$lib/devtool.js" |
17 | 17 | import { horizontalPanes } from "../../theme.svelte.js" |
|
376 | 376 | {#if turboPermanentElements.length > 0} |
377 | 377 | <div class="pane-section-heading">Permanent Elements ({turboPermanentElements.length})</div> |
378 | 378 | {#each turboPermanentElements as element (element.uuid)} |
379 | | - <div class="entry-row p-2 border-bottom"> |
| 379 | + <div class="entry-row p-2 border-bottom" onmouseenter={() => addHighlightOverlay(selectorByUUID(element.uuid))} onmouseleave={() => hideHighlightOverlay()} role="button" tabindex="0"> |
380 | 380 | <div class="d-flex justify-content-between align-items-center"> |
381 | | - <div class="d-flex align-items-center"> |
382 | | - <code class="me-2"><{element.tag}></code> |
383 | | - {#if element.id} |
384 | | - <span class="badge bg-secondary me-2">#{element.id}</span> |
385 | | - {/if} |
386 | | - {#if element.classes.length > 0} |
387 | | - {#each element.classes as className} |
388 | | - <span class="badge bg-info me-1">.{className}</span> |
389 | | - {/each} |
390 | | - {/if} |
391 | | - </div> |
392 | | - <div> |
393 | | - <ScrollIntoViewButton elementPath={element.elementPath}></ScrollIntoViewButton> |
394 | | - <InspectButton elementPath={element.elementPath}></InspectButton> |
395 | | - </div> |
| 381 | + <StripedHtmlTag {element} /> |
| 382 | + <InspectButton uuid={element.uuid}></InspectButton> |
396 | 383 | </div> |
397 | | - {#if element.attributeValue} |
398 | | - <div class="mt-1 text-muted small">data-turbo-permanent="{element.attributeValue}"</div> |
399 | | - {:else} |
400 | | - <div class="mt-1 text-muted small">data-turbo-permanent</div> |
401 | | - {/if} |
402 | 384 | </div> |
403 | 385 | {/each} |
404 | 386 | {/if} |
405 | 387 |
|
406 | 388 | {#if turboTemporaryElements.length > 0} |
407 | 389 | <div class="pane-section-heading">Temporary Elements ({turboTemporaryElements.length})</div> |
408 | 390 | {#each turboTemporaryElements as element (element.uuid)} |
409 | | - <div class="entry-row p-2 border-bottom"> |
| 391 | + <div class="entry-row p-2 border-bottom" onmouseenter={() => addHighlightOverlay(selectorByUUID(element.uuid))} onmouseleave={() => hideHighlightOverlay()} role="button" tabindex="0"> |
410 | 392 | <div class="d-flex justify-content-between align-items-center"> |
411 | | - <div class="d-flex align-items-center"> |
412 | | - <code class="me-2"><{element.tag}></code> |
413 | | - {#if element.id} |
414 | | - <span class="badge bg-secondary me-2">#{element.id}</span> |
415 | | - {/if} |
416 | | - {#if element.classes.length > 0} |
417 | | - {#each element.classes as className} |
418 | | - <span class="badge bg-info me-1">.{className}</span> |
419 | | - {/each} |
420 | | - {/if} |
421 | | - </div> |
422 | | - <div> |
423 | | - <ScrollIntoViewButton elementPath={element.elementPath}></ScrollIntoViewButton> |
424 | | - <InspectButton elementPath={element.elementPath}></InspectButton> |
425 | | - </div> |
| 393 | + <StripedHtmlTag {element} /> |
| 394 | + <InspectButton uuid={element.uuid}></InspectButton> |
426 | 395 | </div> |
427 | | - {#if element.attributeValue} |
428 | | - <div class="mt-1 text-muted small">data-turbo-temporary="{element.attributeValue}"</div> |
429 | | - {:else} |
430 | | - <div class="mt-1 text-muted small">data-turbo-temporary</div> |
431 | | - {/if} |
432 | 396 | </div> |
433 | 397 | {/each} |
434 | 398 | {/if} |
|
0 commit comments