webshims-rails 1.13.0 → 1.14.1
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/extras/modernizr-custom.js +0 -0
- data/vendor/assets/javascripts/webshims/polyfiller.js +45 -26
- data/vendor/assets/javascripts/webshims/shims/FlashCanvas/canvas2png.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvas/flashcanvas.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvas/flashcanvas.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvas/proxy.php +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvas/save.php +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/canvas2png.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/flash10canvas.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/flash9canvas.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/flashcanvas.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/proxy.php +0 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/save.php +0 -0
- data/vendor/assets/javascripts/webshims/shims/color-picker.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/1.js +33 -2
- data/vendor/assets/javascripts/webshims/shims/combos/10.js +82 -29
- data/vendor/assets/javascripts/webshims/shims/combos/11.js +50 -27
- data/vendor/assets/javascripts/webshims/shims/combos/12.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/13.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/14.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/combos/15.js +115 -43
- data/vendor/assets/javascripts/webshims/shims/combos/16.js +115 -43
- data/vendor/assets/javascripts/webshims/shims/combos/17.js +50 -27
- data/vendor/assets/javascripts/webshims/shims/combos/18.js +50 -27
- data/vendor/assets/javascripts/webshims/shims/combos/19.js +33 -3
- data/vendor/assets/javascripts/webshims/shims/combos/2.js +65 -4
- data/vendor/assets/javascripts/webshims/shims/combos/20.js +33 -3
- data/vendor/assets/javascripts/webshims/shims/combos/21.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/combos/22.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/23.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/25.js +492 -2580
- data/vendor/assets/javascripts/webshims/shims/combos/26.js +8314 -1432
- data/vendor/assets/javascripts/webshims/shims/combos/27.js +1642 -556
- data/vendor/assets/javascripts/webshims/shims/combos/28.js +50 -39
- data/vendor/assets/javascripts/webshims/shims/combos/29.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/3.js +66 -5
- data/vendor/assets/javascripts/webshims/shims/combos/30.js +66 -5
- data/vendor/assets/javascripts/webshims/shims/combos/31.js +65 -4
- data/vendor/assets/javascripts/webshims/shims/combos/32.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/33.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/34.js +32 -2
- data/vendor/assets/javascripts/webshims/shims/combos/4.js +33 -3
- data/vendor/assets/javascripts/webshims/shims/combos/5.js +50 -27
- data/vendor/assets/javascripts/webshims/shims/combos/6.js +50 -27
- data/vendor/assets/javascripts/webshims/shims/combos/7.js +66 -5
- data/vendor/assets/javascripts/webshims/shims/combos/8.js +66 -5
- data/vendor/assets/javascripts/webshims/shims/combos/9.js +82 -29
- data/vendor/assets/javascripts/webshims/shims/combos/97.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/combos/98.js +1 -2
- data/vendor/assets/javascripts/webshims/shims/combos/99.js +1 -2
- data/vendor/assets/javascripts/webshims/shims/combos/comboinfo.json +1 -0
- data/vendor/assets/javascripts/webshims/shims/details.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/dom-extend.js +32 -2
- data/vendor/assets/javascripts/webshims/shims/es5.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/excanvas.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/filereader.js +441 -362
- data/vendor/assets/javascripts/webshims/shims/form-combat.js +19 -7
- data/vendor/assets/javascripts/webshims/shims/form-core.js +33 -2
- data/vendor/assets/javascripts/webshims/shims/form-datalist-lazy.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/form-datalist.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/form-fixrangechange.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/form-message.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/form-native-extend.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/form-number-date-api.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +50 -27
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend.js +49 -38
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend2.js +45 -14
- data/vendor/assets/javascripts/webshims/shims/form-validation.js +105 -7
- data/vendor/assets/javascripts/webshims/shims/form-validators.js +212 -134
- data/vendor/assets/javascripts/webshims/shims/forms-picker.js +15 -12
- data/vendor/assets/javascripts/webshims/shims/geolocation.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-ar.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-ch-CN.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-cs.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-de.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-el.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-en.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-es.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-fr.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-he.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-hi.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-hu.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-it.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-ja.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-lt.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-nl.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-pl.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-pt-BR.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-pt-PT.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-pt.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-ru.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-sv.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-zh-CN.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/jajax.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/jme/b.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/jme/c.js +1 -2
- data/vendor/assets/javascripts/webshims/shims/jme/controls.css +0 -0
- data/vendor/assets/javascripts/webshims/shims/jme/controls.scss +0 -0
- data/vendor/assets/javascripts/webshims/shims/jme/mediacontrols-lazy.js +3 -3
- data/vendor/assets/javascripts/webshims/shims/jme/p.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/ChangeLog.txt +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/ReadMe.txt +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/AlphaBar.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/Bars.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/Maps.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/NoColor.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/bar-opacity.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/map-opacity.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/mappoint.gif +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/picker.gif +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/preview-opacity.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/images/rangearrows.gif +0 -0
- data/vendor/assets/javascripts/webshims/shims/jpicker/jpicker.css +0 -0
- data/vendor/assets/javascripts/webshims/shims/mediaelement-core.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/mediaelement-jaris.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/mediaelement-native-fix.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/mediaelement-yt.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/moxie/flash/Moxie.cdn.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/moxie/js/moxie.js +7994 -0
- data/vendor/assets/javascripts/webshims/shims/moxie/silverlight/Moxie.cdn.xap +0 -0
- data/vendor/assets/javascripts/webshims/shims/picture.js +50 -43
- data/vendor/assets/javascripts/webshims/shims/plugins/jquery.ui.position.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/promise.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/range-ui.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/sizzle.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/color-picker.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/config.rb +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/forms-ext.css +7 -2
- data/vendor/assets/javascripts/webshims/shims/styles/forms-picker.css +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/progress.gif +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/progress.png +0 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_api-forms-ext.scss +219 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_api-shim.scss +115 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_extends.scss +31 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-ext.scss +583 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-picker.scss +488 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim-ext.scss +2 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim.scss +736 -0
- data/vendor/assets/javascripts/webshims/shims/styles/shim-ext.css +105 -21
- data/vendor/assets/javascripts/webshims/shims/styles/shim.css +91 -19
- data/vendor/assets/javascripts/webshims/shims/swf/JarisFLVPlayer.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/swf/filereader.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/swfmini-embed.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/swfmini.js +0 -0
- data/vendor/assets/javascripts/webshims/shims/track-ui.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/track.js +0 -0
- metadata +13 -2
@@ -402,8 +402,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
402
402
|
});
|
403
403
|
return this;
|
404
404
|
};
|
405
|
-
|
406
|
-
var dataID = '
|
405
|
+
var idCount = 0;
|
406
|
+
var dataID = '_webshims'+ (Math.round(Math.random() * 1000));
|
407
407
|
var elementData = function(elem, key, val){
|
408
408
|
elem = elem.jquery ? elem[0] : elem;
|
409
409
|
if(!elem){return val || {};}
|
@@ -434,6 +434,35 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
434
434
|
return this.pushStack(elems);
|
435
435
|
};
|
436
436
|
});
|
437
|
+
|
438
|
+
function clone(elem, dataAndEvents, uniqueIds){
|
439
|
+
var cloned = $.clone( elem, dataAndEvents, false );
|
440
|
+
$(cloned.querySelectorAll('.'+webshims.shadowClass)).detach();
|
441
|
+
if(uniqueIds){
|
442
|
+
idCount++;
|
443
|
+
$(cloned.querySelectorAll('[id]')).prop('id', function(i, id){
|
444
|
+
return id +idCount;
|
445
|
+
});
|
446
|
+
} else {
|
447
|
+
$(cloned.querySelectorAll('audio[id^="ID-"], video[id^="ID-"], label[id^="ID-"]')).removeAttr('id');
|
448
|
+
}
|
449
|
+
return cloned;
|
450
|
+
}
|
451
|
+
|
452
|
+
$.fn.clonePolyfill = function(dataAndEvents, uniqueIds){
|
453
|
+
dataAndEvents = dataAndEvents || false;
|
454
|
+
return this
|
455
|
+
.map(function() {
|
456
|
+
var cloned = clone( this, dataAndEvents, uniqueIds );
|
457
|
+
setTimeout(function(){
|
458
|
+
if($.contains(document.body, cloned)){
|
459
|
+
$(cloned).updatePolyfill();
|
460
|
+
}
|
461
|
+
});
|
462
|
+
return cloned;
|
463
|
+
})
|
464
|
+
;
|
465
|
+
};
|
437
466
|
|
438
467
|
//add support for $('video').trigger('play') in case extendNative is set to false
|
439
468
|
if(!webshims.cfg.extendNative && !webshims.cfg.noTriggerOverride){
|
@@ -745,6 +774,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
745
774
|
return id;
|
746
775
|
};
|
747
776
|
})(),
|
777
|
+
shadowClass: 'wsshadow-'+(Date.now()),
|
748
778
|
implement: function(elem, type){
|
749
779
|
var data = elementData(elem, 'implemented') || elementData(elem, 'implemented', {});
|
750
780
|
if(data[type]){
|
@@ -1556,6 +1586,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1556
1586
|
addModule('form-validation', $.extend({d: ['form-message']}, formExtras));
|
1557
1587
|
|
1558
1588
|
addModule('form-validators', $.extend({}, formExtras));
|
1589
|
+
|
1590
|
+
|
1559
1591
|
|
1560
1592
|
if($.expr.filters){
|
1561
1593
|
extendSels();
|
@@ -1676,13 +1708,22 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1676
1708
|
};
|
1677
1709
|
|
1678
1710
|
$.event.special.valuevalidation = {
|
1711
|
+
setup: function(){
|
1712
|
+
webshims.error('valuevalidation was renamed to validatevalue!');
|
1713
|
+
}
|
1714
|
+
};
|
1715
|
+
|
1716
|
+
|
1717
|
+
$.event.special.validatevalue = {
|
1679
1718
|
setup: function(){
|
1680
1719
|
var data = $(this).data() || $.data(this, {});
|
1681
|
-
if(!('
|
1682
|
-
data.
|
1720
|
+
if(!('validatevalue' in data)){
|
1721
|
+
data.validatevalue = true;
|
1683
1722
|
}
|
1684
1723
|
}
|
1685
1724
|
};
|
1725
|
+
|
1726
|
+
|
1686
1727
|
|
1687
1728
|
$(document).on('focusin.lazyloadvalidation', function(e){
|
1688
1729
|
if('form' in e.target){
|
@@ -1695,6 +1736,26 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1695
1736
|
if(modules['form-number-date-ui'].loaded && !options.customMessages && (modules['form-number-date-api'].test() || (Modernizr.inputtypes.range && Modernizr.inputtypes.color))){
|
1696
1737
|
webshims.isReady('form-number-date-ui', true);
|
1697
1738
|
}
|
1739
|
+
|
1740
|
+
webshims.ready('DOM', function(){
|
1741
|
+
if(document.querySelector('.ws-custom-file')){
|
1742
|
+
webshims.reTest(['form-validation']);
|
1743
|
+
}
|
1744
|
+
});
|
1745
|
+
|
1746
|
+
$(function(){
|
1747
|
+
var fileReaderReady = ('FileReader' in window && 'FormData' in window);
|
1748
|
+
if(!fileReaderReady){
|
1749
|
+
webshims.addReady(function(context){
|
1750
|
+
if(!fileReaderReady && !modules.filereader.loaded && !modules.moxie.loaded){
|
1751
|
+
if(context.querySelector('input.ws-filereader')){
|
1752
|
+
webshims.reTest(['filereader', 'moxie']);
|
1753
|
+
fileReaderReady = true;
|
1754
|
+
}
|
1755
|
+
}
|
1756
|
+
});
|
1757
|
+
}
|
1758
|
+
});
|
1698
1759
|
});
|
1699
1760
|
;webshims.register('form-message', function($, webshims, window, document, undefined, options){
|
1700
1761
|
"use strict";
|
@@ -1914,7 +1975,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1914
1975
|
if(message && message.indexOf('{%') != -1){
|
1915
1976
|
['value', 'min', 'max', 'maxlength', 'minlength', 'label'].forEach(function(attr){
|
1916
1977
|
if(message.indexOf('{%'+attr) === -1){return;}
|
1917
|
-
var val = ((attr == 'label') ? $.trim($('label[for="'+ elem.id +'"]', elem.form).text()).replace(/\*$|:$/, '') : $.prop(elem, attr)) || '';
|
1978
|
+
var val = ((attr == 'label') ? $.trim($('label[for="'+ elem.id +'"]', elem.form).text()).replace(/\*$|:$/, '') : $.prop(elem, attr) || $.attr(elem, attr) || '') || '';
|
1918
1979
|
val = ''+val;
|
1919
1980
|
|
1920
1981
|
|
@@ -402,8 +402,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
402
402
|
});
|
403
403
|
return this;
|
404
404
|
};
|
405
|
-
|
406
|
-
var dataID = '
|
405
|
+
var idCount = 0;
|
406
|
+
var dataID = '_webshims'+ (Math.round(Math.random() * 1000));
|
407
407
|
var elementData = function(elem, key, val){
|
408
408
|
elem = elem.jquery ? elem[0] : elem;
|
409
409
|
if(!elem){return val || {};}
|
@@ -434,6 +434,35 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
434
434
|
return this.pushStack(elems);
|
435
435
|
};
|
436
436
|
});
|
437
|
+
|
438
|
+
function clone(elem, dataAndEvents, uniqueIds){
|
439
|
+
var cloned = $.clone( elem, dataAndEvents, false );
|
440
|
+
$(cloned.querySelectorAll('.'+webshims.shadowClass)).detach();
|
441
|
+
if(uniqueIds){
|
442
|
+
idCount++;
|
443
|
+
$(cloned.querySelectorAll('[id]')).prop('id', function(i, id){
|
444
|
+
return id +idCount;
|
445
|
+
});
|
446
|
+
} else {
|
447
|
+
$(cloned.querySelectorAll('audio[id^="ID-"], video[id^="ID-"], label[id^="ID-"]')).removeAttr('id');
|
448
|
+
}
|
449
|
+
return cloned;
|
450
|
+
}
|
451
|
+
|
452
|
+
$.fn.clonePolyfill = function(dataAndEvents, uniqueIds){
|
453
|
+
dataAndEvents = dataAndEvents || false;
|
454
|
+
return this
|
455
|
+
.map(function() {
|
456
|
+
var cloned = clone( this, dataAndEvents, uniqueIds );
|
457
|
+
setTimeout(function(){
|
458
|
+
if($.contains(document.body, cloned)){
|
459
|
+
$(cloned).updatePolyfill();
|
460
|
+
}
|
461
|
+
});
|
462
|
+
return cloned;
|
463
|
+
})
|
464
|
+
;
|
465
|
+
};
|
437
466
|
|
438
467
|
//add support for $('video').trigger('play') in case extendNative is set to false
|
439
468
|
if(!webshims.cfg.extendNative && !webshims.cfg.noTriggerOverride){
|
@@ -745,6 +774,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
745
774
|
return id;
|
746
775
|
};
|
747
776
|
})(),
|
777
|
+
shadowClass: 'wsshadow-'+(Date.now()),
|
748
778
|
implement: function(elem, type){
|
749
779
|
var data = elementData(elem, 'implemented') || elementData(elem, 'implemented', {});
|
750
780
|
if(data[type]){
|
@@ -1556,6 +1586,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1556
1586
|
addModule('form-validation', $.extend({d: ['form-message']}, formExtras));
|
1557
1587
|
|
1558
1588
|
addModule('form-validators', $.extend({}, formExtras));
|
1589
|
+
|
1590
|
+
|
1559
1591
|
|
1560
1592
|
if($.expr.filters){
|
1561
1593
|
extendSels();
|
@@ -1676,13 +1708,22 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1676
1708
|
};
|
1677
1709
|
|
1678
1710
|
$.event.special.valuevalidation = {
|
1711
|
+
setup: function(){
|
1712
|
+
webshims.error('valuevalidation was renamed to validatevalue!');
|
1713
|
+
}
|
1714
|
+
};
|
1715
|
+
|
1716
|
+
|
1717
|
+
$.event.special.validatevalue = {
|
1679
1718
|
setup: function(){
|
1680
1719
|
var data = $(this).data() || $.data(this, {});
|
1681
|
-
if(!('
|
1682
|
-
data.
|
1720
|
+
if(!('validatevalue' in data)){
|
1721
|
+
data.validatevalue = true;
|
1683
1722
|
}
|
1684
1723
|
}
|
1685
1724
|
};
|
1725
|
+
|
1726
|
+
|
1686
1727
|
|
1687
1728
|
$(document).on('focusin.lazyloadvalidation', function(e){
|
1688
1729
|
if('form' in e.target){
|
@@ -1695,6 +1736,26 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1695
1736
|
if(modules['form-number-date-ui'].loaded && !options.customMessages && (modules['form-number-date-api'].test() || (Modernizr.inputtypes.range && Modernizr.inputtypes.color))){
|
1696
1737
|
webshims.isReady('form-number-date-ui', true);
|
1697
1738
|
}
|
1739
|
+
|
1740
|
+
webshims.ready('DOM', function(){
|
1741
|
+
if(document.querySelector('.ws-custom-file')){
|
1742
|
+
webshims.reTest(['form-validation']);
|
1743
|
+
}
|
1744
|
+
});
|
1745
|
+
|
1746
|
+
$(function(){
|
1747
|
+
var fileReaderReady = ('FileReader' in window && 'FormData' in window);
|
1748
|
+
if(!fileReaderReady){
|
1749
|
+
webshims.addReady(function(context){
|
1750
|
+
if(!fileReaderReady && !modules.filereader.loaded && !modules.moxie.loaded){
|
1751
|
+
if(context.querySelector('input.ws-filereader')){
|
1752
|
+
webshims.reTest(['filereader', 'moxie']);
|
1753
|
+
fileReaderReady = true;
|
1754
|
+
}
|
1755
|
+
}
|
1756
|
+
});
|
1757
|
+
}
|
1758
|
+
});
|
1698
1759
|
});
|
1699
1760
|
;webshims.register('form-message', function($, webshims, window, document, undefined, options){
|
1700
1761
|
"use strict";
|
@@ -1914,7 +1975,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1914
1975
|
if(message && message.indexOf('{%') != -1){
|
1915
1976
|
['value', 'min', 'max', 'maxlength', 'minlength', 'label'].forEach(function(attr){
|
1916
1977
|
if(message.indexOf('{%'+attr) === -1){return;}
|
1917
|
-
var val = ((attr == 'label') ? $.trim($('label[for="'+ elem.id +'"]', elem.form).text()).replace(/\*$|:$/, '') : $.prop(elem, attr)) || '';
|
1978
|
+
var val = ((attr == 'label') ? $.trim($('label[for="'+ elem.id +'"]', elem.form).text()).replace(/\*$|:$/, '') : $.prop(elem, attr) || $.attr(elem, attr) || '') || '';
|
1918
1979
|
val = ''+val;
|
1919
1980
|
|
1920
1981
|
|
@@ -179,8 +179,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
179
179
|
});
|
180
180
|
return this;
|
181
181
|
};
|
182
|
-
|
183
|
-
var dataID = '
|
182
|
+
var idCount = 0;
|
183
|
+
var dataID = '_webshims'+ (Math.round(Math.random() * 1000));
|
184
184
|
var elementData = function(elem, key, val){
|
185
185
|
elem = elem.jquery ? elem[0] : elem;
|
186
186
|
if(!elem){return val || {};}
|
@@ -211,6 +211,35 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
211
211
|
return this.pushStack(elems);
|
212
212
|
};
|
213
213
|
});
|
214
|
+
|
215
|
+
function clone(elem, dataAndEvents, uniqueIds){
|
216
|
+
var cloned = $.clone( elem, dataAndEvents, false );
|
217
|
+
$(cloned.querySelectorAll('.'+webshims.shadowClass)).detach();
|
218
|
+
if(uniqueIds){
|
219
|
+
idCount++;
|
220
|
+
$(cloned.querySelectorAll('[id]')).prop('id', function(i, id){
|
221
|
+
return id +idCount;
|
222
|
+
});
|
223
|
+
} else {
|
224
|
+
$(cloned.querySelectorAll('audio[id^="ID-"], video[id^="ID-"], label[id^="ID-"]')).removeAttr('id');
|
225
|
+
}
|
226
|
+
return cloned;
|
227
|
+
}
|
228
|
+
|
229
|
+
$.fn.clonePolyfill = function(dataAndEvents, uniqueIds){
|
230
|
+
dataAndEvents = dataAndEvents || false;
|
231
|
+
return this
|
232
|
+
.map(function() {
|
233
|
+
var cloned = clone( this, dataAndEvents, uniqueIds );
|
234
|
+
setTimeout(function(){
|
235
|
+
if($.contains(document.body, cloned)){
|
236
|
+
$(cloned).updatePolyfill();
|
237
|
+
}
|
238
|
+
});
|
239
|
+
return cloned;
|
240
|
+
})
|
241
|
+
;
|
242
|
+
};
|
214
243
|
|
215
244
|
//add support for $('video').trigger('play') in case extendNative is set to false
|
216
245
|
if(!webshims.cfg.extendNative && !webshims.cfg.noTriggerOverride){
|
@@ -522,6 +551,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
522
551
|
return id;
|
523
552
|
};
|
524
553
|
})(),
|
554
|
+
shadowClass: 'wsshadow-'+(Date.now()),
|
525
555
|
implement: function(elem, type){
|
526
556
|
var data = elementData(elem, 'implemented') || elementData(elem, 'implemented', {});
|
527
557
|
if(data[type]){
|
@@ -1860,6 +1890,8 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1860
1890
|
;
|
1861
1891
|
}
|
1862
1892
|
};
|
1893
|
+
var numericType = Modernizr.inputtypes.tel && navigator.userAgent.indexOf('Mobile') != -1 && !('inputMode' in document.createElement('input') && !('inputmode' in document.createElement('input'))) ?
|
1894
|
+
'tel' : 'text';
|
1863
1895
|
var splitInputs = {
|
1864
1896
|
date: {
|
1865
1897
|
_create: function(opts){
|
@@ -1870,18 +1902,18 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1870
1902
|
if(opts.yearSelect){
|
1871
1903
|
obj.splits.push($('<select class="yy"></select>')[0]);
|
1872
1904
|
} else {
|
1873
|
-
obj.splits.push($('<input type="
|
1905
|
+
obj.splits.push($('<input type="'+ numericType +'" class="yy" size="4" inputmode="numeric" maxlength="4" />')[0]);
|
1874
1906
|
}
|
1875
1907
|
|
1876
1908
|
if(opts.monthSelect){
|
1877
1909
|
obj.splits.push($('<select class="mm">'+getMonthOptions(opts)+'</select>')[0]);
|
1878
1910
|
} else {
|
1879
|
-
obj.splits.push($('<input type="
|
1911
|
+
obj.splits.push($('<input type="'+ numericType +'" class="mm" inputmode="numeric" maxlength="2" size="2" />')[0]);
|
1880
1912
|
}
|
1881
1913
|
if(opts.daySelect){
|
1882
1914
|
obj.splits.push($(daySelect)[0]);
|
1883
1915
|
} else {
|
1884
|
-
obj.splits.push($('<input type="
|
1916
|
+
obj.splits.push($('<input type="'+ numericType +'" class="dd ws-spin" inputmode="numeric" maxlength="2" size="2" />')[0]);
|
1885
1917
|
}
|
1886
1918
|
|
1887
1919
|
obj.elements = [obj.splits[0], $('<span class="ws-input-seperator" />')[0], obj.splits[1], $('<span class="ws-input-seperator" />')[0], obj.splits[2]];
|
@@ -1916,7 +1948,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1916
1948
|
if(opts.yearSelect){
|
1917
1949
|
obj.splits.push($('<select class="yy"></select>')[0]);
|
1918
1950
|
} else {
|
1919
|
-
obj.splits.push($('<input type="
|
1951
|
+
obj.splits.push($('<input type="'+ numericType +'" class="yy" size="4" inputmode="numeric" maxlength="4" />')[0]);
|
1920
1952
|
}
|
1921
1953
|
|
1922
1954
|
if(opts.monthSelect){
|
@@ -1924,7 +1956,10 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1924
1956
|
} else {
|
1925
1957
|
obj.splits.push($('<input type="text" class="mm ws-spin" />')[0]);
|
1926
1958
|
if(opts.onlyMonthDigits){
|
1927
|
-
$(
|
1959
|
+
$().attr({inputmode: 'numeric', size: 2, maxlength: 2});
|
1960
|
+
try {
|
1961
|
+
obj.splits[1].setAttribute('type', numericType);
|
1962
|
+
} catch(e){}
|
1928
1963
|
}
|
1929
1964
|
}
|
1930
1965
|
|
@@ -1947,7 +1982,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1947
1982
|
}
|
1948
1983
|
}
|
1949
1984
|
};
|
1950
|
-
|
1985
|
+
|
1951
1986
|
var nowDate = new Date(new Date().getTime() - (new Date().getTimezoneOffset() * 60 * 1000 ));
|
1952
1987
|
var nowYear = nowDate.getFullYear();
|
1953
1988
|
nowDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), nowDate.getHours()).getTime();
|
@@ -2767,7 +2802,11 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
2767
2802
|
} else if(!isNaN(this.maxAsNumber) && start > this.maxAsNumber){
|
2768
2803
|
start = this.maxAsNumber;
|
2769
2804
|
}
|
2770
|
-
|
2805
|
+
try {
|
2806
|
+
this.elemHelper.prop('valueAsNumber', start);
|
2807
|
+
} catch(e){
|
2808
|
+
webshims.warn('valueAsNumber set: '+e);
|
2809
|
+
}
|
2771
2810
|
this.options.defValue = this.elemHelper.prop('value');
|
2772
2811
|
},
|
2773
2812
|
reorderInputs: function(){
|
@@ -2791,7 +2830,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
2791
2830
|
_beforeValue: function(val){
|
2792
2831
|
this.valueAsNumber = this.asNumber(val);
|
2793
2832
|
this.options.value = val;
|
2794
|
-
|
2833
|
+
|
2795
2834
|
if(isNaN(this.valueAsNumber) || (!isNaN(this.minAsNumber) && this.valueAsNumber < this.minAsNumber) || (!isNaN(this.maxAsNumber) && this.valueAsNumber > this.maxAsNumber)){
|
2796
2835
|
this._setStartInRange();
|
2797
2836
|
} else {
|
@@ -2907,9 +2946,9 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
2907
2946
|
touchEnd = function(e){
|
2908
2947
|
var ret, touch;
|
2909
2948
|
e = e.originalEvent || {};
|
2910
|
-
$(this).off('touchend', touchEnd);
|
2949
|
+
$(this).off('touchend touchcancel', touchEnd);
|
2911
2950
|
var changedTouches = e.changedTouches || e.touches;
|
2912
|
-
if(!touchData || !changedTouches || changedTouches.length != 1){
|
2951
|
+
if(e.type == 'touchcancel' || !touchData || !changedTouches || changedTouches.length != 1){
|
2913
2952
|
return;
|
2914
2953
|
}
|
2915
2954
|
|
@@ -2940,7 +2979,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
2940
2979
|
y: touch.pageY,
|
2941
2980
|
now: Date.now()
|
2942
2981
|
};
|
2943
|
-
elemTarget.on('touchend', touchEnd);
|
2982
|
+
elemTarget.on('touchend touchcancel', touchEnd);
|
2944
2983
|
};
|
2945
2984
|
|
2946
2985
|
this.each(function(){
|
@@ -3054,7 +3093,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3054
3093
|
cancel: function(val, popover, data){
|
3055
3094
|
if(!data.options.inlinePicker){
|
3056
3095
|
popover.stopOpen = true;
|
3057
|
-
if(assumeVirtualKeyBoard){
|
3096
|
+
if(!popover.openedByFocus && assumeVirtualKeyBoard){
|
3058
3097
|
$('button', data.buttonWrapper).trigger('focus');
|
3059
3098
|
} else {
|
3060
3099
|
data.element.getShadowFocusElement().trigger('focus');
|
@@ -3154,14 +3193,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3154
3193
|
var popover = webshims.objectCreate(options.inlinePicker ? webshims.inlinePopover : webshims.wsPopover, {}, $.extend(options.popover || {}, {prepareFor: options.inlinePicker ? data.buttonWrapper : data.element}));
|
3155
3194
|
var opener = $('<button type="button" class="ws-popover-opener"><span /></button>').appendTo(data.buttonWrapper);
|
3156
3195
|
|
3157
|
-
if(options.widgetPosition){
|
3158
|
-
webshims.error('options.widgetPosition was removed use options.popover.position instead');
|
3159
|
-
}
|
3160
|
-
|
3161
|
-
if(options.openOnFocus && popover.options && (popover.options.appendTo == 'auto' || popover.options.appendTo == 'element')){
|
3162
|
-
webshims.error('openOnFocus and popover.appendTo "auto/element" can prduce a11y problems try to change appendTo to body or similiar or use openOnMouseFocus instead');
|
3163
|
-
}
|
3164
|
-
|
3165
3196
|
var showPickerContent = function(){
|
3166
3197
|
(picker[data.type].showPickerContent || picker.showPickerContent)(data, popover);
|
3167
3198
|
};
|
@@ -3230,9 +3261,28 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3230
3261
|
stopPropagation.apply(this, arguments);
|
3231
3262
|
popover.preventBlur();
|
3232
3263
|
},
|
3233
|
-
|
3234
|
-
|
3235
|
-
|
3264
|
+
keydown: function(e){
|
3265
|
+
if(e.keyCode == 40 && e.altKey){
|
3266
|
+
open();
|
3267
|
+
}
|
3268
|
+
},
|
3269
|
+
'focus mousedown': (function(){
|
3270
|
+
var allowClose = true;
|
3271
|
+
var reset = function(){
|
3272
|
+
allowClose = true;
|
3273
|
+
};
|
3274
|
+
return function(e){
|
3275
|
+
if(e.type == 'mousedown'){
|
3276
|
+
allowClose = false;
|
3277
|
+
setTimeout(reset);
|
3278
|
+
}
|
3279
|
+
if(e.type == 'focus' && allowClose && options.openOnFocus && popover.openedByFocus && (popover.options.appendTo == 'auto' || popover.options.appendTo == 'element')){
|
3280
|
+
popover.hide();
|
3281
|
+
} else {
|
3282
|
+
popover.preventBlur();
|
3283
|
+
}
|
3284
|
+
};
|
3285
|
+
})()
|
3236
3286
|
})
|
3237
3287
|
;
|
3238
3288
|
|
@@ -3479,6 +3529,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3479
3529
|
}
|
3480
3530
|
|
3481
3531
|
};
|
3532
|
+
oriStyleO.webkitAppearance = 'none';
|
3482
3533
|
data.element.onWSOff('updateshadowdom', updateStyles, true);
|
3483
3534
|
};
|
3484
3535
|
|
@@ -3486,13 +3537,14 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3486
3537
|
var implementType = function(){
|
3487
3538
|
|
3488
3539
|
var type = $.prop(this, 'type');
|
3489
|
-
|
3490
3540
|
var i, opts, data, optsName, labels, cNames, hasInitialFocus;
|
3491
|
-
|
3541
|
+
|
3542
|
+
if(inputTypes[type] && webshims.implement(this, 'inputwidgets') && (!modernizrInputTypes[type] || !$(this).hasClass('ws-noreplace'))){
|
3492
3543
|
data = {};
|
3493
3544
|
optsName = type;
|
3494
3545
|
hasInitialFocus = $(this).is(':focus');
|
3495
3546
|
labels = $(this).jProp('labels');
|
3547
|
+
|
3496
3548
|
opts = $.extend(webshims.getOptions(this, type, [options.widgets, options[type], $($.prop(this, 'form')).data(type)]), {
|
3497
3549
|
orig: this,
|
3498
3550
|
type: type,
|
@@ -3525,6 +3577,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3525
3577
|
opts[optsName] = $.attr(this, copyAttrs[i]) || opts[optsName];
|
3526
3578
|
}
|
3527
3579
|
}
|
3580
|
+
|
3528
3581
|
if(opts.formatMonthNames){
|
3529
3582
|
webshims.error('formatMonthNames was renamded to monthNames');
|
3530
3583
|
}
|
@@ -3548,11 +3601,11 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
3548
3601
|
cNames = cNames.replace('form-control', '');
|
3549
3602
|
}
|
3550
3603
|
|
3551
|
-
data.shim.element.on('change input', stopPropagation).addClass(cNames);
|
3604
|
+
data.shim.element.on('change input', stopPropagation).addClass(cNames+' '+webshims.shadowClass);
|
3552
3605
|
|
3553
3606
|
if(data.shim.buttonWrapper){
|
3554
3607
|
|
3555
|
-
data.shim.buttonWrapper.addClass('input-button-size-'+(data.shim.buttonWrapper.children().filter(isVisible).length));
|
3608
|
+
data.shim.buttonWrapper.addClass('input-button-size-'+(data.shim.buttonWrapper.children().filter(isVisible).length)+' '+webshims.shadowClass);
|
3556
3609
|
|
3557
3610
|
if(data.shim.buttonWrapper.filter(isVisible).length){
|
3558
3611
|
data.shim.element.addClass('has-input-buttons');
|