Skip to content

Commit 8b7c7e1

Browse files
committed
Replace HTML literals with document fragments
1 parent 04b33de commit 8b7c7e1

File tree

5 files changed

+94
-34
lines changed

5 files changed

+94
-34
lines changed

index.js

+45-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

index.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/toolbox/base-info.ts

+23-10
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,29 @@ class BaseInfo extends Tool {
2323
protected _setUpToolPanel(): void {
2424
super._setUpToolPanel();
2525

26-
this._tool_panel.innerHTML = `
27-
<span class="ps2map__tool__base-info__name" id="tool-base-name"></span>
28-
<img class="ps2map__tool__base-info__type-icon" id="tool-base-icon"/>
29-
<span class="ps2map__tool__base-info__type" id="tool-base-type"></span>
30-
`;
31-
this._tool_panel.innerHTML += `
32-
<br/>
33-
<img class="ps2map__tool__base-info__resource-icon" id="tool-base-resource-icon"/>
34-
<span class="ps2map__tool__base-info__resource-text" id="tool-base-resource-name"></span>
35-
`;
26+
const frag = document.createDocumentFragment();
27+
frag.appendChild(Object.assign(document.createElement("span"), {
28+
id: "tool-base-name",
29+
classList: "ps2map__tool__base-info__name",
30+
}));
31+
frag.appendChild(Object.assign(document.createElement("img"), {
32+
id: "tool-base-icon",
33+
classList: "ps2map__tool__base-info__type-icon",
34+
}));
35+
frag.appendChild(Object.assign(document.createElement("span"), {
36+
id: "tool-base-type",
37+
classList: "ps2map__tool__base-info__type",
38+
}));
39+
frag.appendChild(document.createElement("br"));
40+
frag.appendChild(Object.assign(document.createElement("img"), {
41+
id: "tool-base-resource-icon",
42+
classList: "ps2map__tool__base-info__resource-icon",
43+
}));
44+
frag.appendChild(Object.assign(document.createElement("span"), {
45+
id: "tool-base-resource-name",
46+
classList: "ps2map__tool__base-info__resource-text",
47+
}));
48+
this._tool_panel.appendChild(frag);
3649
}
3750

3851
private _updateBaseInfo(base: Base | null): void {

src/toolbox/cursor.ts

+25-9
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,31 @@ class Cursor extends Tool {
2424
protected _setUpToolPanel(): void {
2525
super._setUpToolPanel();
2626

27-
this._tool_panel.innerHTML += `
28-
<div class="tools__cursor">
29-
<span>X:</span>
30-
<span id="tool-cursor_x">0.00</span>
31-
<span>Y:</span>
32-
<span id="tool-cursor_y">0.00</span>
33-
</div>
34-
`;
35-
this._tool_panel.style.display = "block";
27+
// Dynamic elements
28+
const x = Object.assign(document.createElement("span"), {
29+
id: "tool-cursor_x",
30+
textContent: "0.00",
31+
});
32+
const y = Object.assign(document.createElement("span"), {
33+
id: "tool-cursor_y",
34+
textContent: "0.00",
35+
});
36+
// Static elements
37+
const frag = document.createDocumentFragment();
38+
frag.appendChild(document.createTextNode("X:"));
39+
frag.appendChild(x);
40+
frag.appendChild(document.createTextNode(" Y:"));
41+
frag.appendChild(y);
42+
this._tool_panel.appendChild(frag);
43+
// Set style
44+
Object.assign(this._tool_panel.style, {
45+
display: "grid",
46+
gridTemplateColumns: "1fr 3fr",
47+
minWidth: "120px",
48+
fontFamily: "Consolas, monospace",
49+
fontSize: "18px",
50+
justifyItems: "right",
51+
});
3652
}
3753

3854
private _updateToolPanel(target: Readonly<Point>): void {

tools.css

-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,3 @@
1-
.tools__cursor {
2-
display: grid;
3-
grid-template-columns: 1fr 3fr;
4-
grid-gap: 10px;
5-
width: 120px;
6-
font-family: Consolas, monospace;
7-
font-size: 18px;
8-
justify-items: right;
9-
}
10-
111
.ps2map__tool__base-info__name {
122
font-weight: 600;
133
font-size: 16pt;

0 commit comments

Comments
 (0)