@@ -70,23 +70,26 @@ const chatgpt = {
70
70
71
71
// Define event handlers
72
72
const handlers = {
73
+
73
74
dismiss : {
74
75
click ( event ) {
75
76
if ( event . target == event . currentTarget || event . target . closest ( '[class*="-close-btn]' ) )
76
77
dismissAlert ( )
77
78
} ,
79
+
78
80
key ( event ) {
79
- if ( / ^ (?: | S p a c e | E n t e r | R e t u r n | E s c ) / . 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 ( / ^ (?: | S p a c e | E n t e r | R e t u r n ) / . 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 ( ! / ^ (?: | S p a c e | E n t e r | R e t u r n | E s c ) / . 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
+ }
90
93
} ,
91
94
92
95
drag : {
@@ -101,13 +104,14 @@ const chatgpt = {
101
104
handlers . drag . offsetX = event . clientX - draggableElemRect . left + 21
102
105
handlers . drag . offsetY = event . clientY - draggableElemRect . top + 12
103
106
} ,
107
+
104
108
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` } )
110
113
} ,
114
+
111
115
mouseup ( ) { // remove listeners, reset chatgpt.draggableElem
112
116
chatgpt . draggableElem . style . cursor = 'inherit' ;
113
117
[ 'mousemove' , 'mouseup' ] . forEach ( event =>
0 commit comments