@@ -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 ( / ^ (?: | 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+ }
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