20
20
import com .vaadin .flow .component .datepicker .DatePicker .DatePickerI18n ;
21
21
import com .vaadin .flow .component .html .Div ;
22
22
import com .vaadin .flow .component .html .Span ;
23
+ import com .vaadin .flow .component .textfield .TextArea ;
23
24
import com .vaadin .flow .component .textfield .TextField ;
24
25
import com .vaadin .flow .data .value .ValueChangeMode ;
25
26
import com .vaadin .flow .router .Route ;
@@ -41,6 +42,7 @@ public InputMaskDemoView() {
41
42
createBasicInputMaskOnDatePickerDemo ();
42
43
createNumberInputMaskOnTextFieldDemo ();
43
44
createRegExpInputMaskOnTextFieldDemo ();
45
+ createBasicInputMaskOnTextAreaDemo ();
44
46
}
45
47
46
48
private void createNumberInputMaskOnTextFieldDemo () {
@@ -138,4 +140,29 @@ private void createBasicInputMaskOnDatePickerDemo() {
138
140
add (createCard ("Simple input mask on date picker" , dateField , message ));
139
141
}
140
142
143
+ private void createBasicInputMaskOnTextAreaDemo () {
144
+ Div message = createMessageDiv ("simple-input-mask-on-text-area-demo-message" );
145
+ Span maskedValueSpan = new Span ();
146
+ Span unmaskedValueSpan = new Span ();
147
+
148
+
149
+ TextArea phoneField = new TextArea ("Phone" );
150
+ phoneField .setPlaceholder (PHONE_MASK );
151
+ InputMask phoneFieldMask = new InputMask (PHONE_MASK );
152
+ phoneFieldMask .extend (phoneField );
153
+
154
+ phoneField .addValueChangeListener (ev -> {
155
+ phoneFieldMask .getMaskedValue (masked -> {
156
+ maskedValueSpan .setText ("Masked value: " + masked );
157
+ });
158
+ phoneFieldMask .getUnmaskedValue (unmasked -> {
159
+ unmaskedValueSpan .setText (" - Unmasked value: " + unmasked );
160
+ });
161
+ message .add (maskedValueSpan , unmaskedValueSpan );
162
+ });
163
+
164
+ phoneField .setId ("simple-input-mask-on-text-area" );
165
+
166
+ add (createCard ("Simple input mask on text area" , phoneField , message ));
167
+ }
141
168
}
0 commit comments