Skip to content

Commit d65741a

Browse files
CopilotMrAlders0n
andcommitted
Refactor countdown timer to reduce code duplication
Extract applyCountdownStatus helper function to handle both string and object return formats, reducing duplication in update() method Co-authored-by: MrAlders0n <55921894+MrAlders0n@users.noreply.github.com>
1 parent de103c1 commit d65741a

1 file changed

Lines changed: 12 additions & 16 deletions

File tree

content/wardrive.js

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,16 @@ function setStatus(text, color = STATUS_COLORS.idle) {
108108
statusEl.className = `font-semibold ${color}`;
109109
}
110110

111+
// Helper function to apply status from countdown result
112+
function applyCountdownStatus(result, defaultColor) {
113+
if (!result) return;
114+
if (typeof result === 'string') {
115+
setStatus(result, defaultColor);
116+
} else {
117+
setStatus(result.message, result.color || defaultColor);
118+
}
119+
}
120+
111121
// Countdown timer management - generalized for reuse
112122
function createCountdownTimer(getEndTime, getStatusMessage) {
113123
return {
@@ -126,26 +136,12 @@ function createCountdownTimer(getEndTime, getStatusMessage) {
126136

127137
const remainingMs = this.endTime - Date.now();
128138
if (remainingMs <= 0) {
129-
const result = getStatusMessage(0);
130-
if (!result) return;
131-
// Handle both string and object format
132-
if (typeof result === 'string') {
133-
setStatus(result, STATUS_COLORS.info);
134-
} else {
135-
setStatus(result.message, result.color || STATUS_COLORS.info);
136-
}
139+
applyCountdownStatus(getStatusMessage(0), STATUS_COLORS.info);
137140
return;
138141
}
139142

140143
const remainingSec = Math.ceil(remainingMs / 1000);
141-
const result = getStatusMessage(remainingSec);
142-
if (!result) return;
143-
// Handle both string and object format
144-
if (typeof result === 'string') {
145-
setStatus(result, STATUS_COLORS.idle);
146-
} else {
147-
setStatus(result.message, result.color || STATUS_COLORS.idle);
148-
}
144+
applyCountdownStatus(getStatusMessage(remainingSec), STATUS_COLORS.idle);
149145
},
150146

151147
stop() {

0 commit comments

Comments
 (0)