@@ -105,7 +105,6 @@ export const createGitHubChatDrawer = ({
105105 continue
106106 }
107107
108- message . confirmTarget = null
109108 message . appliedTargets = null
110109 }
111110 }
@@ -881,15 +880,15 @@ export const createGitHubChatDrawer = ({
881880 renderMessages ( )
882881 setChatStatus ( 'Idle' , 'neutral' )
883882
884- toggleButton ?. addEventListener ( 'click' , ( ) => {
883+ const onToggleButtonClick = ( ) => {
885884 setOpen ( ! open )
886- } )
885+ }
887886
888- closeButton ?. addEventListener ( 'click' , ( ) => {
887+ const onCloseButtonClick = ( ) => {
889888 setOpen ( false )
890- } )
889+ }
891890
892- clearButton ?. addEventListener ( 'click' , ( ) => {
891+ const onClearButtonClick = ( ) => {
893892 stopPendingRequest ( )
894893 setPendingState ( false )
895894 cancelPendingAssistantBodyUpdate ( )
@@ -898,9 +897,9 @@ export const createGitHubChatDrawer = ({
898897 messages . length = 0
899898 renderMessages ( )
900899 setChatStatus ( 'Chat cleared.' , 'neutral' )
901- } )
900+ }
902901
903- drawer ?. addEventListener ( 'click' , event => {
902+ const onDrawerClick = event => {
904903 const target = event . target
905904 if ( ! ( target instanceof HTMLElement ) ) {
906905 return
@@ -1002,27 +1001,33 @@ export const createGitHubChatDrawer = ({
10021001 renderMessages ( )
10031002 return
10041003 }
1005- } )
1004+ }
10061005
1007- sendButton ?. addEventListener ( 'click' , ( ) => {
1006+ const onSendButtonClick = ( ) => {
10081007 void runChatRequest ( )
1009- } )
1008+ }
10101009
1011- promptInput ?. addEventListener ( 'keydown' , event => {
1010+ const onPromptInputKeydown = event => {
10121011 if ( event . key !== 'Enter' || ( ! event . metaKey && ! event . ctrlKey ) ) {
10131012 return
10141013 }
10151014
10161015 event . preventDefault ( )
10171016 void runChatRequest ( )
1018- } )
1017+ }
10191018
10201019 const onDocumentKeydown = event => {
10211020 if ( event . key === 'Escape' && open ) {
10221021 setOpen ( false )
10231022 }
10241023 }
10251024
1025+ toggleButton ?. addEventListener ( 'click' , onToggleButtonClick )
1026+ closeButton ?. addEventListener ( 'click' , onCloseButtonClick )
1027+ clearButton ?. addEventListener ( 'click' , onClearButtonClick )
1028+ drawer ?. addEventListener ( 'click' , onDrawerClick )
1029+ sendButton ?. addEventListener ( 'click' , onSendButtonClick )
1030+ promptInput ?. addEventListener ( 'keydown' , onPromptInputKeydown )
10261031 document . addEventListener ( 'keydown' , onDocumentKeydown )
10271032
10281033 return {
@@ -1044,6 +1049,12 @@ export const createGitHubChatDrawer = ({
10441049 undoActionsNode . remove ( )
10451050 undoActionsNode = null
10461051 }
1052+ toggleButton ?. removeEventListener ( 'click' , onToggleButtonClick )
1053+ closeButton ?. removeEventListener ( 'click' , onCloseButtonClick )
1054+ clearButton ?. removeEventListener ( 'click' , onClearButtonClick )
1055+ drawer ?. removeEventListener ( 'click' , onDrawerClick )
1056+ sendButton ?. removeEventListener ( 'click' , onSendButtonClick )
1057+ promptInput ?. removeEventListener ( 'keydown' , onPromptInputKeydown )
10471058 document . removeEventListener ( 'keydown' , onDocumentKeydown )
10481059 } ,
10491060 }
0 commit comments