Skip to content

Commit 5f789c5

Browse files
committed
Updates/improvements
1 parent 1e8aa02 commit 5f789c5

File tree

1 file changed

+39
-27
lines changed

1 file changed

+39
-27
lines changed

html/js/app.js

+39-27
Original file line numberDiff line numberDiff line change
@@ -6,86 +6,98 @@ document.addEventListener("DOMContentLoaded", function () {
66
};
77

88
const targetEye = document.getElementById("target-eye");
9-
let targetLabel = document.getElementById("target-label");
10-
let TargetEyeStyleObject = targetEye.style;
9+
const targetLabel = document.getElementById("target-label");
10+
const TargetEyeStyleObject = targetEye.style;
1111

1212
function OpenTarget() {
13-
targetLabel.innerHTML = "";
13+
targetLabel.textContent = "";
1414
targetEye.style.display = "block";
1515
targetEye.className = config.StandardEyeIcon;
1616
TargetEyeStyleObject.color = config.StandardColor;
1717
}
1818

1919
function CloseTarget() {
20-
targetLabel.innerHTML = "";
20+
targetLabel.textContent = "";
2121
targetEye.style.display = "none";
2222
}
2323

24+
function createTargetOption(index, itemData) {
25+
if (itemData !== null) {
26+
index = Number(index) + 1;
27+
const targetOption = document.createElement("div");
28+
targetOption.id = `target-option-${index}`;
29+
targetOption.style.marginBottom = "0.2vh";
30+
targetOption.style.borderRadius = "0.15rem";
31+
targetOption.style.padding = "0.45rem";
32+
targetOption.style.background = "rgba(23, 23, 23, 40%)";
33+
targetOption.style.color = config.StandardColor;
34+
const targetIcon = document.createElement("span");
35+
targetIcon.id = `target-icon-${index}`;
36+
const icon = document.createElement("i");
37+
icon.className = itemData.icon;
38+
targetIcon.appendChild(icon);
39+
targetIcon.appendChild(document.createTextNode(" "));
40+
targetOption.appendChild(targetIcon);
41+
targetOption.appendChild(document.createTextNode(itemData.label));
42+
targetLabel.appendChild(targetOption);
43+
}
44+
}
45+
2446
function FoundTarget(item) {
2547
if (item.data) {
2648
targetEye.className = item.data;
2749
}
2850
TargetEyeStyleObject.color = config.SuccessColor;
29-
targetLabel.innerHTML = "";
51+
targetLabel.textContent = "";
3052
for (let [index, itemData] of Object.entries(item.options)) {
31-
if (itemData !== null) {
32-
index = Number(index) + 1;
33-
targetLabel.innerHTML += `<div id="target-option-${index}" style="margin-bottom: 0.2vh;
34-
border-radius: 0.15rem; padding: 0.45rem; background: rgba(23, 23, 23, 40%);
35-
color: ${config.StandardColor}"><span id="target-icon-${index}"><i class="${itemData.icon}"></i> </span>${itemData.label}</div>`;
36-
}
53+
createTargetOption(index, itemData);
3754
}
3855
}
3956

4057
function ValidTarget(item) {
41-
targetLabel.innerHTML = "";
58+
targetLabel.textContent = "";
4259
for (let [index, itemData] of Object.entries(item.data)) {
43-
if (itemData !== null) {
44-
index = Number(index) + 1;
45-
targetLabel.innerHTML += `<div id="target-option-${index}" style="margin-bottom: 0.2vh;
46-
border-radius: 0.15rem; padding: 0.45rem; background: rgba(23, 23, 23, 40%);
47-
color: ${config.StandardColor}"><span id="target-icon-${index}"><i class="${itemData.icon}"></i> </span>${itemData.label}</div>`;
48-
}
60+
createTargetOption(index, itemData);
4961
}
5062
}
5163

5264
function LeftTarget() {
53-
targetLabel.innerHTML = "";
65+
targetLabel.textContent = "";
5466
TargetEyeStyleObject.color = config.StandardColor;
5567
targetEye.className = config.StandardEyeIcon;
5668
}
5769

5870
function handleMouseDown(event) {
59-
let element = event.target;
71+
const element = event.target; // use const instead of let
6072
if (element.id) {
6173
const split = element.id.split("-");
62-
if (split[0] === "target" && split[1] !== "eye" && event.button == 0) {
74+
if (split[0] === "target" && split[1] !== "eye" && event.button === 0) {
6375
fetch(`https://${GetParentResourceName()}/selectTarget`, {
6476
method: "POST",
6577
headers: { "Content-Type": "application/json; charset=UTF-8" },
6678
body: JSON.stringify(split[2]),
67-
});
68-
targetLabel.innerHTML = "";
79+
}).catch((error) => console.error("Error:", error));
80+
targetLabel.textContent = "";
6981
}
7082
}
71-
if (event.button == 2) {
83+
if (event.button === 2) {
7284
LeftTarget();
7385
fetch(`https://${GetParentResourceName()}/leftTarget`, {
7486
method: "POST",
7587
headers: { "Content-Type": "application/json; charset=UTF-8" },
7688
body: "",
77-
});
89+
}).catch((error) => console.error("Error:", error));
7890
}
7991
}
8092

8193
function handleKeyDown(event) {
82-
if (event.key == "Escape" || event.key == "Backspace") {
94+
if (event.key === "Escape" || event.key === "Backspace") {
8395
CloseTarget();
8496
fetch(`https://${GetParentResourceName()}/closeTarget`, {
8597
method: "POST",
8698
headers: { "Content-Type": "application/json; charset=UTF-8" },
8799
body: "",
88-
});
100+
}).catch((error) => console.error("Error:", error));
89101
}
90102
}
91103

0 commit comments

Comments
 (0)