@@ -11,6 +11,11 @@ interface VariantFieldsEvent {
1111 } ;
1212 } ;
1313}
14+ interface RemoveVariantFieldsEvent {
15+ data : {
16+ onlyHighlighted ?: boolean ;
17+ } ;
18+ }
1419
1520interface AudienceEvent {
1621 data : {
@@ -51,18 +56,29 @@ function addVariantFieldClass(
5156 } ) ;
5257}
5358
54- function removeVariantFieldClass ( ) : void {
55- const variantAndBaseFieldElements = document . querySelectorAll (
56- ".visual-builder__disabled-variant-field, .visual-builder__variant-field, .visual-builder__base-field"
57- ) ;
58- variantAndBaseFieldElements . forEach ( ( element ) => {
59- element . classList . remove (
60- "visual-builder__disabled-variant-field" ,
61- "visual-builder__variant-field" ,
62- visualBuilderStyles ( ) [ "visual-builder__variant-field" ] ,
63- "visual-builder__base-field"
59+ function removeVariantFieldClass ( onlyHighlighted : boolean = false ) : void {
60+ if ( onlyHighlighted ) {
61+ const variantElements = document . querySelectorAll (
62+ `.${ visualBuilderStyles ( ) [ "visual-builder__variant-field" ] } `
6463 ) ;
65- } ) ;
64+ variantElements . forEach ( ( element ) => {
65+ element . classList . remove (
66+ visualBuilderStyles ( ) [ "visual-builder__variant-field" ]
67+ ) ;
68+ } ) ;
69+ } else {
70+ const variantAndBaseFieldElements = document . querySelectorAll (
71+ ".visual-builder__disabled-variant-field, .visual-builder__variant-field, .visual-builder__base-field"
72+ ) ;
73+ variantAndBaseFieldElements . forEach ( ( element ) => {
74+ element . classList . remove (
75+ "visual-builder__disabled-variant-field" ,
76+ "visual-builder__variant-field" ,
77+ visualBuilderStyles ( ) [ "visual-builder__variant-field" ] ,
78+ "visual-builder__base-field"
79+ ) ;
80+ } ) ;
81+ }
6682}
6783
6884function setAudienceMode ( mode : boolean ) : void {
@@ -106,8 +122,8 @@ export function useVariantFieldsPostMessageEvent(): void {
106122 ) ;
107123 visualBuilderPostMessage ?. on (
108124 VisualBuilderPostMessageEvents . REMOVE_VARIANT_FIELDS ,
109- ( ) => {
110- removeVariantFieldClass ( ) ;
125+ ( event : RemoveVariantFieldsEvent ) => {
126+ removeVariantFieldClass ( event ?. data ?. onlyHighlighted ) ;
111127 }
112128 ) ;
113129}
0 commit comments