|
1 | | -document.getElementById("testButton").addEventListener("click", async () => { |
| 1 | +import { TEST_CONNECTION, HIGHLIGHT_LINKS } from "../actions/actionTypes.js"; |
| 2 | + |
| 3 | +const resultElement = document.getElementById("result"); |
| 4 | +if (!resultElement) { |
| 5 | + throw new Error("Result element not found"); |
| 6 | +} |
| 7 | + |
| 8 | +const updateResult = (message) => { |
| 9 | + resultElement.textContent = message; |
| 10 | +}; |
| 11 | + |
| 12 | +const sendMessage = async (action, loadingMessage) => { |
2 | 13 | try { |
3 | | - document.getElementById("result").textContent = "Getting page title..."; |
4 | | - const result = await chrome.runtime.sendMessage({ |
5 | | - action: "testConnection" |
6 | | - }); |
7 | | - document.getElementById("result").textContent = result; |
| 14 | + updateResult(loadingMessage); |
| 15 | + const result = await chrome.runtime.sendMessage({ action }); |
| 16 | + updateResult(result); |
8 | 17 | } catch (error) { |
9 | | - document.getElementById("result").textContent = `Error: ${error.message}`; |
| 18 | + updateResult(`Error: ${error.message}`); |
10 | 19 | } |
11 | | -}); |
12 | | - |
13 | | -document |
14 | | - .getElementById("highlightButton") |
15 | | - .addEventListener("click", async () => { |
16 | | - try { |
17 | | - document.getElementById("result").textContent = "Highlighting links..."; |
18 | | - const result = await chrome.runtime.sendMessage({ |
19 | | - action: "highlightLinks" |
20 | | - }); |
21 | | - document.getElementById("result").textContent = result; |
22 | | - } catch (error) { |
23 | | - document.getElementById("result").textContent = `Error: ${error.message}`; |
24 | | - } |
25 | | - }); |
| 20 | +}; |
| 21 | + |
| 22 | +// Initialize button handlers |
| 23 | +const initializeHandlers = () => { |
| 24 | + const testButton = document.getElementById("testButton"); |
| 25 | + const highlightButton = document.getElementById("highlightButton"); |
| 26 | + |
| 27 | + if (!testButton || !highlightButton) { |
| 28 | + throw new Error("Required buttons not found"); |
| 29 | + } |
| 30 | + |
| 31 | + testButton.addEventListener("click", () => |
| 32 | + sendMessage(TEST_CONNECTION, "Getting page title...") |
| 33 | + ); |
| 34 | + |
| 35 | + highlightButton.addEventListener("click", () => |
| 36 | + sendMessage(HIGHLIGHT_LINKS, "Highlighting links...") |
| 37 | + ); |
| 38 | +}; |
| 39 | + |
| 40 | +// Initialize when DOM is ready |
| 41 | +document.addEventListener("DOMContentLoaded", initializeHandlers); |
0 commit comments