Files
ionic-framework/scripts/vendor/web-animations-js/inter-component-web-animations-next-liteweb-animations-1.js
2015-06-12 10:58:31 -05:00

2 lines
31 KiB
JavaScript

!function(shared,scope,testing){function makePropertySpecificKeyframeGroups(keyframes){for(var propertySpecificKeyframeGroups={},i=0;i<keyframes.length;i++)for(var member in keyframes[i])if("offset"!=member&&"easing"!=member&&"composite"!=member){var propertySpecificKeyframe={offset:keyframes[i].offset,easing:keyframes[i].easing,value:keyframes[i][member]};propertySpecificKeyframeGroups[member]=propertySpecificKeyframeGroups[member]||[],propertySpecificKeyframeGroups[member].push(propertySpecificKeyframe)}for(var groupName in propertySpecificKeyframeGroups){var group=propertySpecificKeyframeGroups[groupName];if(0!=group[0].offset||1!=group[group.length-1].offset)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"Partial keyframes are not supported"}}return propertySpecificKeyframeGroups}function makeInterpolations(propertySpecificKeyframeGroups){var interpolations=[];for(var groupName in propertySpecificKeyframeGroups)for(var group=propertySpecificKeyframeGroups[groupName],i=0;i<group.length-1;i++){var startTime=group[i].offset,endTime=group[i+1].offset,startValue=group[i].value,endValue=group[i+1].value;startTime==endTime&&(1==endTime?startValue=endValue:endValue=startValue),interpolations.push({startTime:startTime,endTime:endTime,easing:group[i].easing,property:groupName,interpolation:scope.propertyInterpolation(groupName,startValue,endValue)})}return interpolations.sort(function(leftInterpolation,rightInterpolation){return leftInterpolation.startTime-rightInterpolation.startTime}),interpolations}scope.convertEffectInput=function(effectInput){var keyframes=shared.normalizeKeyframes(effectInput),propertySpecificKeyframeGroups=makePropertySpecificKeyframeGroups(keyframes),interpolations=makeInterpolations(propertySpecificKeyframeGroups);return function(target,fraction){if(null!=fraction)interpolations.filter(function(interpolation){return 0>=fraction&&0==interpolation.startTime||fraction>=1&&1==interpolation.endTime||fraction>=interpolation.startTime&&fraction<=interpolation.endTime}).forEach(function(interpolation){var offsetFraction=fraction-interpolation.startTime,localDuration=interpolation.endTime-interpolation.startTime,scaledLocalTime=0==localDuration?0:interpolation.easing(offsetFraction/localDuration);scope.apply(target,interpolation.property,interpolation.interpolation(scaledLocalTime))});else for(var property in propertySpecificKeyframeGroups)"offset"!=property&&"easing"!=property&&"composite"!=property&&scope.clear(target,property)}}}(webAnimationsShared,webAnimations1,webAnimationsTesting),function(scope,testing){function addPropertyHandler(parser,merger,property){propertyHandlers[property]=propertyHandlers[property]||[],propertyHandlers[property].push([parser,merger])}function addPropertiesHandler(parser,merger,properties){for(var i=0;i<properties.length;i++){var property=properties[i];addPropertyHandler(parser,merger,property),/-/.test(property)&&addPropertyHandler(parser,merger,property.replace(/-(.)/g,function(_,c){return c.toUpperCase()}))}}function propertyInterpolation(property,left,right){for(var handlers=left==right?[]:propertyHandlers[property],i=0;handlers&&i<handlers.length;i++){var parsedLeft=handlers[i][0](left),parsedRight=handlers[i][0](right);if(void 0!==parsedLeft&&void 0!==parsedRight){var interpolationArgs=handlers[i][1](parsedLeft,parsedRight);if(interpolationArgs){var interp=scope.Interpolation.apply(null,interpolationArgs);return function(t){return 0==t?left:1==t?right:interp(t)}}}}return scope.Interpolation(!1,!0,function(bool){return bool?right:left})}var propertyHandlers={};scope.addPropertiesHandler=addPropertiesHandler,scope.propertyInterpolation=propertyInterpolation}(webAnimations1,webAnimationsTesting),function(shared,scope,testing){function EffectTime(timing){var activeDuration=shared.calculateActiveDuration(timing),effectTime=function(localTime){return shared.calculateTimeFraction(activeDuration,localTime,timing)};return effectTime._totalDuration=timing.delay+activeDuration+timing.endDelay,effectTime._isCurrent=function(localTime){var phase=shared.calculatePhase(activeDuration,localTime,timing);return phase===PhaseActive||phase===PhaseBefore},effectTime}scope.KeyframeEffect=function(target,effectInput,timingInput){var timeFraction,effectTime=EffectTime(shared.normalizeTimingInput(timingInput)),interpolations=scope.convertEffectInput(effectInput),keyframeEffect=function(){interpolations(target,timeFraction)};return keyframeEffect._update=function(localTime){return timeFraction=effectTime(localTime),null!==timeFraction},keyframeEffect._clear=function(){interpolations(target,null)},keyframeEffect._hasSameTarget=function(otherTarget){return target===otherTarget},keyframeEffect._isCurrent=effectTime._isCurrent,keyframeEffect._totalDuration=effectTime._totalDuration,keyframeEffect},scope.NullEffect=function(clear){var nullEffect=function(){clear&&(clear(),clear=null)};return nullEffect._update=function(){return null},nullEffect._totalDuration=0,nullEffect._isCurrent=function(){return!1},nullEffect._hasSameTarget=function(){return!1},nullEffect}}(webAnimationsShared,webAnimations1,webAnimationsTesting),function(scope,testing){scope.apply=function(element,property,value){element.style[scope.propertyName(property)]=value},scope.clear=function(element,property){element.style[scope.propertyName(property)]=""}}(webAnimations1,webAnimationsTesting),function(scope){window.Element.prototype.animate=function(effectInput,timingInput){return scope.timeline._play(scope.KeyframeEffect(this,effectInput,timingInput))}}(webAnimations1),function(scope,testing){function interpolate(from,to,f){if("number"==typeof from&&"number"==typeof to)return from*(1-f)+to*f;if("boolean"==typeof from&&"boolean"==typeof to)return.5>f?from:to;if(from.length==to.length){for(var r=[],i=0;i<from.length;i++)r.push(interpolate(from[i],to[i],f));return r}throw"Mismatched interpolation arguments "+from+":"+to}scope.Interpolation=function(from,to,convertToString){return function(f){return convertToString(interpolate(from,to,f))}}}(webAnimations1,webAnimationsTesting),function(scope,testing){var sequenceNumber=0,AnimationEvent=function(target,currentTime,timelineTime){this.target=target,this.currentTime=currentTime,this.timelineTime=timelineTime,this.type="finish",this.bubbles=!1,this.cancelable=!1,this.currentTarget=target,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()};scope.Animation=function(effect){this._sequenceNumber=sequenceNumber++,this._currentTime=0,this._startTime=null,this.paused=!1,this._playbackRate=1,this._inTimeline=!0,this._finishedFlag=!1,this.onfinish=null,this._finishHandlers=[],this._effect=effect,this._inEffect=this._effect._update(0),this._idle=!0,this._currentTimePending=!1},scope.Animation.prototype={_ensureAlive:function(){this.playbackRate<0&&0===this.currentTime?this._inEffect=this._effect._update(-1):this._inEffect=this._effect._update(this.currentTime),this._inTimeline||!this._inEffect&&this._finishedFlag||(this._inTimeline=!0,scope.timeline._animations.push(this))},_tickCurrentTime:function(newTime,ignoreLimit){newTime!=this._currentTime&&(this._currentTime=newTime,this.finished&&!ignoreLimit&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(newTime){newTime=+newTime,isNaN(newTime)||(scope.restart(),this.paused||null==this._startTime||(this._startTime=this._timeline.currentTime-newTime/this._playbackRate),this._currentTimePending=!1,this._currentTime!=newTime&&(this._tickCurrentTime(newTime,!0),scope.invalidateEffects()))},get startTime(){return this._startTime},set startTime(newTime){newTime=+newTime,isNaN(newTime)||this.paused||this._idle||(this._startTime=newTime,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),scope.invalidateEffects())},get playbackRate(){return this._playbackRate},set playbackRate(value){if(value!=this._playbackRate){var oldCurrentTime=this.currentTime;this._playbackRate=value,this._startTime=null,"paused"!=this.playState&&"idle"!=this.playState&&this.play(),null!=oldCurrentTime&&(this.currentTime=oldCurrentTime)}},get finished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?"idle":null==this._startTime&&!this.paused&&0!=this.playbackRate||this._currentTimePending?"pending":this.paused?"paused":this.finished?"finished":"running"},play:function(){this.paused=!1,(this.finished||this._idle)&&(this._currentTime=this._playbackRate>0?0:this._totalDuration,this._startTime=null,scope.invalidateEffects()),this._finishedFlag=!1,scope.restart(),this._idle=!1,this._ensureAlive()},pause:function(){this.finished||this.paused||this._idle||(this._currentTimePending=!0),this._startTime=null,this.paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1)},cancel:function(){this._inEffect=!1,this._idle=!0,this.currentTime=0,this._startTime=null},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(type,handler){"function"==typeof handler&&"finish"==type&&this._finishHandlers.push(handler)},removeEventListener:function(type,handler){if("finish"==type){var index=this._finishHandlers.indexOf(handler);index>=0&&this._finishHandlers.splice(index,1)}},_fireEvents:function(baseTime){var finished=this.finished;if((finished||this._idle)&&!this._finishedFlag){var event=new AnimationEvent(this,this._currentTime,baseTime),handlers=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);handlers.forEach(function(handler){handler.call(event.target,event)})}this._finishedFlag=finished},_tick:function(timelineTime){return this._idle||this.paused||(null==this._startTime?this.startTime=timelineTime-this._currentTime/this.playbackRate:this.finished||this._tickCurrentTime((timelineTime-this._startTime)*this.playbackRate)),this._currentTimePending=!1,this._fireEvents(timelineTime),!this._idle&&(this._inEffect||!this._finishedFlag)}}}(webAnimations1,webAnimationsTesting),function(shared,scope,testing){function processRafCallbacks(t){var processing=rafCallbacks;rafCallbacks=[],tick(t),processing.forEach(function(entry){entry[1](t)}),needsRetick&&tick(t),applyPendingEffects()}function compareAnimations(leftAnimation,rightAnimation){return leftAnimation._sequenceNumber-rightAnimation._sequenceNumber}function InternalTimeline(){this._animations=[],this.currentTime=window.performance&&performance.now?performance.now():0}function applyPendingEffects(){pendingEffects.forEach(function(f){f()}),pendingEffects.length=0}function tick(t){hasRestartedThisFrame=!1;var timeline=scope.timeline;timeline.currentTime=t,timeline._animations.sort(compareAnimations),ticking=!1;var updatingAnimations=timeline._animations;timeline._animations=[];var newPendingClears=[],newPendingEffects=[];updatingAnimations=updatingAnimations.filter(function(animation){return animation._inTimeline=animation._tick(t),animation._inEffect?newPendingEffects.push(animation._effect):newPendingClears.push(animation._effect),animation.finished||animation.paused||animation._idle||(ticking=!0),animation._inTimeline}),pendingEffects.push.apply(pendingEffects,newPendingClears),pendingEffects.push.apply(pendingEffects,newPendingEffects),timeline._animations.push.apply(timeline._animations,updatingAnimations),needsRetick=!1,ticking&&requestAnimationFrame(function(){})}var originalRequestAnimationFrame=window.requestAnimationFrame,rafCallbacks=[],rafId=0;window.requestAnimationFrame=function(f){var id=rafId++;return 0==rafCallbacks.length&&originalRequestAnimationFrame(processRafCallbacks),rafCallbacks.push([id,f]),id},window.cancelAnimationFrame=function(id){rafCallbacks.forEach(function(entry){entry[0]==id&&(entry[1]=function(){})})},InternalTimeline.prototype={_play:function(effect){effect._timing=shared.normalizeTimingInput(effect.timing);var animation=new scope.Animation(effect);return animation._idle=!1,animation._timeline=this,this._animations.push(animation),scope.restart(),scope.invalidateEffects(),animation}};var ticking=!1,hasRestartedThisFrame=!1;scope.restart=function(){return ticking||(ticking=!0,requestAnimationFrame(function(){}),hasRestartedThisFrame=!0),hasRestartedThisFrame};var needsRetick=!1;scope.invalidateEffects=function(){needsRetick=!0};var pendingEffects=[],originalGetComputedStyle=window.getComputedStyle;Object.defineProperty(window,"getComputedStyle",{configurable:!0,enumerable:!0,value:function(){return needsRetick&&tick(timeline.currentTime),applyPendingEffects(),originalGetComputedStyle.apply(this,arguments)}});var timeline=new InternalTimeline;scope.timeline=timeline}(webAnimationsShared,webAnimations1,webAnimationsTesting),function(scope){function consumeToken(regex,string){var result=regex.exec(string);return result?(result=regex.ignoreCase?result[0].toLowerCase():result[0],[result,string.substr(result.length)]):void 0}function consumeTrimmed(consumer,string){string=string.replace(/^\s*/,"");var result=consumer(string);return result?[result[0],result[1].replace(/^\s*/,"")]:void 0}function consumeRepeated(consumer,separator,string){consumer=consumeTrimmed.bind(null,consumer);for(var list=[];;){var result=consumer(string);if(!result)return[list,string];if(list.push(result[0]),string=result[1],result=consumeToken(separator,string),!result||""==result[1])return[list,string];string=result[1]}}function consumeParenthesised(parser,string){for(var nesting=0,n=0;n<string.length&&(!/\s|,/.test(string[n])||0!=nesting);n++)if("("==string[n])nesting++;else if(")"==string[n]&&(nesting--,0==nesting&&n++,0>=nesting))break;var parsed=parser(string.substr(0,n));return void 0==parsed?void 0:[parsed,string.substr(n)]}function lcm(a,b){for(var c=a,d=b;c&&d;)c>d?c%=d:d%=c;return c=a*b/(c+d)}function ignore(value){return function(input){var result=value(input);return result&&(result[0]=void 0),result}}function optional(value,defaultValue){return function(input){var result=value(input);return result?result:[defaultValue,input]}}function consumeList(list,input){for(var output=[],i=0;i<list.length;i++){var result=scope.consumeTrimmed(list[i],input);if(!result||""==result[0])return;void 0!==result[0]&&output.push(result[0]),input=result[1]}return""==input?output:void 0}function mergeWrappedNestedRepeated(wrap,nestedMerge,separator,left,right){for(var matchingLeft=[],matchingRight=[],reconsititution=[],length=lcm(left.length,right.length),i=0;length>i;i++){var thing=nestedMerge(left[i%left.length],right[i%right.length]);if(!thing)return;matchingLeft.push(thing[0]),matchingRight.push(thing[1]),reconsititution.push(thing[2])}return[matchingLeft,matchingRight,function(positions){var result=positions.map(function(position,i){return reconsititution[i](position)}).join(separator);return wrap?wrap(result):result}]}function mergeList(left,right,list){for(var lefts=[],rights=[],functions=[],j=0,i=0;i<list.length;i++)if("function"==typeof list[i]){var result=list[i](left[j],right[j++]);lefts.push(result[0]),rights.push(result[1]),functions.push(result[2])}else!function(pos){lefts.push(!1),rights.push(!1),functions.push(function(){return list[pos]})}(i);return[lefts,rights,function(results){for(var result="",i=0;i<results.length;i++)result+=functions[i](results[i]);return result}]}scope.consumeToken=consumeToken,scope.consumeTrimmed=consumeTrimmed,scope.consumeRepeated=consumeRepeated,scope.consumeParenthesised=consumeParenthesised,scope.ignore=ignore,scope.optional=optional,scope.consumeList=consumeList,scope.mergeNestedRepeated=mergeWrappedNestedRepeated.bind(null,null),scope.mergeWrappedNestedRepeated=mergeWrappedNestedRepeated,scope.mergeList=mergeList}(webAnimations1),function(scope){function consumeShadow(string){function consumePart(string){var result=scope.consumeToken(/^inset/i,string);if(result)return shadow.inset=!0,result;var result=scope.consumeLengthOrPercent(string);if(result)return shadow.lengths.push(result[0]),result;var result=scope.consumeColor(string);return result?(shadow.color=result[0],result):void 0}var shadow={inset:!1,lengths:[],color:null},result=scope.consumeRepeated(consumePart,/^/,string);return result&&result[0].length?[shadow,result[1]]:void 0}function parseShadowList(string){var result=scope.consumeRepeated(consumeShadow,/^,/,string);return result&&""==result[1]?result[0]:void 0}function mergeShadow(left,right){for(;left.lengths.length<Math.max(left.lengths.length,right.lengths.length);)left.lengths.push({px:0});for(;right.lengths.length<Math.max(left.lengths.length,right.lengths.length);)right.lengths.push({px:0});if(left.inset==right.inset&&!!left.color==!!right.color){for(var colorReconstitution,lengthReconstitution=[],matchingLeft=[[],0],matchingRight=[[],0],i=0;i<left.lengths.length;i++){var mergedDimensions=scope.mergeDimensions(left.lengths[i],right.lengths[i],2==i);matchingLeft[0].push(mergedDimensions[0]),matchingRight[0].push(mergedDimensions[1]),lengthReconstitution.push(mergedDimensions[2])}if(left.color&&right.color){var mergedColor=scope.mergeColors(left.color,right.color);matchingLeft[1]=mergedColor[0],matchingRight[1]=mergedColor[1],colorReconstitution=mergedColor[2]}return[matchingLeft,matchingRight,function(value){for(var result=left.inset?"inset ":" ",i=0;i<lengthReconstitution.length;i++)result+=lengthReconstitution[i](value[0][i])+" ";return colorReconstitution&&(result+=colorReconstitution(value[1])),result}]}}function mergeNestedRepeatedShadow(nestedMerge,separator,left,right){function defaultShadow(inset){return{inset:inset,color:[0,0,0,0],lengths:[{px:0},{px:0},{px:0},{px:0}]}}for(var leftCopy=[],rightCopy=[],i=0;i<left.length||i<right.length;i++){var l=left[i]||defaultShadow(right[i].inset),r=right[i]||defaultShadow(left[i].inset);leftCopy.push(l),rightCopy.push(r)}return scope.mergeNestedRepeated(nestedMerge,separator,leftCopy,rightCopy)}var mergeShadowList=mergeNestedRepeatedShadow.bind(null,mergeShadow,", ");scope.addPropertiesHandler(parseShadowList,mergeShadowList,["box-shadow","text-shadow"])}(webAnimations1),function(scope,testing){function numberToString(x){return x.toFixed(3).replace(".000","")}function clamp(min,max,x){return Math.min(max,Math.max(min,x))}function parseNumber(string){return/^\s*[-+]?(\d*\.)?\d+\s*$/.test(string)?Number(string):void 0}function mergeNumbers(left,right){return[left,right,numberToString]}function mergeFlex(left,right){return 0!=left?clampedMergeNumbers(0,1/0)(left,right):void 0}function mergePositiveIntegers(left,right){return[left,right,function(x){return Math.round(clamp(1,1/0,x))}]}function clampedMergeNumbers(min,max){return function(left,right){return[left,right,function(x){return numberToString(clamp(min,max,x))}]}}function round(left,right){return[left,right,Math.round]}scope.clamp=clamp,scope.addPropertiesHandler(parseNumber,clampedMergeNumbers(0,1/0),["border-image-width","line-height"]),scope.addPropertiesHandler(parseNumber,clampedMergeNumbers(0,1),["opacity","shape-image-threshold"]),scope.addPropertiesHandler(parseNumber,mergeFlex,["flex-grow","flex-shrink"]),scope.addPropertiesHandler(parseNumber,mergePositiveIntegers,["orphans","widows"]),scope.addPropertiesHandler(parseNumber,round,["z-index"]),scope.parseNumber=parseNumber,scope.mergeNumbers=mergeNumbers,scope.numberToString=numberToString}(webAnimations1,webAnimationsTesting),function(scope,testing){function merge(left,right){return"visible"==left||"visible"==right?[0,1,function(x){return 0>=x?left:x>=1?right:"visible"}]:void 0}scope.addPropertiesHandler(String,merge,["visibility"])}(webAnimations1),function(scope,testing){function parseColor(string){string=string.trim(),context.fillStyle="#000",context.fillStyle=string;var contextSerializedFillStyle=context.fillStyle;if(context.fillStyle="#fff",context.fillStyle=string,contextSerializedFillStyle==context.fillStyle){context.fillRect(0,0,1,1);var pixelColor=context.getImageData(0,0,1,1).data;context.clearRect(0,0,1,1);var alpha=pixelColor[3]/255;return[pixelColor[0]*alpha,pixelColor[1]*alpha,pixelColor[2]*alpha,alpha]}}function mergeColors(left,right){return[left,right,function(x){function clamp(v){return Math.max(0,Math.min(255,v))}if(x[3])for(var i=0;3>i;i++)x[i]=Math.round(clamp(x[i]/x[3]));return x[3]=scope.numberToString(scope.clamp(0,1,x[3])),"rgba("+x.join(",")+")"}]}var canvas=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");canvas.width=canvas.height=1;var context=canvas.getContext("2d");scope.addPropertiesHandler(parseColor,mergeColors,["background-color","border-bottom-color","border-left-color","border-right-color","border-top-color","color","outline-color","text-decoration-color"]),scope.consumeColor=scope.consumeParenthesised.bind(null,parseColor),scope.mergeColors=mergeColors}(webAnimations1,webAnimationsTesting),function(scope,testing){function parseDimension(unitRegExp,string){if(string=string.trim().toLowerCase(),"0"==string&&"px".search(unitRegExp)>=0)return{px:0};if(/^[^(]*$|^calc/.test(string)){string=string.replace(/calc\(/g,"(");var matchedUnits={};string=string.replace(unitRegExp,function(match){return matchedUnits[match]=null,"U"+match});for(var taggedUnitRegExp="U("+unitRegExp.source+")",typeCheck=string.replace(/[-+]?(\d*\.)?\d+/g,"N").replace(new RegExp("N"+taggedUnitRegExp,"g"),"D").replace(/\s[+-]\s/g,"O").replace(/\s/g,""),reductions=[/N\*(D)/g,/(N|D)[*/]N/g,/(N|D)O\1/g,/\((N|D)\)/g],i=0;i<reductions.length;)reductions[i].test(typeCheck)?(typeCheck=typeCheck.replace(reductions[i],"$1"),i=0):i++;if("D"==typeCheck){for(var unit in matchedUnits){var result=eval(string.replace(new RegExp("U"+unit,"g"),"").replace(new RegExp(taggedUnitRegExp,"g"),"*0"));if(!isFinite(result))return;matchedUnits[unit]=result}return matchedUnits}}}function mergeDimensionsNonNegative(left,right){return mergeDimensions(left,right,!0)}function mergeDimensions(left,right,nonNegative){var unit,units=[];for(unit in left)units.push(unit);for(unit in right)units.indexOf(unit)<0&&units.push(unit);return left=units.map(function(unit){return left[unit]||0}),right=units.map(function(unit){return right[unit]||0}),[left,right,function(values){var result=values.map(function(value,i){return 1==values.length&&nonNegative&&(value=Math.max(value,0)),scope.numberToString(value)+units[i]}).join(" + ");return values.length>1?"calc("+result+")":result}]}var lengthUnits="px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc",parseLength=parseDimension.bind(null,new RegExp(lengthUnits,"g")),parseLengthOrPercent=parseDimension.bind(null,new RegExp(lengthUnits+"|%","g")),parseAngle=parseDimension.bind(null,/deg|rad|grad|turn/g);scope.parseLength=parseLength,scope.parseLengthOrPercent=parseLengthOrPercent,scope.consumeLengthOrPercent=scope.consumeParenthesised.bind(null,parseLengthOrPercent),scope.parseAngle=parseAngle,scope.mergeDimensions=mergeDimensions;var consumeLength=scope.consumeParenthesised.bind(null,parseLength),consumeSizePair=scope.consumeRepeated.bind(void 0,consumeLength,/^/),consumeSizePairList=scope.consumeRepeated.bind(void 0,consumeSizePair,/^,/);scope.consumeSizePairList=consumeSizePairList;var parseSizePairList=function(input){var result=consumeSizePairList(input);return result&&""==result[1]?result[0]:void 0},mergeNonNegativeSizePair=scope.mergeNestedRepeated.bind(void 0,mergeDimensionsNonNegative," "),mergeNonNegativeSizePairList=scope.mergeNestedRepeated.bind(void 0,mergeNonNegativeSizePair,",");scope.mergeNonNegativeSizePair=mergeNonNegativeSizePair,scope.addPropertiesHandler(parseSizePairList,mergeNonNegativeSizePairList,["background-size"]),scope.addPropertiesHandler(parseLengthOrPercent,mergeDimensionsNonNegative,["border-bottom-width","border-image-width","border-left-width","border-right-width","border-top-width","flex-basis","font-size","height","line-height","max-height","max-width","outline-width","width"]),scope.addPropertiesHandler(parseLengthOrPercent,mergeDimensions,["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","bottom","left","letter-spacing","margin-bottom","margin-left","margin-right","margin-top","min-height","min-width","outline-offset","padding-bottom","padding-left","padding-right","padding-top","perspective","right","shape-margin","text-indent","top","vertical-align","word-spacing"])}(webAnimations1,webAnimationsTesting),function(scope,testing){function consumeLengthPercentOrAuto(string){return scope.consumeLengthOrPercent(string)||scope.consumeToken(/^auto/,string)}function parseBox(string){var result=scope.consumeList([scope.ignore(scope.consumeToken.bind(null,/^rect/)),scope.ignore(scope.consumeToken.bind(null,/^\(/)),scope.consumeRepeated.bind(null,consumeLengthPercentOrAuto,/^,/),scope.ignore(scope.consumeToken.bind(null,/^\)/))],string);return result&&4==result[0].length?result[0]:void 0}function mergeComponent(left,right){return"auto"==left||"auto"==right?[!0,!1,function(t){var result=t?left:right;if("auto"==result)return"auto";var merged=scope.mergeDimensions(result,result);return merged[2](merged[0])}]:scope.mergeDimensions(left,right)}function wrap(result){return"rect("+result+")"}var mergeBoxes=scope.mergeWrappedNestedRepeated.bind(null,wrap,mergeComponent,", ");scope.parseBox=parseBox,scope.mergeBoxes=mergeBoxes,scope.addPropertiesHandler(parseBox,mergeBoxes,["clip"])}(webAnimations1,webAnimationsTesting),function(scope,testing){function cast(pattern){return function(contents){var i=0;return pattern.map(function(x){return x===_?contents[i++]:x})}}function id(x){return x}function parseTransform(string){if(string=string.toLowerCase().trim(),"none"==string)return[];for(var match,transformRegExp=/\s*(\w+)\(([^)]*)\)/g,result=[],prevLastIndex=0;match=transformRegExp.exec(string);){if(match.index!=prevLastIndex)return;prevLastIndex=match.index+match[0].length;var functionName=match[1],functionData=transformFunctions[functionName];if(!functionData)return;var args=match[2].split(","),argTypes=functionData[0];if(argTypes.length<args.length)return;for(var parsedArgs=[],i=0;i<argTypes.length;i++){var parsedArg,arg=args[i],type=argTypes[i];if(parsedArg=arg?{A:function(s){return"0"==s.trim()?Odeg:scope.parseAngle(s)},N:scope.parseNumber,T:scope.parseLengthOrPercent,L:scope.parseLength}[type.toUpperCase()](arg):{a:Odeg,n:parsedArgs[0],t:Opx}[type],void 0===parsedArg)return;parsedArgs.push(parsedArg)}if(result.push({t:functionName,d:parsedArgs}),transformRegExp.lastIndex==string.length)return result}}function numberToLongString(x){return x.toFixed(6).replace(".000000","")}function mergeMatrices(left,right){if(left.decompositionPair!==right){left.decompositionPair=right;var leftArgs=scope.makeMatrixDecomposition(left)}if(right.decompositionPair!==left){right.decompositionPair=left;var rightArgs=scope.makeMatrixDecomposition(right)}return null==leftArgs[0]||null==rightArgs[0]?[[!1],[!0],function(x){return x?right[0].d:left[0].d}]:(leftArgs[0].push(0),rightArgs[0].push(1),[leftArgs,rightArgs,function(list){var quat=scope.quat(leftArgs[0][3],rightArgs[0][3],list[5]),mat=scope.composeMatrix(list[0],list[1],list[2],quat,list[4]),stringifiedArgs=mat.map(numberToLongString).join(",");return stringifiedArgs}])}function typeTo2D(type){return type.replace(/[xy]/,"")}function typeTo3D(type){return type.replace(/(x|y|z|3d)?$/,"3d")}function mergeTransforms(left,right){var matrixModulesLoaded=scope.makeMatrixDecomposition&&!0,flipResults=!1;if(!left.length||!right.length){left.length||(flipResults=!0,left=right,right=[]);for(var i=0;i<left.length;i++){var type=left[i].t,args=left[i].d,defaultValue="scale"==type.substr(0,5)?1:0;right.push({t:type,d:args.map(function(arg){if("number"==typeof arg)return defaultValue;var result={};for(var unit in arg)result[unit]=defaultValue;return result})})}}var isMatrixOrPerspective=function(lt,rt){return"perspective"==lt&&"perspective"==rt||("matrix"==lt||"matrix3d"==lt)&&("matrix"==rt||"matrix3d"==rt)},leftResult=[],rightResult=[],types=[];if(left.length!=right.length){if(!matrixModulesLoaded)return;var merged=mergeMatrices(left,right);leftResult=[merged[0]],rightResult=[merged[1]],types=[["matrix",[merged[2]]]]}else for(var i=0;i<left.length;i++){var type,leftType=left[i].t,rightType=right[i].t,leftArgs=left[i].d,rightArgs=right[i].d,leftFunctionData=transformFunctions[leftType],rightFunctionData=transformFunctions[rightType];if(isMatrixOrPerspective(leftType,rightType)){if(!matrixModulesLoaded)return;var merged=mergeMatrices([left[i]],[right[i]]);leftResult.push(merged[0]),rightResult.push(merged[1]),types.push(["matrix",[merged[2]]])}else{if(leftType==rightType)type=leftType;else if(leftFunctionData[2]&&rightFunctionData[2]&&typeTo2D(leftType)==typeTo2D(rightType))type=typeTo2D(leftType),leftArgs=leftFunctionData[2](leftArgs),rightArgs=rightFunctionData[2](rightArgs);else{if(!leftFunctionData[1]||!rightFunctionData[1]||typeTo3D(leftType)!=typeTo3D(rightType)){if(!matrixModulesLoaded)return;var merged=mergeMatrices(left,right);leftResult=[merged[0]],rightResult=[merged[1]],types=[["matrix",[merged[2]]]];break}type=typeTo3D(leftType),leftArgs=leftFunctionData[1](leftArgs),rightArgs=rightFunctionData[1](rightArgs)}for(var leftArgsCopy=[],rightArgsCopy=[],stringConversions=[],j=0;j<leftArgs.length;j++){var merge="number"==typeof leftArgs[j]?scope.mergeNumbers:scope.mergeDimensions,merged=merge(leftArgs[j],rightArgs[j]);leftArgsCopy[j]=merged[0],rightArgsCopy[j]=merged[1],stringConversions.push(merged[2])}leftResult.push(leftArgsCopy),rightResult.push(rightArgsCopy),types.push([type,stringConversions])}}if(flipResults){var tmp=leftResult;leftResult=rightResult,rightResult=tmp}return[leftResult,rightResult,function(list){return list.map(function(args,i){var stringifiedArgs=args.map(function(arg,j){return types[i][1][j](arg)}).join(",");return"matrix"==types[i][0]&&16==stringifiedArgs.split(",").length&&(types[i][0]="matrix3d"),types[i][0]+"("+stringifiedArgs+")"}).join(" ")}]}var _=null,Opx={px:0},Odeg={deg:0},transformFunctions={matrix:["NNNNNN",[_,_,0,0,_,_,0,0,0,0,1,0,_,_,0,1],id],matrix3d:["NNNNNNNNNNNNNNNN",id],rotate:["A"],rotatex:["A"],rotatey:["A"],rotatez:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",cast([_,_,1]),id],scalex:["N",cast([_,1,1]),cast([_,1])],scaley:["N",cast([1,_,1]),cast([1,_])],scalez:["N",cast([1,1,_])],scale3d:["NNN",id],skew:["Aa",null,id],skewx:["A",null,cast([_,Odeg])],skewy:["A",null,cast([Odeg,_])],translate:["Tt",cast([_,_,Opx]),id],translatex:["T",cast([_,Opx,Opx]),cast([_,Opx])],translatey:["T",cast([Opx,_,Opx]),cast([Opx,_])],translatez:["L",cast([Opx,Opx,_])],translate3d:["TTL",id]};scope.addPropertiesHandler(parseTransform,mergeTransforms,["transform"])}(webAnimations1,webAnimationsTesting),function(scope,testing){function alias(name,aliases){aliases.concat([name]).forEach(function(candidate){candidate in document.documentElement.style&&(aliased[name]=candidate)})}var aliased={};alias("transform",["webkitTransform","msTransform"]),alias("transformOrigin",["webkitTransformOrigin"]),alias("perspective",["webkitPerspective"]),alias("perspectiveOrigin",["webkitPerspectiveOrigin"]),scope.propertyName=function(property){return aliased[property]||property}}(webAnimations1,webAnimationsTesting);
//# sourceMappingURL=inter-component-web-animations-next-liteweb-animations-1.js.map