@@ -44,24 +44,28 @@ export function initRepoDiffConversationForm() {
44
44
$ ( document ) . on ( 'submit' , '.conversation-holder form' , async ( e ) => {
45
45
e . preventDefault ( ) ;
46
46
47
- const form = $ ( e . target ) ;
48
- const $textArea = form . find ( 'textarea' ) ;
47
+ const $ form = $ ( e . target ) ;
48
+ const $textArea = $ form. find ( 'textarea' ) ;
49
49
if ( ! validateTextareaNonEmpty ( $textArea ) ) {
50
50
return ;
51
51
}
52
52
53
- const newConversationHolder = $ ( await $ . post ( form . attr ( 'action' ) , form . serialize ( ) ) ) ;
54
- const { path, side, idx} = newConversationHolder . data ( ) ;
53
+ const formDataString = String ( new URLSearchParams ( new FormData ( $form [ 0 ] ) ) ) ;
54
+ const $newConversationHolder = $ ( await $ . post ( $form . attr ( 'action' ) , formDataString ) ) ;
55
+ const { path, side, idx} = $newConversationHolder . data ( ) ;
55
56
56
- initTooltip ( newConversationHolder . find ( '.tooltip' ) ) ;
57
- form . closest ( '.conversation-holder' ) . replaceWith ( newConversationHolder ) ;
58
- if ( form . closest ( 'tr' ) . data ( 'line-type' ) === 'same' ) {
57
+ $newConversationHolder . find ( '.tooltip' ) . each ( function ( ) {
58
+ initTooltip ( this ) ;
59
+ } ) ;
60
+
61
+ $form . closest ( '.conversation-holder' ) . replaceWith ( $newConversationHolder ) ;
62
+ if ( $form . closest ( 'tr' ) . data ( 'line-type' ) === 'same' ) {
59
63
$ ( `[data-path="${ path } "] a.add-code-comment[data-idx="${ idx } "]` ) . addClass ( 'invisible' ) ;
60
64
} else {
61
65
$ ( `[data-path="${ path } "] a.add-code-comment[data-side="${ side } "][data-idx="${ idx } "]` ) . addClass ( 'invisible' ) ;
62
66
}
63
- newConversationHolder . find ( '.dropdown' ) . dropdown ( ) ;
64
- initCompReactionSelector ( newConversationHolder ) ;
67
+ $ newConversationHolder. find ( '.dropdown' ) . dropdown ( ) ;
68
+ initCompReactionSelector ( $ newConversationHolder) ;
65
69
} ) ;
66
70
67
71
0 commit comments