@@ -32,7 +32,9 @@ const getHiddenRequiredFields = (variation) => {
32
32
33
33
const requiredFields = merge_fields . filter ( ( field ) => field . required ) . map ( ( field ) => field . tag ) ;
34
34
const variationFields = formFields [ variationName ] || [ ] ;
35
- return requiredFields . filter ( ( field ) => ! variationFields . includes ( field ) ) ;
35
+ return requiredFields
36
+ . filter ( ( field ) => ! variationFields . includes ( field ) )
37
+ . map ( ( field ) => formFieldTitles [ field ] || field ) ;
36
38
} ;
37
39
38
40
export const VariationPicker = ( { name, setAttributes, clientId } ) => {
@@ -50,7 +52,7 @@ export const VariationPicker = ({ name, setAttributes, clientId }) => {
50
52
[ name ] ,
51
53
) ;
52
54
const { replaceInnerBlocks } = useDispatch ( blockEditorStore ) ;
53
- const { createNotice } = useDispatch ( 'core/notices' ) ;
55
+ const { createNotice, removeNotice } = useDispatch ( 'core/notices' ) ;
54
56
const blockProps = useBlockProps ( ) ;
55
57
56
58
return (
@@ -69,6 +71,10 @@ export const VariationPicker = ({ name, setAttributes, clientId }) => {
69
71
const missingFields = getMissingFields ( nextVariation ) ;
70
72
const hiddenRequiredFields = getHiddenRequiredFields ( nextVariation ) ;
71
73
74
+ // Remove any existing notices.
75
+ removeNotice ( 'mailchimp-form-template-required-field-notice' ) ;
76
+ removeNotice ( 'mailchimp-form-template-field-notice' ) ;
77
+
72
78
replaceInnerBlocks (
73
79
clientId ,
74
80
createBlocksFromInnerBlocksTemplate ( nextVariation . innerBlocks ) ,
@@ -85,6 +91,10 @@ export const VariationPicker = ({ name, setAttributes, clientId }) => {
85
91
) ,
86
92
hiddenRequiredFields . join ( ', ' ) ,
87
93
) ,
94
+ {
95
+ id : 'mailchimp-form-template-required-field-notice' ,
96
+ isDismissible : true ,
97
+ } ,
88
98
) ;
89
99
}
90
100
0 commit comments