mirror of
https://code.castopod.org/adaures/castopod
synced 2025-04-23 01:01:20 +00:00

- replace rollup config with vitejs - use vite dev server during development to take advantage of hot module replacement (HMR) - add vite service using Vite library to load css and js assets - update package.json scripts and remove unnecessary dependencies - update scripts/bundle-prepare.sh closes #107
24 lines
685 B
TypeScript
24 lines
685 B
TypeScript
const Clipboard = (): void => {
|
|
const buttons: NodeListOf<HTMLButtonElement> | null = document.querySelectorAll(
|
|
"button[data-type='clipboard-copy']"
|
|
);
|
|
|
|
if (buttons) {
|
|
for (let i = 0; i < buttons.length; i++) {
|
|
const button: HTMLButtonElement = buttons[i];
|
|
const textArea: HTMLTextAreaElement | null = document.querySelector(
|
|
`textarea[id="${button.dataset.clipboardTarget}"]`
|
|
);
|
|
if (textArea) {
|
|
button.addEventListener("click", () => {
|
|
textArea.select();
|
|
textArea.setSelectionRange(0, textArea.value.length);
|
|
document.execCommand("copy");
|
|
});
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
export default Clipboard;
|