(target: EventTarget | null)
| 727 | } |
| 728 | |
| 729 | function copyFromEventTarget(target: EventTarget | null) { |
| 730 | if (!(target instanceof Element)) return undefined; |
| 731 | const button = target.closest<HTMLButtonElement>( |
| 732 | ".copy-button[data-copy-value]", |
| 733 | ); |
| 734 | const value = button?.dataset.copyValue; |
| 735 | if (!button || !value) return undefined; |
| 736 | return { button, value }; |
| 737 | } |
| 738 | |
| 739 | document.addEventListener("pointerdown", (event) => { |
| 740 | const copy = copyFromEventTarget(event.target); |