webshims-rails 1.11.1 → 1.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/lib/webshims-rails/version.rb +2 -2
- data/vendor/assets/javascripts/webshims/polyfiller.js +41 -20
- data/vendor/assets/javascripts/webshims/shims/combos/10.js +212 -42
- data/vendor/assets/javascripts/webshims/shims/combos/11.js +196 -37
- data/vendor/assets/javascripts/webshims/shims/combos/12.js +82 -36
- data/vendor/assets/javascripts/webshims/shims/combos/13.js +82 -36
- data/vendor/assets/javascripts/webshims/shims/combos/14.js +17 -6
- data/vendor/assets/javascripts/webshims/shims/combos/15.js +234 -1247
- data/vendor/assets/javascripts/webshims/shims/combos/16.js +234 -1247
- data/vendor/assets/javascripts/webshims/shims/combos/17.js +202 -45
- data/vendor/assets/javascripts/webshims/shims/combos/18.js +202 -45
- data/vendor/assets/javascripts/webshims/shims/combos/19.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/2.js +51 -11
- data/vendor/assets/javascripts/webshims/shims/combos/20.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/21.js +82 -36
- data/vendor/assets/javascripts/webshims/shims/combos/22.js +82 -36
- data/vendor/assets/javascripts/webshims/shims/combos/24.js +1689 -997
- data/vendor/assets/javascripts/webshims/shims/combos/25.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/26.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/3.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/30.js +51 -11
- data/vendor/assets/javascripts/webshims/shims/combos/31.js +51 -11
- data/vendor/assets/javascripts/webshims/shims/combos/4.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/5.js +202 -45
- data/vendor/assets/javascripts/webshims/shims/combos/6.js +237 -51
- data/vendor/assets/javascripts/webshims/shims/combos/7.js +51 -11
- data/vendor/assets/javascripts/webshims/shims/combos/8.js +16 -5
- data/vendor/assets/javascripts/webshims/shims/combos/9.js +247 -48
- data/vendor/assets/javascripts/webshims/shims/dom-extend.js +17 -5
- data/vendor/assets/javascripts/webshims/shims/form-datalist-lazy.js +21 -3
- data/vendor/assets/javascripts/webshims/shims/form-datalist.js +35 -6
- data/vendor/assets/javascripts/webshims/shims/form-number-date-api.js +6 -8
- data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +134 -24
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend.js +152 -1205
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend2.js +1076 -0
- data/vendor/assets/javascripts/webshims/shims/form-validation.js +47 -20
- data/vendor/assets/javascripts/webshims/shims/form-validators.js +2 -2
- data/vendor/assets/javascripts/webshims/shims/forms-picker.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/i18n/{formcfg-de.txt → formcfg-de.js} +3 -0
- data/vendor/assets/javascripts/webshims/shims/i18n/{formcfg-en.txt → formcfg-en.js} +5 -1
- data/vendor/assets/javascripts/webshims/shims/json-storage.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/mediaelement-yt.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/range-ui.js +62 -13
- data/vendor/assets/javascripts/webshims/shims/styles/forms-ext.css +610 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/_extends.scss +10 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-ext.scss +743 -0
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim.scss +1 -755
- data/vendor/assets/javascripts/webshims/shims/styles/shim.css +0 -606
- data/vendor/assets/javascripts/webshims/shims/swf/JarisFLVPlayer.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/track-ui.js +36 -23
- data/vendor/assets/javascripts/webshims/shims/track.js +82 -36
- metadata +8 -6
- data/vendor/assets/javascripts/webshims/shims/combos/28.js +0 -2196
- data/vendor/assets/javascripts/webshims/shims/combos/29.js +0 -1167
@@ -1261,7 +1261,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1261
1261
|
webshims.assumeARIA = supportGetSetAttribute || Modernizr.canvas || Modernizr.video || Modernizr.boxsizing;
|
1262
1262
|
|
1263
1263
|
if($('<input type="email" />').attr('type') == 'text' || $('<form />').attr('novalidate') === "" || ('required' in $('<input />')[0].attributes)){
|
1264
|
-
webshims.error("IE browser modes are busted in IE10
|
1264
|
+
webshims.error("IE browser modes are busted in IE10+. Please test your HTML/CSS/JS with a real IE version or at least IETester or similiar tools");
|
1265
1265
|
}
|
1266
1266
|
|
1267
1267
|
if(!$.parseHTML){
|
@@ -1814,7 +1814,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1814
1814
|
$(this.test);
|
1815
1815
|
webshims.ready('WINDOWLOAD', this.test);
|
1816
1816
|
$(document).on('updatelayout', this.handler);
|
1817
|
-
$(window).
|
1817
|
+
$(window).on('resize', this.handler);
|
1818
1818
|
(function(){
|
1819
1819
|
var oldAnimate = $.fn.animate;
|
1820
1820
|
var animationTimer;
|
@@ -1836,6 +1836,13 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1836
1836
|
webshims.docObserve = function(){
|
1837
1837
|
webshims.ready('DOM', function(){
|
1838
1838
|
docObserve.start();
|
1839
|
+
if($.support.boxSizing == null){
|
1840
|
+
$(function(){
|
1841
|
+
if($.support.boxSizing){
|
1842
|
+
docObserve.handler({type: 'boxsizing'});
|
1843
|
+
}
|
1844
|
+
});
|
1845
|
+
}
|
1839
1846
|
});
|
1840
1847
|
};
|
1841
1848
|
return function(nativeElem, shadowElem, opts){
|
@@ -1996,7 +2003,12 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1996
2003
|
havePolyfill[prop] = true;
|
1997
2004
|
|
1998
2005
|
if(descs.reflect){
|
1999
|
-
webshims.propTypes[descs.propType
|
2006
|
+
if(descs.propType && !webshims.propTypes[descs.propType]){
|
2007
|
+
webshims.error('could not finde propType '+ descs.propType);
|
2008
|
+
} else {
|
2009
|
+
webshims.propTypes[descs.propType || 'standard'](descs, prop);
|
2010
|
+
}
|
2011
|
+
|
2000
2012
|
}
|
2001
2013
|
|
2002
2014
|
['prop', 'attr', 'removeAttr'].forEach(function(type){
|
@@ -2182,7 +2194,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
2182
2194
|
var notLocal = /:\/\/|^\.*\//;
|
2183
2195
|
var loadRemoteLang = function(data, lang, options){
|
2184
2196
|
var langSrc;
|
2185
|
-
if(lang && options && $.inArray(lang, options.availabeLangs || []) !== -1){
|
2197
|
+
if(lang && options && $.inArray(lang, options.availableLangs || options.availabeLangs || []) !== -1){
|
2186
2198
|
data.loading = true;
|
2187
2199
|
langSrc = options.langSrc;
|
2188
2200
|
if(!notLocal.test(langSrc)){
|
@@ -2342,7 +2354,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
2342
2354
|
});
|
2343
2355
|
|
2344
2356
|
})(webshims.$, document);
|
2345
|
-
|
2346
2357
|
webshims.register('filereader', function( $, webshims ){
|
2347
2358
|
"use strict";
|
2348
2359
|
/**
|
@@ -6,7 +6,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
6
6
|
webshims.assumeARIA = supportGetSetAttribute || Modernizr.canvas || Modernizr.video || Modernizr.boxsizing;
|
7
7
|
|
8
8
|
if($('<input type="email" />').attr('type') == 'text' || $('<form />').attr('novalidate') === "" || ('required' in $('<input />')[0].attributes)){
|
9
|
-
webshims.error("IE browser modes are busted in IE10
|
9
|
+
webshims.error("IE browser modes are busted in IE10+. Please test your HTML/CSS/JS with a real IE version or at least IETester or similiar tools");
|
10
10
|
}
|
11
11
|
|
12
12
|
if(!$.parseHTML){
|
@@ -559,7 +559,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
559
559
|
$(this.test);
|
560
560
|
webshims.ready('WINDOWLOAD', this.test);
|
561
561
|
$(document).on('updatelayout', this.handler);
|
562
|
-
$(window).
|
562
|
+
$(window).on('resize', this.handler);
|
563
563
|
(function(){
|
564
564
|
var oldAnimate = $.fn.animate;
|
565
565
|
var animationTimer;
|
@@ -581,6 +581,13 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
581
581
|
webshims.docObserve = function(){
|
582
582
|
webshims.ready('DOM', function(){
|
583
583
|
docObserve.start();
|
584
|
+
if($.support.boxSizing == null){
|
585
|
+
$(function(){
|
586
|
+
if($.support.boxSizing){
|
587
|
+
docObserve.handler({type: 'boxsizing'});
|
588
|
+
}
|
589
|
+
});
|
590
|
+
}
|
584
591
|
});
|
585
592
|
};
|
586
593
|
return function(nativeElem, shadowElem, opts){
|
@@ -741,7 +748,12 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
741
748
|
havePolyfill[prop] = true;
|
742
749
|
|
743
750
|
if(descs.reflect){
|
744
|
-
webshims.propTypes[descs.propType
|
751
|
+
if(descs.propType && !webshims.propTypes[descs.propType]){
|
752
|
+
webshims.error('could not finde propType '+ descs.propType);
|
753
|
+
} else {
|
754
|
+
webshims.propTypes[descs.propType || 'standard'](descs, prop);
|
755
|
+
}
|
756
|
+
|
745
757
|
}
|
746
758
|
|
747
759
|
['prop', 'attr', 'removeAttr'].forEach(function(type){
|
@@ -927,7 +939,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
927
939
|
var notLocal = /:\/\/|^\.*\//;
|
928
940
|
var loadRemoteLang = function(data, lang, options){
|
929
941
|
var langSrc;
|
930
|
-
if(lang && options && $.inArray(lang, options.availabeLangs || []) !== -1){
|
942
|
+
if(lang && options && $.inArray(lang, options.availableLangs || options.availabeLangs || []) !== -1){
|
931
943
|
data.loading = true;
|
932
944
|
langSrc = options.langSrc;
|
933
945
|
if(!notLocal.test(langSrc)){
|
@@ -1087,7 +1099,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1087
1099
|
});
|
1088
1100
|
|
1089
1101
|
})(webshims.$, document);
|
1090
|
-
|
1091
1102
|
webshims.register('filereader', function( $, webshims ){
|
1092
1103
|
"use strict";
|
1093
1104
|
/**
|
@@ -6,7 +6,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
6
6
|
webshims.assumeARIA = supportGetSetAttribute || Modernizr.canvas || Modernizr.video || Modernizr.boxsizing;
|
7
7
|
|
8
8
|
if($('<input type="email" />').attr('type') == 'text' || $('<form />').attr('novalidate') === "" || ('required' in $('<input />')[0].attributes)){
|
9
|
-
webshims.error("IE browser modes are busted in IE10
|
9
|
+
webshims.error("IE browser modes are busted in IE10+. Please test your HTML/CSS/JS with a real IE version or at least IETester or similiar tools");
|
10
10
|
}
|
11
11
|
|
12
12
|
if(!$.parseHTML){
|
@@ -559,7 +559,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
559
559
|
$(this.test);
|
560
560
|
webshims.ready('WINDOWLOAD', this.test);
|
561
561
|
$(document).on('updatelayout', this.handler);
|
562
|
-
$(window).
|
562
|
+
$(window).on('resize', this.handler);
|
563
563
|
(function(){
|
564
564
|
var oldAnimate = $.fn.animate;
|
565
565
|
var animationTimer;
|
@@ -581,6 +581,13 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
581
581
|
webshims.docObserve = function(){
|
582
582
|
webshims.ready('DOM', function(){
|
583
583
|
docObserve.start();
|
584
|
+
if($.support.boxSizing == null){
|
585
|
+
$(function(){
|
586
|
+
if($.support.boxSizing){
|
587
|
+
docObserve.handler({type: 'boxsizing'});
|
588
|
+
}
|
589
|
+
});
|
590
|
+
}
|
584
591
|
});
|
585
592
|
};
|
586
593
|
return function(nativeElem, shadowElem, opts){
|
@@ -741,7 +748,12 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
741
748
|
havePolyfill[prop] = true;
|
742
749
|
|
743
750
|
if(descs.reflect){
|
744
|
-
webshims.propTypes[descs.propType
|
751
|
+
if(descs.propType && !webshims.propTypes[descs.propType]){
|
752
|
+
webshims.error('could not finde propType '+ descs.propType);
|
753
|
+
} else {
|
754
|
+
webshims.propTypes[descs.propType || 'standard'](descs, prop);
|
755
|
+
}
|
756
|
+
|
745
757
|
}
|
746
758
|
|
747
759
|
['prop', 'attr', 'removeAttr'].forEach(function(type){
|
@@ -927,7 +939,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
927
939
|
var notLocal = /:\/\/|^\.*\//;
|
928
940
|
var loadRemoteLang = function(data, lang, options){
|
929
941
|
var langSrc;
|
930
|
-
if(lang && options && $.inArray(lang, options.availabeLangs || []) !== -1){
|
942
|
+
if(lang && options && $.inArray(lang, options.availableLangs || options.availabeLangs || []) !== -1){
|
931
943
|
data.loading = true;
|
932
944
|
langSrc = options.langSrc;
|
933
945
|
if(!notLocal.test(langSrc)){
|
@@ -1087,7 +1099,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1087
1099
|
});
|
1088
1100
|
|
1089
1101
|
})(webshims.$, document);
|
1090
|
-
|
1091
1102
|
webshims.register('form-core', function($, webshims, window, document, undefined, options){
|
1092
1103
|
"use strict";
|
1093
1104
|
|
@@ -6,7 +6,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
6
6
|
webshims.assumeARIA = supportGetSetAttribute || Modernizr.canvas || Modernizr.video || Modernizr.boxsizing;
|
7
7
|
|
8
8
|
if($('<input type="email" />').attr('type') == 'text' || $('<form />').attr('novalidate') === "" || ('required' in $('<input />')[0].attributes)){
|
9
|
-
webshims.error("IE browser modes are busted in IE10
|
9
|
+
webshims.error("IE browser modes are busted in IE10+. Please test your HTML/CSS/JS with a real IE version or at least IETester or similiar tools");
|
10
10
|
}
|
11
11
|
|
12
12
|
if(!$.parseHTML){
|
@@ -559,7 +559,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
559
559
|
$(this.test);
|
560
560
|
webshims.ready('WINDOWLOAD', this.test);
|
561
561
|
$(document).on('updatelayout', this.handler);
|
562
|
-
$(window).
|
562
|
+
$(window).on('resize', this.handler);
|
563
563
|
(function(){
|
564
564
|
var oldAnimate = $.fn.animate;
|
565
565
|
var animationTimer;
|
@@ -581,6 +581,13 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
581
581
|
webshims.docObserve = function(){
|
582
582
|
webshims.ready('DOM', function(){
|
583
583
|
docObserve.start();
|
584
|
+
if($.support.boxSizing == null){
|
585
|
+
$(function(){
|
586
|
+
if($.support.boxSizing){
|
587
|
+
docObserve.handler({type: 'boxsizing'});
|
588
|
+
}
|
589
|
+
});
|
590
|
+
}
|
584
591
|
});
|
585
592
|
};
|
586
593
|
return function(nativeElem, shadowElem, opts){
|
@@ -741,7 +748,12 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
741
748
|
havePolyfill[prop] = true;
|
742
749
|
|
743
750
|
if(descs.reflect){
|
744
|
-
webshims.propTypes[descs.propType
|
751
|
+
if(descs.propType && !webshims.propTypes[descs.propType]){
|
752
|
+
webshims.error('could not finde propType '+ descs.propType);
|
753
|
+
} else {
|
754
|
+
webshims.propTypes[descs.propType || 'standard'](descs, prop);
|
755
|
+
}
|
756
|
+
|
745
757
|
}
|
746
758
|
|
747
759
|
['prop', 'attr', 'removeAttr'].forEach(function(type){
|
@@ -927,7 +939,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
927
939
|
var notLocal = /:\/\/|^\.*\//;
|
928
940
|
var loadRemoteLang = function(data, lang, options){
|
929
941
|
var langSrc;
|
930
|
-
if(lang && options && $.inArray(lang, options.availabeLangs || []) !== -1){
|
942
|
+
if(lang && options && $.inArray(lang, options.availableLangs || options.availabeLangs || []) !== -1){
|
931
943
|
data.loading = true;
|
932
944
|
langSrc = options.langSrc;
|
933
945
|
if(!notLocal.test(langSrc)){
|
@@ -1087,7 +1099,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1087
1099
|
});
|
1088
1100
|
|
1089
1101
|
})(webshims.$, document);
|
1090
|
-
|
1091
1102
|
webshims.register('form-core', function($, webshims, window, document, undefined, options){
|
1092
1103
|
"use strict";
|
1093
1104
|
|
@@ -1569,12 +1580,12 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1569
1580
|
/*
|
1570
1581
|
* implement propType "element" currently only used for list-attribute (will be moved to dom-extend, if needed)
|
1571
1582
|
*/
|
1572
|
-
webshims.propTypes.element = function(descs){
|
1583
|
+
webshims.propTypes.element = function(descs, name){
|
1573
1584
|
webshims.createPropDefault(descs, 'attr');
|
1574
1585
|
if(descs.prop){return;}
|
1575
1586
|
descs.prop = {
|
1576
1587
|
get: function(){
|
1577
|
-
var elem = $.attr(this,
|
1588
|
+
var elem = $.attr(this, name);
|
1578
1589
|
if(elem){
|
1579
1590
|
elem = document.getElementById(elem);
|
1580
1591
|
if(elem && descs.propNodeName && !$.nodeName(elem, descs.propNodeName)){
|
@@ -1598,7 +1609,15 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1598
1609
|
if(listSupport && !formsCFG.customDatalist){return;}
|
1599
1610
|
|
1600
1611
|
var initializeDatalist = function(){
|
1601
|
-
|
1612
|
+
|
1613
|
+
var updateDatlistAndOptions = function(){
|
1614
|
+
var id;
|
1615
|
+
if(!$.data(this, 'datalistWidgetData') && (id = $.prop(this, 'id'))){
|
1616
|
+
$('input[list="'+ id +'"], input[data-wslist="'+ id +'"]').eq(0).attr('list', id);
|
1617
|
+
} else {
|
1618
|
+
$(this).triggerHandler('updateDatalist');
|
1619
|
+
}
|
1620
|
+
};
|
1602
1621
|
|
1603
1622
|
var inputListProto = {
|
1604
1623
|
//override autocomplete
|
@@ -1676,6 +1695,7 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1676
1695
|
id: value,
|
1677
1696
|
datalist: $.prop(elem, 'list')
|
1678
1697
|
});
|
1698
|
+
elem.setAttribute('data-wslist', value);
|
1679
1699
|
} else {
|
1680
1700
|
elem.setAttribute('list', value);
|
1681
1701
|
}
|
@@ -1687,6 +1707,27 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1687
1707
|
propType: 'element',
|
1688
1708
|
propNodeName: 'datalist'
|
1689
1709
|
};
|
1710
|
+
} else {
|
1711
|
+
webshims.defineNodeNameProperties('input', {
|
1712
|
+
list: {
|
1713
|
+
attr: {
|
1714
|
+
get: function(){
|
1715
|
+
var val = webshims.contentAttr(this, 'list');
|
1716
|
+
return (val == null) ? undefined : val;
|
1717
|
+
},
|
1718
|
+
set: function(value){
|
1719
|
+
var elem = this;
|
1720
|
+
webshims.contentAttr(elem, 'list', value);
|
1721
|
+
webshims.objectCreate(options.shadowListProto, undefined, {input: elem, id: value, datalist: $.prop(elem, 'list')});
|
1722
|
+
$(elem).triggerHandler('listdatalistchange');
|
1723
|
+
}
|
1724
|
+
},
|
1725
|
+
initAttr: true,
|
1726
|
+
reflect: true,
|
1727
|
+
propType: 'element',
|
1728
|
+
propNodeName: 'datalist'
|
1729
|
+
}
|
1730
|
+
});
|
1690
1731
|
}
|
1691
1732
|
|
1692
1733
|
webshims.defineNodeNameProperties('input', inputListProto);
|
@@ -1695,9 +1736,7 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1695
1736
|
contextElem
|
1696
1737
|
.filter('datalist > select, datalist, datalist > option, datalist > select > option')
|
1697
1738
|
.closest('datalist')
|
1698
|
-
.each(
|
1699
|
-
$(this).triggerHandler('updateDatalist');
|
1700
|
-
})
|
1739
|
+
.each(updateDatlistAndOptions)
|
1701
1740
|
;
|
1702
1741
|
});
|
1703
1742
|
};
|
@@ -1742,6 +1781,7 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1742
1781
|
this.hasViewableData = true;
|
1743
1782
|
this._autocomplete = $.attr(opts.input, 'autocomplete');
|
1744
1783
|
$.data(opts.input, 'datalistWidget', this);
|
1784
|
+
$.data(datalist, 'datalistWidgetData', this);
|
1745
1785
|
|
1746
1786
|
lazyLoad('WINDOWLOAD');
|
1747
1787
|
|
@@ -6,7 +6,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
6
6
|
webshims.assumeARIA = supportGetSetAttribute || Modernizr.canvas || Modernizr.video || Modernizr.boxsizing;
|
7
7
|
|
8
8
|
if($('<input type="email" />').attr('type') == 'text' || $('<form />').attr('novalidate') === "" || ('required' in $('<input />')[0].attributes)){
|
9
|
-
webshims.error("IE browser modes are busted in IE10
|
9
|
+
webshims.error("IE browser modes are busted in IE10+. Please test your HTML/CSS/JS with a real IE version or at least IETester or similiar tools");
|
10
10
|
}
|
11
11
|
|
12
12
|
if(!$.parseHTML){
|
@@ -559,7 +559,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
559
559
|
$(this.test);
|
560
560
|
webshims.ready('WINDOWLOAD', this.test);
|
561
561
|
$(document).on('updatelayout', this.handler);
|
562
|
-
$(window).
|
562
|
+
$(window).on('resize', this.handler);
|
563
563
|
(function(){
|
564
564
|
var oldAnimate = $.fn.animate;
|
565
565
|
var animationTimer;
|
@@ -581,6 +581,13 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
581
581
|
webshims.docObserve = function(){
|
582
582
|
webshims.ready('DOM', function(){
|
583
583
|
docObserve.start();
|
584
|
+
if($.support.boxSizing == null){
|
585
|
+
$(function(){
|
586
|
+
if($.support.boxSizing){
|
587
|
+
docObserve.handler({type: 'boxsizing'});
|
588
|
+
}
|
589
|
+
});
|
590
|
+
}
|
584
591
|
});
|
585
592
|
};
|
586
593
|
return function(nativeElem, shadowElem, opts){
|
@@ -741,7 +748,12 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
741
748
|
havePolyfill[prop] = true;
|
742
749
|
|
743
750
|
if(descs.reflect){
|
744
|
-
webshims.propTypes[descs.propType
|
751
|
+
if(descs.propType && !webshims.propTypes[descs.propType]){
|
752
|
+
webshims.error('could not finde propType '+ descs.propType);
|
753
|
+
} else {
|
754
|
+
webshims.propTypes[descs.propType || 'standard'](descs, prop);
|
755
|
+
}
|
756
|
+
|
745
757
|
}
|
746
758
|
|
747
759
|
['prop', 'attr', 'removeAttr'].forEach(function(type){
|
@@ -927,7 +939,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
927
939
|
var notLocal = /:\/\/|^\.*\//;
|
928
940
|
var loadRemoteLang = function(data, lang, options){
|
929
941
|
var langSrc;
|
930
|
-
if(lang && options && $.inArray(lang, options.availabeLangs || []) !== -1){
|
942
|
+
if(lang && options && $.inArray(lang, options.availableLangs || options.availabeLangs || []) !== -1){
|
931
943
|
data.loading = true;
|
932
944
|
langSrc = options.langSrc;
|
933
945
|
if(!notLocal.test(langSrc)){
|
@@ -1087,7 +1099,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
|
|
1087
1099
|
});
|
1088
1100
|
|
1089
1101
|
})(webshims.$, document);
|
1090
|
-
|
1091
1102
|
webshims.register('form-core', function($, webshims, window, document, undefined, options){
|
1092
1103
|
"use strict";
|
1093
1104
|
|
@@ -1336,12 +1347,12 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1336
1347
|
/*
|
1337
1348
|
* implement propType "element" currently only used for list-attribute (will be moved to dom-extend, if needed)
|
1338
1349
|
*/
|
1339
|
-
webshims.propTypes.element = function(descs){
|
1350
|
+
webshims.propTypes.element = function(descs, name){
|
1340
1351
|
webshims.createPropDefault(descs, 'attr');
|
1341
1352
|
if(descs.prop){return;}
|
1342
1353
|
descs.prop = {
|
1343
1354
|
get: function(){
|
1344
|
-
var elem = $.attr(this,
|
1355
|
+
var elem = $.attr(this, name);
|
1345
1356
|
if(elem){
|
1346
1357
|
elem = document.getElementById(elem);
|
1347
1358
|
if(elem && descs.propNodeName && !$.nodeName(elem, descs.propNodeName)){
|
@@ -1365,7 +1376,15 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1365
1376
|
if(listSupport && !formsCFG.customDatalist){return;}
|
1366
1377
|
|
1367
1378
|
var initializeDatalist = function(){
|
1368
|
-
|
1379
|
+
|
1380
|
+
var updateDatlistAndOptions = function(){
|
1381
|
+
var id;
|
1382
|
+
if(!$.data(this, 'datalistWidgetData') && (id = $.prop(this, 'id'))){
|
1383
|
+
$('input[list="'+ id +'"], input[data-wslist="'+ id +'"]').eq(0).attr('list', id);
|
1384
|
+
} else {
|
1385
|
+
$(this).triggerHandler('updateDatalist');
|
1386
|
+
}
|
1387
|
+
};
|
1369
1388
|
|
1370
1389
|
var inputListProto = {
|
1371
1390
|
//override autocomplete
|
@@ -1443,6 +1462,7 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1443
1462
|
id: value,
|
1444
1463
|
datalist: $.prop(elem, 'list')
|
1445
1464
|
});
|
1465
|
+
elem.setAttribute('data-wslist', value);
|
1446
1466
|
} else {
|
1447
1467
|
elem.setAttribute('list', value);
|
1448
1468
|
}
|
@@ -1454,6 +1474,27 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1454
1474
|
propType: 'element',
|
1455
1475
|
propNodeName: 'datalist'
|
1456
1476
|
};
|
1477
|
+
} else {
|
1478
|
+
webshims.defineNodeNameProperties('input', {
|
1479
|
+
list: {
|
1480
|
+
attr: {
|
1481
|
+
get: function(){
|
1482
|
+
var val = webshims.contentAttr(this, 'list');
|
1483
|
+
return (val == null) ? undefined : val;
|
1484
|
+
},
|
1485
|
+
set: function(value){
|
1486
|
+
var elem = this;
|
1487
|
+
webshims.contentAttr(elem, 'list', value);
|
1488
|
+
webshims.objectCreate(options.shadowListProto, undefined, {input: elem, id: value, datalist: $.prop(elem, 'list')});
|
1489
|
+
$(elem).triggerHandler('listdatalistchange');
|
1490
|
+
}
|
1491
|
+
},
|
1492
|
+
initAttr: true,
|
1493
|
+
reflect: true,
|
1494
|
+
propType: 'element',
|
1495
|
+
propNodeName: 'datalist'
|
1496
|
+
}
|
1497
|
+
});
|
1457
1498
|
}
|
1458
1499
|
|
1459
1500
|
webshims.defineNodeNameProperties('input', inputListProto);
|
@@ -1462,9 +1503,7 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1462
1503
|
contextElem
|
1463
1504
|
.filter('datalist > select, datalist, datalist > option, datalist > select > option')
|
1464
1505
|
.closest('datalist')
|
1465
|
-
.each(
|
1466
|
-
$(this).triggerHandler('updateDatalist');
|
1467
|
-
})
|
1506
|
+
.each(updateDatlistAndOptions)
|
1468
1507
|
;
|
1469
1508
|
});
|
1470
1509
|
};
|
@@ -1509,6 +1548,7 @@ webshims.register('form-datalist', function($, webshims, window, document, undef
|
|
1509
1548
|
this.hasViewableData = true;
|
1510
1549
|
this._autocomplete = $.attr(opts.input, 'autocomplete');
|
1511
1550
|
$.data(opts.input, 'datalistWidget', this);
|
1551
|
+
$.data(datalist, 'datalistWidgetData', this);
|
1512
1552
|
|
1513
1553
|
lazyLoad('WINDOWLOAD');
|
1514
1554
|
|