Skip to content

Commit c8f740f

Browse files
authored
gcoai-stream-to-paragraph-field.js: Updated with support for generating a first response when exiting the prompt field and populating as RTE-enabled Paragraph fields.
1 parent fcd66b1 commit c8f740f

File tree

1 file changed

+24
-7
lines changed

1 file changed

+24
-7
lines changed

gc-openai/gcoai-stream-to-paragraph-field.js

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,38 @@
1515
*
1616
* 2. Update the variables to match your own field IDs.
1717
*/
18-
var streamFieldId = 1;
19-
var promptFieldId = 2;
20-
var responseFieldId = 3;
18+
var streamFieldId = 3;
19+
var promptFieldId = 1;
20+
var responseFieldId = 4;
21+
var appendButtonFieldId = responseFieldId;
2122

2223
var $streamFieldInput = $( `#input_GFFORMID_${streamFieldId}` );
2324
var $streamButton = $streamFieldInput.parents( '.gfield' ).find( '.gcoai-trigger' );
2425

2526
$streamFieldInput.on( 'change', function() {
26-
$( `#input_GFFORMID_${responseFieldId}` ).val( this.value );
27+
$input = $( `#input_GFFORMID_${responseFieldId}` );
28+
$input.val( this.value );
29+
if (window.tinyMCE) {
30+
var tiny = tinyMCE.get( $input.attr( 'id' ) );
31+
if (tiny) {
32+
tiny.setContent( this.value );
33+
}
34+
}
2735
} );
2836

29-
$streamButton
37+
let $newButton = $streamButton
3038
.clone()
3139
.attr( 'style', 'margin-top: var(--gf-label-space-primary, 8px);' )
3240
.on( 'click', function() {
33-
$streamButton.trigger( 'click' )
41+
$streamButton.trigger( 'click' );
3442
} )
35-
.insertAfter( $( `#input_GFFORMID_${promptFieldId}` ) )
43+
.insertAfter( $( `#input_GFFORMID_${appendButtonFieldId}` ) );
44+
45+
$wpEditor = $newButton.parents( '.wp-editor-container' );
46+
if ( $wpEditor.length ) {
47+
$newButton.insertAfter( $wpEditor );
48+
}
49+
50+
$( `#input_GFFORMID_${promptFieldId}` ).on( 'blur', function() {
51+
$streamButton.trigger( 'click' );
52+
} );

0 commit comments

Comments
 (0)