Skip to content

Commit 30746e9

Browse files
committed
Reversed/simplified conditions to reduce nesting
1 parent 0d4c760 commit 30746e9

File tree

1 file changed

+20
-16
lines changed

1 file changed

+20
-16
lines changed

chatgpt.js

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -70,23 +70,26 @@ const chatgpt = {
7070

7171
// Define event handlers
7272
const handlers = {
73+
7374
dismiss: {
7475
click(event) {
7576
if (event.target == event.currentTarget || event.target.closest('[class*="-close-btn]'))
7677
dismissAlert()
7778
},
79+
7880
key(event) {
79-
if (/^(?: |Space|Enter|Return|Esc)/.test(event.key) || [32, 13, 27].includes(event.keyCode)) {
80-
for (const alertId of alertQueue) { // look to handle only if triggering alert is active
81-
const alert = document.getElementById(alertId)
82-
if (alert && alert.style.display !== 'none') { // active alert found
83-
if (event.key.includes('Esc') || event.keyCode == 27) // esc pressed
84-
dismissAlert() // dismiss alert & do nothing
85-
else if (/^(?: |Space|Enter|Return)/.test(event.key) || [32, 13].includes(event.keyCode)) {
86-
const mainButton = alert.querySelector('.modal-buttons').lastChild // look for main button
87-
if (mainButton) { mainButton.click() ; event.preventDefault() } // click if found
88-
} return
89-
}}}}
81+
if (!/^(?: |Space|Enter|Return|Esc)/.test(event.key) || ![32, 13, 27].includes(event.keyCode))
82+
return
83+
for (const alertId of alertQueue) { // look to handle only if triggering alert is active
84+
const alert = document.getElementById(alertId)
85+
if (!alert || alert.style.display == 'none') return
86+
if (event.key.startsWith('Esc') || event.keyCode == 27) dismissAlert() // and do nothing
87+
else { // Space/Enter pressed
88+
const mainButton = alert.querySelector('.modal-buttons').lastChild // look for main button
89+
if (mainButton) { mainButton.click() ; event.preventDefault() } // click if found
90+
}
91+
}
92+
}
9093
},
9194

9295
drag: {
@@ -101,13 +104,14 @@ const chatgpt = {
101104
handlers.drag.offsetX = event.clientX - draggableElemRect.left +21
102105
handlers.drag.offsetY = event.clientY - draggableElemRect.top +12
103106
},
107+
104108
mousemove(event) { // drag modal
105-
if (chatgpt.draggableElem) {
106-
const newX = event.clientX - handlers.drag.offsetX,
107-
newY = event.clientY - handlers.drag.offsetY
108-
Object.assign(chatgpt.draggableElem.style, { left: `${newX}px`, top: `${newY}px` })
109-
}
109+
if (!chatgpt.draggableElem) return
110+
const newX = event.clientX - handlers.drag.offsetX,
111+
newY = event.clientY - handlers.drag.offsetY
112+
Object.assign(chatgpt.draggableElem.style, { left: `${newX}px`, top: `${newY}px` })
110113
},
114+
111115
mouseup() { // remove listeners, reset chatgpt.draggableElem
112116
chatgpt.draggableElem.style.cursor = 'inherit';
113117
['mousemove', 'mouseup'].forEach(event =>

0 commit comments

Comments
 (0)