1
1
/*!
2
2
* angular-ui-mask
3
3
* https://github.com/angular-ui/ui-mask
4
- * Version: 1.8.1 - 2016-02-23T07:32:45.020Z
4
+ * Version: 1.8.2 - 2016-03-17T13:37:16.675Z
5
5
* License: MIT
6
6
*/
7
7
@@ -20,7 +20,8 @@ angular.module('ui.mask', [])
20
20
} ,
21
21
clearOnBlur : true ,
22
22
clearOnBlurPlaceholder : false ,
23
- eventsToHandle : [ 'input' , 'keyup' , 'click' , 'focus' ]
23
+ eventsToHandle : [ 'input' , 'keyup' , 'click' , 'focus' ] ,
24
+ addDefaultPlaceholder : true
24
25
} )
25
26
. provider ( 'uiMask.Config' , function ( ) {
26
27
var options = { } ;
@@ -34,6 +35,9 @@ angular.module('ui.mask', [])
34
35
this . eventsToHandle = function ( eventsToHandle ) {
35
36
return options . eventsToHandle = eventsToHandle ;
36
37
} ;
38
+ this . addDefaultPlaceholder = function ( addDefaultPlaceholder ) {
39
+ return options . addDefaultPlaceholder = addDefaultPlaceholder ;
40
+ } ;
37
41
this . $get = [ 'uiMaskConfig' , function ( uiMaskConfig ) {
38
42
var tempOptions = uiMaskConfig ;
39
43
for ( var prop in options )
@@ -219,7 +223,7 @@ angular.module('ui.mask', [])
219
223
if ( iAttrs . maxlength ) { // Double maxlength to allow pasting new val at end of mask
220
224
iElement . attr ( 'maxlength' , maskCaretMap [ maskCaretMap . length - 1 ] * 2 ) ;
221
225
}
222
- if ( ! originalPlaceholder ) {
226
+ if ( ! originalPlaceholder && linkOptions . addDefaultPlaceholder ) {
223
227
iElement . attr ( 'placeholder' , maskPlaceholder ) ;
224
228
}
225
229
var viewValue = controller . $modelValue ;
@@ -420,8 +424,10 @@ angular.module('ui.mask', [])
420
424
valueMasked = '' ;
421
425
iElement . val ( '' ) ;
422
426
scope . $apply ( function ( ) {
423
- //don't call $setViewValue to avoid changing $pristine state.
424
- controller . $viewValue = '' ;
427
+ //only $setViewValue when not $pristine to avoid changing $pristine state.
428
+ if ( ! controller . $pristine ) {
429
+ controller . $setViewValue ( '' ) ;
430
+ }
425
431
} ) ;
426
432
}
427
433
}
0 commit comments