Current Path : /var/www/mainsite/new/wp-content/plugins/jet-elements/assets/js/lib/salvattore/ |
Current File : /var/www/mainsite/new/wp-content/plugins/jet-elements/assets/js/lib/salvattore/salvattore.min.js |
var salvattore=function(o,s,e){"use strict";var u={},n=[],a=[],i=[],d=function(e,t,r){e.dataset?e.dataset[t]=r:e.setAttribute("data-"+t,r)};return u.obtainGridSettings=function(e){var t=o.getComputedStyle(e,":before").getPropertyValue("content").slice(1,-1),r=t.match(/^\s*(\d+)(?:\s?\.(.+))?\s*$/),n=1,a=[];return r?(n=r[1],a=(a=r[2])?a.split("."):["column"]):(r=t.match(/^\s*\.(.+)\s+(\d+)\s*$/))&&(a=r[1],(n=r[2])&&(n=n.split("."))),{numberOfColumns:n,columnClasses:a}},u.addColumns=function(e,t){for(var r,n=u.obtainGridSettings(e),a=n.numberOfColumns,i=n.columnClasses,l=new Array(+a),o=s.createDocumentFragment(),c=a;0!=c--;)r="[data-columns] > *:nth-child("+a+"n-"+c+")",l.push(t.querySelectorAll(r));l.forEach(function(e){var t=s.createElement("div"),r=s.createDocumentFragment();t.className=i.join(" "),Array.prototype.forEach.call(e,function(e){r.appendChild(e)}),t.appendChild(r),o.appendChild(t)}),e.appendChild(o),d(e,"columns",a)},u.removeColumns=function(e){var t=s.createRange();t.selectNodeContents(e);var r=Array.prototype.filter.call(t.extractContents().childNodes,function(e){return e instanceof o.HTMLElement}),n=r.length,a=r[0].childNodes.length,i=new Array(a*n);Array.prototype.forEach.call(r,function(e,r){Array.prototype.forEach.call(e.children,function(e,t){i[t*n+r]=e})});var l=s.createElement("div");return d(l,"columns",0),i.filter(function(e){return!!e}).forEach(function(e){l.appendChild(e)}),l},u.recreateColumns=function(t){o.requestAnimationFrame(function(){u.addColumns(t,u.removeColumns(t));var e=new CustomEvent("columnsChange");t.dispatchEvent(e)})},u.mediaQueryChange=function(e){e.matches&&Array.prototype.forEach.call(n,u.recreateColumns)},u.getCSSRules=function(e){var t;try{t=e.sheet.cssRules||e.sheet.rules}catch(e){return[]}return t||[]},u.getStylesheets=function(){var r=Array.prototype.slice.call(s.querySelectorAll("style"));return r.forEach(function(e,t){"text/css"!==e.type&&""!==e.type&&r.splice(t,1)}),Array.prototype.concat.call(r,Array.prototype.slice.call(s.querySelectorAll("link[rel='stylesheet']")))},u.mediaRuleHasColumnsSelector=function(e){var t,r;try{t=e.length}catch(e){t=0}for(;t--;)if((r=e[t]).selectorText&&r.selectorText.match(/\[data-columns\](.*)::?before$/))return!0;return!1},u.scanMediaQueries=function(){var t=[];if(o.matchMedia){u.getStylesheets().forEach(function(e){Array.prototype.forEach.call(u.getCSSRules(e),function(e){try{e.media&&e.cssRules&&u.mediaRuleHasColumnsSelector(e.cssRules)&&t.push(e)}catch(e){}})});var r=a.filter(function(e){return-1===t.indexOf(e)});i.filter(function(e){return-1!==r.indexOf(e.rule)}).forEach(function(e){e.mql.removeListener(u.mediaQueryChange)}),i=i.filter(function(e){return-1===r.indexOf(e.rule)}),t.filter(function(e){return-1==a.indexOf(e)}).forEach(function(e){var t=o.matchMedia(e.media.mediaText);t.addListener(u.mediaQueryChange),i.push({rule:e,mql:t})}),a.length=0,a=t}},u.rescanMediaQueries=function(){u.scanMediaQueries(),Array.prototype.forEach.call(n,u.recreateColumns)},u.nextElementColumnIndex=function(e,t){var r,n,a=e.children,i=a.length,l=0,o=0;for(n=0;n<i;n++)r=a[n].children.length+(t[n].children||t[n].childNodes).length,0===l&&(l=r),r<l&&(o=n,l=r);return o},u.createFragmentsList=function(e){for(var t=new Array(e),r=0;r!==e;)t[r]=s.createDocumentFragment(),r++;return t},u.appendElements=function(r,e){var t=r.children,n=t.length,a=u.createFragmentsList(n);Array.prototype.forEach.call(e,function(e){var t=u.nextElementColumnIndex(r,a);a[t].appendChild(e)}),Array.prototype.forEach.call(t,function(e,t){e.appendChild(a[t])})},u.prependElements=function(e,t){var r=e.children,n=r.length,a=u.createFragmentsList(n),i=n-1;t.forEach(function(e){var t=a[i];t.insertBefore(e,t.firstChild),0===i?i=n-1:i--}),Array.prototype.forEach.call(r,function(e,t){e.insertBefore(a[t],e.firstChild)});for(var l=s.createDocumentFragment(),o=t.length%n;0!=o--;)l.appendChild(e.lastChild);e.insertBefore(l,e.firstChild)},u.registerGrid=function(e){if("none"!==o.getComputedStyle(e).display&&"true"!==e.getAttribute("data-inited")){e.setAttribute("data-inited","true");var t=s.createRange();t.selectNodeContents(e);var r=s.createElement("div");r.appendChild(t.extractContents()),d(r,"columns",0),u.addColumns(e,r),n.push(e)}},u.init=function(){var e=s.createElement("style");e.innerHTML="[data-columns]::before{display:block;visibility:hidden;position:absolute;font-size:1px;}",s.head.appendChild(e);var t=s.querySelectorAll("[data-columns]");Array.prototype.forEach.call(t,u.registerGrid),u.scanMediaQueries()},u.init(),{appendElements:u.appendElements,prependElements:u.prependElements,registerGrid:u.registerGrid,recreateColumns:u.recreateColumns,rescanMediaQueries:u.rescanMediaQueries,init:u.init,append_elements:u.appendElements,prepend_elements:u.prependElements,register_grid:u.registerGrid,recreate_columns:u.recreateColumns,rescan_media_queries:u.rescanMediaQueries}}(window,window.document);