Файловый менеджер - Редактировать - /home/digitalm/www/zetaworks/wp-content/themes/uncode/library/js/lib/vivus.min.js
Назад
"use strict";(function(){function Pathformer(element){if(typeof element=="undefined")throw new Error('Pathformer [constructor]: "element" parameter is required');if(element.constructor===String){element=document.getElementById(element);if(!element)throw new Error('Pathformer [constructor]: "element" parameter is not related to an existing ID')}if(!(element instanceof window.SVGElement||element instanceof window.SVGGElement||/^svg$/i.test(element.nodeName)))throw new Error('Pathformer [constructor]: "element" parameter must be a string or a SVGelement');this.el=element,this.scan(element)}function Vivus(element,options,callback){setupEnv(),this.isReady=!1,this.setElement(element,options),this.setOptions(options),this.setCallback(callback),this.isReady&&this.init()}Pathformer.prototype.TYPES=["line","ellipse","circle","polygon","polyline","rect"],Pathformer.prototype.ATTR_WATCH=["cx","cy","points","r","rx","ry","x","x1","x2","y","y1","y2"],Pathformer.prototype.scan=function(svg){var fn,element,pathData,pathDom,elements=svg.querySelectorAll(this.TYPES.join(","));for(var i=0;i<elements.length;i++)element=elements[i],fn=this[element.tagName.toLowerCase()+"ToPath"],pathData=fn(this.parseAttr(element.attributes)),pathDom=this.pathMaker(element,pathData),element.parentNode.replaceChild(pathDom,element)},Pathformer.prototype.lineToPath=function(element){var newElement={},x1=element.x1||0,y1=element.y1||0,x2=element.x2||0,y2=element.y2||0;return newElement.d="M"+x1+","+y1+"L"+x2+","+y2,newElement},Pathformer.prototype.rectToPath=function(element){var newElement={},x=parseFloat(element.x)||0,y=parseFloat(element.y)||0,width=parseFloat(element.width)||0,height=parseFloat(element.height)||0;if(element.rx||element.ry){var rx=parseInt(element.rx,10)||-1,ry=parseInt(element.ry,10)||-1;rx=Math.min(Math.max(rx<0?ry:rx,0),width/2),ry=Math.min(Math.max(ry<0?rx:ry,0),height/2),newElement.d="M "+(x+rx)+","+y+" "+"L "+(x+width-rx)+","+y+" "+"A "+rx+","+ry+",0,0,1,"+(x+width)+","+(y+ry)+" "+"L "+(x+width)+","+(y+height-ry)+" "+"A "+rx+","+ry+",0,0,1,"+(x+width-rx)+","+(y+height)+" "+"L "+(x+rx)+","+(y+height)+" "+"A "+rx+","+ry+",0,0,1,"+x+","+(y+height-ry)+" "+"L "+x+","+(y+ry)+" "+"A "+rx+","+ry+",0,0,1,"+(x+rx)+","+y}else newElement.d="M"+x+" "+y+" "+"L"+(x+width)+" "+y+" "+"L"+(x+width)+" "+(y+height)+" "+"L"+x+" "+(y+height)+" Z";return newElement},Pathformer.prototype.polylineToPath=function(element){var newElement={},points=element.points.trim().split(" "),i,path;if(element.points.indexOf(",")===-1){var formattedPoints=[];for(i=0;i<points.length;i+=2)formattedPoints.push(points[i]+","+points[i+1]);points=formattedPoints}path="M"+points[0];for(i=1;i<points.length;i++)points[i].indexOf(",")!==-1&&(path+="L"+points[i]);return newElement.d=path,newElement},Pathformer.prototype.polygonToPath=function(element){var newElement=Pathformer.prototype.polylineToPath(element);return newElement.d+="Z",newElement},Pathformer.prototype.ellipseToPath=function(element){var newElement={},rx=parseFloat(element.rx)||0,ry=parseFloat(element.ry)||0,cx=parseFloat(element.cx)||0,cy=parseFloat(element.cy)||0,startX=cx-rx,startY=cy,endX=parseFloat(cx)+parseFloat(rx),endY=cy;return newElement.d="M"+startX+","+startY+"A"+rx+","+ry+" 0,1,1 "+endX+","+endY+"A"+rx+","+ry+" 0,1,1 "+startX+","+endY,newElement},Pathformer.prototype.circleToPath=function(element){var newElement={},r=parseFloat(element.r)||0,cx=parseFloat(element.cx)||0,cy=parseFloat(element.cy)||0,startX=cx-r,startY=cy,endX=parseFloat(cx)+parseFloat(r),endY=cy;return newElement.d="M"+startX+","+startY+"A"+r+","+r+" 0,1,1 "+endX+","+endY+"A"+r+","+r+" 0,1,1 "+startX+","+endY,newElement},Pathformer.prototype.pathMaker=function(element,pathData){var i,attr,pathTag=document.createElementNS("http://www.w3.org/2000/svg","path");for(i=0;i<element.attributes.length;i++)attr=element.attributes[i],this.ATTR_WATCH.indexOf(attr.name)===-1&&pathTag.setAttribute(attr.name,attr.value);for(i in pathData)pathTag.setAttribute(i,pathData[i]);return pathTag},Pathformer.prototype.parseAttr=function(element){var attr,output={};for(var i=0;i<element.length;i++){attr=element[i];if(this.ATTR_WATCH.indexOf(attr.name)!==-1&&attr.value.indexOf("%")!==-1)throw new Error("Pathformer [parseAttr]: a SVG shape got values in percentage. This cannot be transformed into 'path' tags. Please use 'viewBox'.");output[attr.name]=attr.value}return output},"use strict";var setupEnv,requestAnimFrame,cancelAnimFrame,parsePositiveInt;Vivus.LINEAR=function(x){return x},Vivus.EASE=function(x){return-Math.cos(x*Math.PI)/2+.5},Vivus.EASE_OUT=function(x){return 1-Math.pow(1-x,3)},Vivus.EASE_IN=function(x){return Math.pow(x,3)},Vivus.EASE_OUT_BOUNCE=function(x){var base=-Math.cos(x*.5*Math.PI)+1,rate=Math.pow(base,1.5),rateR=Math.pow(1-x,2),progress=-Math.abs(Math.cos(rate*2.5*Math.PI))+1;return 1-rateR+progress*rateR},Vivus.prototype.setElement=function(element,options){var onLoad,self;if(typeof element=="undefined")throw new Error('Vivus [constructor]: "element" parameter is required');if(element.constructor===String){element=document.getElementById(element);if(!element)throw new Error('Vivus [constructor]: "element" parameter is not related to an existing ID')}this.parentEl=element;if(options&&options.file){var self=this;onLoad=function(e){var domSandbox=document.createElement("div");domSandbox.innerHTML=this.responseText;var svgTag=domSandbox.querySelector("svg");if(!svgTag)throw new Error("Vivus [load]: Cannot find the SVG in the loaded file : "+options.file);self.el=svgTag,self.el.setAttribute("width","100%"),self.el.setAttribute("height","100%"),self.parentEl.appendChild(self.el),self.isReady=!0,self.init(),self=null};var oReq=new window.XMLHttpRequest;oReq.addEventListener("load",onLoad),oReq.open("GET",options.file),oReq.send();return}switch(element.constructor){case window.SVGSVGElement:case window.SVGElement:case window.SVGGElement:this.el=element,this.isReady=!0;break;case window.HTMLObjectElement:self=this,onLoad=function(e){if(self.isReady)return;self.el=element.contentDocument&&element.contentDocument.querySelector("svg");if(!self.el&&e)throw new Error("Vivus [constructor]: object loaded does not contain any SVG");self.el&&(element.getAttribute("built-by-vivus")&&(self.parentEl.insertBefore(self.el,element),self.parentEl.removeChild(element),self.el.setAttribute("width","100%"),self.el.setAttribute("height","100%")),self.isReady=!0,self.init(),self=null)},onLoad()||element.addEventListener("load",onLoad);break;default:throw new Error('Vivus [constructor]: "element" parameter is not valid (or miss the "file" attribute)')}},Vivus.prototype.setOptions=function(options){var allowedTypes=["delayed","sync","async","nsync","oneByOne","scenario","scenario-sync"],allowedStarts=["inViewport","manual","autostart"];if(options!==undefined&&options.constructor!==Object)throw new Error('Vivus [constructor]: "options" parameter must be an object');options=options||{};if(options.type&&allowedTypes.indexOf(options.type)===-1)throw new Error("Vivus [constructor]: "+options.type+" is not an existing animation `type`");this.type=options.type||allowedTypes[0];if(options.start&&allowedStarts.indexOf(options.start)===-1)throw new Error("Vivus [constructor]: "+options.start+" is not an existing `start` option");this.start=options.start||allowedStarts[0],this.isIE=window.navigator.userAgent.indexOf("MSIE")!==-1||window.navigator.userAgent.indexOf("Trident/")!==-1||window.navigator.userAgent.indexOf("Edge/")!==-1,this.duration=parsePositiveInt(options.duration,120),this.delay=parsePositiveInt(options.delay,null),this.delayStart=parsePositiveInt(options.delayStart,null),this.dashGap=parsePositiveInt(options.dashGap,1),this.forceRender=options.hasOwnProperty("forceRender")?!!options.forceRender:this.isIE,this.reverseStack=!!options.reverseStack,this.selfDestroy=!!options.selfDestroy,this.onReady=options.onReady,this.map=[],this.frameLength=this.currentFrame=this.delayUnit=this.speed=this.handle=null,this.ignoreInvisible=options.hasOwnProperty("ignoreInvisible")?!!options.ignoreInvisible:!1,this.animTimingFunction=options.animTimingFunction||Vivus.LINEAR,this.pathTimingFunction=options.pathTimingFunction||Vivus.LINEAR;if(this.delay>=this.duration)throw new Error("Vivus [constructor]: delay must be shorter than duration")},Vivus.prototype.setCallback=function(callback){if(!!callback&&callback.constructor!==Function)throw new Error('Vivus [constructor]: "callback" parameter must be a function');this.callback=callback||function(){}},Vivus.prototype.mapping=function(){var i,paths,path,pAttrs,pathObj,totalLength,lengthMeter,timePoint;timePoint=totalLength=lengthMeter=0,paths=this.el.querySelectorAll("path");for(i=0;i<paths.length;i++){path=paths[i];if(this.isInvisible(path))continue;pathObj={el:path,length:Math.ceil(path.getTotalLength())};if(isNaN(pathObj.length)){window.console&&console.warn&&console.warn("Vivus [mapping]: cannot retrieve a path element length",path);continue}this.map.push(pathObj),path.style.strokeDasharray=pathObj.length+" "+(pathObj.length+this.dashGap*2),path.style.strokeDashoffset=pathObj.length+this.dashGap,pathObj.length+=this.dashGap,totalLength+=pathObj.length,this.renderPath(i)}totalLength=totalLength===0?1:totalLength,this.delay=this.delay===null?this.duration/3:this.delay,this.delayUnit=this.delay/(paths.length>1?paths.length-1:1),this.reverseStack&&this.map.reverse();for(i=0;i<this.map.length;i++){pathObj=this.map[i];switch(this.type){case"delayed":pathObj.startAt=this.delayUnit*i,pathObj.duration=this.duration-this.delay;break;case"oneByOne":pathObj.startAt=lengthMeter/totalLength*this.duration,pathObj.duration=pathObj.length/totalLength*this.duration;break;case"sync":case"async":case"nsync":pathObj.startAt=0,pathObj.duration=this.duration;break;case"scenario-sync":path=pathObj.el,pAttrs=this.parseAttr(path),pathObj.startAt=timePoint+(parsePositiveInt(pAttrs["data-delay"],this.delayUnit)||0),pathObj.duration=parsePositiveInt(pAttrs["data-duration"],this.duration),timePoint=pAttrs["data-async"]!==undefined?pathObj.startAt:pathObj.startAt+pathObj.duration,this.frameLength=Math.max(this.frameLength,pathObj.startAt+pathObj.duration);break;case"scenario":path=pathObj.el,pAttrs=this.parseAttr(path),pathObj.startAt=parsePositiveInt(pAttrs["data-start"],this.delayUnit)||0,pathObj.duration=parsePositiveInt(pAttrs["data-duration"],this.duration),this.frameLength=Math.max(this.frameLength,pathObj.startAt+pathObj.duration)}lengthMeter+=pathObj.length,this.frameLength=this.frameLength||this.duration}},Vivus.prototype.drawer=function(){var self=this;this.currentFrame+=this.speed;if(this.currentFrame<=0)this.stop(),this.reset();else{if(!(this.currentFrame>=this.frameLength)){this.trace(),this.handle=requestAnimFrame(function(){self.drawer()});return}this.stop(),this.currentFrame=this.frameLength,this.trace(),this.selfDestroy&&this.destroy()}this.callback(this),this.instanceCallback&&(this.instanceCallback(this),this.instanceCallback=null)},Vivus.prototype.trace=function(){var i,progress,path,currentFrame;currentFrame=this.animTimingFunction(this.currentFrame/this.frameLength)*this.frameLength;for(i=0;i<this.map.length;i++)path=this.map[i],progress=(currentFrame-path.startAt)/path.duration,progress=this.pathTimingFunction(Math.max(0,Math.min(1,progress))),path.progress!==progress&&(path.progress=progress,path.el.style.strokeDashoffset=Math.floor(path.length*(1-progress)),this.renderPath(i))},Vivus.prototype.renderPath=function(index){if(this.forceRender&&this.map&&this.map[index]){var pathObj=this.map[index],newPath=pathObj.el.cloneNode(!0);pathObj.el.parentNode.replaceChild(newPath,pathObj.el),pathObj.el=newPath}},Vivus.prototype.init=function(){this.frameLength=0,this.currentFrame=0,this.map=[],new Pathformer(this.el),this.mapping(),this.starter(),this.onReady&&this.onReady(this)},Vivus.prototype.starter=function(){switch(this.start){case"manual":return;case"autostart":this.play();break;case"inViewport":var self=this,listener=function(){self.isInViewport(self.parentEl,1)&&(self.play(),window.removeEventListener("scroll",listener),window.removeEventListener("fp-slide-changed",listener),window.removeEventListener("fp-slide-scroll",listener))};window.addEventListener("scroll",listener),window.addEventListener("fp-slide-changed",listener),window.addEventListener("fp-slide-scroll",listener),listener()}},Vivus.prototype.getStatus=function(){return this.currentFrame===0?"start":this.currentFrame===this.frameLength?"end":"progress"},Vivus.prototype.reset=function(){return this.setFrameProgress(0)},Vivus.prototype.finish=function(){return this.setFrameProgress(1)},Vivus.prototype.setFrameProgress=function(progress){return progress=Math.min(1,Math.max(0,progress)),this.currentFrame=Math.round(this.frameLength*progress),this.trace(),this},Vivus.prototype.play=function(speed,callback){this.instanceCallback=null;if(speed&&typeof speed=="function")this.instanceCallback=speed,speed=null;else if(speed&&typeof speed!="number")throw new Error("Vivus [play]: invalid speed");callback&&typeof callback=="function"&&!this.instanceCallback&&(this.instanceCallback=callback),this.speed=speed||1;if(!this.handle){var $this=this,delay=this.delayStart!=null?this.delayStart:0;setTimeout(function(){$this.drawer()},delay)}return this},Vivus.prototype.stop=function(){return this.handle&&(cancelAnimFrame(this.handle),this.handle=null),this},Vivus.prototype.destroy=function(){this.stop();var i,path;for(i=0;i<this.map.length;i++)path=this.map[i],path.el.style.strokeDashoffset=null,path.el.style.strokeDasharray=null,this.renderPath(i)},Vivus.prototype.isInvisible=function(el){var rect,ignoreAttr=el.getAttribute("data-ignore");return ignoreAttr!==null?ignoreAttr!=="false":this.ignoreInvisible?(rect=el.getBoundingClientRect(),!rect.width&&!rect.height):!1},Vivus.prototype.parseAttr=function(element){var attr,output={};if(element&&element.attributes)for(var i=0;i<element.attributes.length;i++)attr=element.attributes[i],output[attr.name]=attr.value;return output},Vivus.prototype.isInViewport=function(el,h){var scrolled=this.scrollY(),viewed=scrolled+this.getViewportH(),elBCR=el.getBoundingClientRect(),elHeight=elBCR.height,elTop=scrolled+elBCR.top,elBottom=elTop+elHeight;return h=h||0,elTop+elHeight*h<=viewed&&elBottom>=scrolled},Vivus.prototype.getViewportH=function(){var client=this.docElem.clientHeight,inner=window.innerHeight;return client<inner?inner:client},Vivus.prototype.scrollY=function(){return window.pageYOffset||this.docElem.scrollTop},setupEnv=function(){if(Vivus.prototype.docElem)return;Vivus.prototype.docElem=window.document.documentElement,requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(callback){return window.setTimeout(callback,1e3/60)}}(),cancelAnimFrame=function(){return window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||window.oCancelAnimationFrame||window.msCancelAnimationFrame||function(id){return window.clearTimeout(id)}}()},parsePositiveInt=function(value,defaultValue){var output=parseInt(value,10);return output>=0?output:defaultValue},typeof define=="function"&&define.amd?define([],function(){return Vivus}):typeof exports=="object"?module.exports=Vivus:window.Vivus=Vivus})()
| ver. 1.4 |
Github
|
.
| PHP 8.3.23 | Генерация страницы: 0.06 |
proxy
|
phpinfo
|
Настройка