123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593 |
- export default defineNuxtPlugin(nuxtApp => {
-
-
- ;(function(window, document, undefined){
- var classes = [];
-
- var tests = [];
-
-
- var ModernizrProto = {
-
- _version: '3.6.0',
-
-
- _config: {
- 'classPrefix': '',
- 'enableClasses': true,
- 'enableJSClass': true,
- 'usePrefixes': true
- },
-
- _q: [],
-
- on: function(test, cb) {
-
-
-
-
-
-
- var self = this;
- setTimeout(function() {
- cb(self[test]);
- }, 0);
- },
- addTest: function(name, fn, options) {
- tests.push({name: name, fn: fn, options: options});
- },
- addAsyncTest: function(fn) {
- tests.push({name: null, fn: fn});
- }
- };
-
-
- var Modernizr = function() {};
- Modernizr.prototype = ModernizrProto;
-
-
- Modernizr = new Modernizr();
-
-
- var docElement = document.documentElement;
-
-
- function is(obj, type) {
- return typeof obj === type;
- }
- ;
-
- function testRunner() {
- var featureNames;
- var feature;
- var aliasIdx;
- var result;
- var nameIdx;
- var featureName;
- var featureNameSplit;
- for (var featureIdx in tests) {
- if (tests.hasOwnProperty(featureIdx)) {
- featureNames = [];
- feature = tests[featureIdx];
-
-
-
-
-
-
-
- if (feature.name) {
- featureNames.push(feature.name.toLowerCase());
- if (feature.options && feature.options.aliases && feature.options.aliases.length) {
-
- for (aliasIdx = 0; aliasIdx < feature.options.aliases.length; aliasIdx++) {
- featureNames.push(feature.options.aliases[aliasIdx].toLowerCase());
- }
- }
- }
-
- result = is(feature.fn, 'function') ? feature.fn() : feature.fn;
-
- for (nameIdx = 0; nameIdx < featureNames.length; nameIdx++) {
- featureName = featureNames[nameIdx];
-
-
-
-
-
-
- featureNameSplit = featureName.split('.');
- if (featureNameSplit.length === 1) {
- Modernizr[featureNameSplit[0]] = result;
- } else {
-
- if (Modernizr[featureNameSplit[0]] && !(Modernizr[featureNameSplit[0]] instanceof Boolean)) {
- Modernizr[featureNameSplit[0]] = new Boolean(Modernizr[featureNameSplit[0]]);
- }
- Modernizr[featureNameSplit[0]][featureNameSplit[1]] = result;
- }
- classes.push((result ? '' : 'no-') + featureNameSplit.join('-'));
- }
- }
- }
- }
- ;
-
- var isSVG = docElement.nodeName.toLowerCase() === 'svg';
-
-
-
-
- function setClasses(classes) {
- var className = docElement.className;
- var classPrefix = Modernizr._config.classPrefix || '';
- if (isSVG) {
- className = className.baseVal;
- }
-
-
- if (Modernizr._config.enableJSClass) {
- var reJS = new RegExp('(^|\\s)' + classPrefix + 'no-js(\\s|$)');
- className = className.replace(reJS, '$1' + classPrefix + 'js$2');
- }
- if (Modernizr._config.enableClasses) {
-
- className += ' ' + classPrefix + classes.join(' ' + classPrefix);
- if (isSVG) {
- docElement.className.baseVal = className;
- } else {
- docElement.className = className;
- }
- }
- }
- ;
-
-
- var hasOwnProp;
- (function() {
- var _hasOwnProperty = ({}).hasOwnProperty;
-
-
- if (!is(_hasOwnProperty, 'undefined') && !is(_hasOwnProperty.call, 'undefined')) {
- hasOwnProp = function(object, property) {
- return _hasOwnProperty.call(object, property);
- };
- }
- else {
- hasOwnProp = function(object, property) {
- return ((property in object) && is(object.constructor.prototype[property], 'undefined'));
- };
- }
- })();
-
-
- ModernizrProto._l = {};
-
- ModernizrProto.on = function(feature, cb) {
-
- if (!this._l[feature]) {
- this._l[feature] = [];
- }
-
- this._l[feature].push(cb);
-
- if (Modernizr.hasOwnProperty(feature)) {
-
- setTimeout(function() {
- Modernizr._trigger(feature, Modernizr[feature]);
- }, 0);
- }
- };
-
- ModernizrProto._trigger = function(feature, res) {
- if (!this._l[feature]) {
- return;
- }
- var cbs = this._l[feature];
-
- setTimeout(function() {
- var i, cb;
- for (i = 0; i < cbs.length; i++) {
- cb = cbs[i];
- cb(res);
- }
- }, 0);
-
- delete this._l[feature];
- };
-
- function addTest(feature, test) {
- if (typeof feature == 'object') {
- for (var key in feature) {
- if (hasOwnProp(feature, key)) {
- addTest(key, feature[ key ]);
- }
- }
- } else {
- feature = feature.toLowerCase();
- var featureNameSplit = feature.split('.');
- var last = Modernizr[featureNameSplit[0]];
-
- if (featureNameSplit.length == 2) {
- last = last[featureNameSplit[1]];
- }
- if (typeof last != 'undefined') {
-
-
-
-
-
- return Modernizr;
- }
- test = typeof test == 'function' ? test() : test;
-
- if (featureNameSplit.length == 1) {
- Modernizr[featureNameSplit[0]] = test;
- } else {
-
- if (Modernizr[featureNameSplit[0]] && !(Modernizr[featureNameSplit[0]] instanceof Boolean)) {
- Modernizr[featureNameSplit[0]] = new Boolean(Modernizr[featureNameSplit[0]]);
- }
- Modernizr[featureNameSplit[0]][featureNameSplit[1]] = test;
- }
-
- setClasses([(!!test && test != false ? '' : 'no-') + featureNameSplit.join('-')]);
-
- Modernizr._trigger(feature, test);
- }
- return Modernizr;
- }
-
- Modernizr._q.push(function() {
- ModernizrProto.addTest = addTest;
- });
-
-
-
- Modernizr.addAsyncTest(function() {
- var webpTests = [{
- 'uri': 'data:image/webp;base64,UklGRiQAAABXRUJQVlA4IBgAAAAwAQCdASoBAAEAAwA0JaQAA3AA/vuUAAA=',
- 'name': 'webp'
- }, {
- 'uri': 'data:image/webp;base64,UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAABBxAR/Q9ERP8DAABWUDggGAAAADABAJ0BKgEAAQADADQlpAADcAD++/1QAA==',
- 'name': 'webp.alpha'
- }, {
- 'uri': 'data:image/webp;base64,UklGRlIAAABXRUJQVlA4WAoAAAASAAAAAAAAAAAAQU5JTQYAAAD/////AABBTk1GJgAAAAAAAAAAAAAAAAAAAGQAAABWUDhMDQAAAC8AAAAQBxAREYiI/gcA',
- 'name': 'webp.animation'
- }, {
- 'uri': 'data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA=',
- 'name': 'webp.lossless'
- }];
- var webp = webpTests.shift();
- function test(name, uri, cb) {
- var image = new Image();
- function addResult(event) {
-
-
- var result = event && event.type === 'load' ? image.width == 1 : false;
- var baseTest = name === 'webp';
-
-
- addTest(name, (baseTest && result) ? new Boolean(result) : result);
- if (cb) {
- cb(event);
- }
- }
- image.onerror = addResult;
- image.onload = addResult;
- image.src = uri;
- }
-
- test(webp.name, webp.uri, function(e) {
-
- if (e && e.type === 'load') {
- for (var i = 0; i < webpTests.length; i++) {
- test(webpTests[i].name, webpTests[i].uri);
- }
- }
- });
- });
-
- testRunner();
-
- setClasses(classes);
- delete ModernizrProto.addTest;
- delete ModernizrProto.addAsyncTest;
-
- for (var i = 0; i < Modernizr._q.length; i++) {
- Modernizr._q[i]();
- }
-
- window.Modernizr = Modernizr;
- ;
- })(window, document);
- });
|