webshims-rails 1.12.7 → 1.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/webshims-rails/version.rb +2 -2
- data/vendor/assets/javascripts/webshims/polyfiller.js +12 -1
- data/vendor/assets/javascripts/webshims/shims/combos/1.js +4 -1
- data/vendor/assets/javascripts/webshims/shims/combos/10.js +7 -4
- data/vendor/assets/javascripts/webshims/shims/combos/11.js +7 -4
- data/vendor/assets/javascripts/webshims/shims/combos/14.js +23 -10
- data/vendor/assets/javascripts/webshims/shims/combos/15.js +7 -2
- data/vendor/assets/javascripts/webshims/shims/combos/16.js +7 -2
- data/vendor/assets/javascripts/webshims/shims/combos/17.js +28 -13
- data/vendor/assets/javascripts/webshims/shims/combos/18.js +28 -13
- data/vendor/assets/javascripts/webshims/shims/combos/19.js +5 -4
- data/vendor/assets/javascripts/webshims/shims/combos/2.js +4 -1
- data/vendor/assets/javascripts/webshims/shims/combos/20.js +5 -4
- data/vendor/assets/javascripts/webshims/shims/combos/21.js +5 -4
- data/vendor/assets/javascripts/webshims/shims/combos/25.js +5 -4
- data/vendor/assets/javascripts/webshims/shims/combos/28.js +24 -10
- data/vendor/assets/javascripts/webshims/shims/combos/29.js +20 -9
- data/vendor/assets/javascripts/webshims/shims/combos/3.js +7 -2
- data/vendor/assets/javascripts/webshims/shims/combos/30.js +7 -2
- data/vendor/assets/javascripts/webshims/shims/combos/31.js +4 -1
- data/vendor/assets/javascripts/webshims/shims/combos/32.js +21 -9
- data/vendor/assets/javascripts/webshims/shims/combos/33.js +21 -9
- data/vendor/assets/javascripts/webshims/shims/combos/4.js +3 -1
- data/vendor/assets/javascripts/webshims/shims/combos/5.js +28 -13
- data/vendor/assets/javascripts/webshims/shims/combos/6.js +28 -13
- data/vendor/assets/javascripts/webshims/shims/combos/7.js +7 -2
- data/vendor/assets/javascripts/webshims/shims/combos/8.js +7 -2
- data/vendor/assets/javascripts/webshims/shims/combos/9.js +7 -4
- data/vendor/assets/javascripts/webshims/shims/form-core.js +4 -1
- data/vendor/assets/javascripts/webshims/shims/form-message.js +3 -1
- data/vendor/assets/javascripts/webshims/shims/form-number-date-api.js +20 -9
- data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +7 -4
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend2.js +7 -1
- data/vendor/assets/javascripts/webshims/shims/form-validation.js +4 -4
- data/vendor/assets/javascripts/webshims/shims/form-validators.js +6 -3
- data/vendor/assets/javascripts/webshims/shims/forms-picker.js +16 -13
- data/vendor/assets/javascripts/webshims/shims/mediaelement-jaris.js +5 -4
- data/vendor/assets/javascripts/webshims/shims/picture.js +570 -0
- data/vendor/assets/javascripts/webshims/shims/promise.js +684 -0
- data/vendor/assets/javascripts/webshims/shims/styles/color-picker.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/forms-ext.css +90 -38
- data/vendor/assets/javascripts/webshims/shims/styles/shim-ext.css +1039 -0
- data/vendor/assets/javascripts/webshims/shims/styles/widget.eot +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/widget.svg +12 -0
- data/vendor/assets/javascripts/webshims/shims/styles/widget.ttf +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/widget.woff +0 -0
- metadata +10 -10
- data/vendor/assets/javascripts/webshims/shims/styles/forms.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_api-forms-ext.scss +0 -219
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_api-shim.scss +0 -115
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_extends.scss +0 -31
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-ext.scss +0 -479
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-picker.scss +0 -488
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim-ext.scss +0 -2
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim.scss +0 -633
@@ -4617,14 +4617,15 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
4617
4617
|
|
4618
4618
|
|
4619
4619
|
if(hasNative && hasFlash && !options.preferFlash){
|
4620
|
-
var
|
4621
|
-
|
4620
|
+
var switchErrors = {
|
4621
|
+
3: 1,
|
4622
|
+
4: 1
|
4622
4623
|
};
|
4623
4624
|
var switchOptions = function(e){
|
4624
4625
|
var media, error, parent;
|
4625
4626
|
if(!options.preferFlash &&
|
4626
4627
|
($(e.target).is('audio, video') || ((parent = e.target.parentNode) && $('source', parent).last()[0] == e.target)) &&
|
4627
|
-
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) &&
|
4628
|
+
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) && switchErrors[error.code]
|
4628
4629
|
){
|
4629
4630
|
|
4630
4631
|
if(!options.preferFlash){
|
@@ -4645,7 +4646,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
4645
4646
|
document.addEventListener('error', switchOptions, true);
|
4646
4647
|
$('audio, video').each(function(){
|
4647
4648
|
var error = $.prop(this, 'error');
|
4648
|
-
if(error &&
|
4649
|
+
if(error && switchErrors[error]){
|
4649
4650
|
switchOptions({target: this});
|
4650
4651
|
return false;
|
4651
4652
|
}
|
@@ -1622,6 +1622,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1622
1622
|
|
1623
1623
|
|
1624
1624
|
webshims.getContentValidationMessage = function(elem, validity, key){
|
1625
|
+
var customRule;
|
1625
1626
|
if(webshims.errorbox && webshims.errorbox.initIvalContentMessage){
|
1626
1627
|
webshims.errorbox.initIvalContentMessage(elem);
|
1627
1628
|
}
|
@@ -1636,7 +1637,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1636
1637
|
}
|
1637
1638
|
if(typeof message == 'object'){
|
1638
1639
|
validity = validity || $.prop(elem, 'validity') || {valid: 1};
|
1639
|
-
if(
|
1640
|
+
if(validity.customError && (customRule = $.data(elem, 'customMismatchedRule')) && message[customRule] && typeof message[customRule] == 'string'){
|
1641
|
+
message = message[customRule];
|
1642
|
+
} else if(!validity.valid){
|
1640
1643
|
$.each(validity, function(name, prop){
|
1641
1644
|
if(prop && name != 'valid' && message[name]){
|
1642
1645
|
message = message[name];
|
@@ -4394,14 +4394,15 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
4394
4394
|
|
4395
4395
|
|
4396
4396
|
if(hasNative && hasFlash && !options.preferFlash){
|
4397
|
-
var
|
4398
|
-
|
4397
|
+
var switchErrors = {
|
4398
|
+
3: 1,
|
4399
|
+
4: 1
|
4399
4400
|
};
|
4400
4401
|
var switchOptions = function(e){
|
4401
4402
|
var media, error, parent;
|
4402
4403
|
if(!options.preferFlash &&
|
4403
4404
|
($(e.target).is('audio, video') || ((parent = e.target.parentNode) && $('source', parent).last()[0] == e.target)) &&
|
4404
|
-
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) &&
|
4405
|
+
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) && switchErrors[error.code]
|
4405
4406
|
){
|
4406
4407
|
|
4407
4408
|
if(!options.preferFlash){
|
@@ -4422,7 +4423,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
4422
4423
|
document.addEventListener('error', switchOptions, true);
|
4423
4424
|
$('audio, video').each(function(){
|
4424
4425
|
var error = $.prop(this, 'error');
|
4425
|
-
if(error &&
|
4426
|
+
if(error && switchErrors[error]){
|
4426
4427
|
switchOptions({target: this});
|
4427
4428
|
return false;
|
4428
4429
|
}
|
@@ -1564,14 +1564,15 @@
|
|
1564
1564
|
|
1565
1565
|
|
1566
1566
|
if(hasNative && hasFlash && !options.preferFlash){
|
1567
|
-
var
|
1568
|
-
|
1567
|
+
var switchErrors = {
|
1568
|
+
3: 1,
|
1569
|
+
4: 1
|
1569
1570
|
};
|
1570
1571
|
var switchOptions = function(e){
|
1571
1572
|
var media, error, parent;
|
1572
1573
|
if(!options.preferFlash &&
|
1573
1574
|
($(e.target).is('audio, video') || ((parent = e.target.parentNode) && $('source', parent).last()[0] == e.target)) &&
|
1574
|
-
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) &&
|
1575
|
+
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) && switchErrors[error.code]
|
1575
1576
|
){
|
1576
1577
|
|
1577
1578
|
if(!options.preferFlash){
|
@@ -1592,7 +1593,7 @@
|
|
1592
1593
|
document.addEventListener('error', switchOptions, true);
|
1593
1594
|
$('audio, video').each(function(){
|
1594
1595
|
var error = $.prop(this, 'error');
|
1595
|
-
if(error &&
|
1596
|
+
if(error && switchErrors[error]){
|
1596
1597
|
switchOptions({target: this});
|
1597
1598
|
return false;
|
1598
1599
|
}
|
@@ -5006,14 +5006,15 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
5006
5006
|
|
5007
5007
|
|
5008
5008
|
if(hasNative && hasFlash && !options.preferFlash){
|
5009
|
-
var
|
5010
|
-
|
5009
|
+
var switchErrors = {
|
5010
|
+
3: 1,
|
5011
|
+
4: 1
|
5011
5012
|
};
|
5012
5013
|
var switchOptions = function(e){
|
5013
5014
|
var media, error, parent;
|
5014
5015
|
if(!options.preferFlash &&
|
5015
5016
|
($(e.target).is('audio, video') || ((parent = e.target.parentNode) && $('source', parent).last()[0] == e.target)) &&
|
5016
|
-
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) &&
|
5017
|
+
(media = $(e.target).closest('audio, video')) && (error = media.prop('error')) && switchErrors[error.code]
|
5017
5018
|
){
|
5018
5019
|
|
5019
5020
|
if(!options.preferFlash){
|
@@ -5034,7 +5035,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
|
|
5034
5035
|
document.addEventListener('error', switchOptions, true);
|
5035
5036
|
$('audio, video').each(function(){
|
5036
5037
|
var error = $.prop(this, 'error');
|
5037
|
-
if(error &&
|
5038
|
+
if(error && switchErrors[error]){
|
5038
5039
|
switchOptions({target: this});
|
5039
5040
|
return false;
|
5040
5041
|
}
|
@@ -1037,7 +1037,9 @@ webshims.defineNodeNamesProperties(['input', 'button'], formSubmitterDescriptors
|
|
1037
1037
|
}
|
1038
1038
|
if(!message){
|
1039
1039
|
message = getMessageFromObj(validityMessages[''][name], elem) || $.prop(elem, 'validationMessage');
|
1040
|
-
|
1040
|
+
if(name != 'customError'){
|
1041
|
+
webshims.info('could not find errormessage for: '+ name +' / '+ $.prop(elem, 'type') +'. in language: '+webshims.activeLang());
|
1042
|
+
}
|
1041
1043
|
}
|
1042
1044
|
message = webshims.replaceValidationplaceholder(elem, message, name);
|
1043
1045
|
|
@@ -1302,7 +1304,7 @@ webshims.defineNodeNamesProperties(['input', 'button'], formSubmitterDescriptors
|
|
1302
1304
|
var stepDescriptor = webshims.defineNodeNameProperty('input', name, {
|
1303
1305
|
prop: {
|
1304
1306
|
value: function(factor){
|
1305
|
-
var step, val,
|
1307
|
+
var step, val, valModStep, alignValue, cache, base, attrVal;
|
1306
1308
|
var type = getType(this);
|
1307
1309
|
if(typeModels[type] && typeModels[type].asNumber){
|
1308
1310
|
cache = {type: type};
|
@@ -1312,12 +1314,9 @@ webshims.defineNodeNamesProperties(['input', 'button'], formSubmitterDescriptors
|
|
1312
1314
|
}
|
1313
1315
|
factor *= stepFactor;
|
1314
1316
|
|
1315
|
-
|
1317
|
+
|
1316
1318
|
|
1317
|
-
|
1318
|
-
webshims.info("valueAsNumber is NaN can't apply stepUp/stepDown ");
|
1319
|
-
throw('invalid state error');
|
1320
|
-
}
|
1319
|
+
|
1321
1320
|
|
1322
1321
|
step = webshims.getStep(this, type);
|
1323
1322
|
|
@@ -1328,7 +1327,21 @@ webshims.defineNodeNamesProperties(['input', 'button'], formSubmitterDescriptors
|
|
1328
1327
|
|
1329
1328
|
webshims.addMinMaxNumberToCache('min', $(this), cache);
|
1330
1329
|
webshims.addMinMaxNumberToCache('max', $(this), cache);
|
1331
|
-
|
1330
|
+
|
1331
|
+
val = $.prop(this, 'valueAsNumber');
|
1332
|
+
|
1333
|
+
if(factor > 0 && !isNaN(cache.minAsNumber) && (isNaN(val) || cache.minAsNumber > val)){
|
1334
|
+
$.prop(this, 'valueAsNumber', cache.minAsNumber);
|
1335
|
+
return;
|
1336
|
+
} else if(factor < 0 && !isNaN(cache.maxAsNumber) && (isNaN(val) || cache.maxAsNumber < val)){
|
1337
|
+
$.prop(this, 'valueAsNumber', cache.maxAsNumber);
|
1338
|
+
return;
|
1339
|
+
}
|
1340
|
+
|
1341
|
+
if(isNaN(val)){
|
1342
|
+
val = 0;
|
1343
|
+
}
|
1344
|
+
|
1332
1345
|
base = cache.minAsNumber;
|
1333
1346
|
|
1334
1347
|
if(isNaN(base) && (attrVal = $.prop(this, 'defaultValue'))){
|
@@ -1353,7 +1366,7 @@ webshims.defineNodeNamesProperties(['input', 'button'], formSubmitterDescriptors
|
|
1353
1366
|
|
1354
1367
|
if( (!isNaN(cache.maxAsNumber) && val > cache.maxAsNumber) || (!isNaN(cache.minAsNumber) && val < cache.minAsNumber) ){
|
1355
1368
|
webshims.info("max/min overflow can't apply stepUp/stepDown");
|
1356
|
-
|
1369
|
+
return;
|
1357
1370
|
}
|
1358
1371
|
|
1359
1372
|
$.prop(this, 'valueAsNumber', val);
|
@@ -1707,7 +1720,8 @@ webshims.defineNodeNamesProperties(['input', 'button'], formSubmitterDescriptors
|
|
1707
1720
|
});
|
1708
1721
|
}
|
1709
1722
|
|
1710
|
-
})
|
1723
|
+
});
|
1724
|
+
;webshims.register('form-datalist', function($, webshims, window, document, undefined, options){
|
1711
1725
|
"use strict";
|
1712
1726
|
var lazyLoad = function(name){
|
1713
1727
|
if(!name || typeof name != 'string'){
|
@@ -409,7 +409,7 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
|
|
409
409
|
var stepDescriptor = webshims.defineNodeNameProperty('input', name, {
|
410
410
|
prop: {
|
411
411
|
value: function(factor){
|
412
|
-
var step, val,
|
412
|
+
var step, val, valModStep, alignValue, cache, base, attrVal;
|
413
413
|
var type = getType(this);
|
414
414
|
if(typeModels[type] && typeModels[type].asNumber){
|
415
415
|
cache = {type: type};
|
@@ -419,12 +419,9 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
|
|
419
419
|
}
|
420
420
|
factor *= stepFactor;
|
421
421
|
|
422
|
-
|
422
|
+
|
423
423
|
|
424
|
-
|
425
|
-
webshims.info("valueAsNumber is NaN can't apply stepUp/stepDown ");
|
426
|
-
throw('invalid state error');
|
427
|
-
}
|
424
|
+
|
428
425
|
|
429
426
|
step = webshims.getStep(this, type);
|
430
427
|
|
@@ -435,7 +432,21 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
|
|
435
432
|
|
436
433
|
webshims.addMinMaxNumberToCache('min', $(this), cache);
|
437
434
|
webshims.addMinMaxNumberToCache('max', $(this), cache);
|
438
|
-
|
435
|
+
|
436
|
+
val = $.prop(this, 'valueAsNumber');
|
437
|
+
|
438
|
+
if(factor > 0 && !isNaN(cache.minAsNumber) && (isNaN(val) || cache.minAsNumber > val)){
|
439
|
+
$.prop(this, 'valueAsNumber', cache.minAsNumber);
|
440
|
+
return;
|
441
|
+
} else if(factor < 0 && !isNaN(cache.maxAsNumber) && (isNaN(val) || cache.maxAsNumber < val)){
|
442
|
+
$.prop(this, 'valueAsNumber', cache.maxAsNumber);
|
443
|
+
return;
|
444
|
+
}
|
445
|
+
|
446
|
+
if(isNaN(val)){
|
447
|
+
val = 0;
|
448
|
+
}
|
449
|
+
|
439
450
|
base = cache.minAsNumber;
|
440
451
|
|
441
452
|
if(isNaN(base) && (attrVal = $.prop(this, 'defaultValue'))){
|
@@ -460,7 +471,7 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
|
|
460
471
|
|
461
472
|
if( (!isNaN(cache.maxAsNumber) && val > cache.maxAsNumber) || (!isNaN(cache.minAsNumber) && val < cache.minAsNumber) ){
|
462
473
|
webshims.info("max/min overflow can't apply stepUp/stepDown");
|
463
|
-
|
474
|
+
return;
|
464
475
|
}
|
465
476
|
|
466
477
|
$.prop(this, 'valueAsNumber', val);
|
@@ -814,4 +825,4 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
|
|
814
825
|
});
|
815
826
|
}
|
816
827
|
|
817
|
-
});
|
828
|
+
});
|
@@ -1399,6 +1399,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1399
1399
|
|
1400
1400
|
|
1401
1401
|
webshims.getContentValidationMessage = function(elem, validity, key){
|
1402
|
+
var customRule;
|
1402
1403
|
if(webshims.errorbox && webshims.errorbox.initIvalContentMessage){
|
1403
1404
|
webshims.errorbox.initIvalContentMessage(elem);
|
1404
1405
|
}
|
@@ -1413,7 +1414,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1413
1414
|
}
|
1414
1415
|
if(typeof message == 'object'){
|
1415
1416
|
validity = validity || $.prop(elem, 'validity') || {valid: 1};
|
1416
|
-
if(
|
1417
|
+
if(validity.customError && (customRule = $.data(elem, 'customMismatchedRule')) && message[customRule] && typeof message[customRule] == 'string'){
|
1418
|
+
message = message[customRule];
|
1419
|
+
} else if(!validity.valid){
|
1417
1420
|
$.each(validity, function(name, prop){
|
1418
1421
|
if(prop && name != 'valid' && message[name]){
|
1419
1422
|
message = message[name];
|
@@ -1715,7 +1718,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1715
1718
|
}
|
1716
1719
|
if(!message){
|
1717
1720
|
message = getMessageFromObj(validityMessages[''][name], elem) || $.prop(elem, 'validationMessage');
|
1718
|
-
|
1721
|
+
if(name != 'customError'){
|
1722
|
+
webshims.info('could not find errormessage for: '+ name +' / '+ $.prop(elem, 'type') +'. in language: '+webshims.activeLang());
|
1723
|
+
}
|
1719
1724
|
}
|
1720
1725
|
message = webshims.replaceValidationplaceholder(elem, message, name);
|
1721
1726
|
|
@@ -1399,6 +1399,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1399
1399
|
|
1400
1400
|
|
1401
1401
|
webshims.getContentValidationMessage = function(elem, validity, key){
|
1402
|
+
var customRule;
|
1402
1403
|
if(webshims.errorbox && webshims.errorbox.initIvalContentMessage){
|
1403
1404
|
webshims.errorbox.initIvalContentMessage(elem);
|
1404
1405
|
}
|
@@ -1413,7 +1414,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1413
1414
|
}
|
1414
1415
|
if(typeof message == 'object'){
|
1415
1416
|
validity = validity || $.prop(elem, 'validity') || {valid: 1};
|
1416
|
-
if(
|
1417
|
+
if(validity.customError && (customRule = $.data(elem, 'customMismatchedRule')) && message[customRule] && typeof message[customRule] == 'string'){
|
1418
|
+
message = message[customRule];
|
1419
|
+
} else if(!validity.valid){
|
1417
1420
|
$.each(validity, function(name, prop){
|
1418
1421
|
if(prop && name != 'valid' && message[name]){
|
1419
1422
|
message = message[name];
|
@@ -1715,7 +1718,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1715
1718
|
}
|
1716
1719
|
if(!message){
|
1717
1720
|
message = getMessageFromObj(validityMessages[''][name], elem) || $.prop(elem, 'validationMessage');
|
1718
|
-
|
1721
|
+
if(name != 'customError'){
|
1722
|
+
webshims.info('could not find errormessage for: '+ name +' / '+ $.prop(elem, 'type') +'. in language: '+webshims.activeLang());
|
1723
|
+
}
|
1719
1724
|
}
|
1720
1725
|
message = webshims.replaceValidationplaceholder(elem, message, name);
|
1721
1726
|
|
@@ -1399,6 +1399,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1399
1399
|
|
1400
1400
|
|
1401
1401
|
webshims.getContentValidationMessage = function(elem, validity, key){
|
1402
|
+
var customRule;
|
1402
1403
|
if(webshims.errorbox && webshims.errorbox.initIvalContentMessage){
|
1403
1404
|
webshims.errorbox.initIvalContentMessage(elem);
|
1404
1405
|
}
|
@@ -1413,7 +1414,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1413
1414
|
}
|
1414
1415
|
if(typeof message == 'object'){
|
1415
1416
|
validity = validity || $.prop(elem, 'validity') || {valid: 1};
|
1416
|
-
if(
|
1417
|
+
if(validity.customError && (customRule = $.data(elem, 'customMismatchedRule')) && message[customRule] && typeof message[customRule] == 'string'){
|
1418
|
+
message = message[customRule];
|
1419
|
+
} else if(!validity.valid){
|
1417
1420
|
$.each(validity, function(name, prop){
|
1418
1421
|
if(prop && name != 'valid' && message[name]){
|
1419
1422
|
message = message[name];
|
@@ -1647,7 +1647,7 @@ webshims.isReady('es5', true);
|
|
1647
1647
|
var stepDescriptor = webshims.defineNodeNameProperty('input', name, {
|
1648
1648
|
prop: {
|
1649
1649
|
value: function(factor){
|
1650
|
-
var step, val,
|
1650
|
+
var step, val, valModStep, alignValue, cache, base, attrVal;
|
1651
1651
|
var type = getType(this);
|
1652
1652
|
if(typeModels[type] && typeModels[type].asNumber){
|
1653
1653
|
cache = {type: type};
|
@@ -1657,12 +1657,9 @@ webshims.isReady('es5', true);
|
|
1657
1657
|
}
|
1658
1658
|
factor *= stepFactor;
|
1659
1659
|
|
1660
|
-
|
1660
|
+
|
1661
1661
|
|
1662
|
-
|
1663
|
-
webshims.info("valueAsNumber is NaN can't apply stepUp/stepDown ");
|
1664
|
-
throw('invalid state error');
|
1665
|
-
}
|
1662
|
+
|
1666
1663
|
|
1667
1664
|
step = webshims.getStep(this, type);
|
1668
1665
|
|
@@ -1673,7 +1670,21 @@ webshims.isReady('es5', true);
|
|
1673
1670
|
|
1674
1671
|
webshims.addMinMaxNumberToCache('min', $(this), cache);
|
1675
1672
|
webshims.addMinMaxNumberToCache('max', $(this), cache);
|
1676
|
-
|
1673
|
+
|
1674
|
+
val = $.prop(this, 'valueAsNumber');
|
1675
|
+
|
1676
|
+
if(factor > 0 && !isNaN(cache.minAsNumber) && (isNaN(val) || cache.minAsNumber > val)){
|
1677
|
+
$.prop(this, 'valueAsNumber', cache.minAsNumber);
|
1678
|
+
return;
|
1679
|
+
} else if(factor < 0 && !isNaN(cache.maxAsNumber) && (isNaN(val) || cache.maxAsNumber < val)){
|
1680
|
+
$.prop(this, 'valueAsNumber', cache.maxAsNumber);
|
1681
|
+
return;
|
1682
|
+
}
|
1683
|
+
|
1684
|
+
if(isNaN(val)){
|
1685
|
+
val = 0;
|
1686
|
+
}
|
1687
|
+
|
1677
1688
|
base = cache.minAsNumber;
|
1678
1689
|
|
1679
1690
|
if(isNaN(base) && (attrVal = $.prop(this, 'defaultValue'))){
|
@@ -1698,7 +1709,7 @@ webshims.isReady('es5', true);
|
|
1698
1709
|
|
1699
1710
|
if( (!isNaN(cache.maxAsNumber) && val > cache.maxAsNumber) || (!isNaN(cache.minAsNumber) && val < cache.minAsNumber) ){
|
1700
1711
|
webshims.info("max/min overflow can't apply stepUp/stepDown");
|
1701
|
-
|
1712
|
+
return;
|
1702
1713
|
}
|
1703
1714
|
|
1704
1715
|
$.prop(this, 'valueAsNumber', val);
|
@@ -2052,7 +2063,8 @@ webshims.isReady('es5', true);
|
|
2052
2063
|
});
|
2053
2064
|
}
|
2054
2065
|
|
2055
|
-
})
|
2066
|
+
});
|
2067
|
+
;webshims.register('form-datalist', function($, webshims, window, document, undefined, options){
|
2056
2068
|
"use strict";
|
2057
2069
|
var lazyLoad = function(name){
|
2058
2070
|
if(!name || typeof name != 'string'){
|
@@ -198,7 +198,7 @@ webshims.register('form-number-date-api', function($, webshims, window, document
|
|
198
198
|
var stepDescriptor = webshims.defineNodeNameProperty('input', name, {
|
199
199
|
prop: {
|
200
200
|
value: function(factor){
|
201
|
-
var step, val,
|
201
|
+
var step, val, valModStep, alignValue, cache, base, attrVal;
|
202
202
|
var type = getType(this);
|
203
203
|
if(typeModels[type] && typeModels[type].asNumber){
|
204
204
|
cache = {type: type};
|
@@ -208,12 +208,9 @@ webshims.register('form-number-date-api', function($, webshims, window, document
|
|
208
208
|
}
|
209
209
|
factor *= stepFactor;
|
210
210
|
|
211
|
-
|
211
|
+
|
212
212
|
|
213
|
-
|
214
|
-
webshims.info("valueAsNumber is NaN can't apply stepUp/stepDown ");
|
215
|
-
throw('invalid state error');
|
216
|
-
}
|
213
|
+
|
217
214
|
|
218
215
|
step = webshims.getStep(this, type);
|
219
216
|
|
@@ -224,7 +221,21 @@ webshims.register('form-number-date-api', function($, webshims, window, document
|
|
224
221
|
|
225
222
|
webshims.addMinMaxNumberToCache('min', $(this), cache);
|
226
223
|
webshims.addMinMaxNumberToCache('max', $(this), cache);
|
227
|
-
|
224
|
+
|
225
|
+
val = $.prop(this, 'valueAsNumber');
|
226
|
+
|
227
|
+
if(factor > 0 && !isNaN(cache.minAsNumber) && (isNaN(val) || cache.minAsNumber > val)){
|
228
|
+
$.prop(this, 'valueAsNumber', cache.minAsNumber);
|
229
|
+
return;
|
230
|
+
} else if(factor < 0 && !isNaN(cache.maxAsNumber) && (isNaN(val) || cache.maxAsNumber < val)){
|
231
|
+
$.prop(this, 'valueAsNumber', cache.maxAsNumber);
|
232
|
+
return;
|
233
|
+
}
|
234
|
+
|
235
|
+
if(isNaN(val)){
|
236
|
+
val = 0;
|
237
|
+
}
|
238
|
+
|
228
239
|
base = cache.minAsNumber;
|
229
240
|
|
230
241
|
if(isNaN(base) && (attrVal = $.prop(this, 'defaultValue'))){
|
@@ -249,7 +260,7 @@ webshims.register('form-number-date-api', function($, webshims, window, document
|
|
249
260
|
|
250
261
|
if( (!isNaN(cache.maxAsNumber) && val > cache.maxAsNumber) || (!isNaN(cache.minAsNumber) && val < cache.minAsNumber) ){
|
251
262
|
webshims.info("max/min overflow can't apply stepUp/stepDown");
|
252
|
-
|
263
|
+
return;
|
253
264
|
}
|
254
265
|
|
255
266
|
$.prop(this, 'valueAsNumber', val);
|
@@ -603,7 +614,8 @@ webshims.register('form-number-date-api', function($, webshims, window, document
|
|
603
614
|
});
|
604
615
|
}
|
605
616
|
|
606
|
-
})
|
617
|
+
});
|
618
|
+
;webshims.register('form-datalist', function($, webshims, window, document, undefined, options){
|
607
619
|
"use strict";
|
608
620
|
var lazyLoad = function(name){
|
609
621
|
if(!name || typeof name != 'string'){
|